Hoy en día, el principal problema al que se enfrentan los investigadores que usan sistemas de cálculo o HPC, son:
La migración a GPU supone como inconveniente, el reescribir todo el código. Esto con departamentos que tienen sus propias aplicaciones en Fortran o versiones antiguas de aplicaciones comerciales, es un problema.
Sin embargo, muchos departamentos usan herramientas de desarrollo base como Matematica y Mathlabs o librerías de visión artificial como OpenCV. En estos casos, todo lo desarrollado sobre esta base es directamente migrable a GPU, puesto que están aplicaciones lo soportan ya en sí mismas. Además, jóvenes investigadores, realizan sus nuevos códigos partiendo de cero, lo que les permite empezar a desarrollar en GPU, que será la realidad mayoritaria en mercado en poco tiempo.
La problemática en cuanto a la dificultad de programación, ha sido reducida en gran parte, gracias a NVDIA y su tecnología CUDA. La compatibilidad desde la versión 1.0, hasta la actual 5.5 y de inminente lanzamiento 6.0, proporcionan una mayor sencillez, pero sobre todo una garantía con respecto al trabajo realizado cara al futuro.
Como podemos ver en el gráfico, las aplicaciones líderes en sectores como Dinámica molecular, ciencias materiales, ciencias de la tierra, dinámica de fluidos y otras ramas de la física, consiguen rendimientos en GPU de entre 10 y 20 veces de media, superiores a las obtenidas con CPUs de alto rendimiento, como podemos ver en el gráfico.
Esto significa que la mejora de rendimiento es espectacular, en algunas aplicaciones como NAMD o AMBER. En estas aplicaciones, podemos estar hablando de rendimientos de entre 8 y 10 veces de velocidad para una GPU frente a una CPU actual. Esto significa desde el punto de vista práctico, que un nodo con GPUs puede equivaler fácilmente a 10 o más nodos de los que hasta ahora tiene su departamento.
Actualmente, más de 70 aplicaciones de referencia añaden soporte para tarjetas gráficas aceleradoras (GPU) a fin de satisfacer la demanda de simulaciones más rápidas. Los desarrolladores de aplicaciones adoptan el cálculo acelerado, lo que permitirá a los usuarios diseñar productos de mayor calidad y profundizar sus conocimientos científicos.
En esta línea, SIE ofrece soluciones con GPU desde Workstation por solo 2.000 euros y bajo ruido, para poder poner cómodamente en su despacho, a clúster enteros de GPUs conectados por soluciones Infiniband.
De hecho, actualmente gran parte de los clúster del TOP500 están basados en soluciones de NVDIA GPU, con programación CUDA. Esta nueva tecnología permite ofrece miles de Tflops/s con la mitad de consumo que las soluciones basadas en CPU.
Por último, nos gustaría mencionar una serie de aplicaciones, la mayoría testeadas en SIE, y que funcionan perfectamente con nuestros equipos SIE Ladón GPU.
Todas ellas soportan ya tecnología multi-GPU en sus últimas versiones, lo que supone la posibilidad en nuestros sistemas de integrar actualmente hasta 4 GPUs y en un futuro inmediato hasta un total de 8 GPUs y aprovechar la capacidad que ofrecen.
Las aplicaciones más importantes, parte de ellas españolas son:
DINAMICA DE FLUIDOS COMPUTACIONAL Y MECANICA DE ESTRUCTURAS
ANSYS Fluent, Ansys Mechanical, OpenFOAM (FluiDyna Culises) y Abaqus
Con estas aplicaciones, tenemos estupendas referencias por parte de nuestros clientes, sin olvidar que SIE comercializa muchas de ellas.
A continuación, ampliaremos un poco la información sobre estas tecnologías.
QUE ES EL GPU (GRAPHIC PROCESSOR UNIT) COMPUTING
“El GPU Computing cosechó sus primeros éxitos entre los investigadores que podían emplear CUDA para acelerar sus propias aplicaciones en sus investigaciones y descubrimientos científicos”, comenta Addison Snell, consejero delegado de Intersect360 Research. “Ahora hemos entrado en una nueva era en la que hay más software comercial optimizado para las GPU, lo que amplía las oportunidades de aceleración a todo un abanico de soluciones informáticas de ingeniería y empresa”.
Esta es una lista parcial de otras aplicaciones aceleradas en la GPU comercializadas o en desarrollo:
Los procesadores paralelos más accesibles
La llegada de aceleradores de cálculo con una potente arquitectura de procesamiento paralelo, fácilmente programables en lenguajes de alto nivel y uso extendido, o que emplean compiladores de autoparalelización, ha posibilitado que los desarrolladores maximicen el rendimiento de las aplicaciones.
Los aceleradores proporcionan al desarrollador un elevado grado de flexibilidad para aprovechar el drástico incremento de velocidad de las aplicaciones con lenguajes tan generalizados como C, C++ y Fortran o el modelo de programación basado en las directivas del estándar OpenACC.
La ampliación básica de estos lenguajes de programación de alto nivel permite introducir el paralelismo con el modelo de programación y la plataforma de computación paralela NVIDIA CUDA. Actualmente la plataforma CUDA puede utilizarse con todas las GPU de NVIDIA, lo que supone una base instalada en todo el mundo de más de 415 millones de GPU con tecnología CUDA.
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. Actualmente esta en la versión 5.5 y a punto de salir la versión 6 y es compatible desde las primeras versiones 1.0. Esto permite que todas las tarjetas NVDIA soporten el estándar CUDA.
NVIDIA
NVIDIA 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 y tablets, 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.