Sistemi Distribuiti Corso di Laurea in Ingegneria

Sistemi Distribuiti Corso di Laurea in Ingegneria

Sistemi Distribuiti Corso di Laurea in Ingegneria

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 1 Sistemi Distribuiti Sistemi Distribuiti Corso di Laurea in Ingegneria Corso di Laurea in Ingegneria g g g g Prof. Paolo Nesi Parte 5: Sistemi GRID e Architetture Parallele Department of Systems and Informatics University of Florence Via S. Marta 3, 50139, Firenze, Italy tel: +39 055 4796523 fa : +39 055 4796363 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 1 tel: +39-055-4796523, fax: +39-055-4796363 Lab: DISIT, Sistemi Distribuiti e Tecnologie Internet nesi@dsi.unifi.it, paolo.nesi@unifi.it http://www.disit.dsi.unifi.it Il Contesto Tecnologico Il Contesto Tecnologico Crescita delle risorse Crescita delle risorse O O Il numero di transistor raddoppia ogni 18 mesi Il numero di transistor raddoppia ogni 18 mesi (Legge di Moore) (Legge di Moore) O O La velocità dei computer raddoppia ogni 18 mesi La velocità dei computer raddoppia ogni 18 mesi O O La densità di memoria raddoppia ogni 12 mesi La densità di memoria raddoppia ogni 12 mesi O O La velocità della rete raddoppia ogni 9 mesi La velocità della rete raddoppia ogni 9 mesi Diff di di d i 5 i Diff di di d i 5 i Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 2 Differenza = un ordine di grandezza ogni 5 anni Differenza = un ordine di grandezza ogni 5 anni

Sistemi Distribuiti Corso di Laurea in Ingegneria

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 2 Beyond Moore’s Law Beyond Moore’s Law Estimated CPU Capacity at CERN Intel CPU (2 GHz) = 0.1K SI95 1,000 2,000 3,000 4,000 5,000 6,000 K SI95 Moore’s Law Moore’s Law (2000) (2000) CPU CPU Requirements Requirements Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 3 ,000 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 Network Exponentials Network Exponentials O O Network vs. computer performance Network vs. computer performance   Computer speed doubles every 18 months Computer speed doubles every 18 months   Network speed doubles every 9 months Network speed doubles every 9 months Difference = Difference = one order one order of magnitude of magnitude every 5 every 5 years years O O 1986 to 2000 1986 to 2000   Computers: x 500 Computers: x 500   Networks: x 340,000 Networks: x 340,000 O O 2001 to 2010 2001 to 2010 Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 4   Computers: x 60 Computers: x 60   Networks: x 4000 Networks: x 4000 Q Moore’s Law vs. storage improvements vs. optical improvements. Graph from Scientific American (Jan-2001) by Cleo Vilett, source Vined Khoslan, Kleiner, Caufield and Perkins.

Sistemi Distribuiti Corso di Laurea in Ingegneria

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 3 Frieda’s Application ... Frieda’s Application ... Simulate the behavior of Simulate the behavior of F F( (x,y,z x,y,z) for 20 values of ) for 20 values of x x, 10 values of , 10 values of y y and 3 values of and 3 values of z z (20*10*3 = (20*10*3 = 600 combinations) 600 combinations) 600 combinations) 600 combinations)  F F takes on the average 6 hours to compute on takes on the average 6 hours to compute on a “typical” workstation ( a “typical” workstation (total = total = 3600 3600 hours hours) )  F F requires a “moderate” (128MB) amount of requires a “moderate” (128MB) amount of memory memory  F F performs “moderate” I/O performs “moderate” I/O - - ( (x,y,z x,y,z) is 5 MB and ) is 5 MB and Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 ,y, ,y, ) ) F F( (x,y,z x,y,z) is 50 MB ) is 50 MB Non posso aspettare 3600 ore Parallel Parallel Grid vs Distributed and Parallel Grid vs Distributed and Parallel Distributed Distributed Parallel Parallel Computing Computing Distributed Distributed Computing Computing Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 6 GRID Computing

Sistemi Distribuiti Corso di Laurea in Ingegneria

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 4 sommario sommario O O Contesto tecnologico Contesto tecnologico O O Architetture Parallele Architetture Parallele O O The GRID, definizione e motivazioni The GRID, definizione e motivazioni O O Concetti estesi dei GRID, microgrid Concetti estesi dei GRID, microgrid O O Applicazioni e problemi dei GRID Applicazioni e problemi dei GRID O O Soluzioni GRID...Globus, Condor Soluzioni GRID...Globus, Condor O O Soluzioni MicroGRID: AXCP grid Soluzioni MicroGRID: AXCP grid Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 7 O O Soluzioni MicroGRID: AXCP grid Soluzioni MicroGRID: AXCP grid O O Confronto fra GRID Confronto fra GRID O O Applicazioni per microGRID Applicazioni per microGRID Architetture Parallele Architetture Parallele O O La definizione di un’architettura ottima in termini di La definizione di un’architettura ottima in termini di processi paralleli per il calcolo scientifico dipende dal processi paralleli per il calcolo scientifico dipende dal problema problema O O Vi sono problemi Vi sono problemi   intrinsecamente sequenziali intrinsecamente sequenziali   Lineari vettoriali Lineari vettoriali   Multidimensionali vettoriali Multidimensionali vettoriali   Paralleli nei dati di ingresso Paralleli nei dati di ingresso P ll li i d i di it P ll li i d i di it Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 8   Paralleli nei dai di uscita Paralleli nei dai di uscita   Paralleli nei servizi Paralleli nei servizi   Paralleli nella procedura Paralleli nella procedura   Etc.. Etc..

