Architetture avanzate (2017/2018)

Codice insegnamento
4S02910
Docente
Nicola Bombieri
Coordinatore
Nicola Bombieri
crediti
6
Altri corsi di studio in cui è offerto
Settore disciplinare
ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Lingua di erogazione
Italiano
Periodo
II sem. dal 1-mar-2018 al 15-giu-2018.

Orario lezioni

Vai all'orario delle lezioni

Obiettivi formativi

Il corso ha l’obiettivo di fornire gli strumenti per la programmazione e l'analisi di architetture di calcolo avanzate con particolare enfasi alle piattaforme multiprocessore e GPU. Per ogni argomento sono previste lezioni teoriche e di seguito (stesso giorno o giorni seguenti secondo il calendario) esercitazione in laboratorio. A completamento del corso gli studenti saranno in grado di programmare architetture parallele avanzate per ottimizzare i tempi di calcolo (performance) nel contesto di applicazioni complesse o grosse moli di dati. Saranno altresì analizzati e ottimizzati performance, work-efficiency e qualità dei risultati della computazione parallela.

Programma

Teoria (32h):
Intro High-performance computing (HPC)
Parallel architectures
Parallel programming models
HPC and Symmetric Multi-Processors (SMP): OpenMP
HPC and Message Passing Interface (MPI): OpenMPI
Graphic Processing Units (GPUs): overview, parallel programming model, threads, memory model.
Performance measurement
GPU performance considerations
GPU data transfers and streams.
Parallel graph algorithms for GPUs: BFS and SSSP
OpenCL and OpenACC
Modeling for qualitative simulation in Systems Biology targeting HPC

Laboratorio (24h):
OpenMP
OpenMPI
CUDA
OpenCL
R parallel pack
Qualitative modelling lab.

Testi di riferimento
Autore Titolo Casa editrice Anno ISBN Note
John L. Hennessy, David A. Patterson Computer Architecture - A Quantitative Approach (Edizione 5) Morgan Kaufmann 2011 012383872X
David B. Kirk, Wen-mei W. Hwu Programming Massively Parallel Processors - A Hands-on Approach (Edizione 3) Morgan Kaufmann 2017 978-0-12-811986-0

Modalità d'esame

L’esame consiste nello sviluppo di un progetto concordato con il docente previo richiesta via email e appuntamento per l’elaborazione delle specifiche (il progetto ha validità tutto l’anno accademico). I progetti hanno diversi livelli di difficoltà. Ad ogni difficoltà corrisponde un valore massimo di valutazione. Gli studenti sosteranno un colloquio per commentare e approfondire la prova sostenuta.

I frequentanti al corso potranno esporre alla classe le tematiche del loro progetto, il contesto di ricerca in cui il progetto è collocato, e lo stato di avanzamento dello stesso.

Il voto per il progetto (voto_progetto) è espresso in trentesimi.

Il voto finale è calcolato come min(31, (voto_progetto + Bias)).
Bias è espresso nell'intervallo[-4,+4] e riflette la maturazione e autonomia scientifica acquisita durante lo sviluppo del progetto, nell’esposizione e nell’interpretazione della letteratura scientifica e del contesto scientifico del progetto.

Opinione studenti frequentanti - 2017/2018


Statistiche per i requisiti di trasparenza (Attuazione Art. 2 del D.M. 31/10/2007, n. 544)

I dati relativi all'AA 2017/2018 non sono ancora disponibili