Prototipo de un lenguaje de programación basado en lenguaje de bajo nivel Rust, para programación multinúcleo que ayude a la creación de aplicaciones IA - Castro Calvopiña, Bryan Paul (2025)
La eficiencia computacional es primordial cuando se trata de IA y computación de alto rendimiento. Tal demanda existe durante el entrenamiento y desarrollo de modelos complicados, desde los enfoques de aprendizaje profundo hasta los centrados en transformadores. Así, varios investigadores confían en una arquitectura heterogénea de CPU y GPU. Sin embargo, debido a los problemas de gestión de la memoria y la comunicación entre las unidades de procesamiento, este enfoque no está exento de desafíos significativos que resultan en una eficiencia de procesamiento y asignación de recursos inferior. Así, este proyecto documenta el diseño y las pruebas de un prototipo de lenguaje de programación multinúcleo, creado en Rust, con acceso a la API CUDA para acceder a la memoria que se encuentra compartida, además de reducir la sobrecarga al ejecutar núcleos con mucha memoria. El lenguaje busca el equilibrio entre rendimiento y facilidad sintáctica, al liberar gran parte de su sintaxis de Python para facilitar la transición a quienes vienen de lenguajes convencionales. El proyecto se encuentra estructurado en aspectos generales como el diseño del lenguaje, la creación del compilador y las pruebas de este. La prueba del compilador se dividió principalmente en pruebas cuantitativas y cualitativas. La usabilidad se evaluó mediante una encuesta distribuida a desarrolladores junior. Posteriormente, se tiene que realizar la proposición de nuevos elementos para la mejora del lenguaje gracias al feedback de los desarrolladores que hicieron las pruebas de este, esto con la intención de mejorar los elementos sintácticos del lenguaje y ampliar su documentación. Con base en la compilación, se determina que surge un avance para el área de la computación en especial en las arquitecturas heterogéneas, lo que puede resultar eficaz en el aumento de la eficiencia en el uso de entrenamiento de modelos de IA y otros esfuerzos que requieren varios recursos a los cuales muchas veces no se encuentran disponibles en el entorno.