Articles of gestión de memoria

Borrar memoria utilizada por rpy2

¿Cómo puedo borrar los objetos (y la memoria que ocupan) creados a través de rpy? import rpy2.robjects as r a = rr(‘a = matrix(NA, 2000000, 50)’) del a #if I do this, there is no change in the amount of memory used rr(‘rm(list=(ls(all=TRUE)))’) # Same here, the objects disappear, but the memory is still used […]

Deepcopy pandas DataFrame que contiene objetos de python (como listas)

Necesita ayuda para entender la asignación de variables, punteros, … Lo siguiente es reproducible. import pandas as pd df = pd.DataFrame({ ‘listData’: [ [‘c’, ‘f’, ‘d’, ‘a’, ‘e’, ‘b’], [5, 2, 1, 4, 3] ]}) df[‘listDataSort’] = df[‘listData’] da: listData listDataSort 0 [c, f, d, a, e, b] [c, f, d, a, e, b] 1 […]

¿Cómo crear una lista o tupla de listas vacías en Python?

Necesito rellenar una lista o una tupla de listas de forma incremental. Algo que se parece a esto: result = [] firstTime = True for i in range(x): for j in someListOfElements: if firstTime: result.append([f(j)]) else: result[i].append(j) Con el fin de hacerlo menos detallado y más elegante, pensé en preasignar una lista de listas vacías […]

Asignación de memoria CPython

Esta es una publicación inspirada en este comentario sobre cómo se asigna la memoria para los objetos en CPython. Originalmente, esto estaba en el contexto de crear una lista y anexarla en un bucle for frente a una comprensión de lista. Asi que aqui están mis preguntas: ¿Cuántos asignadores diferentes hay en CPython? ¿Cuál es […]

Crea una figura que sea referencia contada.

Parece que la forma estándar de crear una figura en matplotlib no se comporta como esperaría en python: de forma predeterminada, al llamar a fig = matplotlib.figure() en un bucle se mantendrán todas las figuras creadas, y finalmente se fig = matplotlib.figure() de la memoria. Hay bastantes publicaciones que tratan sobre soluciones alternativas, pero requerir […]

Módulo de multiprocesamiento que muestra la memoria para cada proceso hijo igual que el proceso principal.

Estoy usando el módulo de multiproceso de python y tengo algunas confusiones con respecto al mismo. Básicamente, almaceno algunos datos inicialmente en el proceso Principal, y eso es alrededor de 16 GB (tamaño de la memoria principal) como se muestra en el comando superior. He almacenado estos datos como variables globales. Luego, se realiza el […]

¿Python tiene una stack / montón y cómo se gestiona la memoria?

¿Cómo se gestionan las variables y la memoria en Python? ¿Tiene una stack y un montón y qué algoritmo se utiliza para administrar la memoria? Teniendo en cuenta este conocimiento, ¿existen recomendaciones sobre la gestión de la memoria para el procesamiento de grandes cantidades de datos?

¿Cuándo Python asigna nueva memoria para cadenas idénticas?

Dos cadenas de Python con los mismos caracteres, a == b, pueden compartir memoria, id (a) == id (b), o pueden estar en la memoria dos veces, id (a)! = Id (b). Tratar ab = “ab” print id( ab ), id( “a”+”b” ) Aquí Python reconoce que la nueva “a” + “b” creada es la […]

¿Cómo puedo liberar explícitamente la memoria en Python?

Escribí un progtwig Python que actúa sobre un archivo de entrada grande para crear unos pocos millones de objetos que representan triangularjs. El algoritmo es: leer un archivo de entrada procesar el archivo y crear una lista de triangularjs, representados por sus vértices genera los vértices en el formato DESACTIVADO: una lista de vértices seguida […]