You are in: Home » Teaching » HPC 2020-2021

High Performance Computing
Laurea in Ingegneria e Scienze Informatiche, Università di Bologna, 2020/2021

[ Avvisi | Introduzione | Programma | Esame | Lucidi e altro materiale ]

Avvisi

10/06/2021
I voti della prova scritta del 10/6/2021 sono disponibili su AlmaEsami. I dettagli dei punteggi sono consultabili qui.
23/02/2021
I voti della prova scritta del 18/2/2021 sono disponibili su AlmaEsami. I dettagli dei punteggi sono consultabili qui. Ricordo che ai fini del calcolo della media, 30L ha peso 30, ma l'eventuale lode potrà essere usata per assegnare la lode come voto finale.
20/01/2021
I voti della prova scritta del 15/1/2021 sono disponibili su AlmaEsami. I dettagli dei punteggi sono consultabili qui. Ricordo che ai fini del calcolo della media, 30L ha peso 30, ma l'eventuale lode potrà essere usata per assegnare la lode come voto finale.
27/10/2020
Si avvisano gli studenti e le studentesse che le lezioni di martedì 27 e mercoledì 28 ottobre sono annullate causa forza maggiore. Mi scuso per lo scarso preavviso.
8/10/2020
È stato creato un canale Stream che raccoglie i video delle lezioni (accessibile solo agli utenti UniBO).
28/8/2020
Creata questa pagina.

Introduzione

Questa è la pagina del corso di High Performance Computing, corso di laurea in Ingegneria e Scienze Informatiche, AA 2020/2021, Università di Bologna (campus di Cesena). Il corso fornisce agli studenti le conoscenze teoriche e pratiche necessarie per progettare, implementare e analizzare programmi paralleli su architetture a memoria condivisa e distribuita. In particolare, durante il corso gli studenti impareranno a realizzare programmi paralleli usando OpenMP, MPI e CUDA/C.

Prerequisiti: Questo corso richiede una buona conoscenza della programmazione in linguaggio C e delle architetture dei calcolatori (a livello di quanto presentato nel corso di architettura dei calcolatori). Lavoreremo in ambiente Linux utilizzando prevalentemente software libero (compilatore GCC, libreria Open MPI; per la programmazione CUDA useremo il software proprietario NVIDIA, dato che al momento mancano alternative libere adeguate). È quindi auspicabile avere già acquisito confidenza con l'ambiente Unix/Linux e i suoi strumenti di sviluppo.

Programma, libri di testo e orario

Programma di massima

Testi di riferimento

Materiale per approfondimenti

Guide introduttive alla shell Linux

(per chi non ha seguito il corso di Sistemi Operativi con il prof. Vittorio Ghini)

Orario delle lezioni

Le lezioni si svolgeranno in parte online e in parte presso il nuovo campus universitario di Cesena. Le lezioni in aula saranno comunque trasmesse in diretta streaming, in modo che sia possibile seguirle anche da remoto.

Alcune lezioni potrebbero subire delle variazioni rispetto all'orario; si prega di fare riferimento al calendario delle lezioni che verrà aggiornato di volta in volta.

Orario del corso di High Performance Computing, AA 2020/2021
Martedì 16:00—19:00 online
Mercoledì 15:00—18:00 online

Esame

Specifiche del progetto per l'AA 2020/2021

Specifiche del progetto [PDF] [sorgenti] [dati di input (260 MB)]
Consegna tramite virtuale entro le ore 23:59 del 30 settembre 2021

Regole d'esame

Per sostenere la prova scritta è obbligatorio iscriversi tramite AlmaEsami. Le liste di iscrizione chiudono alcuni giorni prima per consentire la gestione degli aspetti logistici dell'esame, per cui è necessario iscriversi per tempo. Le date delle prove scritte sono riportate nella tabella seguente:

