Red de conocimiento informático - Problemas con los teléfonos móviles - Artefacto de compilación de velocidad de Python para que lo vean los estudiantes

Artefacto de compilación de velocidad de Python para que lo vean los estudiantes

Ven y experimenta el artefacto de compilación de velocidad de Python

Artefacto de compilación de velocidad de Python

¿Python se ejecuta rápido? Aunque diferentes escenarios tienen diferentes conclusiones, pero en general

, no es tan rápido como C o Java. Esto también ha llevado al hecho de que, cuando Python está arrasando en el campo de la IA con su legibilidad, simplicidad y facilidad de uso, y su buen ecosistema, se ha convertido en un dolor de cabeza para muchos desarrolladores cuando se trata de velocidad.

Para resolver este problema, los científicos informáticos del MIT tomaron medidas.

Desarrollaron conjuntamente un compilador de Python llamado Codon, que puede convertir

código Python. convertido a código de máquina local sin afectar el rendimiento en tiempo de ejecución

.

Actualmente, Codon tiene código abierto en Git Hub: /exaloop/codon y ha obtenido 6300 estrellas.

1. El rendimiento de Codon es equivalente al de C/C++

"En un solo hilo, es entre 10 y 100 veces o más rápido que la velocidad típica de Python.

p>

"El repositorio de Codon escribe: "El rendimiento de Codon es a menudo comparable al de C/C++ (a veces incluso mejor). La diferencia con Python es que Codon admite subprocesos múltiples locales, lo que puede aumentar la velocidad muchas veces.

Codon se desarrolló originalmente como un marco para crear lenguajes específicos de dominio de alto rendimiento

(DSL, lenguaje específico de dominio) en Python. DSL

Un lenguaje que se centra en un propósito específico, en lugar de un lenguaje de programación de propósito general

como Python o C.

Según el repositorio oficial de Git Hub, Codon se originó a partir del proyecto Seq, que es un

DSL para bioinformática y genética. Ahora se ha convertido en un

Compilador de lenguaje básico compatible con Python 3.

Recientemente, el medio extranjero The Register compartió recientemente un artículo sobre Codon a través del equipo de investigación de la herramienta

.

El documento afirma que "A diferencia de otras implementaciones de Python orientadas al rendimiento (como PyPy o

Numba), Codon se construyó desde cero como un sistema independiente

, se puede compilar con anticipación en un ejecutable estático y no está vinculado a un tiempo de ejecución de Python

existente (como CPython o RPython). Por lo tanto, Codon

tiene un mejor rendimiento. se puede lograr y se pueden superar problemas específicos del tiempo de ejecución, como los bloqueos globales del intérprete.

2. Prueba

Entonces, ¿Codon es realmente tan rápido como dice? En el foro de Codon, un

desarrollador realizó una prueba:

p>

CPython 3.11

PyPy 7.3.9

Codon compilado

Codon con intérprete de Python

Finalmente, un simple El script Fibonacci compilado por Codon es más de 70 veces más rápido que la versión CPython.

Según la documentación oficial de Codon, aunque la sintaxis y la semántica de Codon son casi las mismas que las de Python

, todavía existen algunas diferencias que vale la pena mencionar, como los tipos de datos

Entero. El int de Codon es un entero con signo de 64 bits, mientras que el de Python (después de la versión 3) puede ser arbitrariamente grande. Sin embargo, Codon admite números enteros más grandes a través de Int[N]

, donde N es el ancho de bits.

Cadena.

Codon actualmente usa cadenas ASCII, a diferencia de las cadenas Unicode de Python.

Diccionario. El tipo de diccionario de Codon no conserva el orden de inserción, a diferencia del de Python 3.6

.

Además, Codon y Python tienen ligeras diferencias en la verificación de tipos, operaciones numéricas, módulos y otras dimensiones

Para obtener más detalles, consulte: https:

//docs.exaloop.io/codon/general/differencesSe informa que Codon

se ha utilizado comercialmente en finanzas, bioinformática, aprendizaje profundo y otros campos.