Computación con GPUs en la UPV/EHU

.

Servicio General de Informática Aplicada a la Investigación (Cálculo Científico) ha adquirido para su cluster Arina nodos con tarjetas gráficas para computación científica.

Computación científica con GPUs

Las GPUs (Graphics Procesing Units) son las tarjetas que se han desarrollado y han empleado los ordenadores para mejorar la presentación gráfica en pantalla. Son especialmente importantes en aplicaciones gráficas como programas de ingeniería en 3D tipo CAD, aplicaciones de vídeo y para videojuegos.

Estas tarjetas están especialmente diseñadas y optimizadas para esta tarea y son muy rápidas realizándolas. Para ello usan cientos de pequeños núcleos de procesamiento que trabajan parelelamente sobre la imagen. No obstante, ya hace algún tiempo que los videojuegos empezaron a resolver la ecuaciones Newtonianas del movimiento en las GPUs para calcular las trayectorias de los objetos, por ejemplo la de un deportista saltando. Desde entonces ha habido aplicaciones científicas que se han ido desarrollando para ejecutarse en GPUs y exprimir su potencia. Al mismo tiempo los diseñadores de GPUs han visto en el área científica un posible nicho de mercado y han desarrollado GPUs adaptadas al cálculo científico. Uno de los últimos y más importantes avances ha sido la implementación de la doble precisión de forma nativa (algo crucial en la mayoría de cálculos científicos).

La CPU de un ordenador típico de cálculo tiene  8 núcleos que son capaces de gestionar un ordenador de propósito general y en particular de realizar cálculos. Las GPUs disponen de cientos de núcleos y he ahí su potencial para realizar cálculos paralelamente masivos. No obstante, son núcleos muy pequeños y específicos y no hay una equivalencia 1 a 1 entre un núcleo de CPU y otro de GPU. Se puede conseguir una aceleración de los códigos muy importante que dependerá de como el código se pueda adaptar  a la GPU. El mayor problema hoy en día para el uso de GPUs es que es necesario adaptar los códigos aunque hay herramientas que simplifican el proceso.

GPUs en la UPV/EHU

Como hemos comentado el Servicio de Calculo Científico ha adquirido 4 nodos con GPUs. El objetivo principal es analizar esta nueva tecnología y sus aplicaciones, y así estudiar y conocer la viabilidad de esta tecnología para una posible futura implantación más masiva como herramienta de cálculo en el Servicio. Estas GPUs están disponibles para su uso por la comunidad a través del Servicio. Las características básicas se enumeran a continuación.

Características básicas

  • 4 nodos cada uno con 2 tarjetas GPU. 2 Nodos con tipo Tesla C2050 y los otros dos con tarjetas Tesla C2070.
  • 448 cores por tarjeta.
  • 3/6 GB de memoria DDR5 para las tarjetas C2050/C2070.
  • 515 Gflops en doble precisión y 1.03 Tflops en simple precisión.
  • Instaladas en nodos de cálculo de 8 cores Xeon, 24 GB de RAM y doble tarjeta infiniband.
  • Suite CUDA de programación para GPUs.
  • Compilador PGI de C y Fortan para generar código para GPUs.

Leave a Reply