• Non ci sono risultati.

Capitolo 1

N/A
N/A
Protected

Academic year: 2021

Condividi "Capitolo 1"

Copied!
16
0
0

Testo completo

(1)

Capitolo 1

Le Griglie computazionali

Benché questa è pazzia, tuttavia c’è criterio in ciò. W. Shakespeare, Amleto.

In questo capitolo viene data una definizione di Grid e si spiegano le motivazioni che hanno spinto la comunità scientifica ad orientare molti sforzi (in termini di tempo e denaro) per la ricerca in questo settore; in particolare si analizzano i possibili campi di applicazione della tecnologia Grid in prospettiva futura. Successivamente si descrivono i requisiti tecnici che una Grid deve soddisfare. In particolare, si analizzano le principali sfide tecnologiche da vincere e i complessi problemi architetturali da superare affinché tale tecnologia sia effettivamente applicabile su larga scala e non solo al ristretto ambito di ricerca scientifica. Inoltre, si analizzano gli aspetti critici con cui le soluzioni software adottate per la realizzazione di una Grid si debbano confrontare. Infine diamo una descrizione generale dei principali progetti che attualmente sono attivi in quest’area.

(2)

Capitolo 1 1.1 La Griglia Computazionale

1.1 La Griglia Computazionale

Il termine Grid è stato introdotto a metà degli anni '90 nell’ambito di una proposta di infrastruttura di elaborazione distribuita per lo sviluppo e l’esecuzione di applicazioni scientifiche di grande complessità e elevato costo computazionale [FKT]. Sviluppi significativi in questa linea di ricerca hanno consentito, negli anni successivi, di mettere a fuoco in modo più preciso il concetto di Grid.

Le attuali tecnologie di Internet permettono lo scambio di informazioni fra i calcolatori ma non forniscono metodi integrati per l’uso coordinato di risorse per il calcolo. Gli scambi Businness-to-Businness concentrano l’attenzione sulla condivisione di informazioni (spesso attraverso server centralizzati). Così fanno le tecnologie di impresa, anche se qui la condivisione può estendersi alle applicazioni ed ai dispositivi fisici. Ciò che si condivide, quindi, deve essere altamente controllato: i fornitori di risorse ed i consumatori devono definire chiaramente e con attenzione quello che è condiviso, che è permesso condividere ed i termini sotto i quali occorre la condivisione. Un insieme di individui e/o istituzioni definiti da tali regole di condivisione formano quella che viene denominata organizzazione virtuale (VO) [FKT]. Le VO, di cui Application Service Provider (ASP) e Storage Service Provider (SSP) ne sono esempi, variano in scopo, ambito, dimensione, durata e struttura. Tuttavia, lo studio delle tecnologie sottostanti permette di identificare un vasto insieme di requisiti comuni; in particolare l’esigenza di creare un ambiente in cui i rapporti di condivisione siano molto flessibili, offrendo agli utenti, anche di VO diverse, la possibilità di assumere il ruolo sia di consumatori sia di fornitori.

Allo stato attuale, la definizione di Grid su cui concorda la gran parte della comunità scientifica è quella coniata da I. Foster, C. Kesselmann e S. Tuecke, secondo cui una Grid è l’insieme delle infrastrutture hardware e software che

(3)

Capitolo 1 1.1 La Griglia Computazionale

consente la condivisione di risorse e la risoluzione coordinata di problemi nell’ambito di organizzazioni virtuali multi-istituzionali e dinamiche [FKT].

Figura 1.1: esempio di una griglia computazionale.

Lo sviluppo della tecnologia e la ricerca di soluzioni operative per la realizzazione effettiva di infrastrutture Grid sono state attivamente condotte nell’ambito di diverse iniziative sia negli Stati Uniti che in Europa. Tali iniziative sono state oggetto, soprattutto negli ultimissimi anni, di consistenti finanziamenti, sia pubblici (istituti accademici e di ricerca, università, enti statali) che privati (società di e-commerce, e-science). Nel complesso queste attività hanno portato alla realizzazione di un insieme di componenti software, costituenti uno strato middleware infrastrutturale. Tali componenti si aggiungono alle tecnologie Internet, ampliandone in modo sostanziale le potenzialità di utilizzo.

