SISTEMI INFORMATIVI AZIENDALI Introduzione al calcolo parallelo Pierpaolo

  • Slides: 13
Download presentation
SISTEMI INFORMATIVI AZIENDALI Introduzione al calcolo parallelo Pierpaolo Guerra Anno accademico 2009/2010

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

Introduzione al calcolo parallelo p Cenni sul calcolo parallelo p Dal calcolo sequenziale al

Introduzione al calcolo parallelo p Cenni sul calcolo parallelo p Dal calcolo sequenziale al calcolo parallelo p Perché usare il calcolo parallelo? p Problematiche hardware e software p Applicazioni e sviluppi

Cenni sul calcolo parallelo (1) Per decenni, la tecnologia ha conosciuto sempre nuovi successi

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)

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

Cenni sul calcolo parallelo (2) p Nonostante ciò quando si devono eseguire calcoli molto complessi si possono incontrare: Limiti p della memoria della velocità di trasmissione della miniaturizzazione economici

Cenni sul calcolo parallelo (3) La soluzione a tali limiti è presentata dall’utilizzo contemporaneo

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 p Utilizzando più computer collegati in rete p Implementando una combinazione di computer multi-processore collegati in rete p

Cenni sul calcolo parallelo (4) • Il calcolo parallelo può quindi essere visto come

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)

Dal calcolo sequenziale al calcolo parallelo IL CALCOLO SEQUENZIALE p Risolve un problema tramite

Dal calcolo sequenziale al calcolo parallelo IL CALCOLO SEQUENZIALE p Risolve un problema tramite un algoritmo, le cui istruzione sono eseguite in sequenza p Modello computazionale caratterizzato da un singolo processore p 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]).

Dal calcolo sequenziale al calcolo parallelo IL CALCOLO PARALLELO p Risolve lo stesso problema

Dal calcolo sequenziale al calcolo parallelo IL CALCOLO PARALLELO p Risolve lo stesso problema tramite un algoritmo le cui istruzioni sono eseguite in modo parallelo p Modello computazionale che prevede processori multipli e relativi meccanismi di cooperazione p 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.

Perché il calcolo parallelo? Risolvere problemi che risultano computazionalmente troppo onerosi anche per i

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)

Limiti hardware e software p Il calcolo parallelo necessita di strutture hardware in grado

Limiti hardware e software p Il calcolo parallelo necessita di strutture hardware in grado di effettuare la parallelizzazione ( servono più CPU) p Il software che si utilizza deve essere in grado di effettuare la ripartizione delle operazioni da assegnare alle diverse cpu

Applicazioni e sviluppi Le principali applicazioni in cui tale tecnologia è risultata fondamentale sono

Applicazioni e sviluppi Le principali applicazioni in cui tale tecnologia è risultata fondamentale sono i casi simulazione numerica di sistemi molto complessi, cioè “Grand Challenge Problems”: p p p 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