Prove scritte di High Performance Computing 2020/2021
Sessione invernale (Gennaio-Febbraio 2021)
I 15/01/2020 ore 10:00 online
[Dettagli voti]
II 18/02/2020 ore 10:00 online
[Dettagli voti]
Sessione estiva (Giugno-Luglio 2021)
I 10/06/2021 ore 10:00 online
[Dettagli voti]
II 01/07/2021 ore 10:00 online
È richiesta l'iscrizione tramite AlmaEsami
III 15/07/2021 ore 10:00 online
È richiesta l'iscrizione tramite AlmaEsami
Sessione autunnale (Settembre 2021)
I TBD

Lucidi e altro materiale

Codice

HPC2021.zip: esempi di programmazione illustrati durante il corso.

Istruzioni per l'accesso al server usato in laboratorio.

Lucidi e altro materiale

I lucidi non sostituiscono né i testi di riferimento né la frequenza delle lezioni e dei laboratori, che costituiscono importanti elementi per una buona preparazione dell'esame; i lucidi rappresentano uno schema di parte delle lezioni. Ringrazio chi mi segnalerà eventuali errori.

22/9/2020 ore 16:00 online
Introduzione al corso (Pacheco cap. 1)
[ODP] [PDF] [video]
Per approfondire
23/9/2020 ore 15:00 aula 3.7
Introduzione al corso (cont.)
Parallel architectures (Pacheco cap. 2 escluso 2.3.3)
[ODP] [PDF] [video]
Per approfondire
29/9/2020 ore 16:00 online
Parallel architectures (cont.)
[video parte 1] [video parte 2] [video parte 3]
30/9/2020 ore 15:00 aula 3.7
Performance Evaluation of Parallel Programs (Pacheco cap. 2.6)
[ODP] [PDF] [video]
Per approfondire
6/10/2020 ore 16:00 online
Parallel Programming Patterns (McCool et al. cap 3)
[ODP] [PDF] [video]
Per approfondire
7/10/2020 ore 15:00 aula 3.7
Shared-Memory Programming with OpenMP (Pacheco cap. 5)
[ODP] [PDF] [video]
Per approfondire
13/10/2020 ore 16:00 online
Lab OpenMP
[ODT] [PDF] [ex1-openmp.zip] [possibili soluzioni] [Istruzioni per la connessione al server] [video]
14/10/2020 ore 15:00 aula 3.7
Shared-Memory Programming with OpenMP (cont.)
[video]
20/10/2020 ore 16:00 online
Parallelizing Loops
[ODP] [PDF]
Lab OpenMP
[ODT] [PDF] [ex1-openmp.zip] [possibili soluzioni] [Istruzioni per la connessione al server] [video]
21/10/2020 ore 15:00 aula 3.7
Distributed-Memory Programming with MPI (Pacheco cap. 3)
[ODP] [PDF] [video]
Per approfondire
3/11/2020 ore 16:00 online
Lab MPI
[ODT] [PDF] [ex1-mpi.zip] [possibili soluzioni] [video]
4/11/2020 ore 15:00 online
Distributed-Memory Programming with MPI (cont.)
[video]
10/11/2020 ore 16:00 online
Lab MPI
[ODT] [PDF] [ex2-mpi.zip] [possibili soluzioni] [video]
11/11/2020 ore 15:00 online
CUDA Programming
[ODP] [PDF] [video]
Per approfondire
17/11/2020 ore 16:00 online
Lab CUDA
[ODT] [PDF] [ex1-cuda.zip] [possibili soluzioni] [video]
18/11/2020 ore 15:00 online
CUDA Programming (cont.)
[video]
24/11/2020 ore 16:00 online
Lab CUDA
[ODT] [PDF] [ex2-cuda.zip] [possibili soluzioni] [video]
25/11/2020 ore 15:00 online
SIMD Programming
[ODP] [PDF] [video]
Per approfondire
1/12/2020 ore 16:00 online
Lab SIMD
[ODT] [PDF] [ex1-simd.zip] [possibili soluzioni] [video]
2/12/2020 ore 15:00 online
Presentazione progetto d'esame
This page validates as XHTML 1.0 strict This page validates as CSS Check the accessibility of this page with WAVE
This page was last updated on June 10 2021 informativa sulla privacy