Insegnamento HIGH PERFORMANCE COMPUTING
- Corso
- Informatica
- Codice insegnamento
- 55961406
- Curriculum
- Comune a tutti i curricula
- Docente
- Osvaldo Gervasi
- Docenti
-
- Osvaldo Gervasi
- Ore
- 78 ore - Osvaldo Gervasi
- CFU
- 9
- Regolamento
- Coorte 2022
- Erogato
- 2022/23
- 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