• Non ci sono risultati.

Il calcolo tecnico-scientifico ad alte prestazioni e l’approccio ai servizi del CASPUR

N/A
N/A
Protected

Academic year: 2021

Condividi "Il calcolo tecnico-scientifico ad alte prestazioni e l’approccio ai servizi del CASPUR"

Copied!
3
0
0

Testo completo

(1)

Dott. Carlo Maria Serio@. Responsabile settore HPC. CASPUR

Il calcolo tecnico-scientifico ad alte prestazioni

e l’approccio ai servizi

del CASPUR

Quando si parla di supercalcolo1 è facile che, nell’accezione

più immediata, ci si riferisca soltanto alla potenza degli elabo-ratori utilizzati. Giocano in tal senso i messaggi ciclicamente riproposti nelle “fiere” specifiche internazionali, le classifiche sui centri con le maggiori installazioni, i contenuti di alcuni progetti per le infrastrutture di supporto alla ricerca, le inizia-tive per l’assemblaggio del “peta-scale computer”2, la

pressio-ne di marketing dei vari produttori, l’indotto della costante evoluzione tecnologica.

D’altro canto c’è il fatto innegabile che la scienza di oggi richiede grande potenza di calcolo3 per risolvere buona parte

dei suoi vecchi problemi e per affrontarne di nuovi, dalla determinazione del valore dei parametri liberi presenti nella cromo-dinamica quantistica alla modellazione della sintesi delle proteine, dalla interazione “socio-ambientale” del bacino del mediterraneo alla cavitazione di un nuovo profilo di elica in un sottomarino, dalla deposizione di film sottili di atomi su un supporto alla valutazione delle componenti di rischio in diversi “scenari finanziari”.

L’equazione che lega il contenuto dei due precedenti capoversi è semplice: data una cosa da fare, se si hanno elaboratori più potenti, e quindi più rapidi, si riesce a fare la stessa cosa in minor tempo oppure più cose nello stesso tempo, e questo vuol dire molto. Infatti, passare da un elaboratore capace di un GigaFLOPS (un miliardo di FLOPS) ad un’altro capace di un TeraFLOPS (mille miliardi di FLOPS) significa, sempre che si riesca a sfruttare appieno la maggiore potenza, fare in soli tre secondi un calcolo, una simulazione o una cosa analoga, che prima richiedeva un’ora o, ancora, fare mille di quei calcoli nell’ora originaria o, infine, mantenere nell’ambito della solita ora, una nuova serie di calcoli che richiederebbero invece qua-si un mese e mezzo di calcolo ininterrotto sull’elaboratore di partenza. Questo, almeno in linea di principio, significa poter simulare il comportamento di un’elica marina con maggiore dettaglio, deporre più atomi virtuali nel film, avere una defi-nizione maggiore nelle simulazioni ambientali, valutare più accuratamente il rischio legato a più scenari finanziari.

Quindi, la precedente equazione dice: maggiore potenza di calcolo uguale maggiori possibilità scientifiche. Ma non è proprio così, infatti gli elaboratori non riescono a “scalare” in modo lineare; detto in altri termini, una serie di calcoli che richiedono un certo tempo su una certa macchina, non è detto che su una macchina dieci volte più potente venga-no eseguiti in un decimo del tempo. Questo accade perché i grossi sistemi di calcolo sono composti da tanti sistemi più piccoli4 : anche se la potenza teorica complessiva è data

dalla potenza del singolo “sistemino”5 moltiplicato per il

nu-mero di sistemini presenti, la capacità effettiva di risoluzio-ne di un determinato problema può essere inferiore e, oltre un certo numero di sistemini, può non crescere più6.

La potenza effettiva di calcolo dipende in realtà anche da quanto siamo capaci di affidare le relative operazioni ai singoli sistemini: una o una serie di esse, per ciascuno ed

