13
Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Embed Size (px)

Citation preview

Page 1: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Introduzione al calcolo parallelo

SISTEMI INFORMATIVI AZIENDALI

Pierpaolo Guerra

Anno accademico 2009/2010

Page 2: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Introduzione al calcolo parallelo

Cenni sul calcolo parallelo

Dal calcolo sequenziale al calcolo parallelo

Perché usare il calcolo parallelo?

Problematiche hardware e software

Applicazioni e sviluppi

Page 3: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Cenni sul calcolo parallelo (1)

Per decenni, la tecnologia ha conosciuto sempre nuovi successi divenuti forza trainante per gli sviluppi delle architetture degli elaboratori.La potenza di calcolo dei computer è aumentata essenzialmente attraverso:

• Aumenti della velocità del clock

• Chip più efficienti

• Memorie più ampie

• Ottimizzazioni del calcolo (pipelining e vettorizzazioni)

Page 4: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Cenni sul calcolo parallelo (2) Nonostante ciò quando si devono eseguire

calcoli molto complessi si possono incontrare:

Limiti della memoria Limiti della velocità di trasmissione Limiti della miniaturizzazione Limiti economici

Page 5: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Cenni sul calcolo parallelo (3)La soluzione a tali limiti è presentata

dall’utilizzo contemporaneo di più risorse di calcolo che può essere ottenuto:

Utilizzando un computer singolo con più processori

Utilizzando più computer collegati in rete Implementando una combinazione di

computer multi-processore collegati in rete

Page 6: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Cenni sul calcolo parallelo (4)

• Il calcolo parallelo può quindi essere visto come un’evoluzione del calcolo seriale (sequenziale)

• In generale, è l’uso simultaneo di più CPU per risolvere un unico problema computazionale

• Per girare su più CPU, un problema è diviso in parti discrete che possono essere risolte concorrentemente

• Ogni parte è a sua volta divisa in una serie di istruzioni

• Le istruzioni di ogni parte sono eseguite contemporaneamente su CPU diverse (una CPU può eseguire al massimo una operazione alla volta)

Page 7: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Dal calcolo sequenziale al calcolo parallelo

IL CALCOLO SEQUENZIALE

Risolve un problema tramite un algoritmo, le cui istruzione sono eseguite in sequenza

Modello computazionale caratterizzato da un singolo processore

ES: Supponiamo di dover effettuare la somma di 8 numeri . Per eseguire la somma abbiamo bisogni di 7 somme, oltre ad un’assegnazione iniziale (somma=i[0]) .

Page 8: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Dal calcolo sequenziale al calcolo parallelo

IL CALCOLO PARALLELO

Risolve lo stesso problema tramite un algoritmo le cui istruzioni sono eseguite in modo parallelo

Modello computazionale che prevede processori multipli e relativi meccanismi di cooperazione

Es: Supponiamo di dover effettuare la somma di 8

numeri con 4 CPU, ognuna delle quali effettua la somma di due variabili. In seguito 2 CPU effettuano la somma dei due risultati precedenti e 1 CPU somma alla fine i due risultati ottenuti.

Bastano 3 passi invece dei 7 precedenti.

Page 9: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010
Page 10: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010
Page 11: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Perché il calcolo parallelo?

Risolvere problemi che risultano computazionalmente troppo onerosi anche per i più veloci supercomputer contemporanei

E’ possibile utilizzare il calcolo parallelo per risolvere:

• Un problema più grande nello stesso tempo (Scale-up)

•Lo stesso problema in minor tempo (Speed-up)

• Superare i vincoli di memoria

• Contenere i costi (N processori economici invece che 1 più costoso)

Page 12: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Limiti hardware e software

Il calcolo parallelo necessita di strutture hardware in grado di effettuare la parallelizzazione ( servono più CPU)

Il software che si utilizza deve essere in grado di effettuare la ripartizione delle operazioni da assegnare alle diverse cpu

Page 13: Introduzione al calcolo parallelo SISTEMI INFORMATIVI AZIENDALI Pierpaolo Guerra Anno accademico 2009/2010

Applicazioni e sviluppiLe principali applicazioni in cui tale tecnologia è

risultata fondamentale sono i casi simulazione numerica di sistemi molto complessi, cioè “Grand Challenge Problems”:

Modellazione del clima globale Simulazioni di reazioni chimiche e nucleari Studio del genoma umano Studio delle proprietà di materiali complessi Simulazione di attività geologica e sismica Progettazione di veicoli più efficienti e sicuri