¿Cuál es una buena forma de estimar la huella de memoria de un objeto?Python: ¿Cómo estimar/calcular la huella de memoria de las estructuras de datos?
Por el contrario, ¿cuál es una buena forma de medir la huella?
Por ejemplo, decir que tengo un diccionario cuyos valores son listas de número entero, flotar tuplas:
d['key'] = [ (1131, 3.11e18), (9813, 2.48e19), (4991, 9.11e18) ]
tengo 4G de memoria física y me gustaría averiguar aproximadamente cuántas filas (clave: valores) Puedo almacenar en memoria antes de derramar en intercambio. Esto está en linux/ubuntu 8.04 y OS X 10.5.6.
Además, ¿cuál es la mejor manera de averiguar la huella en la memoria real de mi programa? ¿Cómo puedo averiguar cuándo es agotador la memoria física y el derrame?
¿Por qué hay 6 objetos 'str' en 'd'? –
Al enlazar una nueva variable, se crea una nueva cadena ('d'). Las cuentas de búsqueda de atributos (heap) representan otra. No sé de dónde viene el resto. –
Los resultados reales varían y debe verificarlos contra la implementación del intérprete particular que está utilizando o realizar un ensayo y error para encontrar la varianza. Por ejemplo, acabo de probar el ejemplo anterior e informó tres cadenas que totalizan 96 bytes. –