Sistemi Distribuiti Corso di Laurea in Ingegneria

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 5 Esempio di caso Lineare Esempio di caso Lineare O O VettC = VettA + VettB VettC = VettA + VettB O O In modo sequenziale il Costo e’ o(N), in In modo sequenziale il Costo e’ o(N), in parallelo il costo e’ 1 parallelo il costo e’ 1 Soluzione parallela: Soluzione parallela: O O Soluzione parallela: Soluzione parallela:   N nodi N nodi   Un concentratore per raccolta dati Un concentratore per raccolta dati   Comunicazione fra nodi: assente Comunicazione fra nodi: assente   Comunicazione con il nodo concentratore Comunicazione con il nodo concentratore 1.

1. Passa A e B Passa A e B 2.

2. Passa Ai, Bi Passa Ai, Bi 3. 3. Calcola Ai+Bi Calcola Ai+Bi Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 4. 4. Passa Ci Passa Ci 5. 5. Metti insieme C Metti insieme C 6. 6. Passa C Passa Esempio di caso 2D, (..nD) Esempio di caso 2D, (..nD) O O MatC = MatA + MatB MatC = MatA + MatB O O In modo sequenziale il Costo e’ o(NM), in In modo sequenziale il Costo e’ o(NM), in parallelo il costo e’ 1 parallelo il costo e’ 1 Soluzione parallela: Soluzione parallela: O O Soluzione parallela: Soluzione parallela:   N*M nodi N*M nodi   Un concentratore per raccolta dati Un concentratore per raccolta dati   Comunicazione fra nodi: assente Comunicazione fra nodi: assente   Comunicazione con il nodo concentratore Comunicazione con il nodo concentratore 1.

1. Passa A e B Passa A e B 2.

2. Passa Aij, Bij Passa Aij, Bij 3. 3. Calcola Aij+Bij Calcola Aij+Bij Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 10 4. 4. Passa Cij Passa Cij 5. 5. Metti insieme C Metti insieme C 6. 6. Passa C Passa 4

