1 / 52

Architetture Parallele e Distribuite 2008-09 1. ASSIST: cenno 2. Grid Computing 3. Adattività

Architetture Parallele e Distribuite 2008-09 1. ASSIST: cenno 2. Grid Computing 3. Adattività. Livelli e moduli. indipendente dal concetto di processo. Applicazione sviluppata con strumenti user-friendly. Applicazioni. compilata / interpretata in. indipendente dall’architettura.

evers
Download Presentation

Architetture Parallele e Distribuite 2008-09 1. ASSIST: cenno 2. Grid Computing 3. Adattività

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Architetture Parallele e Distribuite2008-091. ASSIST: cenno2. GridComputing3. Adattività

  2. Livelli e moduli indipendente dal concetto di processo Applicazione sviluppata con strumenti user-friendly Applicazioni compilata / interpretata in indipendente dall’architettura Programma parallelo (processi comunicanti e/o oggetti condivisi) Processi compilato / interpretato in un programma parallelo eseguibile su Assembler Firmware  Uniprocessor di vari tipi   Multiprocessor di vari tipi e con vari processori   Cluster di vari tipi e con vari processori  Firmware Architettura 1 supporto diverso per ogni architettura Architettura 2 Architettura 3 Architettura X Hardware

  3. Departmentof Computer Science, Universityof Pisa ASSISTA ProgrammingEnvironment for High-performancePortableApplications on Clusters, Large-scalePlatforms, and Grids Un ambiente di programmazione per macchine parallele e Next Generation Grid • Projects: • ASI-PQE2000 • CNR Agenzia 2000 • MIUR-CNRStrategicProgrammes • MIUR-FIRB Grid.it • SFIDA-PMI • BEInGRID • In.Sy.Eme • Implementations: • HeterogeneousCluster/Beowulf • CORBA, WS interoperability • Grid version(on top ofGlobus 4) • Component-basedGrid-awareversion • CELL version, on top of LC • ASSISTANT for Mobile Grid

  4. Multiple input and output typed data streams Set of Virtual Processors (VP) executing user code The parmod construct VPs have assigned topology for naming (one, none, arrays)

  5. distribution and collection strategies multicast, scatter, on-demand, scheduled; gatherfromall, fromany, reduce input and output sections can alsohostarbitraryuser code The parmod construct

  6. Partitioning rules, replication VPs host several user functions, activation can be data-driven (CSP-like nondeterministic execution, guarded channels) VPs share data structures (run-time provides consistency) The parmod construct

  7. Architetture Parallele e Distribuite 2008-09 GridComputing: Stato e Prospettive

  8. 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 Dominio amministrativo Dom. amm. Dom. amm. Linux / Intel Power PC / MacOS Middleware SUN / Solaris Le piattaforme abilitanti distribuite • Cluster omogenei,in generale con nodi paralleli SMP / NUMA • Cluster eterogenei • Virtual Private Networks,su scala LAN, MAN, WAN • Grid

  9. Data Storage Cluster 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 Grid locale su Rete Fotonica Mainframe 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 Data Source Data Source Grid locale • Esempi di scenari di applicazioni su Grid: • Singoli job lanciati su singoli nodi • Job paralleli lanciati su più nodi, con co-allocazione statica • Job paralleli su più nodi con esecuzione e co-allocazione dinamica e adattiva Dalla tecnologia Grid corrente a Next Generation Grid

  10. Esecuzione di un singolo job (sequenziale o parallelo) su un singolo nodo Risorse di esecuzione candidate e selezione dati codice, locale o remoto 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 • Scheduling statico • Spesso, esecuzione Batch (code) • Trasferimento dati via File Transfer • Possibilità di pianificare più fasi sequenziali utilizzando risorse diverse e File Transfer

  11. Esecuzione di un job parallelo su più nodi, con co-allocazione statica Risorse di esecuzione candidate e selezione dati codice, locale o remoto 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 • Scheduling statico e co-allocazione • Esecuzione on demand, interattiva, (batch),… • Parallelismo intra- e inter-nodo: non solo task indipendenti • Dati comunicati via files, virtualizzazione storage, e data-streaming • Forme di parallelismo sensibili alla banda, latency-hiding

  12. Esecuzione di un job parallelo su più nodi, con co-allocazione ed esecuzione dinamica e adattiva 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 2100 Fase iniziale di co-allocazione statica, ed esecuzione sulla configurazione iniziale In seguito ad eventi legati a emergenze, malfunzionamenti, esigenze di più elevata performance (Qos): riallocazione e ristrutturazione dinamica di codici e dati (replicazione, partizionamento, bilanciamento) in modo da rispettare un determinato “contratto di performance”

  13. Grid Computing Piattaforma Grid: • “ Distributed computing infrastructure for • coordinated resource sharing • coordinated problem solving • in dynamic, multi-institutional Virtual Organizations (VO), • able to guarantee planned level of performances ”

  14. Distributed/Web Computing: Objects / Component Software Technology High-performance Computing, Cluster Computing Knowledge Management and Data Intensive Computing Mobile Device Technology, Pervasive & Ubiquitous Computing Grid Computing: una nuova tecnologia nata dalla convergenza di tecnologie

  15. Applicazioni Grid-aware • Gestione rischi ed emergenze • Telecomunicazioni • Wearable computing • e-business, Filiere e distretti industriali (PMI), Digital Business Ecosystems • Beni culturali • Progettazione cooperativa • Sanità, medicina • Biotecnologie • Robotica • Tutte le scienze computazionali • ecc.

  16. “Non solo calcolatori”: tecnologia pervasiva e “ubiqua”, dispositivi mobili • Dispositivi mobili, PDA • Miniaturizzazione, embedding • Wearable Computing Fonte: EuroTeCH Group, Udine

  17. Tecnologia Grid: “person-centric” • Piattaforme facili da usare • “People are nodes” • Paradigma “Anytime - Anyhow - Anywhere” • Esempi: e-Work, e-Health, … • Nuovi supporti a Risk Management • Grid = Milioni di nodi di elaborazione eterogenei, interconnessi e cooperanti dinamicamente • Applicazioni naturalmente distribuite, eterogenee, dinamiche e adattive

  18. Middleware minimale: servizi base(ricerca di risorse, prenotazione, trasferimento dati, lancio esecuzione, ecc.) • Grid Middleware “base”: standard • Globus 2.x, 4.x, …, UNICORE, … • Global Grid Forum (GGF): standardizzazione • Open Grid Service Architecture (OGSA) • dai Web Services ai GridServices • ….. • Non sono strumenti di sviluppo applicazioni. • Non sono adatti ad applicazioni caratterizzate da alta eterogeneità, dinamicità, mobilità.

  19. Grid nella loro interezza: NEXT GENERATION GRID Per applicazioni industriali • in molti casi, anche per il calcolo scientifico le caratteristiche di • Eterogeneità, • Dinamicità e adattività (“autonomicità”), • Capacità di usare in parallelo un numero qualsiasi, e variabile, di risorse, • Security consistente con la tecnologia Grid, • Gestione conoscenza Grid-wide, sono irrinunciabili per un deciso miglioramento rispetto alle attuali tecnologie IT e Web.

  20. Evolution of computation ADATTIVITÁ della configurazione alle prestazioni: esempio (ASSIST) Perturbation : new applications are created 800000 5 processors 700000 600000 8 processors 4 processors 500000 Maximum Service Time 400000 Comp. time (msec.) specified in the contract 300000 Current Service Time 200000 Average Service Time 100000 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Stream elements

  21. Esecuzione con modalità MAP e 5 worker Esecuzione con modalità FARM e 5 worker Modalità MAP 10 worker Migrazione su nodi diversi Riconfigurazione delle prestazioni Adattività in ASSIST:stesso modulo autoriconfigurante (farm / map) per il controllo dell’occupazione di memoria • Dimensione di N = 5000 interi • Occupazione N² = 25M interi ~ 95 MB

  22. Caso iniziale con modalità FARM e 1 worker Modalità FARM e 5 worker 140 Modalità MAP e 5 worker 120 Modalità MAP e 10 worker 100 Riconfigurazione delle funzioni 80 Tempo Medio di Servizio Tempo medio di servizio di Presenta (sec) Riconfigurazione delle prestazioni di Presenta 60 40 Contratto di QoS: variato dinamicamente il massimo Tempo di Servizio consentito 20 0 1 3 5 7 9 11 13 Trascorrere dell'elaborazione complessiva (min) Adattività in ASSIST:stesso modulo autoriconfigurante (farm / map) per il controllo del tempo di servizio • Dimensione di N = 5000 interi • Occupazione N² = 25M interi ~ 95 MB

  23. Progetto In.Sy.Eme(Integrated Systems for Emergency) Mobile Grid Concetto di Grid Computing applicato in contesti pervasivi, mobili ed estremamente dinamici (WorkPackage 3)

  24. Cluster Cluster Data & Knowledge Server Workstation Workstation Workstation Workstation Piattaforma distribuita In.Sy.Eme Sistema UNICO di risorse hw e sw, centrali e decentrate, generali ed embedded, fisse e mobili, … Integrazione ELABORAZIONE + COMUNICAZIONE per Modelli di Previsione, Supporto alle Decisioni, Gestione della Conoscenza, … MOBILE (PERVASIVE) GRID: gestione globale, adattiva e context-aware, per il controllo dinamico della Qualità del Servizio (QoS) delle applicazioni PDA PDA PDA PDA PDA PDA PDA vari tipi di reti fisse, mobili, ad hoc

  25. Esempio: gestione delle inondazioni fluviali livello acqua, morfologia terreno, … Modello previsionale idrologico, idrodinamico Data Mining sul percorso del fiume, … Post-elaborazione (non banale) precipitazioni nel tempo e nello spazio, … da satellite, da radar meteo, da rilevatori pluviometrici, … (es: ALADIN) soccorritori, sovraintendenti, autorità, …, altri sistemi, …

  26. Flood Forecasting Model Modello idrologico Esempio: MIKE 21 Equazioni differenziali della massa e momento Sistemi tridiagonali di grandi dimensioni Data- & compute- intensive

  27. Modelli di previsione: quando e come eseguirli? • Nella struttura piramidale dell’organizzazione per la gestione delle emergenze, ogni soggetto (“utente”) ha propri interessi ed esigenze. • Diverse modalità per utilizzare, e interagire con, il sistema di gestione delle emergenze. • Modelli a medio-lungo termine • offline • Modelli a breve termine e in real-time • on demand

  28. PDA PDA PDA PDA PDA PDA PDA PDA Cluster Cluster Data & Knowledge Server Workstation Workstation Workstation Workstation Elaborazioni a medio-lungo termine, offline • Elaborazione “di routine” e operatività normale visualizzazione elaborazione modelli visualizzazione

  29. Elaborazioni offline vs on demand • Offline: • Definizione di strategie (GIS, Meteo, modelli, DSS, Data Mining), alte prestazioni (data, computation) • Problematica tecnologicamente avanzata, ma con alcuni risultati scientifico-tecnici noti in letteratura • On demand: Adattività e Context-Awareness • Problematica sostanzialmente nuova • Il sistema deve essere capace di adattare dinamicamente le applicazioni alle caratteristiche ed ai requisiti degli utenti e del contesto (QoS)

  30. PDA PDA PDA PDA PDA PDA PDA PDA Cluster Cluster Data & Knowledge Server Workstation Workstation Workstation Workstation Applicazioni Adattive e Context-Aware • (Potenziale) emergenza e operatività normale visualizzazione elaborazione modelli elaborazione modelli visualizzazione

  31. PDA PDA PDA PDA PDA PDA PDA PDA Cluster Cluster Data & Knowledge Server Workstation Workstation Workstation Applicazioni Adattive e Context-Aware • Emergenza e operatività ridotta Gestione dinamica QoS-aware di risorse molto eterogenee di calcolo + comunicazione: uso ottimale delle risorse disponibili. Recovery delle informazioni. elaborazione modelli Workstation Modifica dinamica di programmi (modelli) e di dati (informazioni disponibili / da inferire): modelli predittivi. elaborazione modelli e visualizzazione visualizzazione

  32. PDA PDA PDA PDA PDA PDA PDA Applicazioni Adattive e Context-Aware • Emergenza e operatività ridotta Gestione dinamica QoS-aware di risorse molto eterogenee di calcolo + comunicazione: uso ottimale delle risorse disponibili. Recovery delle informazioni. Modifica dinamica di programmi (modelli) e di dati (informazioni disponibili / da inferire): modelli predittivi. elaborazione modelli e visualizzazione elaborazione modelli e visualizzazione

  33. L2 cache L1 cache L1 cache P P P P P P P P High-Performance Computing (HPC) • Diverse elaborazioni hanno caratteristiche DATA-& COMPUTE-INTENSIVE • Modelli previsionali, DSS, GIS, METEO, modelli predittivi, strategie di networking, … • Vari tipi di risorse per HPC, con tecnologie sia tradizionali cheinnovative: • Diverse elaborazioni hanno caratteristiche DATA-& COMPUTE-INTENSIVE • Modelli previsionali, DSS, GIS, METEO, modelli predittivi, strategie di networking, … • Vari tipi di risorse per HPC, con tecnologie sia tradizionali che innovative: Programmabilità + Portabilità ? PDA Embedding in dispositivi mobili / indossabili PDA PDA PDA Data & Knowledge Server Cluster On-chip Multicore Technology PDA

  34. First experiment input data stream: tuple of scalar parameters output data stream: solutionmatrix Flood Forecasting module Generator module Client module input data interface (fromsensors, services, etc.) visualization (tooperator’s PDA, services, etc.)

  35. Experiment: flood forecasting From sensors and monitoring, for each point: position(x,y) water depth (H) water surf. Elevation (ξ) depth av. Velocity (u,v) Mass and momentumpartialdifferentialequations Large tridiagonal systems Data- & compute- intensive Fx and Fy tridiagonal system solving We can obtain different qualities with different samplings in space and time

  36. Computing and communication resources

  37. Features of a pervasive distributed platform Central Servers Monitoring areas: decentralized Interface Nodes connecting wireless networks for sensors and mobile devices (PDA) to fixed networks and servers

  38. . . . . . . Adaptivity and Context-Awareness PDA PDA PDA PDA PDA PDA PDA PDA Data & Knowledge Server Cluster HPC application, suitable for central servers (performance, data size, precision, …) Dynamicrestructuring,suitable for decentralized / embedded / mobile nodes (trade-off: performance, memory, precision, fault-tolerance, energysaving, …), and dynamic deployment

  39. Experiment: adaptivity and context-awareness Dynamictransitionsbetween alternative versions: RECONFIGURATION and DEPLOYMENT communication network 1 communication network 2 Forecasting model: version 1 data streaming control and network interfaces interface node Forecasting model: version 0 Forecasting model: version 2 C lient - visualization Contextevents Contextevents Contextevents central server PDAs

  40. Experiment: configuration PDAs Forecasting model: version 1 Forecasting model: version 2 data streaming control and network interfaces Multicore-based (CELL) C lient - visualization Forecasting model: version 0

  41. Operations: adaptive versions of the same module PDA net Interf. node Central server • Central server is no more available and/or network has low QoS: • switch to OP1, • deployment ofapplication state onto Interface Node OP0 OP1 • Central Server isagainavailable and network isabletoguarantee the requested QoS : • switch to OP0again, • deployment ofapplication stateontoCentral Server • Client achieves low QoS for visualization, PDA resources are available : • switch to OP2, • deployment ofapplication state onto PDA network OP2 + othertransitionsbetweenversions accordingtocontexevents and system state

  42. Events, adaptivity, and targets Events related to: Adaptivity actions: Increase QoS of currentoperation parallelism degree data size Switch to a different operation with the required QoS or the best possible QoS algorithm parallelism paradigm memory management power consumption Different resources • Network and monitoring • Availability • Connectivity • Bandwidth, Performance • Load, … • Energy consumption • Requests for better QoS • Response/completion time • Precision • Client load balancing / priority, …

  43. Reconfiguration and deployment LOGICALLY SHARED REPOSITORY (modules, operations, state, channels, run-time support, managerscooperation) Working set of OP1 Cache0 Cachen-1 Start deployment P0 Pn-1 Central Server (OP0) Interface Node (OP1) . . . OP1: processors and other resources allocation (parallelism construct) • State consistency • Checkpointing • Activeredundancyofoperations

  44. da ASSIST … ExternalObjects In_Sect VP Out_Sect parmod

  45. … a ASSISTANT Context Rete di Manager Stream: anche da/verso sensori, attuatori MANAGER In_Sect VP Out_Sect • Manager come parte integrante (elemento primitivo) del Parmod • Programmabile: formalismo opportuno facente parte di ASSISTANT • Politiche di adattività e context-awareness • Rete di Manager

  46. ASSISTANT: adaptive and context-aware module

  47. InSyEme Programming Model (ASSISTANT) Computationalviewof information flows: parallel and distributedcompositionofapplicationmodules P P P P RED Management information • Managers: • adaptivity, context-awareness • dynamicreconfiguration and deployment • QoS control M M M M BLUE Context information C C C Contextinterfaces: devices , nodes and networksmonitoring C GREEN

  48. Experiment: module structure RED: Information flows FloodForecastingModule GeneratorModule Client Module Functional Logic Functional Logic Functional Logic ControlLogic ControlLogic ControlLogic BLUE: Manager Context interface Context interface Network monitoring Context interface Performance profiling GREEN: Context

  49. ASSISTANT application RED BLUE GREEN

  50. Experimental results

More Related