Logo 34 años
Logo Info UNLP Logo CIC

PROYECTO (2023-2026) F032 – Computación de Alto Desempeño y Distribuida: Arquitecturas, Algoritmos, Tecnologías y Aplicaciones en HPC, Fog-Edge-Cloud, Big Data, Robótica, y Tiempo Real.

Director: Dr. Marcelo Naiouf

Codirector: Ing. Armando De Giusti

 

Objetivos generales

  • Estudiar aspectos de arquitecturas y algoritmos en computación de alto desempeño.
  • Caracterizar las arquitecturas multiprocesador para HPC, homogéneas e híbridas, analizando técnicas para el desarrollo de código eficiente sobre las mismas.
  • Estudiar, desarrollar y aplicar algoritmos paralelos y distribuidos en HPC (incluyendo herramientas para la transformación de código heredado), evaluando la performance de la paralelización de aplicaciones sobre grandes volúmenes de datos (big data) y cómputo intensivo.
  • Analizar las métricas de performance para las arquitecturas multiprocesador, considerando escalabilidad, rendimiento computacional y energético, y tolerancia a fallos.
  • Tratar aplicaciones de cómputo multiprocesador distribuido, en el área de los Sistemas de Tiempo Real y la robótica.
  • Analizar y proponer soluciones en el área de Cloud Robotics.
  • Analizar y proponer metodologías y productos en el campo de los Sistemas de Tiempo Real y Robótica.
  • Analizar y proponer modelos matemáticos que permitan caracterizar fenómenos y sistemas particulares, proponiendo soluciones numéricas viables para resolver estos modelos.
  • Aplicar la investigación de base a problemas concretos, buscando optimizar las soluciones paralelas.
  • Formar recursos humanos a nivel de grado y postgrado en los temas del proyecto.

Cabe hacer notar que el proyecto planteado actúa de manera coordinada con otros dos proyectos presentados a esta convocatoria por el III-LIDI, en temas de Ingeniería de Software y Sistemas Inteligentes.

A continuación, se detallan los objetivos y productos finales esperados, por subproyecto.

 

SubProyecto CAD-P1. Arquitecturas Multiprocesador en Computación de Alto Desempeño.

Directores: Dr. Enzo Rucci y Esp. Franco Chichizola

Codirector: Ing. Horacio Villagarcía Wanza

 

Objetivos

  • Caracterizar las arquitecturas multiprocesador orientadas a computación de alto desempeño, analizando técnicas para el desarrollo de código eficiente sobre las mismas.
  • Analizar métricas de performance para diferentes arquitecturas multiprocesador, considerando rendimiento computacional, eficiencia energética y costo de programación.
  • Estudiar la conformación de clusters y clouds a partir de configuraciones homogéneas e híbridas de multiprocesadores. Analizar la performance de aplicaciones sobre los mismos, considerando eficiencia computacional/energética y escalabilidad, así como el esfuerzo de programación, la portabilidad y la resiliencia.

 

Líneas de Estudio/Investigación y Desarrollo

  • Estudio y caracterización de arquitecturas multicore y many-core (especialmente GPUs). Métricas de rendimiento y análisis de técnicas para desarrollar código optimizado sobre ellas.
  • Estudio y caracterización de arquitecturas FPGA y ASIC. Métricas de rendimiento y análisis de técnicas para desarrollar código optimizado sobre ellas.
  • Estudio y caracterización de arquitecturas multiprocesador asimétricas. Métricas de rendimiento y técnicas para optimizar código en ellas.
  • Arquitecturas híbridas (diferentes combinaciones de clusters, multicores, manycores y FPGAs). Diseño de algoritmos paralelos sobre las mismas.
  • Arquitecturas paralelas configuradas como Clusters y Clouds. Software de base y Aplicaciones.
  • Consumo energético en diferentes arquitecturas multiprocesador. Integración de métricas de rendimiento computacional y energético. Predicción de performance de aplicaciones paralelas.
  • Desarrollo de aplicaciones concretas (numéricas y no numéricas) sobre diferentes máquinas paralelas utilizando técnicas de optimización adecuadas a cada arquitectura.
  • Desarrollo de técnicas de tolerancia a fallas que permitan aumentar la resiliencia de sistemas paralelos y distribuidos
  • Estudio y diseño modelos de simulación basados en la arquitectura de E/S paralela para la mejora de su rendimiento.

 

Productos y/o Resultados finales esperados

  • Investigación aplicada orientada a la optimización del uso de arquitecturas multiprocesador para computación de alto desempeño, considerando las nuevas tendencias tecnológicas y la importancia creciente del tema consumo energético, portabilidad y resiliencia.
  • Formar recursos humanos en los temas de Computación de Alto Desempeño, incluyendo Tesis de Postgrado.

SubProyecto CAD-P2. Algoritmos paralelos en computación de alto desempeño. Fundamentos, construcción y evaluación de aplicaciones.

Directores: Dr. Marcelo Naiouf y Dra. Laura De Giusti

Codirectores: Dr. Adrián Pousa y Dra. Victoria Sanz

 

