Computación de Alta Performance (HPC)

Objetivo 1: construcción de librería C++ para paralelización de aplicaciones de alta performance.

Objetivo 2: integración con librería UpTools de network programing y memory management.
La continua demanda de performance de aplicaciones científicas, gráficas, de simulación y de entretenimiento, ha conducido a la industria de la electrónica al desarrollo de procesadores multicore con capacidad de procesar muchos hilos de ejecución en paralelo.
Esta capacidad no ha sido acompañada por una evolución de las aplicaciones que permita su aprovechamiento. Esto es causado por las dificultades que presenta el diseño y la programación de aplicaciones multithreading. Es por ello que la Facultad de ingeniería emprendió este proyecto para obtener y difundir herramientas que faciliten y aceleren el desarrollo de algoritmos y aplicaciones de alta performance, que utilicen multithreading de manera eficiente y que disminuyan la probabilidad de bugs.

Resultados: Se desarrolló una librería de clases C++ para paralelizar algoritmos, repartiendo el espacio de trabajo entre múltiples threads, apuntado a algoritmos y aplicaciones de alta performance (HPC), y también a servidores transaccionales. Se integró esta librería a la librería UpTools preexistente (creada también por la facultad de Ingeniería de la UP), con facilidades para administración de memoria, programación en redes, manejo de tiempos, y bases de datos.

Se obtuvieron con esta librería al utilizarla en la paralelización de algoritmos, performances similares o superiores a la Intel Threading Building Blocka (TBB), pero con mayor facilidad de desarrollo. Y se emprendieron actividades conjuntas con el Software Development Center de Intel Córdoba para la difusión del conocimiento de desarrollo de aplicaciones paralelas (Concurso Intel UP HPC).

Se publicó la librería con licencia abierta (open source) para facilitar su difusión y el acceso irrestricto a herramientas avanzadas a la comunidad en general.

Para conocer más sobre este y otros proyectos del Departamento de Electrónica y Comunicaciones de la Facultad de Ingeniería, comunicarse al 5199-4520 o al e-mail: ingenieria@palermo.edu