Esta última versión puede descargarse gratuitamente e incluye nuevas herramientas, librerías y funciones que aumentan la productividad del desarrollador
NVIDIA acaba de publicar la versión de producción de la plataforma de cálculo paralelo NVIDIA® CUDA® 5, el modelo de programación más utilizado para acelerar las aplicaciones científicas y técnicas en la GPU.Puede descargarse gratuitamente a través de la web Developer Zone de NVIDIA.
El modelo de programación CUDA ha registrado ya más de 1,5 millones de descargas y su utilización en más de 180 aplicaciones técnicas, científicas y comerciales la convierten en el vehículo más utilizado por los desarrolladores para aprovechar las ventajas del procesamiento acelerado en la GPU.
Para continuar con el éxito, las nuevas funciones incorporadas a CUDA 5 simplifican y agilizan más que nunca el desarrollo deaplicaciones aceleradas en la GPU con la inclusión de paralelismo dinámico, llamadas a librerías externas desde la GPU, soporte de NVIDIA GPUDirect™ para RDMA (acceso directo a memoria remota) y la introducción del entorno de desarrollo integrado (IDE) NVIDIA Nsight™ Eclipse Edition.
Comentarios de los desarrolladores sobre CUDA 5 En general, los programadores que han evaluado la versión preliminar de CUDA 5 afirman haber percibido una enorme aceleración de las aplicaciones y una sustancial mejora de la programabilidad.
Las industrias aeroespacial y de defensa aprovechan la aceleración de CUDA en la GPU para procesar imágenes, vídeos y datos de sensores como, por ejemplo, los radares a gran velocidad. Dustin Franklin, ingeniero de aplicaciones para GPGPU de GE Intelligent Platforms en Virginia, habla así de la nueva versión de la plataforma: “CUDA 5 es una tecnología de gran relevancia para nosotros. Muchas de las aplicaciones que utilizamos implican el envío de datos de los sensores directamente a la GPU con baja latencia, por lo que la posibilidad de usar GPUDirect para RDMA en las nuevas GPU Kepler es extraordinariamente importante para los clientes. Ya hemos integrado soporte para numerosos sensores adaptados y estamos muy satisfechos de los resultados”.
Guillaume Belz, investigador de bioquímica en el hospital universitario de Lyon, Francia, ha estado utilizando el paralelismo dinámico y las llamadas a librerías desde la GPU para el análisis de señales complejas y minería de datos. “Gracias a la aceleración en la GPU, podemos obtener en unas horas resultados que antes, utilizando sólo las CPU, tardábamos semanas o incluso meses en conseguir. Sin la aceleración en la GPU, no es posible realizar este análisis”, afirma Belz.
Weihua (Wayne) Sun, alumno de doctorado en el área de generación de imágenes del Instituto Tecnológico de Rochester de Nueva York, quedó impresionado con NVIDIA Nsight Eclipse Edition. “En cuanto me enteré de que CUDA 5 incluía el nuevo IDE Nsight Eclipse Edition, quise utilizarlo inmediatamente. Para mí, tener todas las herramientas de programación, depuración y optimización en un mismo entorno de desarrollo integrado representa una enorme mejora de la productividad”.
Novedades de CUDA 5 CUDA 5 permite a los desarrolladores aprovechar al máximo las ventajas de las GPU NVIDIA, entre las que se incluyen los aceleradores basados en laarquitectura de cálculo NVIDIA Kepler™, la arquitectura de procesamiento más rápida, más eficiente y de mayor rendimiento que se haya inventado jamás. Entre las principales características de CUDA 5 se incluyen:
Paralelismo dinámico: lleva la aceleración en la GPU a nuevos algoritmos Los procesos de la GPU pueden generar dinámicamente nuevos procesos, lo que permite a la GPU adaptarse a los datos. Al reducir las interacciones con la CPU, el paralelismo dinámico simplifica enormemente la programación paralela. Además, posibilita la aceleración en la GPU de un número más amplio de algoritmos conocidos, tales como los utilizados en muchas aplicaciones de dinámica de fluidos computacional y métodos de refinamiento adaptable de mallas. Llamadas a otras librerías desde la GPU: el origen de un ecosistema de desarrolladores Una nueva librería BLAS de CUDA permite a los desarrolladores utilizar el paralelismo dinámico para hacer llamadas a sus propias librerías desde la GPU. El desarrollador puede diseñar API que permitan a otros desarrolladores ampliar la funcionalidad de sus kernels e implementar retrollamadas (callbacks) en la GPU para adaptar la funcionalidad de otras librerías externas que admitan llamadas desde la GPU. La posibilidad de “vincular objetos” proporciona una forma eficiente y conocida de desarrollar aplicaciones de GPU grandes ya que otorga a los desarrolladores la capacidad de compilar múltiples archivos CUDA de origen en diferentes archivos de objetos y vincularlos a librerías y aplicaciones de mayor tamaño. Soporte de GPUDirect para RDMA: minimiza los cuellos de botella en la memoria del sistema La tecnología GPUDirect proporciona comunicación directa entre las GPU y otros dispositivos PCI-E, y acceso directo a la memoria entre las tarjetas de red y la GPU. También reduce considerablemente la latencia de MPISendRecv entre los nodos de GPU de un cluster y mejora el rendimiento general de las aplicaciones. NVIDIA Nsight Eclipse Edition: una forma rápida y fácil de generar código CUDA Con NVIDIA Nsight Eclipse Edition, los programadores pueden programar, depurar y analizar el rendimiento de las aplicaciones de GPU dentro del conocido entorno de desarrollo integrado basado en Eclipse para las plataformas Linux y Mac OS X.Un editor de CUDA integrado y los ejemplos de código CUDA ayudan a agilizar la programación, y la refactorización automática del código facilita el traslado de bucles basados en la CPU a kernels CUDA.Un sistema de análisis integrado proporciona análisis automatizado del rendimiento y una guía de instrucciones detalladas para eliminar los cuellos de botella del código. Por último, la diferenciación visual de la sintaxis ayuda a distinguir mejor entre el código de la GPU y el de la CPU.
Nuevo centros de recursos CUDA online Para ayudar a los desarrolladores a aprovechar al máximo el potencial del cálculo paralelo con la tecnología CUDA, NVIDIA ha puesto en marcha un centro de recursos gratuitos online dirigido a programadores de CUDA en http://docs.nvidia.com. Esta web proporciona la última información sobre CUDA y acceso a toda la documentación y las tecnologías de desarrollo disponibles para trabajar en esta plataforma, lo que incluye herramientas, ejemplos de código, librerías, API y guías de programación y optimización. Programa de desarrolladores de CUDA registrados Invitamos a los programadores de código paralelo a unirse al Programa de desarrolladores registrados de CUDA para tener acceso anticipado a los recursos, las herramientas y las nuevas versiones de software. Visite http://www.nvidia.com/paralleldeveloper para obtener más información.
Qué es CUDA Es una plataforma de cálculo paralelo y un modelo de programación desarrollados por NVIDIA. Aprovecha la enorme potencia de las GPU para proporcionar un incremento extraordinario del rendimiento del sistema.
Encontrará más información sobre el cálculo en la GPU en la web de NVIDIA. Para ver información detallada sobre CUDA o descargar la última versión de la plataforma, visite la web de CUDA. En la sala de prensa de NVIDIA puede encontrar los últimos comunicados de prensa, información sobre la compañía y sus productos, así como vídeos/imágenes y otra información sobre NVIDIA. Síganos en la dirección @GPUComputing de Twitter.
NVIDIA NVIDIA (NASDAQ: NVDA) mostró al mundo las posibilidades del chip de gráficos con la invención de la GPU en 1999. Hoy, sus procesadores son la base de una gran variedad de productos que abarcan desde smart phones a superordenadores. Los procesadores NVIDIA para móviles se utilizan en teléfonos celulares ytablets, y en los sistemas de infoocio de los vehículos. Los aficionados a los juegos de PC utilizan las GPU para dar vida a mundos espectaculares. Los profesionales las utilizan para crear efectos visuales en las películas y realizar todo tipo de diseños, desde palos de golf hasta grandes aviones comerciales. Por último, los investigadores aprovechan la potencia de la GPU para impulsar el avance de la ciencia a través de sistemas de alta computación. La compañía es propietaria de más de 5000 patentes en todo el mundo, algunas de las cuales proporcionan diseños y conceptos esenciales para la informática actual. Para obtener más información, entre en www.nvidia.es.
Artículo publicado en NVIDIA