1 Detto anche calcolo ad alte prestazioni, dall’inglese “High Performance Computing” con acronimo “HPC”. Più recentemente si fa riferimento a “High

Productivity Computing” ovvero calcolo ad alta produttività. In ogni caso l’ambito è quello del calcolo che prevede l’esecuzione ed il trattamento di enormi quantità di operazioni e dati.

2 “Peta” sta per un milione di miliardi, e si riferisce al numero di FLOPS - operazioni su numeri decimali al secondo - potenzialmente erogabili dal

sistema. In realtà tale scala, come le precedenti, potrebbe risultare superata in pochi anni e quindi qualcuno ha ironicamente suggerito di utilizzare il termine “Zillion” che indica uno spropositato ma indefinito valore numerico.

3 I termini “potenza” e “velocità” saranno spesso usati come sinonimi; in realtà i termini significano cose diverse dipendendo, l’uno o l’altro, dalla

frequenza di funzionamento di un processore, dal numero di processori e da come sono organizzati nel sistema, dalla modalità di accesso alla memoria e dalla quantità disponibile etc; bisognerebbe inoltre introdurre i concetti di “capacità” e di “capienza” ed altre varie nozioni. Comunque, la semplificazione operata non dovrebbe togliere validità a quanto espresso.

4 In questo contesto facciamo implicito riferimento ai sistemi multinodo-multiprocessore, o cluster, che vanno sotto il nome di architettura parallela e che

costituiscono l’architettura oggi adottata nella quasi totalità dei casi.

5 In letteratura vengono definiti “core” o “processing element”.

6 La scalabilità è invece pressoché totale per una classe di elaborazioni simili ripetibili su dati diversi ed indipendenti: in questo caso si parla, appunto, di

“parallelismo imbarazzante”. 10

(2)

allo stesso tempo; dipende cioè da quanto siamo capaci di “parallelizzare”7 il nostro problema di calcolo.

Questo significa che, per ogni problema tecnico o scienti-fico che si voglia approcciare con il supercalcolo, bisogna considerare che, tra il problema stesso e l’uso della macchi-na, si interpone uno “strato” fatto di modelli matematici, di strumenti informatici e di competenze che consente la traduzione del problema sul sistema.

Molto sinteticamente, partendo dalla proposizione di un problema scientifico, lo strato che consente di approcciarlo e risolverlo è costituito dalla descrizione del modello che lo rappresenta, dalla definizione del metodo che lo risolve, dalla scrittura dei programmi e dall’insieme delle operazioni che lo rendono eseguibile sull’elaboratore. E’ evidente che non tutti i potenziali utilizzatori del calcolo ad alte prestazioni posseggano tutte queste competenze.

Ed è a questo punto che possiamo illustrare come il CASPUR fornisca non solo la disponibilità di sistemi di calcolo ma anche il supporto necessario al loro efficace utilizzo ed in che modo, strutturandosi per offrire servizi scientifici per il calcolo ad alte prestazioni, offra competenze a supporto degli utenti attuali e di quelli futuri.

Per assolvere la propria missione di diffusione del calco-lo ad alte prestazioni nell’ambito dell’Università e della Ricerca, il CASPUR supporta gli utenti già acquisiti e cerca di estenderne il numero e le aree applicative. Per servire gli utenti acquisiti è necessario riconoscerne le esigenze e confezionare per esse una risposta concreta, apprezza-bile e miglioraapprezza-bile nel tempo. Nel passato questo compito, affidato alla rete di relazioni con le Università consorziate, ha risposto sufficientemente bene, ma presentava il rischio di far divenire il CASPUR una facility8 a disposizione di un

circuito più o meno chiuso e autoreferenziale. Si è quindi pensato ad un sistema più efficace, attivando periodicamen-te dei bandi pubblici per progetti di ricerca che prevedono l’utilizzo di risorse e competenze di calcolo ad alte

