El modelo de programación OmpS del BSC lleva la eficiencia energética a los dispositivos hardware heterogéneos

18 Enero 2021

Tras tres años de investigación, LEGaTO, el proyecto europeo coordinado por el BSC, concluye con aportaciones importantes a la eficiencia energética, que era su misión principal. El objetivo de las tecnologías desarrolladas en el proyecto era conseguir un orden de magnitud de ahorro energético en cinco casos de uso ampliamente aplicables. Además, seis proyectos del BSC con financiación europea se desarrollarán basados en los resultados de LEGaTO.

El proyecto ha conseguido los siguientes resultados en los cinco casos de uso de atención médica, hogar inteligente (smart home), ciudad inteligente (smart city), aprendizaje automático (machine learning) y la pasarela segura para el Internet de las Cosas (secure IoT gateway):

  • El primer uso de caso es una aplicación piloto de asistencia médica. Es una aplicación para el descubrimiento de marcadores biológicos, que tiene como objetivo la identificación potencial de marcadores de enfermedades. La necesidad de acelerar el análisis de biomarcadores es más relevante que nunca a la luz de la reciente emergencia sanitaria a la que está haciendo frente el mundo. En concreto, el uso de FPGAs resultó en una aceleración fenomenal de 822x en este caso de uso, que abre un nuevo horizonte al análisis de biomarcadores.
  • La finalidad de LEGaTO en el caso de uso del hogar inteligente es conseguir un gran ahorro energético, para que herramientas para la vida asistida como el espejo inteligente (smart mirror) puedan ser instaladas en residencias de gente mayor. El uso del estilo de programación de memoria compartida en GPUs distribuidas permitió un ahorro energético de 10x en el espejo inteligente. Al principio del proyecto, éste requería 600 vatios para operar, limitando enormemente su potencial de utilización. Al final del proyecto, el espejo inteligente sólo requiere 50 vatios, haciendo posible su uso.
  • El caso de uso de ciudad inteligente que modela la dispersión de polución urbana ganó 7x en eficiencia energética gracias al uso de GPUs.
  • Se obtuvo hasta 16x de eficiencia energética y rendimiento en el caso de uso de aprendizaje automático, dedicado a la conducción automatizada y a la renderización gráfica, usando el optimizador de LEGaTO.
  • La pasarela segura para el Internet de las Cosas es vital para simplificar la complejidad de comunicación de dispositivos locales a una red, y dar apoyo a los casos de uso mencionados arriba para lograr sus objetivos reduciendo la complejidad de la seguridad.

“Además de la coordinación y gestión del proyecto, el equipo del BSC ha contribuido de forma significativa a la misión de LEGaTO de aumentar el ahorro energético en un orden de magnitud en dispositivos hardware heterogéneos, basando su programación en el modelo de programación OmpSs, que permite la reutilización del código en las diferentes plataformas y basado en el modelo de ejecución de tareas siguiendo sus dependencias de datos”, afirma Osman Unsal, jefe del grupo de investigación Computer Architecture for Parallel Paradigms en el BSC y coordinador del proyecto europeo LEGaTO.

Independientemente de las optimizaciones de casos de uso mencionadas, el equipo de expertos del BSC también ha conseguido mejorar la eficiencia energética en un orden de magnitud utilizando las técnicas de undervolting (trabajo a una tensión menor que la tensión nominal) en aceleradores FPGA en aplicaciones de redes neuronales. Asimismo, se ha expandido la solución de checkpoints (puntos de control) de la interface FTI (Interface para la tolerancia a fallos, Fault Tolerant Interface) para ser usadas en GPUs y FPGAs permitiendo unos mayores niveles de fiabilidad en sistemas para altas prestaciones heterogéneos. Otros logros incluyen la habilidad de poder ejecutar tareas seguras en entornos con soporte del hardware (Intel SGX); y el uso de OmpSs@cluster para particionar la aplicación de espejo inteligente en diversos nodos, con muy buen nivel de eficiencia energética.

