Insegnamento HIGH PERFORMANCE COMPUTING

Nome del corso Informatica
Codice insegnamento 55961406
Curriculum Artificial intelligence
Docente responsabile Osvaldo Gervasi
Docenti
  • Osvaldo Gervasi
Ore
  • 78 ore - Osvaldo Gervasi
CFU 9
Regolamento Coorte 2024
Erogato Erogato nel 2024/25
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. Architettura dei sistemi Cloud; Gestione e Bilanciamento dei Processi in ambiente Cluster e Cloud,   Cloud Computing. Virtualizzazione, Docker, Sistemi Kubernetes
Testi di riferimento 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
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: per incrementare le performances di molti applicativi. Cloud Computing: disegno e implementazione di cloud ibride. Ambienti di virtualizzazione, Docker e sistemi Kuberntes.
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.
Altre informazioni
Modalità di verifica dell'apprendimento L'esame prevede un esame scritto sulla piattaforma Libreeol (Https://libreeol.org) seguito da esame orale di circa 30 minuti nel quale lo studente deve illustrare un progetto implementato e concordato con il docente, dimostrando 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); Implementazione e amministrazione di Cluster: 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. Sistemi di virtualizzazione; Docker; Sistemi Kubernetes.
Obiettivi Agenda 2030 per lo sviluppo sostenibile Questo insegnamento concorre alla realizzazione degli obiettivi ONU dell'Agenda 2030 per lo Sviluppo Sostenibile