Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Relazione attività di dottorato
- XXI ciclo -
Filippo MantovaniFilippo Mantovani
28 Novembre 2006
Università degli Studi di Ferrara
Filippo Mantovani, 28/11/2006 2
SommarioSommario
● Il progetto IANUS
● Il problema fisico e gli algoritmi
● La progettazione dei prototipi
● Un processore IANUS nel dettaglio
● Traguardi raggiunti e prospettive
Filippo Mantovani, 28/11/2006 3
Il progetto IANUSIl progetto IANUS
Collaborazione interuniversitaria tra:
Progettazione e realizzazione di un calcolatore dedicato:
● caratterizzato da parallelismo massiccio;
● orientato alla fisica statistica, ma riconfigurabile;
● basato su logiche programmabili (FPGA);
Universita' di Ferrara
Institute for Biocomputation
and Physics of Complex Systems
(Zaragoza)
Universita' “La Sapienza”
(Roma)
Filippo Mantovani, 28/11/2006 4
La meccanica statisticaLa meccanica statistica
ESEMPIO: la SM spiega il perche' i magneti abbiano una temperatura di transizione in termini di spin (o dipoli magnetici elementari) associati a ciascun atomo nella materia.
La meccanica statistica (SM) descrive il comportamento di sistemi macroscopici in termini di valori medi di quantita' microscopiche.
Diagramma di un sistema magnetico 1D:
Filippo Mantovani, 28/11/2006 5
Il problema fisicoIl problema fisico
Il modello di ISING (IM) descrive il comportamento appena visto!
Il modello di ISING in breve:
● Ogni spin interagisce solo con i suoi primi vicini in una griglia discreta n-dimensionale;
● L'energia media di un sistema e' data da: con
● Ogni configurazione S ha una probabilita' data dal fattore di Boltzman:
● Gli osservabili macroscopici hanno valori medi ottenuti sommando tutte le configurazioni ciascuna pesata con la propria probabilita'.
NOTA: Il IM prevede che le costanti J assumano tutte il valore 1. Il modello diventa notevolmente piu' complesso se si assumono tali costanti in modo casuale in {-1,1}. (Spin Glass di Ewards-Anderson)
ESEMPIO:Magnetizzazione media
Magnetizzazione di una configurazione:
Magnetizzazione media:
Grafico della magnetizzazione media per un sistema 3D:
Filippo Mantovani, 28/11/2006 6
In un reticolo 3D di lato L=24 non tutte le 2243
configurazioni sono ugualmente importanti/probabili. Gli algoritmi Monte Carlo ci aiutano a visitare piu'
frequentemente le configurazioni piu' probabili!
L'algoritmo Monte CarloL'algoritmo Monte Carlo
L'algoritmo di Heat Bath:● Consideriamo uno spin s e calcoliamo:
● Usiamo x come indice per estrarre una probabilita' P da una LUT preventivamente inizializzata;● Generiamo un numero casuale R;● Compariamo P con R:
- Se P<=R allora s assume il valore +1; - Se P>R allora s assume il valore -1;
● Ripetiamo questa procedura per tutti i siti del reticolo in un ciclo “illimitato”
Filippo Mantovani, 28/11/2006 7
Perche' un calcolatore Perche' un calcolatore dedicato? dedicato?
I processori tradizionali sono ottimizzati per:● l'esecuzione di brevi sequenze di codice;● l'accesso irregolare e impredicibile alla memoria● la manipolazione di parole di dati “lunghe” (32 o 64 bit)
Inoltre utilizzano gran parte della logica per:● cache● floating point units● instruction scheduler
Nel caso di IANUS invece:● le operazioni sono semplici operazioni tra bit;● alte performance richiedono molta banda passante che
otteniamo utilizzando le memorie interne alle FPGA.
Filippo Mantovani, 28/11/2006 8
Il calcolatore IANUSIl calcolatore IANUS
L'elemento FONDAMENTALE:
✔ Griglia 4x4 di FPGA* chiamate SP;✔ Un processore di controllo detto IOP;✔ Una board di interconnessione detta PB;
* Modello Xilinx XC4VLX160
Filippo Mantovani, 28/11/2006 9
La progettazioneLa progettazione
In fase di progettazione e' necessario:1) uno studio delle caratteristiche dei vari modelli di FPGA2) un'attenta analisi del layout delle board3) un pin assignment ben ponderato per l'FPGA
Filippo Mantovani, 28/11/2006 10
La progettazioneLa progettazione
In fase di progettazione e' necessario:1) uno studio delle caratteristiche dei vari modelli di FPGA2) un'attenta analisi del layout delle board3) un pin assignment ben ponderato per l'FPGA
Filippo Mantovani, 28/11/2006 11
La progettazioneLa progettazione
In fase di progettazione e' necessario:1) uno studio delle caratteristiche dei vari modelli di FPGA2) un'attenta analisi del layout delle board3) un pin assignment ben ponderato per l'FPGA
Filippo Mantovani, 28/11/2006 12
La progettazioneLa progettazione
In fase di progettazione e' necessario:1) uno studio delle caratteristiche dei vari modelli di FPGA2) un'attenta analisi del layout delle board3) un pin assignment ben ponderato per l'FPGA
Filippo Mantovani, 28/11/2006 13
Il processore IOPIl processore IOP
IOP ossia Input-Output ProcessorCostituito da:
IOLINK gestione dei canali di connessione (gigabit e seriale)
VGB interprete di parole “speciali” dello streamproveniente dall'IOLINK
DEV #i dispositivo di interfaccia con il componente i-esimo del mondo IANUS
(Valid Generator Block)
Filippo Mantovani, 28/11/2006 14
Il processore IOPIl processore IOP
Lo stream di dati proveniente dall'IOP è in principio privo di destinatario.Come instradare quindi il messaggio?
Il modulo VGB:● interpreta la prima parola dello stream come maschera;● interpreta la seconda e la terza parola dello stream
come len (inizializza un contatore a 32 bit);● decrementa il contatore della len ad ogni dvIn;● inoltra le parole seguenti a tutti i dispositivi fino a che il
contatore della len non vale zero.
Filippo Mantovani, 28/11/2006 15
Il processore IOPIl processore IOP
Diagramma temporale dei segnali in ingresso e in uscita al VGB:
Tale successione di parole a 16 bit prende il nome di stream incapsulato:
Filippo Mantovani, 28/11/2006 16
Altre problematiche...Altre problematiche...
In quest'ottica sono molte le problematiche affrontate per mantenere il più performante possibile l'hardware del calcolatore IANUS:
Eliminazione di colli di bottiglia Studio della banda passante interna al processore Studio della banda passante tra moduli Studio di problematiche di programmazione delle FPGA Descrizione hardware di una interfaccia di memoria
NOTA: L'introduzione di un elemento come il VGB permette, incrementando di 3 parole a 16 bit il messaggio, di non
bufferizzare il messaggio stesso snellendo così sia l'implementazione hardware che la gestione software delle
comunicazioni (appesantendo “di poco” il messaggio).
Filippo Mantovani, 28/11/2006 17
Traguardi e prospettiveTraguardi e prospettive
● Sono in fase avanzata di test due schede prototipo.
● I core computazionali sono gia' stati testati con successo su singolo nodo.
● Un sistema IANUS completo (10 schede) e' atteso per la primavera del 2007.
● E' prevista la termalizzazione di un sistema di spin di Edwards-Anderson di lato L=48.
● IANUS è una sistema riconfigurabile: sono in fase di studio nuovi algoritmi.
● Il progetto IANUS e' stato premiato alla conferenza Supercomputing '06 di Tampa (Florida) dove e' stato presentato un poster che ne descrive le caratteristiche.