Feed RSS
Python hasta 100 veces más rápido!
¿Alguien dijo que las aplicaciones programadas en lenguajes de alto nivel debÃan ser más lentas que las codificadas en un lenguaje de nivel medio o bajo? Si esa discusión ya se estaba transformando en una eterna disputa, podemos hacer una tregua con el recurso que les presento a continuación.
Con Psyco es posible ejecutar software escrito en Python a mayor velocidad y sin necesidad de modificar el código fuente.
Se puede pensar en Psyco como una especie de compilador JIT (just-in-time), algo parecido a lo que existe para otros lenguajes, en los cuales se genera código máquina on-the-fly en lugar de interpretar el código paso a paso. A diferencia de lo que realizan los compiladores JIT tradicionales, Psyco genera varias versiones de los mismos bloques (un bloque es un trozo de una función) optimizándolos de forma tal que éstos queden especializados para trabajar con diferentes clases de variables (una "clase" puede representar un tipo, pero el concepto es aún más general). El resultado de todo esto es que los programas escritos en Python, sin ser modificados, corren a mayor velocidad.
Beneficios
Se incrementa la velocidad de ejecución entre 2 y 100 veces, en promedio 4 veces, con un código sin ninguna modificación y con un intérprete también intacto. Solo se requiere un módulo de extensión de carga dinámica en C.
Desventajas
Psyco actualmente utiliza mucha memoria. Por ahora sólo se ejecuta en procesadores Intel 386-compatibles (bajo cualquier sistema operativo). Existen algunas sutiles diferencias semánticas (por no decir bugs) respecto al modo en que Python trabaja, aunque no se hacen evidentes ni relevantes en la mayorÃa de los programas.
Un interesante caso de éxito a tener en cuenta es Youtube, sitio que utiliza esta extensión para acelerar sus programas escritos en Python.






últimos comentarios
hace 4 años 16 semanas
hace 4 años 16 semanas
hace 4 años 16 semanas
hace 4 años 17 semanas
hace 4 años 17 semanas
hace 4 años 42 semanas
hace 5 años 5 semanas
hace 5 años 5 semanas
hace 5 años 5 semanas
hace 5 años 29 semanas