Dal punto di vista tecnico, una Grid è da considerarsi sostanzialmente un’architettura basata su protocolli che consentono la condivisione scalabile,

(4)

Capitolo 1 1.2 Perché la Griglia?

applicazioni, etc. L’ambito di cooperazione internazionale e di taglio prevalentemente scientifico in cui la Grid è nata e si è sviluppata ha portato a privilegiare un’impostazione basata, per quanto possibile, su standard esistenti, e sul riutilizzo delle implementazioni software già disponibili per tali standard. Tuttavia, dato che nessuna delle soluzioni oggi disponibile copre tutti i requisiti di un ambiente Grid, sono state avviate significative attività per lo sviluppo di componenti originali, tra cui assumono particolare rilevanza quelli relativi all’implementazione della sicurezza in contesti scalabili e dinamici.

La Grid è un’infrastruttura emergente che cambierà fondamentalmente il modo di pensare ed usare il computer. Essa comprenderà diverse griglie computazionali, a livello regionale o nazionale per creare una potente e universale fonte di elaborazione.

Il termine griglia computazionale è stato scelto perché in inglese presenta una forte analogia con il termine atto a designare la rete elettrica: "electric power grid"; infatti, è al modello delle reti di distribuzione dell’energia elettrica che il progetto delle Grid si ispira [FK99].

1.2 Perché la Griglia?

Ci si potrebbe chiedere perché investire in tante risorse (la ricerca, in qualsiasi campo, è costosa) per creare una nuova infrastruttura distribuita. La risposta è nel futuro: la nostra tecnologia lo ha reso possibile e presto non se ne potrà più fare a meno. Continuando l’analogia della rete elettrica, possiamo notare che lo stato attuale delle risorse di calcolo è molto simile a quello dell’elettricità nei primi anni del '900: a quei tempi venivano continuamente costruite macchine elettriche, ed in effetti era possibile generare molta energia; ma ogni “utente” aveva la necessità di disporre, oltre che del macchinario, anche di un generatore, e questo ne limitava fortemente la diffusione. La vera rivoluzione in questo settore si ebbe con lo sviluppo delle tecnologie per il trasporto e la distribuzione di energia

(5)

Capitolo 1 1.3 Possibili applicazioni

elettrica su vasta scala; sviluppo che venne sostenuto in gran parte dall’esigenza di razionalizzare ed estendere i benefici apportati dall’uso delle macchine elettriche. Tale progresso evolutivo ha portato da tempo alla disponibilità di energia elettrica affidabile ed a basso costo. Allo stesso modo, esistono oggi risorse di calcolo sparse per il mondo; purtroppo le applicazioni distribuite che le sfruttano sono fruibili solo da chi abbia a disposizione risorse costose e che offrono performance abbastanza alte da fornire la potenza necessaria per svolgere il lavoro desiderato. Un ulteriore aspetto riguarda l’efficienza; è noto che la quasi totalità delle risorse di elaborazione rimane inattiva per la maggiore parte del tempo. Una tecnologia che abbia come obiettivo la condivisione di risorse “importanti” potrebbe razionalizzarne l’utilizzo. Per esempio, nelle ore di basso carico, rendendo disponibili i server a chi ne abbia bisogno: mantenere un parco macchine di alta fascia ha un costo non indifferente; chi non volesse farsi carico della spesa per un efficiente centro di calcolo, potrebbe trovare molto più ragionevole affittare l’utilizzo di alcune macchine. Le tecnologie di griglia possono essere usate per stabilire mercati dinamici per risorse di calcolo e di memoria, quindi superando le limitazioni delle configurazioni degli attuali sistemi di elaborazione.

1.3 Possibili applicazioni

È importante chiedersi quali siano le applicazioni che maggiormente necessitano della potenza di calcolo e della versatilità messa a disposizione da una infrastruttura di questo tipo; capire, in ultima analisi, quali siano le fasce di utenza interessate alla Grid. Le applicazioni “gridizzabili” possono essere divise sostanzialmente in cinque classi [FK99].

(6)

Capitolo 1 1.3 Possibili applicazioni

1.3.1 Supercalcolo distribuito

