You are in: Home » Teaching » HPC 2018-2019

High Performance Computing
Laurea in Ingegneria e Scienze Informatiche, Università di Bologna, 2018/2019

[ Avvisi | Introduzione | Programma | Esami | Orario delle lezioni | Lucidi delle lezioni | Codice di esempio]

Avvisi

Questa è la pagina della precedente edizione 2018/2019 di questo corso. La pagina dell'edizione corrente si trova qui.

7/9/2019
Questa edizione del corso è conclusa

Introduzione

Questa è la pagina del corso di High Performance Computing, corso di laurea in Ingegneria e Scienze Informatiche, AA 2018/2019, Università di Bologna (campus di Cesena). Il corso intende fornire agli studenti le conoscenze teoriche e pratiche necessarie per progettare, implementare e analizzare programmi paralleli su architetture a memoria condivisa e distribuita.

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). È quindi auspicabile avere già acquisito confidenza con l'ambiente Unix/Linux e i suoi strumenti di sviluppo.

Programma del corso e libri di testo

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)

Esame

Specifiche del progetto per l'AA 2018/2019

Specifiche del progetto [PDF] (consegna entro le ore 23:59 del 30 settembre 2019)

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 2018/2019
Sessione invernale (Gennaio-Febbraio 2019)
I Martedì 22/1/2019 ore 10:00 aula 2.5
[Dettaglio voti] [Testo con alcuni commenti]
II Martedì 19/2/2019 ore 14:00 aula 2.6
[Dettaglio voti] [Testo]
Sessione estiva (Giugno-Luglio 2019)
I Mercoledì 19/6/2019 ore 10:00 aula 2.13
II Mercoledì 3/7/2019 ore 10:00 aula 2.4
[Dettaglio voti]
III Mercoledì 24/7/2019 ore 10:00 aula 2.13
[Dettaglio voti]
Sessione autunnale (Settembre 2019)
I lunedì 16/9/2019 ore 09:00 lab 2.2
È obbligatoria l'iscrizione tramite AlmaEsami

Orario delle lezioni

Tutte le lezioni si svolgeranno presso il nuovo campus universitario di Cesena.

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 2018/2019
Martedì 9:00—11:00, Lab 3.3
Giovedì 9:00—12:00, Aula 2.4

Lucidi delle lezioni

I lucidi non sono da considerare come sostitutivi né dei testi di riferimento né della frequenza alle lezioni, che costituiscono importanti elementi per una buona preparazione dell'esame; i lucidi messi a disposizione costituiscono soltanto uno schema di parte delle lezioni. Ringrazio chi mi segnalerà eventuali errori.

I lucidi al momento disponibili sono quelli usati l'anno accademico precedente; saranno possibili modifiche durante il corso, specialmente prima delle varie lezioni.

20/9/2018 ore 9:00 aula 2.4
Introduzione al corso (Pacheco cap. 1)
[ODP] [PDF]
Altro materiale
25/9/2018 ore 9:00 lab 3.3
Parallel computing architectures (Pacheco cap. 2 escluso 2.3.3)
[ODP] [PDF]
Altro materiale
27/9/2018
Lezione annullata
2/10/2018 ore 9:00 lab 3.3
Performance Evaluation of Parallel Programs (Pacheco cap. 2.6)
[ODP] [PDF]
4/10/2018 ore 9:00 aula 2.4
Parallel Programming Patterns
[ODP] [PDF]
5/10/2018 ore 11:00 aula 2.6
Parallel Programming Patterns (cont.)
9/10/2018 ore 09:00 lab 3.3
Shared-Memory Programming with OpenMP (fino slide 12; Pacheco cap. 5)
[ODP] [PDF]
Altro materiale
11/10/2018 ore 09:00 aula 2.4
Shared-Memory Programming with OpenMP (fino slide 41; Pacheco cap. 5)
16/10/2018 ore 09:00 lab 3.3
Prima esercitazione OpenMP
[ODT] [PDF] [ex1-openmp.zip] [possibili soluzioni] [Istruzioni per la connessione al server]
18/10/2018 ore 09:00 aula 2.4
Shared-Memory Programming with OpenMP (concluso; Pacheco cap. 5)
23/10/2018 ore 09:00 lab 3.3
Seconda esercitazione OpenMP
[ODT] [PDF] [ex2-openmp.zip] [possibili soluzioni]
25/10/2018 ore 09:00 aula 2.4
Parallelizing Loops
[ODP] [PDF]
Introduction to MPI (Pacheco cap. 3)
30/10/2018 ore 09:00 lab 3.3
Terza esercitazione OpenMP
[ODT] [PDF] [ex3-openmp.zip] [possibili soluzioni]
1/11/2018
No lezione (Ognissanti)
6/11/2018 ore 09:00 lab 3.3
Prima esercitazione MPI
[ODT] [PDF] [ex1-mpi.zip] [possibili soluzioni]
8/11/2018 ore 09:00 aula 2.4
Distributed-Memory Programming with MPI (cont., Pacheco cap. 3)
[ODP] [PDF]
Altro materiale
13/11/2018 ore 09:00 lab 3.3
Seconda esercitazione MPI
[ODT] [PDF] [ex2-mpi.zip] [possibili soluzioni]
15/11/2018 ore 09:00 aula 2.4
Distributed-Memory Programming with MPI (cont., Pacheco cap. 3)
20/11/2018 ore 09:00 lab 3.3
Terza esercitazione MPI
[ODT] [PDF] [ex3-mpi.zip] [possibili soluzioni]
22/11/2018 ore 09:00 aula 2.4
CUDA Programming
[ODP] [PDF]
Altro materiale
27/11/2018 ore 09:00 lab 3.3
Prima esercitazione CUDA
ODT] [PDF] [ex1-cuda.zip] [possibili soluzioni]
29/11/2018 ore 09:00 aula 2.4
CUDA Programming (cont.)
Compilazione questionari sul corso
4/12/2018 ore 09:00 lab 3.3
Seconda esercitazione CUDA
[ODT] [PDF] [ex2-cuda.zip] [possibili soluzioni]
6/12/2018 ore 09:00 aula 2.4
CUDA Programming (cont.)
11/12/2018 ore 09:00 lab 3.3
Terza esercitazione CUDA
[ODT] [PDF] [ex3-cuda.zip] [possibili soluzioni]
13/12/2018 ore 09:00 aula 2.4
SIMD Programming
[ODP] [PDF]
18/12/2018 ore 09:00 lab 3.3
Esercitazione SIMD
[ODT] [PDF] [ex1-simd.zip] [possibili soluzioni]
20/12/2018 ore 09:00 aula 2.4
Presentazione del progetto d'esame

Codice di esempio

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

Istruzioni per l'accesso al server usato in laboratorio.

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 September 07 2019 informativa sulla privacy