LEGaTO ha dado unos resultados excelentes desde del punto de vista de OmpSs, incluyendo el soporte para dispositivos CUDA y OpenCL cuando ambos están en el mismo sistema. Estos resultados incluyen combinaciones como FPGAs de Intel y GPUs CUDA de Nvidia. También se han conseguido importantes avances en el soporte que ofrece OmpSs para las FPGAs de Xilinx (también conocido como OmpSs@FPGA), y en la implementación del directorio/cache de soporte a las transferencias de datos para las GPUs y FPGAs en OmpSs-2

Por otro lado, la colaboración con Technion y Maxeler ha tenido éxito al integrar núcleos DFiant DSL, y de núcleos Maxeler como tareas de OmpSs. El desarrollo de la herramienta de análisis del grafo de tareas es fundamental para el futuro desarrollo de aplicaciones en FPGAs, para conocer específicamente qué partes de la aplicación y cómo pueden explotarse mejor en las FPGA. Por último, ha sido muy útil investigar en el uso de SGX para tareas seguras observando que OmpSs puede ejecutarse de manera segura en enclaves SGX.

Vista general del sistema LEGaTO

Además de otras iniciativas que ya están utilizando tecnologías desarrolladas en LEGaTO, seis proyectos europeos del BSC continuarán el desarrollo de los resultados logrados en LEGaTO:

  • eProcessor, coordinado por el BSC y con otros tres socios de LEGaTO, hará uso los resultados del BSC en el uso de puntos de control (FTI) energéticamente eficientes con el objetivo de proporcionar el primer conjunto de soluciones completas de código abierto basado en tecnología RISC-V.
  • La funcionalidad OmpSs@FPGA se está utilizando en los proyectos AMPERE (para trabajar aplicaciones de tiempo real), EuroEXA (para dar soporte a los nuevos prototipos), y MEEP (para desarrollar una plataforma de simulación de procesadores utilizando FPGAs, y basada en IP desarrollado en Europa).
  • OmpSs@cluster se está utilizando y desarrollando en el proyecto EPEEC, que aborda los sistemas integrados de componentes de programación que permiten la programación a Exaescala de gran productividad para los futuros superordenadores Exaescala heterogéneos.
  • Las técnicas de FPGA undervolting están siendo implementadas en el proyecto Tetramax LV-EmbeDL, liderado por el BSC y la spin-off EmbeDL.

Por último, LEGaTO también ha contribuido al documento “Towards Resilient EU HPC Systems: A Blueprint”, que se llevó a cabo con el objeto de iniciar una colaboración a nivel europeo sobre la resiliencia de sistemas HPC y para ayudar a la comunidad europea de HPC a definir buenas prácticas en esta materia.

El software de LEGaTO en GitHub está disponible aquí: https://github.com/legato-project/FinalSoftwareStack

 

Sobre LEGaTO

El proyecto LEGaTO (Low Energy Toolset for Heterogeneous Computing) está financiado por la Comisión Europea con un presupuesto de más de 5 millones de euros y tiene una duración de tres años, empezando el 1 de diciembre de 2017. Los partners del proyecto son Barcelona Supercomputing Center (BSC, España), Universitaet Bielefeld (UNIBI, Alemania), Universite de Neuchatel (UNINE, Suiza), Chalmers Tekniska Hoegskola AB (CHALMERS, Suecia), Data Intelligence Sweden AB (DIS, Suecia), Technische Universität Dresden (TUD, Alemania), Christmann Informationstechnik + Medien GmbH & Co. KG (CHR, Alemania), Helmholtz-Zentrum für Infektionsforschung GmbH (HZI, Alemania), TECHNION - Israel Institute of Technology (TECHNION, Israel), Maxeler Technologies Limited (MAXELER, Reino Unido).

Más información: http://www.legato-project.eu

 

Este proyecto ha recibido financiación del programa de investigación e innovación Horizonte 2020 de la Unión Europea según el acuerdo nº 780681