OSSERVATORIO ASTRONOMICO DI PALERMO GIUSEPPE S. VAIANA

Rapporto Annuale


Next


Up


Previous

contents
Contents


Next:Calcolo parallelo su Cray/T3EUp:Supercalcolo e calcolo paralleloPrevious:Supercalcolo e calcolo parallelo

Calcolo parallelo in loco

In campo astrofisico si rendono sempre piú necessarie grandi risorse di calcolo sia per l'analisi di grosse moli di dati, sia per l'elaborazione numerica di complessi modelli matematici. Sistemi di calcolo che oggi consentono l'accesso a tali risorse sono supercalcolatori composti da molteplici unitá di elaborazione che collaborano alla risoluzione di un dato problema. Il calcolo su sistemi paralleli ha suscitato da tempo grande interesse nel nostro gruppo. Sulla base della esperienza originariamente maturata presso IAIF/CNR mediante sistemi di transputers, il nostro gruppo ha acquisito competenze e sviluppato originali applicazioni di calcolo parallelo finalizzato all'astrofisica, sia su sistemi a multi-processore dedicati ("Computing Surface" della MEIKO), sia sulla rete di elaborazione locale, costituita da stazioni di lavoro (Unix) indipendenti, adattate a funzionare come un singolo elaboratore parallelo, sia sul supercalcolatore parallelo Cray T3E di stanza al CINECA di Bologna, acceduto remotamente via Internet da Palermo.

Come punto di partenza per queste ultime esperienze, è stata sviluppata una libreria di sottoprogrammi per la parallelizzazione di codici Fortran, di tipo "a decomposizione di dominio", cioè che eseguono operazioni su un dominio di calcolo e possono eseguire le stesse operazioni su frazioni dello dominio stesso. Tramite questa libreria è stato possibile parallelizzare rapidamente il codice idrodinamico bidimensionale FCT per applicazioni astrofisiche, scritto da ricercatori della Sezione di Astronomia del DSF&A per macchine a singolo processore. Il codice parallelo a questo stadio è stato utile per esplorare le potenzialità di questo approccio.
 
 

Figure 75: Esempio di decomposizione di un dominio di calcolo per l'esecuzione parallela di un codice idrodinamico per plasmi astrofisici: il dominio numerico (esempio di calcolo idrodinamico con un fronte d'urto che interagisce con un'addensamento nel mezzo interstellare) rettangolare riportato a sinistra è stato suddiviso in sei sottodomini uguali, ciascuno affidato ad un processore slave diverso, secondo la topologia riportata in figura. Tutti i processori slaves fanno capo e comunicano, oltre che tra loro, con un processore master (a destra) che li coordina e si occupa di operazioni d'insieme come l'inizializzazione del problema e l' input/output.
\begin{figure}\centerline{\psfig{figure=snrT1b_paint.ps,height=7cm}}\end{figure}
La nostra attenzione si è poi concentrata su elaboratori paralleli ``virtuali'' a memoria distribuita, costituiti da una, ormai comunissima, rete locale di workstations Unix a singolo processore con protocollo TCP/IP, utilizzando pacchetti software di accesso pubblico come Parallel Virtual Machine (PVM). La libreria parallela descritta in precedenza è così oggi disponibile anche in versione PVM.

I test condotti hanno mostrato che tale approccio dà risultati positivi a condizione che la rete di interconnessione sia sufficientemente e che le dimensioni dei domini di calcolo non siano troppo ridotte.



Next


Up


Previous

contents
Contents


Next:Calcolo parallelo su Cray/T3EUp:Supercalcolo e calcolo paralleloPrevious:Supercalcolo e calcolo parallelo