presta-zioni. I progetti presentati vengono selezionati in base alla loro valenza scientifica, ma anche in relazione all’impatto innovativo o qualitativo nel calcolo ad alte prestazioni. A quelli ritenuti più validi vengono assegnate gratuitamente le risorse necessarie a condurre il progetto a buon fine. Il vantaggio derivante da questo nuovo approccio è triplice: da una parte c’è la possibilità di estendere i confini della diffu-sione del calcolo ad alte prestazioni a nuovi utenti e nuove aree applicative; in seconda istanza i ricercatori o i gruppi di ricerca possono accedere ad un finanziamento specifico e mirato, erogabile direttamente in ciò che è loro utile e neces-sario; infine, possono essere attivati piccoli e medi progetti che, presso i grandi centri, vengono di solito sacrificati alle cosiddette “big challenge”9.

I bandi per l’attribuzione di calcolo ad alte prestazioni sembrano, anche in questa prima e recente fase, rispondere pienamente ad obiettivi e finalità, e l’accoglienza è stata notevole10.

Inoltre, per facilitare l’ingresso in nuove aree applicative, tradizionalmente meno inclini all’utilizzo della tecnologia del calcolo ad alte prestazioni che, al di fuori di determinate discipline, è sin qui risultata piuttosto ostica, il CASPUR ha scelto ed implementato il nuovo ambiente di calcolo ad alte prestazioni rilasciato dalla Microsoft, che si interfaccia al-l’utente anche mediante strumenti di diffuso e facile utilizzo quali, per esempio, il foglio elettronico.

Il CASPUR serve i propri utenti attraverso il supporto infra-strutturale ed il supporto applicativo.

Il servizio di supporto infrastrutturale ha l’obiettivo di rendere disponibile all’utente un’adeguata facility di calcolo. Schematizzando, per essere disponibile all’utenza, la facility deve essere accessibile in sicurezza, deve operare in manie-ra affidabile, e deve produrre risultati in tempi manie-ragionevoli. E’ evidente che, per offrire accessibilità, affidabilità e pro-duttività, non basta avere un sistema più o meno potente. La dimensione del sistema di calcolo definisce semplicemen-te un taglio dimensionale ai problemi affrontabili, ma non è di per sé determinante. Ciò che realmente complementa e completa l’offerta della facility, è il personale che, con

7 Anche in questo caso si fa riferimento ad elaboratori ad architettura parallela senza considerare quella vettoriale che permette rapide operazioni in

blocco sulle matrici Ma si può affermare che in qualche, modo, la seconda è un caso particolare della prima.

8 Il termine viene qui usato per la sua sinteticità rispetto al significato di “qualcosa che è espressamente costruito ed installato per servire ad uno scopo

specifico” che, nel nostro caso, è il calcolo ad alte prestazioni.

9 “Grandi sfide”: bisogna considerare che i centri con i sistemi più grossi sono, in prevalenza, monopolizzati o da grandi progetti di lunga durata ovvero

da attività settoriali; è difficile che prendano in considerazione richieste puntuali anche se valide o promettenti.

10 Nel corso del 2007 sono stati attivati due bandi, uno che prevedeva supporto specialistico, tipicamente per nuovi utenti o nuove applicazione, ed uno

senza supporto, prevalentemente destinato ad utenti esperti di calcolo ad alte prestazioni. Complessivamente sono pervenute 70 richieste per un totale di circa sei milioni di ore di calcolo di cui ne sono stati approvati circa 30. Per la forte eccedenza della richiesta sulla disponibilità il CASPUR sta pianifi-cando un considerevole potenziamento dei propri elaboratori.

(3)

competenze specifiche, implementa, gestisce, mantiene ed aggiorna l’ambiente in cui operano gli utenti in funzione delle loro esigenze e del mutare di esse. I servizi di supporto infrastrutturale si rivolgono a tutti gli utenti, indipenden-temente dalla disciplina scientifica di riferimento e vengono erogati da una struttura dedicata.

