Intel CTO quiere que los desarrolladores construyan una vez, ejecuten en cualquier GPU

Hace más de dos décadas, el lenguaje de programación Java, desarrollado originalmente por Sun Microsystems, ofreció a los desarrolladores la promesa de poder crear una aplicación una vez y luego ejecutarla en cualquier sistema operativo.

Greg Lavender, CTO de Intel, recuerda la promesa original de Java mejor que la mayoría, ya que pasó más de una década trabajando en Sun. En lugar de tener que crear aplicaciones para diferentes sistemas operativos y hardware, la promesa de Java era un desarrollo más uniforme y optimizado.

Sin embargo, la capacidad de compilar una vez y ejecutar en cualquier lugar no es uniforme en todo el panorama informático en 2022. Es una situación que Intel busca ayudar a cambiar, al menos en lo que respecta a la computación acelerada y el uso de GPU.

La necesidad de un lenguaje uniforme similar a Java para las GPU

“Hoy, en el mundo de GPU y computación acelerada, puede usar CUDA y luego solo puede ejecutarse en una GPU Nvidia, o puede usar el equivalente CUDA de AMD ejecutándose en una GPU AMD”, dijo Lavender a VentureBeat. “No puede usar CUDA para programar una GPU Intel, entonces, ¿qué usa?”

Ahí es donde Intel está contribuyendo en gran medida a la especificación SYCL de código abierto (SYCL se pronuncia como “hoz”) que tiene como objetivo hacer para GPU y computación acelerada lo que Java hizo hace décadas para el desarrollo de aplicaciones. La inversión de Intel en SYCL no es totalmente desinteresada y no se trata solo de apoyar un esfuerzo de código abierto; también se trata de ayudar a impulsar un mayor desarrollo hacia sus GPU para consumidores y centros de datos lanzadas recientemente.

SYCL es un enfoque para la programación paralela de datos en el lenguaje C++ y, según Lavender, se parece mucho a CUDA.

Intel admite la estandarización de un código para gobernarlos a todos

Hasta la fecha, el desarrollo de SYCL ha sido administrado por Khronos Group, que es una organización de múltiples partes interesadas que está ayudando a desarrollar estándares para computación paralela, realidad virtual y gráficos 3D. El 1 de junio, Intel adquirió la empresa de desarrollo escocesa Codeplay Software, que es uno de los principales contribuyentes a la especificación SYCL.

“Deberíamos tener un lenguaje de programación abierto con extensiones a C++ que se estén estandarizando, que pueda ejecutarse en GPU Intel, AMD y Nvidia sin cambiar su código”, dijo Lavender.

Herramienta automatizada para convertir CUDA en SYCL

Lavender también es realista y sabe que ya hay mucho código escrito específicamente para CUDA. Es por eso que los desarrolladores de Intel crearon una herramienta de código abierto llamada SYCLomatic, cuyo objetivo es migrar el código CUDA a SYCL. Lavender afirmó que SYCLomatic hoy tiene cobertura para aproximadamente el 95 % de toda la funcionalidad que está presente en CUDA. Señaló que el 5 % de SYCLomatic no cubre las capacidades que son específicas del hardware de Nvidia.

Con SYCL, Lavender dijo que hay bibliotecas de código que los desarrolladores pueden usar que son independientes del dispositivo. La forma en que funciona es que un desarrollador escribe el código una vez, y luego SYCL puede compilar el código para que funcione con cualquier arquitectura que se necesite, ya sea para una GPU Nvidia, AMD o Intel.

De cara al futuro, Lavender dijo que tiene la esperanza de que SYCL pueda convertirse en un proyecto de la Fundación Linux, para permitir aún más la participación y el crecimiento del esfuerzo de código abierto. Intel y Nvidia son miembros de la Fundación Linux y respaldan múltiples esfuerzos. Entre los proyectos en los que Intel y Nvidia son miembros hoy en día se encuentra el proyecto Open Programmable Infrastructure (OPI), que se trata de proporcionar un estándar abierto para unidades de programación de infraestructura (IPU) y unidades de procesamiento de datos (DPU).

“Deberíamos haber escrito una vez, ejecutado en todas partes para la computación acelerada y luego dejar que el mercado decida qué GPU quieren usar y nivelar el campo de juego”, dijo Lavender.

La misión de VentureBeat es ser una plaza pública digital para que los responsables de la toma de decisiones técnicas adquieran conocimientos sobre tecnología empresarial transformadora y realicen transacciones. Descubre nuestras sesiones informativas.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.