2009-02-19 7 views
6

si ejecuto python en una máquina de 64 bits con un sistema operativo de 64 bits, ¿podrán mis programas acceder a toda la gama de memoria? Es decir. ¿Podría crear una lista con 10 billones de entradas, suponiendo que tuviera suficiente RAM? Si no, ¿hay otros lenguajes de programación que permitan esto?¿pueden mis programas tener acceso a más de 4 GB de memoria?

Respuesta

7

Deberá asegurarse de que Python se haya creado como una aplicación de 64 bits. Por ejemplo, en Win64 podrá ejecutar la compilación de 32 bits de Python.exe, pero no obtendrá los beneficios del entorno de 64 bits ya que Windows lo ejecutará en un entorno limitado de 32 bits.

+0

¿Eso significa que sería mejor ejecutarlo en Linux? ¿O puedo crear un exe de Windows de 64 bit para Python? – Ben

+0

Ya hay uno disponible en http://www.python.org/ftp/python/3.0.1/python-3.0.1.amd64.msi Han llamado a la instalación amd64 como reconocimiento del hecho de que AMD creó el Conjunto de instrucciones de 64 bits. La instalación funcionará en las CPU Intel y AMD – Sean

+0

. También hay una versión Python 2.6.1 de 64 bits en http://www.python.org/ftp/python/2.6.1/python-2.6.1.amd64.msi – Sean

3

El idioma python en sí no tiene tales restricciones, pero tal vez su sistema operativo o el tiempo de ejecución de python (pypy, cpython, jython) podría tener tales restricciones.

¿Qué combinación de tiempo de ejecución de python y sistema operativo desea usar?

+0

en realidad, no me importa. Tengo una aplicación en la que estoy trabajando ahora (en parte en Matlab y en parte en Python) que se está ejecutando en las limitaciones de memoria, y quiero planificar un movimiento a 64 bits. No estaba seguro de si Python sería el idioma correcto, pero a partir de eso dices, parece que debería estar bien. – Ben

Cuestiones relacionadas