Sistemi Distribuiti Corso di Laurea in Ingegneria

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 6 Comunicazione fra processi Comunicazione fra processi O O In alcuni casi vi e’ la necessita’ di effettuare In alcuni casi vi e’ la necessita’ di effettuare connessioni/comunicazioni dirette fra modi connessioni/comunicazioni dirette fra modi dell’architettura parallela dell’architettura parallela O O Se queste comunicazioni sono in parallelo si risparmia Se queste comunicazioni sono in parallelo si risparmia tempo rispetto a farle convergere e gestire tutte da un tempo rispetto a farle convergere e gestire tutte da un nodo centrale come in molti GRID nodo centrale come in molti GRID O O In un GRID In un GRID   Il GRID deve permettere di mappare in modo logico una Il GRID deve permettere di mappare in modo logico una architettura qualsiasi sul’architettura fisica del GRID architettura qualsiasi sul’architettura fisica del GRID Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 11 architettura qualsiasi sul architettura fisica del GRID architettura qualsiasi sul architettura fisica del GRID   I nodi devono comunicare chiamandosi in modo logico e I nodi devono comunicare chiamandosi in modo logico e non fisico non fisico   Identificazione dei nodi. Identificazione dei nodi. Soluzioni parallele diverse Soluzioni parallele diverse Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 12

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 7 Soluzioni parallele diverse Soluzioni parallele diverse Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 13 Piramide detta anche grid Piramide detta anche grid Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 14

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 8 3 P in forma ciclica o consecutiva 3 P in forma ciclica o consecutiva Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 15 8 P in forma ciclica o consecutiva 8 P in forma ciclica o consecutiva Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 16

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 9 O O Comunicazione fra processi Comunicazione fra processi per congiungere dati parziali per congiungere dati parziali   Spesso necessarie per processi iterativi Spesso necessarie per processi iterativi   Soluzioni di equazioni alle derivate parziali Soluzioni di equazioni alle derivate parziali S l i i li l ti fi iti S l i i li l ti fi iti Comunicazioni fra processi Comunicazioni fra processi   Soluzioni agli elementi finiti Soluzioni agli elementi finiti   Inversioni di matrici a blocchi Inversioni di matrici a blocchi O O Condizioni al contorno Condizioni al contorno   Soluzioni di equazioni alle derivate parziali Soluzioni di equazioni alle derivate parziali   Soluzioni agli elementi finiti Soluzioni agli elementi finiti Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 17 O O Integrazione del calcolo Integrazione del calcolo   Equazioni differenziali alle derivate parziali Equazioni differenziali alle derivate parziali   Calcolo di Flussi Calcolo di Flussi   Calcolo per antenne Calcolo per antenne Speed Up Speed Up Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 18

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 10 Speed Up Speed Up Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 19 An example An example quicksort quicksort merge quicksort merge quicksort quicksort quicksort merge merge merge File ordinato Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 20 quicksort quicksort quicksort merge merge

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 11 Un Esperimento CONDOR at DISIT Un Esperimento CONDOR at DISIT 2680 2800 Risultati finali 667 1800 800 1200 1600 2000 2400 2800 Esecuzione Locale Condor o esecuzione (secondi ) Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 21 15 140 535 400 800 4000 32000 64000 N° stringhe input file Tempo Scelte che hanno condizionato il risultato Scelte che hanno condizionato il risultato O O Non si e’ utilizzato un merge sort dall’inizio perche’ non Non si e’ utilizzato un merge sort dall’inizio perche’ non e’ efficiente visto che inviare due valori ad un nodo per e’ efficiente visto che inviare due valori ad un nodo per sapere quale dei due e’ maggiore costa di piu’ che farlo sapere quale dei due e’ maggiore costa di piu’ che farlo in locale in locale   Andamento del costo locale e distribuito del merge, per Andamento del costo locale e distribuito del merge, per decidere decidere O O Si poteva utilizzare: Si poteva utilizzare:   Algoritmi di ordinamento diversi Algoritmi di ordinamento diversi   Una partizione diversa dei dati, non 8 processi ma per Una partizione diversa dei dati, non 8 processi ma per esempio 4, con due livelli e non 3 esempio 4, con due livelli e non 3 Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 22 Questo poteva permettere di avere maggiori vantaggi in Questo poteva permettere di avere maggiori vantaggi in certe condizioni certe condizioni

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 12 Problemi Problemi O O Parallelizzazione degli algoritmi Parallelizzazione degli algoritmi   Progettazione parallela Progettazione parallela   Non tutti I algoritmi si possono parallelizzare in modo facile e poco Non tutti I algoritmi si possono parallelizzare in modo facile e poco costoso.. costoso..   Bilanciamento fra vantaggi e costi di comunicazione Bilanciamento fra vantaggi e costi di comunicazione   Massimizzazione dello Speed Up: Massimizzazione dello Speed Up:  Efficienza della soluzione parallela Efficienza della soluzione parallela O O Allocazione ottima dei processi sui peer: Allocazione ottima dei processi sui peer:   Capacità dei peer, che cambiano nel tempo Capacità dei peer, che cambiano nel tempo   Costi di comunicazione che cambiano nel tempo Costi di comunicazione che cambiano nel tempo   Problema di allocazione: Problema di allocazione:  Genetic Algorithms Taboo Search etc Genetic Algorithms Taboo Search etc Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 23  Genetic Algorithms, Taboo Search, etc. Genetic Algorithms, Taboo Search, etc. O O Tolleranza ai fallimenti Tolleranza ai fallimenti   Ridondanza dei processi Ridondanza dei processi   Migrazione dei processi, salvataggio del contesto Migrazione dei processi, salvataggio del contesto O O Limitato controllo delle capacità dei peer Limitato controllo delle capacità dei peer O O Limitato controllo delle prestazioni rete... QoS... Limitato controllo delle prestazioni rete... QoS... sommario sommario O O Contesto tecnologico Contesto tecnologico O O Architetture Parallele Architetture Parallele O O The GRID, definizione e motivazioni The GRID, definizione e motivazioni O O Concetti estesi dei GRID, microgrid Concetti estesi dei GRID, microgrid O O Applicazioni e problemi dei GRID Applicazioni e problemi dei GRID O O Soluzioni GRID...Globus, Condor Soluzioni GRID...Globus, Condor O O Soluzioni MicroGRID: AXCP grid Soluzioni MicroGRID: AXCP grid Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 24 O O Soluzioni MicroGRID: AXCP grid Soluzioni MicroGRID: AXCP grid O O Confronto fra GRID Confronto fra GRID O O Applicazioni per microGRID Applicazioni per microGRID

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 13 The GRID The GRID O O “the Grid” term coined in the mid 1990s to denote a distributed “the Grid” term coined in the mid 1990s to denote a distributed computing infrastructure for advanced science and engineering computing infrastructure for advanced science and engineering O O “Resource sharing & coordinated problem solving in dynamic, multi “Resource sharing & coordinated problem solving in dynamic, multi- - i tit ti ti ” (I tit ti ti ” (I institutional virtual organizations” (Ian Foster, Karl Kesselman) institutional virtual organizations” (Ian Foster, Karl Kesselman) O O Un insieme di risorse computazionali, di dati e reti appartenenti a Un insieme di risorse computazionali, di dati e reti appartenenti a diversi domini amministrativi diversi domini amministrativi O O Fornisce informazioni circa lo stato delle sue componenti tramite Fornisce informazioni circa lo stato delle sue componenti tramite Information Services attivi e distribuiti.

Information Services attivi e distribuiti. O O Permette agli utenti certificati di accedere alle risorse tramite un’unica Permette agli utenti certificati di accedere alle risorse tramite un’unica Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 25 g g procedura di autenticazione procedura di autenticazione O O Gestisce gli accessi concorrenti alle risorse (compresi i fault) Gestisce gli accessi concorrenti alle risorse (compresi i fault)   No single point of failure No single point of failure Per essere un GRID Per essere un GRID
coordina risorse e fornisce meccanismi di sicurezza, coordina risorse e fornisce meccanismi di sicurezza, policy, membership...

policy, membership...
Usa protocolli Usa protocolli ed interfacce standard open e general ed interfacce standard open e general
Usa protocolli Usa protocolli ed interfacce standard, open e general ed interfacce standard, open e general- - purpose purpose. .

permette l’utilizzo delle sue risorse con diversi livelli di permette l’utilizzo delle sue risorse con diversi livelli di Qualities of Service Qualities of Service ( ( tempo di risposta, throughput, tempo di risposta, throughput, availability, sicurezza... availability, sicurezza...). ). L’utilità del sistema (middle tier) e molto maggiore a L’utilità del sistema (middle tier) e molto maggiore a Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 26
L’utilità del sistema (middle tier) e molto maggiore a L’utilità del sistema (middle tier) e molto maggiore a quella della somma delle sue parti nel supporto alle quella della somma delle sue parti nel supporto alle necessità dell’utente necessità dell’utente.

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 14 Scienze Data Intensive Scienze Data Intensive O O Fisica nucleare e delle alte energie Fisica nucleare e delle alte energie   Nuovi esperimenti del CERN Nuovi esperimenti del CERN Ri Ri d d it i li it i li O O Ricerca Ricerca onde onde gravitazionali gravitazionali   LIGO, GEO, VIRGO LIGO, GEO, VIRGO O O Analisi di serie temporali di dati 3D Analisi di serie temporali di dati 3D (simulazione, osservazione) (simulazione, osservazione)   Earth Observation, Studio del clima Earth Observation, Studio del clima   Geofisica, Previsione dei terremoti Geofisica, Previsione dei terremoti Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 27   Geofisica, Previsione dei terremoti Geofisica, Previsione dei terremoti   Fluido, Aerodinamica Fluido, Aerodinamica   Diffusione inquinanti Diffusione inquinanti O O Astronomia: Digital sky surveys Astronomia: Digital sky surveys Supercomputer Supercomputer- -Enhanced Instrumentation Enhanced Instrumentation Source: Globus 2002 Tutorial Source: Globus 2002 Tutorial Virtual Reality Cave Avatar Scientis t Advanced Photon Source Supercomput er Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 28 Electronic Library and Databases Computing Portal Clients

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 15 Distribution of Servers in Enterprise Computing Distribution of Servers in Enterprise Computing Source: IBM, Global Grid Forum 4, 2002 Source: IBM, Global Grid Forum 4, 2002 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 29 O O Community = Community =   1000s of home 1000s of home Home Computers Home Computers Evaluate AIDS Drugs Evaluate AIDS Drugs computer users computer users   Philanthropic Philanthropic computing vendor computing vendor (Entropia) (Entropia)   Research group Research group (Scripps) (Scripps) O O Common goal= Common goal= Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 30 g g advance AIDS advance AIDS research research

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 16 Mathematicians Solve NUG30 Mathematicians Solve NUG30 O O Looking for the solution to the Looking for the solution to the NUG30 quadratic assignment NUG30 quadratic assignment problem problem problem problem O O An informal collaboration of An informal collaboration of mathematicians and computer mathematicians and computer scientists scientists O O Condor Condor- -G delivered 3.46E8 CPU G delivered 3.46E8 CPU seconds in 7 days (peak 1009 seconds in 7 days (peak 1009 processors) in U.S. and Italy (8 processors) in U.S.

and Italy (8 14 5 28 24 1 3 16 15 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 31 sites) sites) Q 14,5,28,24,1,3,16,15, Q 10,9,21,2,4,29,25,22, Q 13,26,17,30,6,20,19, Q 8,18,7,27,12,11,23 Q MetaNEOS: Argonne, Iowa, Northwestern, Wisconsin Earth Observation ESA missions:
about 100 Gbytes of data per day (ERS 1/2) (ERS 1/2)
500 Gbytes, for the next ENVISAT mission (2002). DataGrid contribute to EO:
enhance the ability to access high level Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 32 enhance the ability to access high level products
allow reprocessing of large historical archives
improve Earth science complex applications (data fusion, data mining, modelling ...) Source: L.

Fusco, June 2001 Federico.Carminati , EU review presentation, 1 March 2002

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 17 sommario sommario O O Contesto tecnologico Contesto tecnologico O O Architetture Parallele Architetture Parallele O O The GRID, definizione e motivazioni The GRID, definizione e motivazioni O O Concetti estesi dei GRID, microgrid Concetti estesi dei GRID, microgrid O O Applicazioni e problemi dei GRID Applicazioni e problemi dei GRID O O Soluzioni GRID...Globus, Condor Soluzioni GRID...Globus, Condor O O Soluzioni MicroGRID: AXCP grid Soluzioni MicroGRID: AXCP grid Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 33 O O Soluzioni MicroGRID: AXCP grid Soluzioni MicroGRID: AXCP grid O O Confronto fra GRID Confronto fra GRID O O Applicazioni per microGRID Applicazioni per microGRID Concetti Estesi del GRID Concetti Estesi del GRID O O Virtual Virtual Organization (VO) è costituita da: Organization (VO) è costituita da:   un insieme di individui o istituzioni un insieme di individui o istituzioni   un insieme di risorse da condividere un insieme di risorse da condividere   un insieme di risorse da condividere un insieme di risorse da condividere   un insieme di regole per la condivisione un insieme di regole per la condivisione O O VO: utenti che condividono necessità e requisiti VO: utenti che condividono necessità e requisiti simili per l’accesso a risorse di calcolo e a dati simili per l’accesso a risorse di calcolo e a dati distribuiti e perseguono obiettivi comuni.

distribuiti e perseguono obiettivi comuni. O O abilità di negoziare le modalità di condivisione abilità di negoziare le modalità di condivisione Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 34 delle risorse tra i componenti una VO (providers delle risorse tra i componenti una VO (providers and consumers) ed il successivo utilizzo per i propri and consumers) ed il successivo utilizzo per i propri scopi.

scopi. [I.Foster] [I.Foster]

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 18 iVDGL: iVDGL: International Virtual Data Grid Laboratory International Virtual Data Grid Laboratory Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 35 U.S. PIs: Avery, Foster, Gardner, Newman, Szalay www.ivdgl.org Tier0/1 facility Tier2 facility 10 Gbps link 2.5 Gbps link 622 Mbps link Other link Tier3 facility Grid of Cluster computing Grid of Cluster computing O O GRID GRID   collezione di risorse distribuite, possibilmente collezione di risorse distribuite, possibilmente eterogenee, ed una infrastruttura hardware e software eterogenee, ed una infrastruttura hardware e software l l di t ib it l fi l l di t ib it l fi per calcolo distribuito su scala geografica.

per calcolo distribuito su scala geografica.   mette assieme un insieme distribuito ed eterogeneo di mette assieme un insieme distribuito ed eterogeneo di risorse da utilizzare come piattaforma per High risorse da utilizzare come piattaforma per High Performance Computing.

Performance Computing. O O Cluster, a micro Cluster, a micro- -grid grid   Usualmente utilizza piattaforme composte da nodi Usualmente utilizza piattaforme composte da nodi omogenei sotto uno stesso dominio amministrativo omogenei sotto uno stesso dominio amministrativo Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 36 g g   spesso utilizzano interconnessioni veloci (Gigabit, spesso utilizzano interconnessioni veloci (Gigabit, Myrinet). Myrinet).   Le componenti possono essere condivise o dedicate. Le componenti possono essere condivise o dedicate.

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof.

Paolo Nesi 19 Applicazioni dei GRID Applicazioni dei GRID O O Calcolo parallelo: sfruttamento di risorse distribuite a basso Calcolo parallelo: sfruttamento di risorse distribuite a basso costo al posto di supercalcolatori costo al posto di supercalcolatori O O Applicazioni di calcolo massivo: Applicazioni di calcolo massivo:   Medicali Medicali   Medicali Medicali  E.g.: From TAC to 3D real models E.g.: From TAC to 3D real models   Profiling and personalization Profiling and personalization   Visione artificiale Visione artificiale  E.g.: Composition/mosaicing of GIS images E.g.: Composition/mosaicing of GIS images   Risoluzione delle license per DRM Risoluzione delle license per DRM   Adattamento di risorse digitali, coversione di formato Adattamento di risorse digitali, coversione di formato   Stima di fingerprint di risorse digitali Stima di fingerprint di risorse digitali G i di d itt i di i di it li G i di d itt i di i di it li Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 37   Generazione di descrittori di risorse digitali Generazione di descrittori di risorse digitali   Simulazione strutturali, fluidodinamica, deformazioni, finanziarie, Simulazione strutturali, fluidodinamica, deformazioni, finanziarie, servizi, etc.

servizi, etc.   Predizioni del tempo Predizioni del tempo   Predizioni finaziarie Predizioni finaziarie Alcuni dettagli Alcuni dettagli   Profiling and personalization Profiling and personalization  Profilo del cellulare, capabilities, preferenze utenti Profilo del cellulare, capabilities, preferenze utenti  Richiesta di contenuti, formati, img, doc, etc. Richiesta di contenuti, formati, img, doc, etc.  Milioni di utenti al secondo Milioni di utenti al secondo   Visione artificiale Visione artificiale  E.g.: Composition/mosaicing of GIS images E.g.: Composition/mosaicing of GIS images   Risoluzione delle license per DRM Risoluzione delle license per DRM  Richieste di risoluzione delle license Richieste di risoluzione delle license   Adattamento di risorse digitali, coversione di formato Adattamento di risorse digitali, coversione di formato   Stima di fingerprint di risorse digitali Stima di fingerprint di risorse digitali Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 38   Stima di fingerprint di risorse digitali Stima di fingerprint di risorse digitali  Riconoscimento delle tracce audio Riconoscimento delle tracce audio   Generazione di descrittori di risorse digitali Generazione di descrittori di risorse digitali  Produzione di descrittori per inserirle in metadata, quando Produzione di descrittori per inserirle in metadata, quando viene riprodotto un catalogo viene riprodotto un catalogo

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 20 Types of Grid Computing Types of Grid Computing share access to computing Compute Compute id id Utility grids Utility grids to computing resources grids grids share access to Data Data share access to application software and services Utility grids Utility grids Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 39 to databases and files systems grids grids Types of Grid Computing Types of Grid Computing O O GRID Compute GRID Compute   Per Per esempio esempio ricerca ricerca dello dello spazio spazio delle delle soluzioni soluzioni  Predizione Predizione finanziaria, del finanziaria, del tempo tempo  Problema Problema del del Commesso Commesso viaggiatore viaggiatore  Analisi Analisi del del genoma genoma  Produzione Produzione delle delle possibili possibili tracce tracce, , evoluzioni evoluzioni dello dello stato stato in in una una macchina macchina a a stati stati  Model checking, history checking Model checking, history checking GRID D t GRID D t Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 40 O O GRID Data GRID Data   Database Database frazionato frazionato: da1M record in 10 : da1M record in 10 da da 100000 100000 che che in in parallelo parallelo danno danno un un risposta risposta alla alla query query   Query replicate Query replicate

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 21 Types of Grid Computing Types of Grid Computing O O GRID Service GRID Service   Database replicato per dare un servizio a molte persone il Database replicato per dare un servizio a molte persone il   Database replicato per dare un servizio a molte persone, il Database replicato per dare un servizio a molte persone, il parallelismo e’ sulle persone, sugli accessi al servizio. parallelismo e’ sulle persone, sugli accessi al servizio.  Query diverse sullo stesso database Query diverse sullo stesso database O O I probemi reali in effetti integrano I vari aspetti I probemi reali in effetti integrano I vari aspetti producendo la necessita’ di gestire GRID che hanno vari producendo la necessita’ di gestire GRID che hanno vari Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 41 aspetti aspetti One View of Requirements One View of Requirements O O Identity & authentication Identity & authentication O O Authorization & policy Authorization & policy O O Resource discovery Resource discovery O O Security: intrusion detection Security: intrusion detection O O Accounting: Grid cost Accounting: Grid cost F lt t F lt t O O Resource discovery Resource discovery O O Resource characterization Resource characterization O O Resource allocation, management Resource allocation, management O O (Co (Co- -)reservation, workflow )reservation, workflow O O Distributed algorithms Distributed algorithms O O Remote data access Remote data access O O High High- -speed data transfer speed data transfer Performance guarantees Performance guarantees O O Fault management Fault management O O Fault tolerance Fault tolerance O O Recovery from failure Recovery from failure O O Grid System evolution Grid System evolution O O Etc.

Etc.

O O ... ... Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 42 O O Performance guarantees Performance guarantees O O Monitoring, se non Monitoring, se non misuri misuri non non controlli controlli

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 22 The Systems Problem: The Systems Problem: Resource Sharing Mechanisms That ... Resource Sharing Mechanisms That ... O O Address security and policy concerns of resource Address security and policy concerns of resource owners and users owners and users owners and users owners and users O O Are flexible enough to deal with many resource Are flexible enough to deal with many resource types and sharing modalities types and sharing modalities O O Scale to Scale to   large number of resources, large number of resources,   many participant/users many participant/users t / t / Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 43   many program components/process many program components/process   On different nodes and configurations On different nodes and configurations O O Operate efficiently when dealing with large Operate efficiently when dealing with large amounts of data & computation amounts of data & computation Aspects of the Systems Problem Aspects of the Systems Problem 1) 1) interoperability interoperability when different groups want to share when different groups want to share resources resources Di li i h i Di li Diverse components, policies, mechanisms Diverse components, policies, mechanisms   E.g., standard notions of identity, means of E.g., standard notions of identity, means of communication, resource descriptions communication, resource descriptions 2) 2) shared infrastructure services shared infrastructure services to avoid repeated to avoid repeated development, installation development, installation   E g one port/service/protocol for remote access to E g one port/service/protocol for remote access to Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 44   E.g., one port/service/protocol for remote access to E.g., one port/service/protocol for remote access to computing, not one per tool/application computing, not one per tool/application   E.g., Certificate Authorities: expensive to run E.g., Certificate Authorities: expensive to run O O A common need for A common need for protocols & services protocols & services

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 23 Programming & Systems Problems Programming & Systems Problems O O The programming problem The programming problem   Facilitate development of sophisticated applications Facilitate development of sophisticated applications   Facilitate code sharing among nodes Facilitate code sharing among nodes   Facilitate code sharing among nodes Facilitate code sharing among nodes   Requires Requires programming environments programming environments  APIs, SDKs, tools, distributed debug APIs, SDKs, tools, distributed debug O O The systems problem The systems problem   Facilitate coordinated use of diverse resources Facilitate coordinated use of diverse resources  Smart allocation, profiling, capabilities Smart allocation, profiling, capabilities F ilit ilit Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 45   Facilitate infrastructure sharing Facilitate infrastructure sharing  e.g., certificate authorities, information services e.g., certificate authorities, information services   Requires Requires systems systems  protocols, services protocols, services Problemi dei GRID Problemi dei GRID O O condivisione delle risorse flessibile e sicura su scala condivisione delle risorse flessibile e sicura su scala geografica geografica O O L’ottimizzazione dello sfruttamento delle risorse, il cui L’ottimizzazione dello sfruttamento delle risorse, il cui stato non è direttamente sotto controllo e le stato non è direttamente sotto controllo e le informazioni relative sottostanno ad un certo grado di informazioni relative sottostanno ad un certo grado di incertezza incertezza O O Formazione dinamica di organizzazioni virtuali, VO Formazione dinamica di organizzazioni virtuali, VO O O Negoziazione online per l’accesso ai servizi: chi, cosa, Negoziazione online per l’accesso ai servizi: chi, cosa, perché, quando, come, QOS perché, quando, come, QOS Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 46   sistemi in grado di fornire diversi livelli di “Quality of Service” sistemi in grado di fornire diversi livelli di “Quality of Service” O O Gestione automatica della infrastruttura Gestione automatica della infrastruttura O O Problemi a licello di risorse e connettivita’ che sono il Problemi a licello di risorse e connettivita’ che sono il collo di bottiglia di molte applicazioni GRID collo di bottiglia di molte applicazioni GRID

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 24 Layered Grid Architecture Layered Grid Architecture (By Analogy to Internet Architecture) (By Analogy to Internet Architecture) Application In C ti it “Talking to things”: communication Resource “Sharing single resources”: negotiating access, controlling use Collective “Coordinating multiple resources”: ubiquitous infrastructure services, app-specific distributed services Application nternet Protocol Arch Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 47 Fabric, OS “Controlling things locally”: Access to, & control of, resources Connectivity Talking to things : communication (Internet protocols) & security Internet Transport Link hitecture Collective Layer Collective Layer Definisce protocolli, SDK ed API per l’interazione con Definisce protocolli, SDK ed API per l’interazione con le risorse.