Si tratta di applicazioni che hanno bisogno di aggregare molteplici risorse di calcolo, con l’obiettivo di risolvere problemi altrimenti inaffrontabili su di un singolo sistema.

Il PC di oggi supera per velocità di elaborazione il Cray di dieci anni fa (l’industria Cray [CRAY], da cui derivano le odierne Silicon Graphics, è stata una delle prime a produrre supercalcolatori), ma è del tutto inadeguato da solo al calcolo del risultato di azioni particolarmente complesse che coinvolgono molteplici variabili. Ad esempio, la Simulazione Interattiva Distribuita (DIS) trarrebbe grande vantaggio dalla Grid: è una tecnica molto usata in ambiente militare per la simulazione di scenari di guerra realistici, che coinvolgono centinaia di migliaia di elementi dai comportamenti complessi. Allo stato dell’arte, anche i più potenti supercomputer possono trattare al più poche decine di migliaia di questi elementi. Un’altro campo in cui il supercalcolo distribuito può portare sostanziali innovazioni è quello scientifico: una simulazione accurata di un fenomeno fisico richiede risoluzioni spaziali e temporali molto elevate. In tali situazioni, unire la potenza di elaboratori che offrono performance particolarmente elevate può portare al superamento delle limitazioni esistenti; questa soluzione è stata usata con successo nella cosmologia, nella chimica computazionale ad alta risoluzione e nei modelli climatici. Le principali difficoltà incontrate nello sviluppare applicazioni di questo tipo includono lo scheduling concorrente di risorse con specifiche peculiarità, la scalabilità dei protocolli e il mantenimento di prestazioni elevate fra sistemi eterogenei.

1.3.2 Calcolo a larga banda

In applicazioni di questo tipo, si deve organizzare il lavoro di un grande numero di processi ad accoppiamento lasco, o addirittura indipendenti: lo scopo è, generalmente, sfruttare cicli di calcolo in processori sottoutilizzati. La Grid permette di concentrare le risorse disponibili su di un singolo problema

(7)

Capitolo 1 1.3 Possibili applicazioni

complesso. Questa tecnologia ad esempio è stata usata dalla Advanced Micro Design nella progettazione dei processori K6 e K7, mettendo a profitto le capacità di calcolo inutilizzate di un migliaio di elaboratori. Negli ultimi anni esperimenti di questo tipo hanno dimostrato la validità delle applicazioni di calcolo a larga banda, coinvolgendo, anche se non in maniera strutturata, centinaia di migliaia di risorse sparse in tutto il globo: basti pensare ai progetti Seti@Home [S@H], FightAIDS@Home [FA@H] e al progetto di cracking dell’algoritmo di crittografia DES.

1.3.3 Calcolo on-demand

Le applicazioni on-demand si appoggiano sulla Grid per rendere disponibili, una

tantum, risorse di calcolo che, per il loro saltuario utilizzo, non sarebbe pratico,

nè economicamente conveniente, avere a disposizione localmente. È possibile condividere processori, software, archivi di dati, strumenti specializzati. Diversamente dal supercalcolo distribuito, le motivazioni sono spesso dettate dal rapporto costo-prestazioni, più che dalla necessità di prestazioni massime. Applicazioni di questo tipo sono attualmente in uso in ambito scientifico per programmi di analisi numerica, nell’acquisizione in tempo reale di immagini e nella meteorologia; esempi di progetti che usano queste applicazioni sono, rispettivamente, Computational Geometry and Physics [CGP], Telescience for Advanced Tomography Applications [TATA] e Earth Systems Grid [ESG]. I problemi posti dal calcolo on-demand sono: un numero di utenti potenzialmente elevato e la flessibilità necessaria per soddisfare le loro richieste; quindi interessano problematiche di allocazione delle risorse, teoria delle code, scheduling, fault tolerance, sicurezza e sistemi di pagamento.

1.3.4 Data-Intensive Computing

Nelle applicazioni di questo genere l’attenzione è principalmente rivolta alla gestione di grandi quantità di dati distribuiti geograficamente, generalmente allo

(8)

Capitolo 1 1.3 Possibili applicazioni

