- Docente: Moreno Marzolla
- Crediti formativi: 6
- SSD: INF/01
- Lingua di insegnamento: Italiano
- Modalità didattica: Convenzionale - Lezioni in presenza
- Campus: Bologna
- Corso: Laurea in Informatica per il management (cod. 8014)
Conoscenze e abilità da conseguire
Al termine del corso, lo studente acquisisce le competenze di base per progettare e implementare algoritmi paralleli su architetture hardware a memoria condivisa o distribuita ed analizzarne le prestazioni. Dopo una rassegna delle architetture hardware parallele (processori multi-core, cluster, GP-GPU, macchine parallele dedicate), lo studente acquisisce i concetti fondamentali di speed-up, bilanciamento e distribuzione del carico e verranno presentate alcune tecniche di programmazione per tali architetture (ad esempio, MPI ed OpenMP). In particolare possiede conoscenze sulle applicazioni al calcolo numerico e al data mining
Contenuti
- Introduzione alle architetture di calcolo parallelo: cluster,
sistemi multiprocessore, GPGPU
- Paradigmi di programmazione parallela
- Valutazione delle prestazioni di algoritmi paralleli
- Introduzione di base ai principali algoritmi paralleli
(ordinamento, ricerca, algoritmi numerici)
- Linguaggi e strumenti per la programmazione parallela
- Programmazione parallela con MPI e OpenMP
Testi/Bibliografia
- Blaise Barney, Introduction to Parallel Computing, Lawrence Livermore National Laboratory
- I. Foster. Designing and Building Parallel Programs. Addison-Wesley, 1995 (Available online).
Metodi didattici
Lezioni frontali ed esercitazioni
Modalità di verifica e valutazione dell'apprendimento
Prova scritta o progetto di programmazione.
Strumenti a supporto della didattica
Lucidi delle lezioni, codice sorgente di esempi svolti.
Link ad altre eventuali informazioni
http://www.moreno.marzolla.name/teaching/ParComp2012/
Orario di ricevimento
Consulta il sito web di Moreno Marzolla