le risorse.

Fornisce Fornisce ai membri di una VO meccanismi per: ai membri di una VO meccanismi per: O O Directory services: scoprire l’esistenza di risorse. Directory services: scoprire l’esistenza di risorse. O O Directory services: scoprire l esistenza di risorse. Directory services: scoprire l esistenza di risorse. O O Co Co- -allocation, scheduling, brokering services:allocare una o più allocation, scheduling, brokering services:allocare una o più risorse e schedulare task risorse e schedulare task O O Monitoring services: scoprire e gestire failure, intrusioni, Monitoring services: scoprire e gestire failure, intrusioni, overload...

overload... O O Data Replication services: scoprire la copia dei dati che permette Data Replication services: scoprire la copia dei dati che permette di massimizzare le performance, in termini di tempi di accesso, di massimizzare le performance, in termini di tempi di accesso, Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 48 reliability, costo... reliability, costo... O O Software Discovery services: scoprire la miglior piattaforma di Software Discovery services: scoprire la miglior piattaforma di esecuzione (anche per il SW) in base ai parametri del problema esecuzione (anche per il SW) in base ai parametri del problema (NetSolve) (NetSolve)

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 25 Resource and Connectivity Resource and Connectivity O O Connectivity Connectivity: :   Definisce i protocolli base per la comunicazione e l’autenticazione. Definisce i protocolli base per la comunicazione e l’autenticazione.   I protocolli di Comunicazione permettono lo scambio di dati tra le I protocolli di Comunicazione permettono lo scambio di dati tra le risorse del livello inferiore. risorse del livello inferiore.   I protocolli di Autenticazione forniscono meccanismi sicuri I protocolli di Autenticazione forniscono meccanismi sicuri (crittografia) per verificare l’identità di utenti e risorse.

