LinuxParty

NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.
Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado
 

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.

Pin It

Escribir un comentario


Código de seguridad
Refescar



Redes:



 

Suscribete / Newsletter

Suscribete a nuestras Newsletter y periódicamente recibirás un resumen de las noticias publicadas.

Donar a LinuxParty

Probablemente te niegues, pero.. ¿Podrías ayudarnos con una donación?


Tutorial de Linux

Filtro por Categorías