Obiettivi formativi
La finalità del corso è quella di definire e caratterizzare i sistemi di elaborazione dell’informazione, con particolare riferimento ai sistemi paralleli e distribuiti. Viene sviluppata una solida base teorica riguardante lo studio delle prestazioni e i modelli di programmazione dei sistemi di elaborazione complessi. Vengono illustrati alcuni importanti strumenti per la programmazione parallela e distribuita. Vengono descritti il paradigma peer-to-peer e i principi dei sistemi autonomici, nonché alcune soluzioni per la progettazione di sistemi peer-to-peer adattativi. L’ultima parte del corso riguarda la simulazione di sistemi complessi, con particolare riferimento ai sistemi peer-to-peer e autonomici.
Prerequisiti
- - -
Contenuti dell'insegnamento
Sistemi e modelli
- Spazio degli stati
- Modelli deterministici e modelli stocastici
- Sistemi complessi
- Sistemi complessi adattativi
- Dinamiche di popolazione
- Topologie di rete
- Modelli DEVS
Elaborazione automatica dell'informazione
- Cenni di teoria dell'informazione
- Tassonomia dei sistemi di elaborazione
- Automi
- Architettura di Von Neumann
Calcolo parallelo
- Concetti generali
- Modelli di programmazione parallela
- Sistemi multicore, Cell, General Purpose GPU Programming
- Architettura NUMA; Onyx2
- Parallelismo massivo, CM2
- Message Passing Interface (MPI)
Calcolo distribuito
- Cluster computing
- Grid computing
Cloud computing
- Pervasive computing
Sistemi Peer-to-Peer
- Variabili di stato
- Dinamiche delle reti peer-to-peer
- Problematiche di progettazione
- Strategie di progettazione degli schemi di overlay
- Schemi di overlay più noti (Napster, BitTorrent, eMule, JXTA, Skype, Chord)
- Il middleware Sip2Peer
Autonomic Computing
- I quattro principi dell'autonomic computing
- Networked Autonomic Machine
- Adaptive Evolutionary Framework
Simulazioni
- Concetti generali sulle simulazioni
- Simulazioni orientate agli eventi
- DEUS: un tool per simulazioni complesse
Esercitazioni con il middleware Sip2Peer.
Esercitazioni con il tool di simulazione DEUS.
Programma esteso
- - -
Bibliografia
1) C. Ghezzi, D. Mandrioli, "Informatica Teorica", Città Studi, 1989.
2) D. E. Culler, J. Pal Singh, “Parallel Computer Architecture: A Hardware/Software Approach”, Morgan Kaufman, 1999.
3) B.P. Zeighler, H. Praehofer, T.G. Kim, "Theory of Modeling and Simulation", Second Edition, Academic Press, 2000.
Metodi didattici
Lezioni frontali.
Modalità verifica apprendimento
Esame scritto e piccolo progetto.
Altre informazioni
- - -