Objetivos

  • Investigar en temas de cómputo paralelo y distribuido de alto desempeño, tanto en lo referido a los fundamentos como a la construcción y evaluación de las aplicaciones. Esto incluye los problemas de software asociados con el uso de arquitecturas multiprocesador.
  • Interesa la construcción, evaluación y optimización de soluciones utilizando algoritmos concurrentes, paralelos y distribuidos sobre diferentes plataformas de software y arquitecturas con múltiples procesadores (multicore, clusters, GPU, FPGA, entornos cloud, coprocesadores Xeon Phi y placas de bajo costo), los lenguajes y paradigmas de programación paralela (puros e híbridos a distintos niveles), los modelos y paradigmas paralelos, la asignación de procesos a procesadores, el balance de la carga de procesamiento, y las métricas de evaluación de complejidad y rendimiento (speedup, eficiencia, escalabilidad, consumo energético, costo de programación).
  • Se propone aplicar los conceptos en problemas numéricos y no numéricos de cómputo intensivo y/o sobre grandes volúmenes de datos (aplicaciones científicas, búsquedas, simulaciones, imágenes, bioinformática, big data, criptografía, etc).

 

Líneas de Estudio/Investigación y Desarrollo

  • Investigar en temas de cómputo paralelo y distribuido de alto desempeño, en lo referido a los fundamentos y a la construcción y evaluación de las aplicaciones. Esto incluye los problemas de software asociados con el uso de arquitecturas multiprocesador:
    • Lenguajes, modelos y paradigmas de programación paralela (puros e híbridos a distintos niveles).
    • Estudio de las capacidades de lenguajes no convencionales para procesamiento paralelo, considerando rendimiento y costo de programación.
    • Análisis del proceso de migración de algoritmos entre arquitecturas diferentes, considerando portabilidad, rendimiento y esfuerzo de programación
    • Asignación de procesos a procesadores optimizando el balance de la carga de procesamiento.
    • Estudio e implementación de algoritmos de coplanificación en sistemas basados en contenedores.
    • Métricas de evaluación de complejidad y rendimiento: speedup, eficiencia, escalabilidad, consumo energético, costo de programación.
  • Construir, evaluar y optimizar soluciones utilizando algoritmos concurrentes, paralelos y distribuidos sobre diferentes plataformas de software y arquitecturas con múltiples procesadores:
    • Arquitecturas de trabajo homogéneas, heterogéneas e híbridas: multicores, clusters, GPU, Xeon Phi, FPGA, placas de bajo costo y entornos cloud.
    • Aplicar los conceptos en problemas numéricos y no numéricos de cómputo intensivo y/o sobre grandes volúmenes de datos (aplicaciones científicas, búsquedas, simulaciones, imágenes, realidad virtual y aumentada, bioinformática, big data, n-body).
  • Analizar y desarrollar ambientes para la enseñanza de programación concurrente y paralela.
    • Caracterizar diferentes modelos de arquitecturas paralelas.
    • Representar distintos modelos de comunicación/sincronización.
    • Definir métricas de evaluación de rendimiento y eficiencia energética.

 

Productos y/o Resultados finales esperados:

  • Realizar investigación aplicada en algoritmos paralelos para computación de alto desempeño sobre diferentes arquitecturas de soporte actuales (homogéneas, heterogéneas e híbridas), evaluando diferentes métricas de rendimiento.
  • Desarrollo de herramientas educativas como apoyo a la enseñanza de programación concurrente.
  • Formar recursos humanos en los temas de Computación de Alto Desempeño, incluyendo Tesis de Postgrado a nivel de Especialización, Maestría y Doctorado.

SubProyecto CAD-P3.  Procesamiento Distribuido:  EDGE, FOG y CLOUD Computing. Aspectos de Eficiencia y Resiliencia

Director: Ing. Armando De Giusti

Codirectores: Dr. Diego Montezanti e Ing. Santiago Medina

 

Objetivos

  • Analizar la integración de arquitecturas EDGE y FOG con el procesamiento en la nube (CLOUD).
  • Estudiar aspectos de eficiencia en tiempo, consumo energético y comunicaciones en sistemas distribuidos que integran niveles de procesamiento.
  • Desarrollar métodos/algoritmos orientados a Tolerancia a Fallos (Resiliencia) en este modelo de procesamiento distribuido, considerando procesadores y comunicaciones.

 

Líneas de Estudio/Investigación y Desarrollo

  • Arquitecturas aplicables en Edge y Fog Computing. Modelos de referencia.
  • Administración de recursos y datos en Edge y Fog computing. Integración de los mismos. Seguridad e integridad en los datos.
  • Vinculación de las capas Edge y Fog con el Cloud. Servicios requeridos.
  • Vinculación de las capas Edge y Fog con plataformas dedicadas al Internet de las Cosas (IoT).
  • Estrategias de distribución óptima de procesamiento entre capas.
  • Escalabilidad en aplicaciones Edge-Fog-Cloud.
  • Migración de inteligencia al nivel Edge para reducir consumo y comunicaciones.
  • Métricas de eficiencia considerando tiempo de respuesta / costo comunicaciones / consumo energético / resiliencia.
  • Algoritmos colaborativos en tiempo real integrando las tres capas.
  • Aplicaciones: sistemas inteligentes distribuidos para reducir el consumo energético.

 

