C. Limongelli, F. Milicchio e A. Paoluzzi
|
Esame e Progetti 2005/06
Del materiale per la preparazione dello scritto con matrici a blocchi e MPI e` disponibile. L'elenco di assegnazione dei progetti e` in in linea. Gli eventuali link conducono al materiale di studio consigliato. Voto finale: scritto (10 punti) + progetto (15 p) + discussione (5 p). La sufficienza nello scritto e` obbligatoria.
Avvisi
I risultati dell'esame di luglio sono in linea.
Obiettivi didattici
Il corso intende introdurre lo studente alle tecniche di
programmazione parallela, nonché alle moderne architetture
hardware e software per il calcolo parallelo e distribuito,
incluse le infrastrutture di calcolo che vanno sotto il
nome di computing grids.
Il corso offrirà anche una introduzione ai linguaggi
paralleli di ultima generazione e ai metodi iterativi
distribuiti per la simulazione di problemi ingegneristici.
Risorse di calcolo
Si utilizzerà il laboratorio HPC donato dalla IBM Corporation al Dipartimento di Informatica e Automazione. Questo contiene sia un cluster di workstations che un server SMP interconnessi da software Grid:
1. Server IBM P650 8 processori PowerPC4+ 1400MHz, 16 GB
RAM, 900 GB HD
2. 8 Intellistation IBM M-Pro P4 3GHz, 1GB RAM, GPU GeForce
Quadro FX 3000
Programma
1. Introduzione. Computing grids. Architetture parallele.
Principi di progetto di algoritmi paralleli. Richiami
Unix/Linux e linguaggio C.
2. Operazioni di comunicazione. Paradigma MPI: principi,
esempi. PVM. Cluster set-up. Esempi di programmazione PVM.
3. Metriche di prestazione dei programmi paralleli. Memoria
condivisa. Threads. Programmi asincroni. Sincronizzazione.
OpenMP. Linguaggi basati su direttive. Esempi di
programmazione multithread.
4. Algoritmi paralleli: operazioni matriciali; risoluzione
sistemi lineari; search e ottimizzazione discreta;
algoritmi paralleli su grafi; File system distribuito
sicuro basato su Kerberos, OpenLDAP e OpenAFS.
5. Seminari: supercomputers e computing grids (IBM);
applicazioni aeroacustiche; volume rendering (Livermore);
PLaSM parallelo.
Linguaggi di programmazione
Materiale didattico
1. Blaise N. Barney, HPC
Training Materials, per gentile concessione del Lawrence Livermore National
Laboratory's Computational Training Center
2. Grama, Gupta, Karypis, Kumar Introduction
to Parallel Computing Addison-Wesley, Harlow, 2003.
Second edition. ISBN:0201648652
3. Ahmar Abbas Grid
Computing: A Practical Guide to Technology and
Applications Charles River Media, 2004. ISBN:1584502762
4. Slides delle lezioni