(crittografia) per verificare l’identità di utenti e risorse. O O Resource Resource: :  Definisce, sulla base dei protocolli sottostanti, protocolli, SDK ed Definisce, sulla base dei protocolli sottostanti, protocolli, SDK ed API per l’inizializzazione, il monitoraggio ed il controllo di operazioni API per l’inizializzazione, il monitoraggio ed il controllo di operazioni su di una risorsa.

su di una risorsa.   Information Protocol: informazioni sullo stato della struttura Information Protocol: informazioni sullo stato della struttura Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 49   Information Protocol: informazioni sullo stato della struttura Information Protocol: informazioni sullo stato della struttura (configurazione, carico...) (configurazione, carico...)   Management Protocol: negoziazione per l’accesso alla risorsa, Management Protocol: negoziazione per l’accesso alla risorsa, tramite la specifica di requirement e operazioni da effettuare tramite la specifica di requirement e operazioni da effettuare GRID Standards GRID Standards O O Non esiste uno standard Non esiste uno standard O O Vi sono degli standard per le comunicazioni, per la Vi sono degli standard per le comunicazioni, per la negoziazione dei servizi, e altre cose di questo genere.

negoziazione dei servizi, e altre cose di questo genere. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 50

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 26 sommario sommario O O Contesto tecnologico Contesto tecnologico O O Architetture Parallele Architetture Parallele O O The GRID, definizione e motivazioni The GRID, definizione e motivazioni O O Concetti estesi dei GRID, microgrid Concetti estesi dei GRID, microgrid O O Applicazioni e problemi dei GRID Applicazioni e problemi dei GRID O O Soluzioni GRID...Globus, Condor Soluzioni GRID...Globus, Condor O O Soluzioni MicroGRID: AXCP grid Soluzioni MicroGRID: AXCP grid Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 51 O O Soluzioni MicroGRID: AXCP grid Soluzioni MicroGRID: AXCP grid O O Confronto fra GRID Confronto fra GRID O O Applicazioni per microGRID Applicazioni per microGRID GRID projects GRID projects O O LEGION LEGION   Middleware per la connessione di reti Middleware per la connessione di reti   Distribuzione di processi ed allocation Distribuzione di processi ed allocation   Trasparente per l’utente che chiede il servizio Trasparente per l’utente che chiede il servizio O O UNICORE UNICORE- -UNiform Interface to COmputing REsources UNiform Interface to COmputing REsources   Ministero tedesco Ministero tedesco   Combina le risorse di centri di computer e le rende Combina le risorse di centri di computer e le rende disponibili in modo sicuro e senza cuciture attraverso disponibili in modo sicuro e senza cuciture attraverso intranet o internet.

