LinuxParty
Codon es un nuevo "compilador de Python de alto rendimiento que compila código de Python en código de máquina nativo sin sobrecarga de tiempo de ejecución", según su archivo README en GitHub .Las aceleraciones típicas sobre Python son del orden de 10-100x o más, en un solo hilo. El rendimiento de Codon suele estar a la par (ya veces mejor) que el de C/C++. A diferencia de Python, Codon admite subprocesos múltiples nativos, lo que puede conducir a aceleraciones muchas veces mayores.
Su equipo de desarrollo incluye investigadores del laboratorio de Ciencias de la Computación e Inteligencia Artificial del MIT, según este anuncio del MIT compartido por el antiguo usuario de Slashdot Futurepower(R) :El compilador permite a los desarrolladores crear nuevos lenguajes específicos de dominio (DSL) dentro de Python, que suele ser mucho más lento que lenguajes como C o C++, al mismo tiempo que obtiene los beneficios de rendimiento de esos otros lenguajes. "Nos dimos cuenta de que las personas no necesariamente quieren aprender un nuevo idioma o una nueva herramienta, especialmente aquellos que no son técnicos. Así que pensamos, tomemos la sintaxis, la semántica y las bibliotecas de Python e incorporémoslas en un nuevo sistema creado a partir de la hecho polvo", dice Ariya Shajii SM '18, PhD '21, autora principal de un nuevo artículo sobre el nuevo sistema del equipo, Codon. "El usuario simplemente escribe Python como está acostumbrado, sin tener que preocuparse por los tipos de datos o el rendimiento, que manejamos automáticamente, y el resultado es que su código se ejecuta de 10 a 100 veces más rápido que Python normal. Codon ya se está utilizando comercialmente en campos como finanzas cuantitativas, bioinformática y aprendizaje profundo".
El equipo sometió a Codon a pruebas rigurosas y superó su peso. Específicamente, tomaron aproximadamente 10 aplicaciones genómicas de uso común escritas en Python y las compilaron usando Codon, y lograron aceleraciones de cinco a 10 veces más que las implementaciones originales optimizadas a mano... La plataforma Codon también tiene un backend paralelo que permite a los usuarios escribir Python código que se puede compilar explícitamente para GPU o núcleos múltiples, tareas que tradicionalmente han requerido conocimientos de programación de bajo nivel.... Parte de la innovación con Codon es que la herramienta verifica el tipo antes de ejecutar el programa. Eso permite que el compilador convierta el código en código de máquina nativo, lo que evita toda la sobrecarga que tiene Python al tratar con tipos de datos en tiempo de ejecución.
"Python es el lenguaje de elección para los expertos en dominios que no son expertos en programación. Si escriben un programa que se vuelve popular y muchas personas comienzan a usarlo y ejecutan conjuntos de datos cada vez más grandes, entonces la falta de rendimiento de Python se convierte en una barrera crítica para éxito", dice Saman Amarasinghe, profesor de ingeniería eléctrica y ciencias de la computación del MIT e investigador principal de CSAIL. "En lugar de necesitar reescribir el programa usando una biblioteca implementada en C como NumPy o reescribirlo totalmente en un lenguaje como C, Codon puede usar la misma implementación de Python y brindar el mismo rendimiento que obtendrá al reescribir en C. Por lo tanto, creo Codon es el camino más fácil para las aplicaciones exitosas de Python que han alcanzado un límite debido a la falta de rendimiento".
La otra pieza del rompecabezas son las optimizaciones en el compilador. Trabajar con el complemento de genómica, por ejemplo, realizará su propio conjunto de optimizaciones que son específicas para ese dominio informático, lo que implica trabajar con secuencias genómicas y otros datos biológicos, por ejemplo. El resultado es un archivo ejecutable que se ejecuta a la velocidad de C o C++, o incluso más rápido una vez que se aplican las optimizaciones específicas del dominio.
-
Linux
- ¿Por qué Torvalds eliminó a los encargados rusos del mantenimiento del núcleo de Linux?
- 10 cosas que siempre hago después de instalar Linux (y por qué tú también deberías hacerlo)
- 7 cosas que nunca hago después de instalar Linux (y por qué tú tampoco deberías)
- Detección de Intrusos: Snort, Base, MySQL, y Apache2 en Ubuntu Linux 7.10
- He utilizado Linux durante 30 años. Aquí hay 5 razones por las que nunca cambiaré a Windows o MacOS
- ¿Por qué no más personas usan Linux en el escritorio? Tengo una teoría que quizás no te guste.
- Los países occidentales ricos lideran la expansión mundial del petróleo y el gas
- Systemd 256.1 aborda la queja de que 'systemd-tmpfiles' podría eliminar inesperadamente su directorio /home
- Por qué un kernel Linux de distribución 'congelada' no es la mejor opción para la seguridad
- RebornOS es una versión hermosa y fácil de usar de Arch Linux con abundantes opciones de escritorio
- Linus Torvalds sobre el 'hilarante' bombo de la IA
- Cambiar la hora en Linux con Chrony
- Renombrar multiples archivos masivamente en Linux (quitar espacios, cambiar mayúsculas) a la vez en Linux
- Linux 6.9 será el primero en superar los 10 millones de objetos Git
- Zorin OS 17.1 lanzado con soporte mejorado para aplicaciones de Windows, edición educativa