Il servizio di supporto applicativo è invece rivolto alle specifiche necessità degli utenti nell’ambito tecnico scientifico di riferimento. Il personale CASPUR dedicato ha competenze nelle varie discipline scientifiche degli utenti per poterli comprendere e supportare. Si tratta di un servi-zio non sempre chiaramente percepito come tale, ma è pur vero che, se non fosse erogato, se ne sentirebbe immediata-mente le mancanza. Come si accennava pocanzi, la possibi-lità di utilizzare efficacemente sistemi di calcolo potenti e sofisticati, passa attraverso l’utilizzo di strumenti altrettan-to complessi e sofisticati. Per esempio, occorre esperienza e capacità sia che si vogliano utilizzare librerie11 già

dispo-nibili, sia che si voglia adattare un software esistente, sia che si debba svilupparne uno ex novo. Ovviamente non tutti gli utenti si avvalgono di tutte le competenze a supporto offerte dal CASPUR, alcuni ne posseggono a sufficienza, altri ne necessitano in parte, altri ancora sono all’inizio della loro esperienza di calcolo. Agli utenti CASPUR viene offerto, nei limiti delle possibilità, il supporto necessario a renderli autonomi, almeno parzialmente, dopodiché il supporto potrà essere destinato ad altri. Durante l’attività di supporto, vengono coinvolti anche dei giovani ricercatori, assegnatari di borse di studio finanziate dal CASPUR. In questo modo essi possono perfezionare ed arricchire le competenze che poi utilizzeranno nella futura attività lavorativa presso il CASPUR, presso suoi utenti o altrove.

Si sta infine ampliando una già significativa offerta di formazione nell’ambito del calcolo ad alte prestazioni, quale ulteriore servizio per costituire o incrementare le compe-tenze di utenti attuali e potenziali. Attualmente il CASPUR conta su quattro gruppi applicativi dedicati rispettivamente ad aree scientifiche e applicative focalizzate su Fisica e Fluidodinamica, Chimica e Biologia, Matematica Applicata, Scienza dei Materiali e Finanza. I quattro gruppi applicativi e quello dedicato ai sistemi compongono l’organizzazione del CASPUR per il calcolo ad alte prestazioni.

Dopo aver illustrato i servizi scientifici del CASPUR per il calcolo ad alte prestazioni, torniamo brevemente al punto in cui si parlava di un’adeguata facility di calcolo.

Il CASPUR mette a disposizione dei propri utenti una facility di calcolo che cerca costantemente di adeguare alle loro esigenze. E’ chiaro che il termine "adeguato" può apparire ambiguo, anche perchè può essere vagliato alla luce di molti parametri, a volte opposti e contraddittori. Non possiamo, in questo contesto, scendere nei dettagli, ci limiteremo a dire che, per esempio, bisogna dimensionare la facility in modo da ottenere un suo elevato utilizzo e, nello stesso

tempo, evitare l’allungamento delle code di attesa che questo comporta; si devono aumentare le prestazioni complessive e contenere la crescita dei costi, inclusi quelli relativi allo spazio fisico occupato ed alla potenza elettrica assorbita; per salvaguardare l’investimento economico ed in compe-tenze servono soluzioni durature ma, contemporaneamente, bisogna valutare anche soluzioni originali che potrebbero finire con il presentare più vantaggi di quelle più durevoli; ci si orienta ad acquisire sistemi con tecnologia standard e, quindi ad elevato rapporto tra qualità e prezzo, eppure si deve essere disposti a pagare di più per la necessaria diversificazione delle architetture o dei fornitori; è infine indispensabile conciliare sistemi, per loro natura complessi, con crescenti esigenze di facile accesso ed utilizzo. Operare le scelte più opportune non è facile, i risultati non sono mai certi e, comunque, non esiste una ricetta. E’ invece necessa-rio avere una sufficiente chiarezza di obiettivi per trovare un accettabile equilibrio dinamico tra le esigenze dell’uten-za, l’offerta del mercato e le ovvie limitazioni economiche. Inoltre, e sempre allo scopo di adeguare la propria facility di calcolo, il CASPUR sta perseguendo l’integrazione dei vari sistemi, degli strumenti e dei metodi utilizzati che ne costi-tuiscono l’insieme. L’intento è di semplificare il più possibile, portando a fattor comune tutto quanto non sia indispen-sabile a dare risposte puntuali e migliorative a particolari esigenze. Si cerca quindi di ridurre all’essenziale la comples-sità dei sistemi anche per incrementare quella disponibilità che è primo elemento di misura del servizio.

