Insegnamento HIGH PERFORMANCE COMPUTING
Nome del corso | Informatica |
---|---|
Codice insegnamento | 55961406 |
Curriculum | Comune a tutti i curricula |
Docente responsabile | Osvaldo Gervasi |
Docenti |
|
Ore |
|
CFU | 9 |
Regolamento | Coorte 2022 |
Erogato | Erogato nel 2022/23 |
Erogato altro regolamento | |
Attività | Caratterizzante |
Ambito | Discipline informatiche |
Settore | ING-INF/05 |
Tipo insegnamento | Obbligatorio (Required) |
Tipo attività | Attività formativa monodisciplinare |
Lingua insegnamento | INGLESE |
Contenuti | Introduzione all’High Performance Computing (HPC) e all'High Throughput Computing (HTC); Implementazione e amministrazione di Cluster. Costruzione di servizi scalabili ed in alta affidabilità. Il progetto Condor per High Throughput Computing. GPGPU Computing; OpenCL. Calcoli Matriciali e Filtri di Immagini in GPGPU; Cloud Computing. Piattaforme Software per Cloud; Implementazione di infrastrutture per Deep learning e l’ analisi di Big Data |
Testi di riferimento | 1. J. Garrison and K. Nova, Cloud Native Infrastructure-Patterns for Scalable Infrastructure and Applications in a Dynamic Environment, O’Reilly and Associates, 2018, ISBN: 978-1-492-03969-3 2. R. Buyya, J. Broberg, A. M. Goscinsky: Cloud Computing: Principles and Paradigms, Wiley, 2011, ISBN 978-0-470-88799-8 3. Materiale didattico fornito dal docente con riferimenti bibliografici |
Obiettivi formativi | L'obiettivo principale del corso è quello di introdurre lo studente allo studio di sistemi emergenti che sono tra l'altro alla base della realizzazione dei moderni data center e al rilascio di ambienti in alta affidabilità, oltre a presentare i sistemi ad alte prestazioni, fondamentali per l'avanzamento della conoscenza e della scienza, e per erogare servizi moderni, inclusi quelli in ambiente mobile. Le principali conoscenze acquisite saranno: • disegno e implementazione di sistemi Cluster: principali problematiche e modalità di istallazione e configurazione • Servizi ad alta affidabilità e sistemi ad alte prestazioni • L'ambiente Condor per la realizzazione di Cluster High Throughput • GPGPU Computing e programmazione OpenCL di GPU: come incrementare le performances di molti applicativi. • Cloud Computing: disegno e implementazione di cloud ibride. • Data Analysis: Deep Learning e Big Data Analysis. Le principali abilità (vale a dire la capacità di applicare le conoscenze) acquisite sono: • Capacità di disegnare e implementare un Cluster di computer, evitandone le possibili criticità • Capacità di disegnare e implementare i servizi di rete e applicazioni in alta affidabilità • Capacità di pianificare ed implementare GPGPU computing per calcolo ad alte prestazioni e per l'aumento di prestazioni in ambienti Multi/many core. • Capacità di pianificare ed implementare un ambiente Cloud ibrido • Implementazione di infrastrutture per Deep learning e Big Data Analysis. |
Prerequisiti | Nessun prerequisito è richiesto allo studente; si considera che lo studente abbia comunque dimestichezza con il disegno e la configurazione dei servizi della rete Internet. La conoscenza approfondita dei sistemi operativi open source come Linux agevola l'acquisizione dei concetti del corso. Nel corso delle lezioni verranno comunque forniti esempi e casi d'uso volti ad agevolare l'apprendimento dei concetti illustrati a lezione. |
Metodi didattici | Lezione frontale con l'ausilio di strumenti multimediali (slides, video, etc). Esercitazione in sala computer. In caso di lockdown le lezioni e le esercitazioni verranno erogate a distanza. |
Altre informazioni | Il docente è disponibile ad erogare lezioni e sessioni di laboratorio in inglese, francese e spagnolo. Il docente è disponibile a svolgere le sessioni di esame in inglese, francese e spagnolo. |
Modalità di verifica dell'apprendimento | L'esame prevede un esame scritto su sistema LibreEOL ed una prova orale di circa 10 minuti nel quale lo studente deve presentare le relazioni inerenti le attività di laboratorio e dimostrare la padronanza dei concetti richiesti, una adeguata proprietà di linguaggio e la capacità di organizzare i concetti da esporre in modo adeguato. |
Programma esteso | Il corso introduce gli studenti alle moderne tecnologie che permettono la realizzazione di data center e di erogare applicazioni in ambienti di alta affidabilità e bilanciamento del carico. In particolare verranno trattati i temi seguenti: Introduzione all'High Performance Computing (HPC) e all'High Throughput Computing (HTC); Beowulf clusters; Implementazione e amministrazione di Cluster: OpenMosix, Oscar, Roks; Costruzione di servizi scalabili; Realizzazione di servizi ad alta affidabilità in ambiente Cluster: Heartbeat, Corosync, PaceMaker. Condor: istallazione, implementazione e design di un Cluster High Throughput. GPGPU Computing. linguaggio di programmazione OpenCL. Cloud Computing: presentazione e implementazione di una Cloud ibrida. Data Analysis: Depp Learning e Big Data Analysis |