Caracterizar las arquitecturas multiprocesador distribuidas enfocadas especialmente a cluster y cloud computing, con énfasis en las que utilizan procesadores de múltiples núcleos (multicores y GPUs), con el objetivo de modelizarlas, estudiar su escalabilidad, analizar y predecir performance de aplicaciones paralelas, estudiar el consumo energético y su impacto en la perfomance así como desarrollar esquemas para detección y tolerancia a fallas en las mismas.
Profundizar el estudio de arquitecturas basadas en GPUs y su comparación con clusters de multicores, así como el empleo combinado de GPUs y multicores en computadoras de alta perfomance. En particular estudiar perfomance en Clusters “híbridos”.
Analizar y desarrollar software de base para clusters de multicores y GPUs, tratando de optimizar el rendimiento.
Investigar arquitecturas multicore asimétricas, sus aplicaciones y el software de base de las mismas apuntando a optimizar el rendimiento de aplicaciones de propósito general.
A partir del año 2013 se han incorporado nuevas líneas de interés:
- Cloud computing, incluyendo aplicaciones de HPC sobre cloud.
- El desarrollo de aplicaciones que integran Big Data y procesamiento sobre Cloud.
- La utilización de los registros de hardware de los procesadores para la toma de diferentes decisiones en tiempo de ejecución.
- El desarrollo de herramientas para la transformación de código heredado, buscando su optimización sobre arquitecturas paralelas.
Es de hacer notar que este proyecto se coordina con otros proyectos en curso en el III-LIDI, relacionados con Algoritmos Paralelos, Sistemas Distribuidos y Sistemas de Tiempo Real.