scopo di eseguirne sintesi di vario tipo. I problemi principali che spesso si riscontrano in questi processi sono legati sia al pesante carico computazionale che all’ingente data transfer. Le principali applicazioni che a breve necessiteranno di queste tecnologie vengono dal mondo scientifico: esperimenti nella fisica delle alte energie, ricerche astronomiche, moderni sistemi di previsioni meteorologiche genereranno terabyte di dati al giorno, e le complesse ricerche necessarie alla rivelazione di eventi interessanti dovranno accedere a grandi porzioni di questi dati. Inoltre, le persone che eseguiranno materialmente le analisi si troveranno sparse in tutto il mondo, e quindi gli stessi sistemi di memorizzazione dei dati avranno un’architettura altamente distribuita. Un esempio di progetto reale che fa uso di questo tipo di applicazioni è DataGrid [DaG]. Le problematiche da risolvere per questo tipo di applicazioni sono legate allo scheduling e alla gestione di flussi di dati complessi attraverso varie organizzazioni virtuali.

1.3.5 Calcolo collaborativo

Questo tipo di applicazioni mira soprattutto a favorire le comunicazioni e le interazioni tra esseri umani, pertanto sono spesso strutturate in termini di spazi virtuali condivisi. Un progetto, in via di sviluppo, che sfrutta questo tipo di applicazioni è AstroGrid [AsG].

Molte delle elaborazioni collaborative devono rendere disponibili risorse di calcolo distribuite, quali archivi di dati e risultati di processi di simulazione; pertanto le problematiche relative a questa classe di applicazioni, oltre a condividere quelle introdotte in precedenza, sono rappresentate dalla varietà di interazioni che possono avere luogo, e da forti vincoli in termini di real-time. In questa breve panoramica emerge un’esigenza di risorse di calcolo, che non può essere soddisfatta da una futura evoluzione delle prestazioni dei singoli sistemi. Questo sottolinea l’importanza delle tecnologie di griglia sia nella

(9)

Capitolo 1 1.4 Requisiti tecnici

condivisone delle risorse di calcolo che nell’accesso ai dati; inoltre, molte delle applicazioni descritte sono interattive, o dipendono in maniera pesante da meccanismi di sincronizzazione, e quindi non possono prescindere dalla disponibilità di un’infrastruttura che possa offrire forti garanzie in termini di prestazioni.

1.4 Requisiti tecnici

Affinché le Grid diventino una realtà, e possano efficacemente ed efficientemente essere utilizzate nelle applicazioni precedentemente descritte, è necessario che soddisfino alcuni requisiti.

Per prima cosa, una Grid deve essere una infrastruttura che integri un gran

numero di risorse geograficamente distribuite e gestite da organizzazioni autonome.

Una caratteristica molto importante per questi sistemi è l’affidabilità. La Griglia

è un sistema dinamico in quanto l’insieme delle risorse computazionali e di rete

che la costituiscono possono variare nel tempo sia in numero che in tipo. Una organizzazione può lasciare il sistema in ogni momento. Inoltre, un tale sistema deve essere capace di “difendersi” da accessi non autorizzati. Quindi, deve offrire la massima sicurezza possibile, dato che, potrebbero essere coinvolti dati

riservati o utilizzate risorse a pagamento. Infine, le risorse sono sottoposte a fallimenti nel loro funzionamento. Quindi, deve gestire la fault tolerance, cioè la

capacità dell’infrastruttura nel suo insieme, di sopperire agli inconvenienti generati da malfunzionamenti di componenti software o hardware del sistema. Altro fattore decisivo riguarda la diffusione: perché il sistema abbia una certa

diffusione è necessario che sia basato il più possibile su protocolli standard. È auspicabile che una tecnologia, per fare parte della vita lavorativa di tutti i giorni, sia disponibile ovunque ne nasca la necessità. Un ricercatore di un istituto

(10)

Capitolo 1 1.5 Soluzioni software per infrastrutture Grid

vorrebbe avere la possibilità di accedere ai propri dati e ai programmi basati su una Grid anche se in trasferta all’estero piuttosto che presso un'altra Università.

1.5 Soluzioni software per infrastrutture Grid