Su un diverso versante, per quanto riguarda le com-petenze del personale, il CASPUR ne incoraggia la crescita non solo in ambito tecnico scientifico ma anche organizzati-vo e gestionale. L’obiettiorganizzati-vo è che il personale acquisisca non solo nuovi strumenti e metodi per svolgere il proprio lavoro, ma impari anche a collocarlo in un contesto più ampio e significativo, ad assumere ed accettare nuove responsabilità, a condividere scelte e contribuire alle decisioni. L’aumento delle competenze deve passare anche attraverso una maggio-re integrazione. Se si vuole rispondemaggio-re sempmaggio-re meglio alle esigenze degli utenti, è infatti necessaria una più rapida ed efficace interazione e scambio tra le competenze dei vari gruppi e gli elementi che li compongono. In breve, ci sembra evidente che le competenze del personale costituiscano, tra i vari elementi, quelli che più possono caratterizzare, diffe-renziare e qualificare il CASPUR nei confronti dell’utenza. In conclusione, i servizi scientifici forniti dal CASPUR ai propri utenti, insieme alle risorse materiali, immateriali e professionali che li rendono possibili, costituiscono la matri-ce entro la quale si articola l’azione e si sviluppa la presen-za del CASPUR nel panorama del calcolo ad alte prestazioni nazionale. Per inciso, è possibile che, in futuro, gli uni e le altre debbano essere definiti o riorganizzati diversamente: la capacità di innovare e di rinnovarsi è l’ultimo, ma forse il più apprezzabile, dei servizi che il CASPUR possa offrire ai propri utenti.

11 Insiemi di programmi software specifici; per esempio una libreria matematica contiene quanto necessario ad eseguire determinate funzioni

Riferimenti

Documenti correlati

Il codice sviluppato, inoltre, è in grado di de- terminare, in base alle proprietà geometriche ed elettromagnetiche del velivolo, quale sia il criterio più efficiente per ripartire

• Università degli Studi della Basilicata • Università degli Studi della Calabria • Università degli Studi di Camerino • Università degli Studi di Cassino • Università

Intanto, procedeva sempre più speditamente il lavoro svolto dal gruppo GPU sui codici di scienze computazionali e sempre più codici venivano compilati e provati sul nuovo

Dal 2007 al 2010, inoltre, sono stati attivati 48 corsi a calendario, a cui hanno partecipato quasi 900 studenti che hanno fruito, in totale, di circa 17.000 ore di didattica

Il cuore computazionale del singolo nodo del sistema resta comunque la parte degli acceleratori, due schede NVIDIA Tesla serie 20 con tecnologia Fermi, ognuna delle quali è capace

• Strumenti finanziari risk rate sensitive: modelli di pricing e misurazione del capitale a rischio (DIBAM e ICCREA Banca, holding delle Banche di Credito Cooperativo), il cui

Durante il 2007, il calcolo scientifico è stato, come al solito, l’elemento trainante di buona parte delle attività del Consorzio; nel corso dell’anno abbiamo riscontrato un

I corsi di programmazione tecnica e scientifica e di calcolo ad alte prestazioni, or- ganizzati dal CASPUR o da altre istituzioni, insegnano come utilizzare gli strumenti