intranet o internet.   Peer certificati per garantire l’uso e la sicurezza dei dati Peer certificati per garantire l’uso e la sicurezza dei dati Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 52   Peer certificati per garantire l uso e la sicurezza dei dati Peer certificati per garantire l uso e la sicurezza dei dati O O GLOBUS GLOBUS   Open source (era) Open source (era)   Ora sta diventando commerciale Ora sta diventando commerciale

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 27 Some GRID Solutions !! Some GRID Solutions !! O O Condor Condor   Unix and windows Unix and windows   Small scale GRID, non parallelism Small scale GRID, non parallelism O O Globus Globus   Parallel Parallel   Unix like Unix like   C and java C and java O O Legion Legion   Parallel, C++ Parallel, C++   Unix like Unix like   Too much space needed, 300Mbyte Too much space needed, 300Mbyte O O Unicore Unicore   Java Java Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 53   Unix like Unix like   Open source Open source O O AXMEDIS, AXCP AXMEDIS, AXCP   C++ C++ and JavaScript and JavaScript   Windows Windows   Accessible Code, Free Software Accessible Code, Free Software GLOBUS and its toolkit GLOBUS and its toolkit O O Open Source, Middleware Open Source, Middleware O O http://www http://www- -unix.globus.org/toolkit/license.html unix.globus.org/toolkit/license.html O O Library for: Library for: y y   monitoraggio, scoperta e gestione delle risorse e delle monitoraggio, scoperta e gestione delle risorse e delle informazioni informazioni   sicurezza dei nodi (certificati, autenticazione) sicurezza dei nodi (certificati, autenticazione)   sicurezza delle comunicazioni sicurezza delle comunicazioni   tolleranza dei guasti tolleranza dei guasti   portabilità portabilità G è G è Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 54 O O Globus Toolkit è cresciuto attraverso una strategia open Globus Toolkit è cresciuto attraverso una strategia open- - source simile a quella di Linux: questo ha incoraggiato una source simile a quella di Linux: questo ha incoraggiato una vasta comunità di programmatori e sviluppatori a introdurre vasta comunità di programmatori e sviluppatori a introdurre continue migliorie al prodotto continue migliorie al prodotto

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 28 O O Al Global Grid Forum (GGF4), Al Global Grid Forum (GGF4),   Globus Project e IBM hanno definito le linee dell’Open Grid Globus Project e IBM hanno definito le linee dell’Open Grid Services Architecture ( Services Architecture (OGSA OGSA), ), Open Grid Services Architecture Open Grid Services Architecture   matrimonio e l’evoluzione di due tecnologie: matrimonio e l’evoluzione di due tecnologie: Grid Computing Grid Computing e e Web Services Web Services. .