Attualmente, molti progetti si stanno occupando di creare soluzioni software per ambienti di griglia. Tali soluzioni debbano tener conto dei seguenti aspetti: non interferire con l’autonomia e le problematiche di amministrazione di ogni sito che partecipi alla Grid;

non compromettere i sistemi di sicurezza già esistenti per i singoli utenti e per i siti remoti;

non rimpiazzare o modificare sistemi operativi, protocolli di rete o servizi esistenti dei siti da gestire;

permettere a qualsiasi organizzazione di entrare a far parte o lasciare l’ambiente ogni qualvolta lo desideri;

fornire un’infrastruttura affidabile anche al crescere della complessità topologica; usare tecnologie standard esistenti, ed essere in grado di interagire con applicazioni proprietarie;

fornire corretti meccanismi di sincronizzazione e collegamento fra le componenti di una applicazione.

Sostanzialmente, una Grid deve essere in grado di operare al di sopra di un intero spettro di tecnologie hardware e software esistenti ed emergenti. Un’analogia immediata è data dal Web. Un utente del Web non si preoccupa di sapere se il server a cui sta accedendo è su una piattaforma UNIX o Windows. Dal suo punto di vista tutto ciò che desidera è che i servizi che richiede siano disponibili in maniera rapida ed efficiente. Allo stesso modo, un utente di una Grid non è interessato ai dettagli dell’infrastruttura sottostante; desidera semplicemente

(11)

Capitolo 1 1.6 Principali progetti attualmente in sviluppo

sottomettere le proprie applicazioni a risorse adeguate per ottenere il risultato in un tempo da lui considerato accettabile.

1.6 Principali progetti attualmente in sviluppo

1.6.1 Globus

Questo progetto [Glo] sta sviluppando il Globus Toolkit (GT), un middleware di base che integra risorse computazionali e informative geograficamente distribuite. Il GT, che si sta imponendo come standard de facto per ambienti Grid, offre un insieme di tool che i programmatori possono usare per costruire applicazioni per Grid. Nel capitolo successivo saranno forniti maggiori dettagli sulle funzionalità e sui servizi offerti da questo middleware.

1.6.2 TeraGrid

Il progetto TeraGrid [TeG], recentemente finanziato dalla National Science Foundation americana, collegherà con connessioni molto veloci (circa 25 volte più veloci della più veloce connessione attualmente operativa in Italia) i supercalcolatori presenti in quattro centri di ricerca, creando il primo esempio di griglia computazionale su scala nazionale. Si tratta della più grande infrastruttura in termini di quantità di risorse computazionali e umane e di vastità di competenze mai messa in campo per la ricerca scientifica. In TeraGrid i ricercatori coopereranno per la risoluzione di grandi problemi computazionali (dinamica molecolare, modelli per il controllo e la previsione ambientale, visualizzazione scientifica avanzata,...), agendo in gruppi virtuali in cui c’è solo l’unità di azione ma non quella di luogo e di tempo.

1.6.3 SETI@home

La finalità scientifica di questo progetto [S@H] è quella di analizzare i dati del radiotelescopio di Arecibo, per cercare presenze di forme intelligenti e

(12)

Capitolo 1 1.6 Principali progetti attualmente in sviluppo

comunicanti nell’universo. L’analisi di questi dati è computazionalmente complessa e richiede una grande potenza di calcolo che è ottenuta utilizzando milioni di PC, sparsi negli uffici e nelle case nel mondo. I PC sono messi volontariamente a disposizione dai proprietari e sono sfruttati durante i periodi di tempo in cui non vengono utilizzati, ad esempio quando entra in funzione un salvaschermo. Per concedere il proprio computer basta collegarsi al sito Web del progetto e riempire un semplice modulo elettronico.

1.6.4 DataGrid

In Europa, 6 partner maggioritari e 15 minoritari hanno deciso di unire le proprie risorse umane e tecnologiche per lo sviluppo di una Grid europea con lo scopo principale di risolvere i problemi di calcolo della fisica delle alte energie; il progetto è denominato European DataGrid, ed è coordinato dal CERN e vede una forte partecipazione italiana sia scientifica che industriale.

