Medir consumo de memoria

Luis Medel luis en luismedel.com
Mar Sep 30 16:55:33 CEST 2008


El Tuesday 30 September 2008 16:52:56 Luis Medel escribió:
> El Tuesday 30 September 2008 16:21:29 Oswaldo Hernández escribió:
> > Daniel González escribió:
> > > Para saber el consumo de memoria sobre Win2 yo comprobaba la memoria
> > > justo antes de lanzar el proceso y en su momento de máximo consumo y
> > > creo que más o menos puede darte una idea.
> > >
> > > Por otro lado ( teoricamente ) una lista de 50.000 enteros ... ( 1
> > > entero = 4 B x 50.000 / 1024 = 195,3 MB aprox )
> >
> > Este resultado creo que seria 195 KB, de todas formas si haces la prueba
> > con los medidores de windows:
> >
> > 1. Ejecutar interprete python en consola (msdos)
> >      uso de memoria según windows: 3.740 KB
> >
> > 2. Ejecutar en el interprete:
> >      >>> li = [i for i in xrange(50000)]
> >
> >      uso de memoria según windows: 4.592 KB
> >
> > segun eso crear una lista con 50.000 enteros ha consumido 852 KB lo cual
> > frente a tu resultado de 4 bytes por cada entero (195 KB) parece mucha
> > diferencia
> >
> > ????
>
> Hola,
>
> Según tengo entendido, xrange devuelve un generador, en vez de una lista,
> por lo que no estás creando una *gran* lista de 50000 elementos.
>
> >>> xrange.__doc__
>
> 'xrange([start,] stop[, step]) -> xrange object\n\nLike range(), but
> instead of returning a list, returns an object that\ngenerates the numbers
> in the range on demand.  For looping, this is \nslightly faster than
> range() and more memory efficient.'
>
> Por pura lógica una lista de 50000 enteros debe ocupar más de 800 y pico
> kbs. Aunque puede que mi lógica falle, claro :)

Ay! Perdonad! :)
Efectivamente, hoy estoy que no doy una y mi logica esta hecha una autentica 
m%&$*#...

No hagáis caso a mi última afirmación :)
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es