Productos y/o Resultados finales esperados

  • Investigación aplicada orientada a resolver aspectos críticos del Procesamiento Distribuido que integra capas EDGE, FOG y CLOUD.
  • Integración de aplicaciones (en particular móviles) y relación entre las capas Edge y Fog.
  • Análisis de estrategias para el control de fallos en las diferentes capas de la arquitectura.
  • Aplicaciones: robots / drones colaborativos trabajando en comunicación con una capa Fog y con el Cloud.
  • Formar recursos humanos en los temas de Computación Distribuida, incluyendo Tesis de Postgrado.

SubProyecto CAD-P4. Procesamiento para problemas de Tiempo Real / Robótica

Director: Dr. Fernando G. Tinetti

Codirector: Mg. Fernando Romero

 

Objetivos 

Investigar y desarrollar metodología de cómputo destinada a Sistemas de Tiempo Real (sistemas en los cuales las restricciones temporales en los plazos son estrictas), atendiendo en especial los aspectos relacionados con planificación de tareas y comunicaciones, realizando implementaciones de robots y en general, sistemas de adquisición y control. En todos los casos, aprovechar/optimizar las características de hardware para optimizar y limitar tiempos de procesamiento y respuestas a eventos externos.

 

Líneas de Estudio/Investigación y Desarrollo

  • Optimización de cómputo, utilización de recursos y planificación de procesos para sistemas de tiempo real, atentidiendo a eventos sincrónicos o periódicos y asincrónicos.
  • Verificación y validación de diferentes plataformas de hardware, a fin de encontrar los más adecuados, como así también plantear mejoras en el mismo, utilizando simulaciones y sistemas reales a los cuales se les medirá rendimiento tanto en lo temporal como en el consumo de energía.
  • Estudio y construcción de redes de sensores, utilizando como plataforma microcontroladores interactuando entre sí o con sistemas de cómputo más complejos como PC o interconectados con Internet.
  • Estudio de posibles sistemas y protocolos de comunicaciones sean cableadas o inalámbricas ej: protocolos de MODBUS y CANBUS (cableados), o utilizando RF, Bluetooh o WiFi (inalámbricos).
  • Diseño y construcción de vehículos no tripulados, estudiando sistemas de navegación, trayectorias y odometría.

 

Metas/ Productos y/o Resultados finales esperados

  • Benchmarks y verificación de rendimiento tanto de plataformas de hardware (microcontroladores, dispositivos de comunicación, actuadores y sensores) como de software (Sistemas Operativos de Tiempo Real y lenguajes – compiladores). La verificación de rendimiento implica desarrollo de metodología y artefactos para la medición de consumo y tiempos de latencia, en particular del cómputo y entrada/salida.
  • Vehículos no tripulados con sistemas de navegación que le permiten seguir trayectorias, reconocer ambiente, evitar obstáculos.
  • Red de sensores con dispositivos heterogéneos, a diferentes niveles: local y remoto.

SubProyecto CAD-P5. Título: Modelos Matemáticos y Aritmética Computacional.

Directores: M.Sc. Oscar Bria y M.Eng. Javier Giacomantone

 

Objetivos 

  • Estudiar y evaluar modelos matemáticos, métodos numéricos y la implementación aritmética computacional que permita abordar problemas específicos en ingeniería.
  • Investigar y desarrollar distinto tipo de modelos asociados al sistema o fenómeno estudiado.
  • Determinar los métodos para evaluar el desempeño de los modelos y sus soluciones computacionales.

 

Líneas de Estudio/Investigación y Desarrollo

  • Estudio de modelos determinísticos y estocásticos para procesamiento de imágenes: modelos de difusión anisotrópica, problemas inversos con baja SNR, procesamiento de imágenes ToF (Time of Flight).
  • Diseño y evaluación de técnicas híbridas de vigilancia entre SSR (Secondary Surveillance Radar) y ADS-B (Automatic Dependent Surveillance-Broadcast).
  • Estudio y análisis de modelos probabilísticos en reconocimiento estadístico de patrones: aprendizaje probabilístico, núcleos dispersos y datos fuertemente desbalanceados.
  • Evaluación del monitoreo de la integridad de los sistemas de ayuda a la navegación aérea basados en sistemas GNSS (Global Navigation Satellite System).

 

Resultados finales esperados 

  • Contribuciones en el análisis y caracterización de modelos matemáticos y métodos computacionales aplicados a distintos fenómenos, dispositivos y procesos.
  • Determinación de los límites operativos para obtener sistemas robustos y confiables, aún fuera del alcance de las hipótesis de diseño del modelo que los sustenta.
  • Análisis del desempeño e integridad de los sistemas estudiados o adaptaciones desarrolladas.