O O OGSA introduce il concetto fondamentale di OGSA introduce il concetto fondamentale di Grid Service Grid Service, , ovvero un GRID che dispone di interfacce che lo rendono ovvero un GRID che dispone di interfacce che lo rendono manipolabile per mezzo di protocolli web service.

manipolabile per mezzo di protocolli web service. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 55 O O Open Grid Services Infrastructure Open Grid Services Infrastructure ( (OGSI OGSI) definisce ) definisce le interfacce di base/standard e i comportamenti per servizi le interfacce di base/standard e i comportamenti per servizi gestibili dal sistema.

gestibili dal sistema. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 56

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 29 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 57 Globus GRID Tool Kit Globus GRID Tool Kit O O Sicurezza (GSI) Sicurezza (GSI) O O Gestione delle risorse ( Gestione delle risorse (GRAM, GRAM, Access and Management) Access and Management) Gestione dei dati (GASS, Gestione dei dati (GASS, GridFTP, GRM) GridFTP, GRM) O O Servizi di informazione ( Servizi di informazione (GIS, GIS, security) security) O O Comunicazione (I/O, Nexus, Comunicazione (I/O, Nexus, Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 58 MPICH) MPICH) O O Supervisione dei processi e Supervisione dei processi e gestione guasti (MDS, HBM) gestione guasti (MDS, HBM)

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 30 Tre componenti principali Tre componenti principali 1. 1. RSL (Resource Specification Language RSL (Resource Specification Language) per ) per comunicare i requisiti delle risorse comunicare i requisiti delle risorse Resource Management Services Resource Management Services comunicare i requisiti delle risorse comunicare i requisiti delle risorse 2. 2. Resource Broker Resource Broker: : gestisce il mapping tra le gestisce il mapping tra le richieste ad alto livello delle applicazioni e le richieste ad alto livello delle applicazioni e le risorse individuali risorse individuali.

