Titolo del progetto di ricerca LibreRT: Portable Heterogenous Real-time Programming for the Embedded Computing Continuum

  • Website: https://librert.di.unisa.it/
  • Durata (mesi): 24 mesi
  • Campo ERC principale PE - Physical Sciences and Engineering
  • Sottocampi ERC:
    • PE6_3 Software engineering, programming languages and systems
    • PE6_1 Computer architecture, embedded systems, operating systems
    • PE6_2 Distributed systems, parallel computing, sensor networks, cyber-physical systems
  • Tipo di finanziamento: Finanziamenti da bandi nazionali Ministeriali ed altri EEPP
  • Finanziatori: Università degli Studi di SALERNO MIUR - MINISTERO DELL'ISTRUZIONE DELL'UNIVERSITA' E DELLA RICERCA
  • Importo: 100.480 euro
  • Periodo: 28 Settembre 2023 - 28 Settembre 2025

Elenco delle Unità di Ricerca

  • COSENZA (Cognome) BIAGIO (Nome) Ricercatore a t.d. - t.pieno (art. 24 c.3-b L. 240/10), Università degli Studi di SALERNO.
  • TERRANEO (Cognome) Federico (Nome) Ricercatore a t.d. - t.pieno (art. 24 c.3-a L. 240/10) Politecnico di MILANO.
    Costo totale del progetto di ricerca: (Cofinanziamento + contributo MUR).

I paradigmi emergenti dell'Industrial IoT e dell'edge computing, nonché il crescente interesse per le applicazioni come l'apprendimento automatico e l'elaborazione delle immagini, hanno aumentato drasticamente la domanda di sistemi embedded che siano, da un lato, altamente reattivi e in grado di gestire i requisiti in tempo reale, mentre, d'altra parte, può fornire una maggiore potenza di calcolo.

In particolare, i sistemi embedded eterogenei con GPU a bassa potenza sono diventati onnipresenti e possono essere trovati in domini che vanno dai dispositivi indossabili e dal mobile computing, ai sistemi automobilistici. Si prevede che architetture eterogenee si diffondano presto tra i sistemi embedded, dai sistemi micro-edge con CPU e GPU a bassissimo consumo, a sistemi deep e meta-edge più grandi e potenti per l'industria automobilistica.

Tuttavia, non esistono soluzioni software di sistema portatili in termini di modelli di programmazione, compilatori e sistemi operativi, che possano indirizzare in modo efficiente tutti i dispositivi nel continuum informatico dei sistemi embedded. Il progetto LibreRT mira a fornire uno stack software di sistema portatile, in grado di fornire un calcolo altamente reattivo, in tempo reale e ad alto rendimento per il continuum di elaborazione embedded.

Nello specifico, LibreRT propone un modello di programmazione basato su SYCL con estensioni per il tempo reale, ad esempio con pianificazione basata su priorità per CPU e GPU con supporto di prelazione, nonché calcolo approssimato, che supporta precisione mista e Tecniche di perforazione del kernel della GPU. Il modello di programmazione LibreRT si basa sulla moderna semantica C++ e su sistemi di runtime avanzati ed è in grado di indirizzare le GPU integrate. Per il sistema operativo, LibreRT si rivolgerà ai dispositivi micro-edge con Miosix, un sistema operativo con maggiore reattività e supporto di pianificazione avanzato; i dispositivi deep e meta-edge si baseranno su una distribuzione Linux più tradizionale.

Infine, un livello di autotuning introdurrà metodi adattativi e autoregolati che ottimizzano l'accuratezza dell'approssimazione per soddisfare i vincoli in tempo reale. In termini di indicatori chiave di prestazione, il progetto mira a fornire schedulatori con latenza di prelazione.