L’obiettivo del Progetto DataGrid [DaG] è la creazione di un ambiente Grid che permetta la collaborazione fra gli scienziati europei, impegnati nelle più diverse ricerche, adoperando le risorse già disponibili e solo open source. In particolare i campi di ricerca nei quali sono impegnati i partecipanti al progetto sono tre: fisica delle alte energie, osservazione terrestre, studio del genoma umano. In tutti i tre casi, i ricercatori hanno la necessità di accedere ed analizzare una enorme quantità di dati. Per far ciò è necessaria una potenza di calcolo ed una capacità di memorizzazione che nessun computer attualmente possiede. Un ambiente Grid costituito dalle risorse sparse nei centri di ricerca partecipanti alle diverse ricerche darebbe soluzione a questo problema. I problemi da risolvere nella realizzazione di un tale ambiente Grid sono molteplici, tuttavia il più ostico è quello dello scheduling che consiste nella messa a punto di meccanismi e politiche che permettano la pianificazione dell’esecuzione delle applicazioni, in modo da ottimizzarne le prestazioni. Complessivamente il prodotto della ricerca

(13)

Capitolo 1 1.6 Principali progetti attualmente in sviluppo

è software a livello middleware che viene reso disponibile in formato sorgente (open source), il che ne consente una maggiore diffusione.

1.6.5 Legion

Legion [Leg] è un metasistema, sviluppato all’Università della Virginia, che usa la tecnologia ad oggetti. Supporta scheduling trasparente dei processi sulle macchine, gestione dei dati, fault tolerance, autonomia dei siti e un’ampia scelta di opzioni per la sicurezza. Racchiude logicamente gli utenti e le loro macchine in un’unica e coerente macchina virtuale. Concettualmente nel sistema Legion ogni componente, sia esso software che hardware, è un oggetto, e gli utenti possono utilizzare tutte le funzionalità offerte o scrivere proprie classi che si poggiano sugli oggetti già definiti.

1.6.6 NetSolve

Il progetto Netsolve [NeS] mira a raggruppare coerentemente risorse di calcolo connesse attraverso reti di computer. È un’applicazione client/server basata su sistemi distribuiti ad accoppiamento lasco, connessi via LAN o WAN. La comunicazione è effettuata attraverso socket, e la politica principale del progetto è di assicurare un corretto bilanciamento del carico sulla rete al fine di rendere disponibili le risorse in maniera più efficiente possibile.

1.6.7 NASA Information Power Grid (IPG)

L’IPG è una rete di elaboratori della NASA ad alte prestazioni con strumenti scientifici e interfacce utente avanzate. L’obiettivo principale dell’IPG [IPG] è di garantire alla comunità scientifica e ingegneristica un sostanziale incremento delle prestazioni nella soluzione di problemi che dipendono dall’uso di risorse distribuite su larga scala. Per fare ciò si sta lavorando alla costruzione di un’infrastruttura che provveda ad una visione unitaria e comune delle risorse, e che allo stesso tempo ne garantisca una gestione distribuita ed un controllo

(14)

Capitolo 1 1.6 Principali progetti attualmente in sviluppo

locale. Il middleware usato in questo progetto si poggia sulle funzionalità di base offerte dal Globus Toolkit.

1.6.8 NINF

Network INFrastructure for global computing (NINF) [NINF] è un sistema sviluppato in Giappone che si basa su di un’architettura client/server; permette l’accesso a molteplici risorse di calcolo e database remoti. L’accesso dei client alle risorse avviene tramite librerie e componenti sviluppati in C e Fortran, permettendo lo sviluppo di applicazioni senza preoccuparsi dell’effettiva complessità delle strutture sottostanti.

1.6.9 Nimrod/G e GRACE

Nimrod [Nim] è uno strumento che rende automatica la creazione e la gestione di sperimentazioni parametriche. Esso permette ad un utente di eseguire un’applicazione sotto un’ampia gamma di condizioni di input, per poi aggregare i risultati di queste differenti esecuzioni al fine di essere interpretati. Nimrod è stato usato con successo con un insieme statico di cluster di calcolo, ma non è trasportabile in un contesto più ampio come quello delle Grid che è un ambiente di calcolo dinamico, in cui la configurazione può cambiare. Si è dunque sviluppata una versione successiva, detta Nimrod/G, che utilizza Globus come middleware per estendere le proprie funzionalità. L’obiettivo corrente del team che progetta Nimrod/G è di applicare le teorie economiche nella gestione delle risorse di griglia come parte di una nuova struttura chiamata GRACE [Gra] (Grid Architecture for Computational Economy).