3. 3. GRAM GRAM (Grid Resource Allocation Management) è (Grid Resource Allocation Management) è responsabile di un set di risorse ed agisce da responsabile di un set di risorse ed agisce da Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 59 Q 59 responsabile di un set di risorse ed agisce da responsabile di un set di risorse ed agisce da interfaccia verso vari Resource Management Tools interfaccia verso vari Resource Management Tools (Condor,LSF,PBS, NQE, EASY (Condor,LSF,PBS, NQE, EASY- -LL ma anche, LL ma anche, semplicemente, un demone per la semplicemente, un demone per la fork fork) ) Reso ce Specification Lang age Broker Queries Resource Management Resource Management Architecture Architecture negotiation planner Application Resource Specification Language Information Service Co-allocator Queries & Info Monitor and discover Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 60 GRAM GRAM GRAM LSF Condor PBS Local resource managers Q Load Sharing Facility Q Portable Batch System”

Dipartimento di Sistemi e Informatica, University of Florence Sistemi Distribuiti, Prof. Paolo Nesi 31 Combinazione Globus e Condor Combinazione Globus e Condor Q Q Globus Q Protocolli per comunicazioni sicure tra domini Q Accesso standard a sistemi batch remoti Q Condor Q Job submission e allocation E Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2009-2010 61 Q Error recovery Q Creazione di un ambiente di esecuzione CONDOR CONDOR O O Nasce nel 1988, University of Madison Nasce nel 1988, University of Madison O O Creazione di cluster di workstation PC Creazione di cluster di workstation PC O O Sfruttamento di momenti di scarsa attivita’ della CPU; Sfruttamento di momenti di scarsa attivita’ della CPU;   Condor lascia la CPU se l’utente lavora sul PC Condor lascia la CPU se l’utente lavora sul PC   Salva il punto e poi riparte Salva il punto e poi riparte   Sposta/migra se necessario l’esecuzione del processo Sposta/migra se necessario l’esecuzione del processo su un’altra CPU su un’altra CPU Sistemi Distribuiti, Univ.

Firenze, Paolo Nesi 2009-2010 62 O O Il codice non viene cambiato ma viene semplicemente Il codice non viene cambiato ma viene semplicemente linkato con lib speciali linkato con lib speciali