[pyar] Procesando muchos datos (cPython vs Stackless) and (32bits vs 64bits)

Claudio Freire klaussfreire en gmail.com
Lun Abr 16 13:24:35 ART 2012


2012/4/16 Julian Agustin Cardonnet <jcardonnet en gmail.com>:
> Ahora me falta ver si con cPython de 32 bits
> me va a alcanzar o si sera necesario recurrir a la de 64.

Bueno, en ese sentido, es bueno entender que 64 bits no es sólo el
tamaño de los ints.

En Python, todo son punteros. Así que punteros de 64 bits ocupan el
doble que punteros de 32 bits. Python de 64 bits, por ende, usa el
doble de memoria en almacenar referencias. Los strings siguen ocupando
lo mismo, pero casi todo ocupa el doble.

Así que Python de 32 bits va a ser más eficiente en el uso de memoria.

PERO, sucede que 64 bits es, como dije, más que el tamaño de los ints.
Las arquitecturas de 64 bits tienen más registros, tienen un set de
instrucciones mejorado... en general, 64 bits es más rápido, en
especial en Python.

Es un tradeoff. Si manipulás texto, es posible que el uso de memoria
inflado de 64 bits no te pegue tan fuerte (porque tus bytes son más
ascii que punteros), y que garpe usar una arquitectura de 64 bits. Es
cuestión de probar. El código python puro va a andar perfectamente
bien en ambas arquitecturas.



More information about the pyar mailing list