DALL’ARCHITETTURA DI VON NEUMANN AL CALCOLO PARALLELO Buro Federica ARCHITETTURA DI VON NEUMANN Il modello di architettura informatica di Von Neumann è formato da quattro elementi: ESTENSIONI DELL’ARCHITETTURA DI VON NEUMANN • I calcolatori attuali seguono ancora i principi di von Neumann, ma con alcune estensioni per migliorare le prestazioni: - processori dedicati per eseguire particolari operazioni in modo molto efficiente ed in parallelo alla CPU; - possibilità di eseguire alcune istruzioni in parallelo; - calcolatori con diverse CPU che agiscono contemporaneamente (macchine parallele o multiprocessore come i supercomputer per eseguire calcoli complicati molto velocemente) CALCOLO PARALLELO • È un’evoluzione del calcolo seriale e consiste nell’esecuzione simultanea di un problema su più CPU dello stesso processore, al fine di poter migliorare le prestazioni del sistema. • Per indicare computer con più CPU si usa il termine “processore parallelo”. APPLICAZIONI • • • • • Modellazione del clima globale Simulazione reazioni chimiche Previsioni del tempo Simulazione attività geologica e sismica Applicazioni commerciali: applicazioni che richiedono il processing di grandi moli di dati con algoritmi molto sofisticati: - database paralleli e data mining - diagnostica medica - motori di ricerca per il web USARE IL CALCOLO PARALLELO • Risolvere problemi più grandi • Risparmiare tempo • Grande capacità di memorizzazione • Costo molto elevato ALGORITMI • La maggior parte degli algoritmi deve essere riscritta per poter utilizzare il calcolo parallelo. Infatti, non basta mettere più processori uno vicino all’altro e connetterli per ottenere in calcolo parallelo. SOFTWARE • Sono stati sviluppati anche software per programmare computer paralleli. Questi sistemi devono contenere i meccanismi necessari per poter suddividere il calcolo tra le varie unità. TASSONOMIA DI FLYNN Classificazione dei calcolatori: - SIMD (Single Instruction Multiple Data) : i processori eseguono la stessa istruzione contemporaneamente con differenti flussi di dati - MIMD (Multiple Instruction Multiple Data): i processori hanno programmi e flussi di dati differenti SIMD (Single Instruction Multiple Data) MIMD (Multiple Instruction Multiple Data) CLASSIFICAZIONE È possibile classificare le macchine parallele in base al modo in cui gestiscono l’indirizzamento della memoria: - SHARED Memory: i processori operano indipendentemente, condividendo tutta la memoria. - DISTRIBUTED Memory: ogni processore dispone di un’area di memoria locale e i dati possono essere scambiati solo attraverso network di comunicazione. SHARED MEMORY DISTRIBUTED MEMORY