Inizio della pagina -
Logo DISCO
|
Visita la Versione ad elevata leggibilità
|
Vai al Contenuto della pagina
|
Vai alla Fine dei contenuti
|
Vai al Menu Principale
|
Vai alla Barra di navigazione (sei in)
|
Vai al Menu di navigazione (albero)
|
Vai alla Lista dei comandi
|
Vai alla Lista degli approfondimenti
|
Vai al Menu inferiore
|
Logo Ateneo
   
Didattica
Sistemi paralleli

Codice Insegnamento: F1801Q030

Docente: Matteo Dominoni

Contenuti:
Il Corso presenta una panoramica completa di architetture parallele e dei relativi paradigmi computazionali. Inoltre introduce lo studente alla progettazione ed implementazione di applicazioni parallele in ambiente distribuito e su GP-GPU. 

Testi di riferimento:
Note del docente.
Grama, A. Gupta, G. Karypis, V. Kumar.Introduction to Parallel Computing, 2°Ed., Addison-Wesley, 2003.
S. Rajasekaran, J. Reif, Handbook of Parallel Computing: Models, Algorithms and Applications, Chapman & Hall/CRC, 2008

Obiettivi formativi:
Lo studente apprende paradigmi computazionali delle applicazioni parallele. Per completare l’analisi di tali applicazioni, vengono introdotte ed utilizzate le metriche di prestazione nell’attività di laboratorio su macchine parallele in ambiente MPI con gli algoritmi presentati a lezione.

Prerequisiti:
Conoscenza dei principali linguaggi di programmazione e delle architetture hardware di elaboratori.

Metodi didattici:
Lezioni frontali, seminari di approfondimento, esercitazioni di programmazione in ambiente parallelo distribuito, uso della piattaforma di e-learning

Altre informazioni:

Programma esteso:

Considerazioni di base e misura delle prestazioni. La classificazione delle architetture parallele ed i paradigmi computazionali, con approfondimento delle architetture SIMD e MIMD. Tipologie di interconnessione e modelli di comunicazione. Esempi di piattaforma distribuita: cluster di PC/workstation e su network locale e dedicato, sistemi con acceleratori grafici. Uso di librerie Message Passing Interface (MPI) quale ambiente di programmazione per la realizzazione di algoritmi paralleli su architetture multiprocessore: inizializzazione, operazioni globali, modularità .
Tecniche di parallelizzazione: tipi di decomposizione, mapping, bilanciamento del carico e tecniche di ottimizzazione. Cenni su alcuni algoritmi paralleli significativi.
Uso di ambiente di programmazione su acceleratori grafici: ambiente CUDA.
Cenni sul grid computing: cosa è grid, aspetti di sicurezza, data magement, resource management, grid information system: esempi significativi di applicazioni grid. Confronto tra grid computing e cloud computing.

Modalità di verifica dell'apprendimento:
Presentazione orale di una caso di studio su architetture hardware parallele e presentazione scritta e orale di uno studio sistematico di applicazione parallela con misure di prestazione.

Tipo esame:

Scritto e orale separati

Tipo valutazione:
Voto finale

Contenuti:
The course presents a comprehensive overview of parallel architectures and associated computational paradigms. It also introduces the student to the design and implementation of parallel applications in distributed environment and on GP-GPU.

Testi di riferimento:

Teacher Notes.
Grama, A. Gupta, G. Karypis, V. Kumar.Introduction to Parallel Computing, 2°Ed., Addison-Wesley, 2003.
S. Rajasekaran, J. Reif, Handbook of Parallel Computing: Models, Algorithms and Applications, Chapman & Hall/CRC, 2008

Obiettivi formativi:
Students learn computational paradigms of parallel applications. To complete the analysis of these parallel applications, performance metrics are introduced and used in laboratory activities on parallel machines in a MPI, using the algorithms presented in class.

Prerequisiti:
Knowledge of major programming languages​​, hardware architecture of computers and connecting networks.

Metodi didattici:
Lectures, seminars, tutorials on programming in distributed parallel environment, use of e-learning platform

Altre informazioni:

Programma esteso:

Basic considerations and performance measurement. Classification of parallel architectures and computational paradigms, with special study of the SIMD and MIMD architectures. Types of interconnection and communication patterns. Examples of distributed platform: cluster of PCs / workstations and local area network, dedicated systems with graphics accelerators. Using libraries "Message Passing Interface (MPI) as a programming environment for the realization of parallel algorithms on multiprocessor architectures: initialization, global operations, modularity.
Parallelization techniques: types of decomposition, mapping, load balancing and optimization techniques. Work on some important parallel algorithms.
Using programming environment for graphics accelerators: CUDA environment.
Work on grid computing: What is grid computing, security aspects, data magement, resource management, grid information system: examples of grid applications. Comparison of grid computing and cloud computing.

Modalità di verifica dell'apprendimento:
Oral presentation of a case study of parallel hardware architectures, written and oral presentation of a systematic study of parallel implementation with performance measurements.

Tipo esame:

scritto e orale separati

Tipo valutazione:

voto finale

Approfondimenti

Google Translate
Translate to English Translate to French Translate to German Translate to Spanish Translate to Chinese Translate to Portuguese Translate to Arabic
Translate to Albanian Translate to Bulgarian Translate to Croatian Translate to Czech Translate to Danish Translate to Dutch Translate to Finnish Translate to Greek Translate to Hindi
Translate to Hungarian Translate to Irish Translate to Japanese Translate to Korean Translate to Norwegian Translate to Polish Translate to Romanian Translate to Russian Translate to Serbian
Translate to Slovenian Translate to Swedish Translate to Thai Translate to Turkish

(C) Copyright 2016 - Dipartimento Informatica Sistemistica e Comunicazione - Viale Sarca, 336
20126 Milano - Edificio U14
redazioneweb@disco.unimib.it - ultimo aggiornamento di questa pagina 11/10/2011