HSHPC: Soporte Hardware y Software para Computación de Altas Prestaciones

Mejora del rendimiento y programabilidad de sistemas de computación de altas prestaciones, desarrollo de herramientas del software para computación de altas prestaciones y infraestructuras GRID y mejora del rendimiento de aplicaciones multimedia y procesadores de propósito general

Objetivos

Los objetivos de este proyecto son una continuación de los resultados obtenidos en el desarrollo del proyecto TIN2004-07797-C02. Tomando como punto de partida estos resultados, abordaremos nuevos objetivos, algunos de ellos orientados a resolver los nuevos retos que surgirán con motivo de la instalación en el CESGA del supercomputador Finisterrae en el año 2007. Finisterrae es una «arquitectura constellation» compuesta por 142 nodos de memoria compatida con 16 núcleos Itanium, más otros tres nodos ccNUMA con 64, 64 y 128 núcleos (es decir más de 2500 procesadores y 19.000 GB de memoria). Los objetivos del subproyecto se organizan en tres áreas:

  1. Mejora del rendimiento y programabilidad de sistemas HPC. El principal punto de interés es mejorar la funcionalidad de los sistemas HPC, con especial atención a los códigos irregulares. Consideraremos códigos irregulares aquellos en los que los accesos a lo datos se produzcan a través de indirecciones o punteros, y exploraremos dos alternativas para abordar su complejidad: modelos analíticos y soluciones en tiempo de ejecución (ambas alternativas necesitan soporte de compilación). Este soporte será proporcionado por XARK, un entorno de compilación -desarrollado por la UDC- para el reconocimiento automático de un conjunto representativo de núcleos computacionales. Además, abordaremos la mejora de la programabilidad de los sistemas HPC (particularmente «arquitecturas constellation», que combinan las propiedades de los sistemas de memoria compartida con los de memoria distribuida) mediante el desarrollo de librerías PGAS optimizadas, que impliquen núcleos de computaciones frecuentes en aplicaciones paralelas soportadas deficientemente por el lenguaje; por ejemplo, nucleos de computación irregulares.
  2. Herramientas del software para HPC e infraestructuras GRID. Primero, el middleware AdCIM para la gestión de sistemas (desarrollada como parte del proyecto anterior TIN2004) será adaptado a los nuevos requisitos del supercomputador Finisterrae, y será extendido para integrarse en la infraestructura GRID. En segundo lugar, la herramienta de checkpointing CPPC (también parte del proyecto anterior) será configurada para proporcionar tolerancia de fallos sobre las aplicaciones a ejecutar en Finisterrae. También será desarrollado un servicio de Globus para manejar transparentemente la ejecución de aplicaciones con tolerancia a fallos en un entorno GRID. La tercera meta se ocupa de la comprensión y de la caracterización del rendimiento de las aplicaciones GRID, así como para la simulación exacta de sistemas GRID para reproducir ejecuciones reales; finalmente, será desarrollada una herramienta para extraer las pautas para la optimización de la ejecución en instalaciones GRID.
  3. Mejora del rendimiento de aplicaciones multimedia y procesadores de propósito general. Se abordará el diseño de nuevas unidades funcionales y arquitecturas para compresión de vídeo, nuevos algoritmos de compresión de vídeo y su implementación en procesadores de propósito general multinúcleo, DSPs de alto rendimiento y FPGAs. Además, abordaremos el diseño de unidades funcionales para mejorar el rendimiento de los procesadores de propósito general. En este último objetivo, nos centraremos en las operaciones punto flotante básicas más costosas -divisón y raíz cuadrada-, y en aritmética decimal.