Vai al contenuto principale
Foto gruppo

Calcolo parallelo (alpha)

Parallel Computing (alpha)

Componenti

Fotografia

Settore ERC

PE6_2 - Distributed systems, parallel computing, sensor networks, cyber-physical systems

Attività

L’attività del gruppo di ricerca di calcolo parallelo (alpha) è focalizzata sui modelli, i linguaggi e gli strumenti per la programmazione parallela. Per molti anni il calcolo parallelo è stato un argomento di abbastanza di nicchia, assorbito quasi interamente dalle necessità del calcolo ad alte prestazioni (HPC) dove le “prestazioni” sono appunto la ragione d’essere. Prestazioni spesso raggiunte con strumenti di sviluppo molto vicini all’hardware in modo lasciare al programmatore esperto la possibilità di sfruttare configurare e mettere a punto le applicazioni per ogni specifica macchina. Un lavoro artigianale di altissima specializzazione ed altissimo costo. In questo ambito, la complessità intrinseca dello sviluppo del codice parallelo mediante approcci molto vicini alla macchina è stato tradizionalmente considerato il prezzo da pagare per le prestazioni di poche applicazioni in esecuzione su poche macchine.

Ma cambia ciò che è superficiale e anche ciò che è profondo, cambia il modo di pensare, cambia tutto in questo mondo [cit]. Oggi - poco dopo - è solo impossibile trovare un sistema di calcolo che non sia parallelo, dal server al telefonino e una applicazione che non abbia bisogno delle tecniche legate al calcolo parallelo, a partire dai metodi moderni per Intelligenza Artificiale. Tutti questi sistemi eseguono programmi paralleli e devono essere programmati. Per tutti questi sistemi, la correttezza, la produttività, il costo e il tempo di sviluppo sono aspetti di uguale se non maggiore importanza delle prestazioni assolute. Aspetti di interesse sono la portabilità delle applicazioni su piattaforme diverse, anche eterogenee (multi-core, GPU, cluster, cloud, FPGA, …), la portabilità delle prestazioni del codice parallelo, la progettazione del codice parallelo secondo un modello di costo industriale. Cioè che permetta la produzione di applicazioni di buona qualità a un costo per unità accettabile.

Nel gruppo alpha cerchiamo di inventare, sviluppare e testare le astrazioni e gli artefatti in grado di semplificare lo sviluppo dei programmi paralleli. Cioè, ci occupiamo di modelli di programmazione.

 

  • Programming models and run-time systems for parallel computing
    • Parallel programming models for HPC, multicores and accelerators
    • RISC-V software ecosystem: vectorization, memory performance, energy efficiency
    • System software for HPC: Workflows for hybrid HPC-cloud, storage
    • Foundational aspects of parallel processing
  • Cloud Engineering, virtualization, containerization (OpenStack, Kubernetes, etc.), web3.0
  • Distributed and federated learning, foundational models for AI at scale, AI for Science

Più informazioni a Parallel Computing research group website e HPC4AI

 

Ultimo aggiornamento: 13/07/2024 15:10
Location: http://informatica.unito.it/robots.html
Non cliccare qui!