1.6.10 UNICORE

UNiform Interface to COmputer REsources (UNICORE) [Uni] è un progetto fondato dal Ministero dell’Educazione e della Ricerca tedesco. Lo scopo principale di UNICORE è quello di fornire un’interfaccia uniforme per la

(15)

Capitolo 1 1.7 Conclusioni

preparazione e il controllo di job che offra un accesso semplice e sicuro a supercalcolatori. L’idea di fondo del progetto è di nascondere all’utente le differenze fra i sistemi dei singoli siti, aiutandolo a sviluppare applicazioni distribuite. L’utente tramite il client UNICOR preparerà i job da schedulare. Il client è una applicazione java grafica eseguita sulla macchina dell’utente. Un job UNICORE verrà creato usando il Job Preparation Agent (JPA), l’utente specificherà i moduli UNICORE da usare, le risorse necessarie e i sistemi sui quali il job verrà eseguito. I job creati sono geograficamente disseminati ed eseguite su diversi sistemi di calcolo: ogni job contiene, infatti, l’informazione riguardo al sistema di destinazione, i requisiti delle risorse richieste e le dipendenze fra i moduli. Inoltre vengono supportate comunicazioni sia sincrone che asincrone. UNICORE è progettato per supportare l’esecuzione di job in modalità batch, e non permette la gestione di job interattivi.

1.7 Conclusioni

La Grid è un modo nuovo di pensare e utilizzare le informazioni e gli strumenti di calcolo. L’idea ispiratrice è di considerare i servizi di elaborazione come una risorsa di pubblica utilità da distribuire in modo diffuso, analogamente ad altre risorse classiche come l’energia elettrica o l’acqua potabile. Dalla stanza di ogni ricercatore e, a più lungo termine, dagli uffici e dalle case sarà possibile collegarsi a una presa che permetterà di richiedere ed accedere ai servizi di calcolo. Per l’utilizzatore non avrà importanza sapere da dove provenga, come venga generata, da chi venga controllata la risorsa di calcolo che sta usando, come accade oggi quando si inserisce una spina nella presa elettrica per far funzionare un elettrodomestico.

Gli attuali sviluppi fanno pensare che la Griglia futura sarà strutturata secondo più Griglie computazionali e verrà costruita negli anni a partire dalle Griglie sviluppate dalla comunità scientifica, finalizzate a risolvere problemi specifici

(16)

Capitolo 1 1.7 Conclusioni

quali ad esempio l’astrofisica o la genetica. Essa trasformerà l’insieme dei calcolatori collegati all’infrastruttura di rete in un unico supercalcolatore, virtuale, eterogeneo e distribuito [Giu].

Figura

Figura 1.1: esempio di una griglia computazionale.

Riferimenti

Documenti correlati

Giuseppe e che tutti e tre assieme hanno complessivamente 45 anni, calcola l’età di ciascuno dei due figli e del padre. x: età di Luigi

Sapendo che l’età del loro padre è tripla di quella di Giuseppe e che tutti e tre assieme hanno complessivamente 45 anni, calcola l’età di ciascuno dei due figli e

Ho acquistato altre 12 bustine, in ognuna delle quali ci sono 6 figurine?. Quante figurine

• La mappa si presenta come esempio di diversa modalità di rappresentazione di uno stesso argomento e pertanto può essere usata in alternativa allo Schema della procedura

Infatti per garantire il vincolo di correttezza temporale per ogni task (! = 1) difficilmente la sequenza dei task sarà nota a priori (caso di scheduling OFF-LINE) e spesso le

Quanti euro hanno speso in tutto queste tre persone?... Gianni ha pagato il suo panino

Leggi con attenzione il testo del problema poi rispondi alle domande. * Di chi

I l’unica macchina disponibile pu` o processare, senza interruzione, al pi` u un job per volta. I t