elenco   
        corso   

Applicazioni Parallele e Distribuite

Codice: AA277Crediti: 6Semestre: 2Sigla: APD 
 
Settore disciplinare: INF/01 - Informatica

Docente

Domenico Laforenza   domenico.laforenza@isti.cnr.it  Tel. 0503152992

Obiettivi di apprendimento

I principali obiettivi del corso riguardano lo studio delle metodologie e degli strumenti per la progettazione ed implementazione di applicazioni parall ele in ambiente di metacomputing e grid computing.

Descrizione

Durante il presente corso, dopo una introduzione di carattere generale al metacomputing, verranno trattate specificamente le metodologie e gli strumenti per la progettazione ed implementazione di applicazioni parallele in ambiente di metacomputing e grid computing. Contestualmente, verranno presentate alcune delle piu' importanti tematiche di ricerca correlate a questo emergente filone tecnico-scientifico e verranno presi in esame alcuni tra i piu' attuali e significativi progetti sull'argomento. La parte finale del corso sara' dedicata ai trend futuri di questo settore e, in particolare, al crescente interesse verso un approccio indicato come W eb-based Parallel Computing. Infatti, anche in virtu' del rapido ed imponente sviluppo di Internet, alcuni ricercatori ipotizzano lo sfruttamento del World Wide Web visto come una infrastruttura per eseguire applicazioni multi-disciplinari, utilizzando un elevato numero di risorse computazionali eterogenee. Secondo questa visione il WWW e' inteso come un metacalcolatore, conveniente e potenzialmente illimitato.

English Description

In this course, after an overview of the main research issues concerning metacomputing and grid computing, some of the most important experiments and projects conducted in this field worldwide will be presented. Moreover, the course will provide a comprehensive overview of the methodologies and the tools to design and implement parallel applications for metacomputers. Lectures will be divided into two components, one part covers the theoretical background; the other part covers the parallel programming environment. Some lectures will be dedicated to the future trends and in particular to the rising interest towards the so-called Web-based Parallel Computing. In fac t, mainly due to the rapid and impressive spreading of Internet, some researchers are becoming to exploit the World Wide Web seen as an infrastructure for running coarse grained parallel applications (meta-applications, multi-disciplinary applications) on numerous machines. In this view, the WWW has the capabilities to become a suitable and potentially infinite scaleable metacomputer for parallel and collaborative work. The practical parts of the course will be dedicated to PVM (Parallel V irtual Machine), a consolidated parallel programming tool used to develop parallel applications. The hardware environment will be a Linux-based cluster of workstations.

Programma

Lezione n. 1
Presentazione del Corso
Brevi di richiamo sull'elaborazione parallela
* Parallelismo e computing.
* Evoluzione delle applicazioni richiedenti elevate prestazioni.
* Nuovi orizzonti e scenari per le architetture ad elevate prestazioni

Lezione n. 2
* Dal palm top alla TeraFlop/s Machine

Lezione n. 3
* Metacomputing, Heterogeneous Computing, Seamless Computing, Computational Grids
* Perchè il metacomputing è necessario
* Architettura di un metacalcolatore
* Differenti approcci al metacomputing
* Introduzione ad alcuni dei principali progetti di ricerca sul metacomputing

Lezione n. 4
Applicazioni per metacomputing: meta-applicazioni, applicazioni multi-disciplinari
* Distributed supercomputing
* Real-time distributed Instrumentation systems
* Data-intensive computing

Lezione n. 5
Metodologie e problematiche per la progettazione di applicazioni multi-disciplinari
* Esplicitazione del Parallelismo
* Partizionamento dei dati e del controllo
* Cooperazione: comunicazione/località
* Scheduling e bilanciamento del carico
* Portabilità
* Performance tuning

Lezione n. 6
* Stato dell'arte degli strumenti per lo sviluppo di applicazioni parallele
* Librerie message passing
* PVM, MPI, PACX-MPI
* Linguaggi paralleli ad alto livello
* Modello data-parallel
* Strumenti per il debugging e la valutazione delle prestazioni
* Librerie parallele
* Compilatori, linguaggi e librerie
* Tecnologie attuali
* Direzioni future

Lezione n. 7
Scheduling in ambiente di meta-computing
* Introduzione al problema
* Caso di studio: il progetto AppleS

Lezione n. 8
* Cluster Computing

Lezione n. 9
High-Throughput Computing
* Caso di stu dio: Condor

Lezione n. 10
Il progetto GLOBUS
* Introduzione
* Resource Mangement
* Comunicazione
* Informazione
* Sicurezza

Lezione n. 11
Ambienti di Proble m-Solving
* Application Toolkits

Lezione n. 12
Web Metacomputing
* High-Performance Commodity Computing
* Java: un linguaggio per metacomputi ng?
* Interoperabilità: CORBA
* CORBA per High Performance Computing

Lezione n. 13
Infrastrutture di rete
* Test beds per metacalcolatori

Lezione n. 14
Il problema della sicurezza in ambiente di metacomputing
* Introduzione al problema della sicurezza
* Autenticazione, integrità, non-ripudio, riservatezza
* Tecnologie per la sicurezza

Lezione n. 15
* Introduzione al Data Mining

Esercitazione n. 1-2
Librerie per message passing: PVM (Parallel Virtual Machine)
* Descrizione del sistema
* Download e installazione di PVM
* Esecuzione di programmi in PVM
* Tecniche di programmazione di base
* PVM User Interface
* Esempi di programmi

Esercitazione n. 3-4
PVM (Parallel Virtual Machine)
* Come funziona PVM: dettagli implementativi
* PVM User Interface
* Componenti
* Messaggi
* PVM daemon
* La libreria Libpvm
* protocolli
* L'ambiente dei task
* PVM User Interface
* Controllo dei processi
* Informazioni
* Configurazione dinamica
* Signaling
* Message Passing

Esercitazione n. 4-5
* Come funziona PVM
* Componenti
* Messaggi
* PVM daemon
* La libreria Libpvm
* Protocolli
L'ambiente dei task

Esercitazione n. 6-7
* Grafical User Interface di PVM
* XPVM
* WAMM

     

Bibliografia

The GRID - Blueprint for a new Computing Infrastructure Edited by Ian Foster and Carl Kesselman., Morgan Kaufmann Press 1998 PVM: Parallel Virtual Machine Al Geist, Adam Beguelin, Jack Dongarra, Weicheng Jiang, Robert Manchek, and Vaidy Sunderam, MIT Press 1994 Parallel Programming: Techniques and Applications Using Networked Workstations and Parallel Computers Barry Wilkinson, Michael Allen, Prentice Hall, 1998 ***** Modalita' di esame ***** L'esame prevede una parte progettuale e una prova orale. Gli studenti si organizzaranno in gruppi (tipicamente 2 persone max per gruppo). A ciascun gruppo sara' assegnato un progetto che consistera' nella progettazione-prototipazione-valuatazione di una meta-applicazione. Al termine del progetto, gli studenti sosterranno una prova orale individuale (una discussione su un articolo di ricerca o tecnico, assegnato a ciascuno studente al termine del corso).

Modalità di esame

Scritto e orale

Ulteriore pagina web del corso: http://brunello.cnuce.cnr.it/domenico/SAP3.html


home


email