OpenCL en la vía rápida - Calendae | Informática, Electrónica, CMS, Ciberseguridad

OpenCL en la vía rápida

Hola y mil gracias por leerme. Yo soy Simón Sánchez y hoy vamos a hablar sobre OpenCL en la vía rápida

En lo que respecta a la madurez tecnológica, GPGPU (computación de propósito general en unidades de procesamiento de gráficos) es solo un niño. Pero ya se está realizando un esfuerzo para producir un estándar industrial para este nuevo modelo de programación: OpenCL. Con la gente que sigue jugando con los lenguajes de programación CUDA de NVIDIA y la GPU Brook + de AMD, el esfuerzo por encontrar una forma independiente del proveedor de acceder a las GPU para la informática puede parecer prematuro. No lo es.

Por un lado, el propósito final de OpenCL es más amplio que solo GPGPU. Su objetivo real es definir una API estándar de bajo nivel para una amplia gama de arquitecturas paralelas, incluyendo GPU, CPU multinúcleo, procesador Cell, Larrabee y DSP. De hecho, OpenCL significa Open Computing Language, que es lo más amplio posible. El estándar impondrá algunos requisitos en el hardware, como la presencia de soporte de punto flotante (que excluye solo DSP enteros) y flujo de control dinámico (que excluye procesadores SIMD puros, como ClearSpeed ​​*). Pero el hecho de que el grupo de trabajo de OpenCL incluya a los principales actores en la fabricación de chips (Intel, AMD, NVIDIA, IBM, Motorola, Texas Instruments y otros) sugiere que el estándar disfrutará de un amplio apoyo de la industria.

Apple Computer comenzó a trabajar en un intento de encontrar una manera de extraer el rendimiento informático de las GPU y CPU multinúcleo de una manera independiente de la arquitectura. En junio de 2008, la empresa vendió el proyecto a Khronos Group, un consorcio industrial que desarrolla y mantiene estándares API abiertos y libres de regalías, principalmente a nivel de interfaz hardware-software. Hasta ahora, el consorcio se ha centrado principalmente en el campo de los gráficos y los medios. OpenGL es quizás la API más conocida a este respecto. Con OpenCL, Khronos ha adoptado un estándar mucho más genérico.

«Desde el principio, OpenCL está dirigido tanto a sistemas de gama alta como a dispositivos móviles e integrados», explica el presidente de Khronos, Neil Trevett, cuyo trabajo diario es vicepresidente del grupo de dispositivos móviles integrados de NVIDIA. Sin duda, OpenCL podría ser una buena noticia para los desarrolladores de HPC que consideran una estrategia a largo plazo con GPU y otros aceleradores, pero temen quedarse atascados en pilas de hardware o software patentado. Trevett también ve una gran oportunidad para los dispositivos habilitados para OpenCL en el espacio de la computadora de mano, donde la próxima generación de GPU y DSP se puede utilizar para supercomputación móvil.

Las aplicaciones de computación intensiva como el procesamiento de imágenes, la realidad aumentada y el reconocimiento de ubicación ya están en el tablero de dibujo de numerosos fabricantes de teléfonos celulares. La pieza que falta es aprovechar los procesadores GPU y DSP para el procesamiento general. Un estándar API parece particularmente importante para este mercado, ya que el hardware se mueve muy rápidamente en el espacio de la computadora de mano del consumidor. Al establecer una capa central, OpenCL ayudará a preservar las inversiones en software y permitirá el desarrollo de aplicaciones y bibliotecas independientes de la plataforma.

Pero si OpenCL tiene éxito, ¿qué pasará con las soluciones propietarias como CUDA y Brook +? Con su sombrero de NVIDIA, Trevett dice que su compañía apoya plenamente el esfuerzo de OpenCL y tendrá cuidado de no establecer a CUDA como un competidor de OpenCL. Él dice que las dos plataformas ofrecen esencialmente el mismo nivel de interfaz, y en lo que a ellos respecta, cuantas más formas en que la comunidad de programación pueda obtener las bondades del procesamiento paralelo, mejor será para todos los jugadores. AMD, igualmente, fue uno de los primeros en apoyar OpenCL y está comprometido a respaldar una implementación en sus procesadores de «computación de flujo».

La presencia de IBM e Intel en el equipo de OpenCL sugiere que las implementaciones para Cell y Larrabee, respectivamente, están en proceso. Otro miembro de OpenCL, RapidMind, espera usar una API común para su plataforma de programación paralela, que esencialmente ofrece un entorno de programación de alto nivel que se puede superponer con OpenCL. Según Michael McCool, científico jefe de RapidMind, uno de los buenos efectos secundarios del próximo estándar será establecer un conjunto mínimo de requisitos de procesador, de modo que el nuevo hardware se diseñará con la especificación OpenCL en mente.

La versión 1.0 de OpenCL está programada para ser lanzada a principios de diciembre en SIGGRAPH Asia 2008 en Singapur. Si tienen éxito, debe ser algún tipo de registro de desarrollo específico de la industria, básicamente desde el prototipo hasta la versión final en 6 meses. Creo que el grupo de estudio de IEEE que estaba trabajando en los estándares de Ethernet de 40/100 Gbps tardó tanto en decidir la disposición de los asientos. En serio, sospecho que la rápida gestación de OpenCL tiene algo que ver con motivar a los miembros para que implementen estos estándares y comiencen el proyecto que Apple consiguió.

Si bien las especificaciones no estarán listas a tiempo para SC08, los groupies de Khronos presentarán una sesión informativa técnica y una recepción de OpenCL en el evento el lunes 17 de noviembre, para que la gente se ponga al día. Si te interesa echa un vistazo http://www.khronos.org/news/events/detail/opencl_sc08/. ¡Se proporcionarán aperitivos y cerveza fresca!

* ClearSpeed ​​informa que sí admiten el control de flujo dinámico, indicando que «tienen múltiples mecanismos que permiten un control de flujo dinámico puro o la ejecución prevista de instrucciones». La compañía cree que no existen barreras significativas para admitir OpenCL en el hardware ClearSpeed ​​y es posible que la API CSPX recientemente anunciada se pueda proporcionar al grupo de trabajo de OpenCL como una capa potencialmente muy útil para los usuarios que buscan escalar la suya. aplicaciones para utilizar varios aceleradores en un solo sistema. Aunque ClearSpeed ​​no es actualmente miembro del grupo de trabajo de OpenCL, están «en el proceso de comprometerse con Khronos Group y el negocio de OpenCL», agregando: «Siempre hemos apoyado la posición que los usuarios y proveedores de aceleración necesitan. heterogéneo es un estándar abierto con respecto a la proliferación de soluciones propietarias o de terceros «.

No te olvides compartir en una historia de tu Instagram para que tus colegas lo vean

??? ? ? ???

Comparte