Modélisation atmosphérique dans un environnement de grille de calcul: Retour d ’e xpérience s
description
Transcript of Modélisation atmosphérique dans un environnement de grille de calcul: Retour d ’e xpérience s
Eddy CaronJoin work with Bruno Bzeznik (IMAG), Ibrahima Cissé
(SysFera), Benjamin Depardon (SysFera), Hubert Gallée (LGGE),
Hakim Majidi (LGGE), Laurence Viry (UJF)
Ecole Normale Supérieure de LyonAVALON Research Team
SysFera
Distributed Interactive Engineering Toolbox
ContexteContexte
Le climat de l’Afrique de l’ouest est piloté par un système de mousson avec une activité dynamique de mai à Septembre
Ce cumul étant faible en zone Sahélienne (500 à 600mm), une faible variabilité à la baisse de ce cumul peut entraîner un stress hydrique irréversible pour les cultures et la végétation
Quels sont les principaux processus responsables de la variabilité de la mousson ? la température de surface de l’océan, l’albédo, . . .
Quelle est la dynamique spatio-temporelle du système ? Utilisation d’un modèle atmosphérique régional : MAR
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 2
MAR: Modèle Atmosphérique RégionalHydrostatiquemicrophysique nuageuse pronostiqueparamérisation convection: Bechtold 2002couplé au svat SISVAT
résolution horizontale: dx = 40 km40 niveaux verticaux, le premier à 10 m
MAR AMMAMAR AMMA
3Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
MotivationsMotivations
Analyse de sensibilité spatio-temporelle des sorties du modèle atmosphérique régional MAR à la variabilité spatio-temporelle des entrées. Les techniques classiques sont basées sur des
méthodes de Monte-Carlo très couteuse en ressources de calcul.
Le nombre de paramètres en entrée comme en sortie est important.
On veut récupérer la dynamique spatio-temporelle du système.
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 4
MotivationsMotivations
Modélisation MathématiqueModélisation fonctionnelle des entrées comme des
sorties Construction d’ un modèle approché fonctionnel
construit sur l’observation des entrées et des sorties (pas de physique), peu couteux en ressources de calcul permettant le calcul des indices de sensibilité (SOBOL).
Contexte physique :Paramètres d’entrée du modèle : température de surface
de l’océan (SST)Paramètres de sortie du modèle : précipitations
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 5
Température de Surface de l’Océan
Précipitations
méta-model
Cadre statistiqueCadre statistique
Data : 18 années d’observationsR (maillage G) zone du golf de Guinée : observation de la
SST (Sea Surface Temperature) R' (maillage G’) zone Sub-Saharienne : précipitations
(sortie du modèle)T période d’observation chaque année (mars à octobre)
Méthodologie :Xi := (Xi (x , t ))x ∈R,t ∈T trajectoire aléatoire de la SST
l’année iYi := (Yi (x′, t))x’∈R’,t∈T trajectoire aléatoire des
précipitations
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 6
Modélisation statistique des entrées/sorties Modélisation statistique des entrées/sorties
Pour les entrées comme pour les sorties on effectue une décomposition de Karuhnen-Loève (EOF) en chaque point du maillage.
On suppose :que le degré de troncature ne dépend pas du point
d’espace, la stationnarité spatiale des premières fonctions propres
par sous-région Modèle : La région R (resp R’) est partitionnée en
p (resp p') sous-régions R1,...,Rp (resp R1,...,Rp'). On choisit x0,j ∈ Rj avec j ∈ {1,...,p}.
Pour x ∈ Rj on a la décomposition :
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 7
€
˜ X x (t) = μ x × (t) + ˜ α m (x)em (x0, j, t), t ∈Tm =1
M
∑
Modélisation statistique des entrées/sortiesModélisation statistique des entrées/sorties
Résultats : on retientdeux fonctions propres pour la décomposition de la SST
(resp précipitations), par classification fonctionnelle sur les trajectoires, deux
sous-régions satisfaisant l’hypothèse de stationnarité spaciale pour la SST (resp précipitations).
Qualité des estimations
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 8
OutlineOutline
MAR Application Middleware: DIET Targeted platform: CIMENT Implementation Conclusion
9Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
DIET’s GoalsDIET’s Goals
Our goals To develop a toolbox for the deployment of environments using the
Application Service Provider (ASP) paradigm with different applications Use as much as possible public domain and standard software To obtain a high performance and scalable environment Implement and validate our more theoretical results
Scheduling for heterogeneous platforms, data (re)distribution and replication, performance evaluation, algorithmic for heterogeneous and distributed platforms, …
Based on CORBA and our own software developments FAST for performance evaluation, LogService for monitoring, VizDIET for the visualization, GoDIET for the deployment
Several applications in different fields (simulation, bioinformatics, …) Release 2.8 available on the web since november ACI Grid ASP, RNTL GASP, ANR LEGO CIGC-05-11, ANR Gwendia,
Celtic-plus Project SEED4C
http://graal.ens-lyon.fr/DIET/
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 10
RPC and Grid-Computing: Grid-RPCRPC and Grid-Computing: Grid-RPC
• One simple idea – Implementing the RPC programming model over the grid – Using resources accessible through the network– Mixed parallelism model (data-parallel model at the server
level and task parallelism between the servers)
• Features needed– Load-balancing (resource localization and performance
evaluation, scheduling), – IDL, – Data and replica management, – Security, – Fault-tolerance, – Interoperability with other systems,– …
Design of a standard interface – within the OGF (Grid-RPC and SAGA WG)– Existing implementations: NetSolve/GridSolve, Ninf, DIET,
OmniRPC
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 11
RPC and Grid Computing: Grid-RPCRPC and Grid Computing: Grid-RPC
AGENT(s)
S1 S2 S3 S4
A, B, C
Answer (C)
S2 !
Request
Op(C, A, B)
Client
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 12
Distributed EnvironmentHierarchical structure
Architecture overviewArchitecture overview
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 13
Client and server interfaceClient and server interface Client side
So easy … Multi-interface (C, C++, Fortran,
Java, Python, Scilab, Web, etc.) Grid-RPC compliant
Server side Install and submit new server to
agent (LA) Problem and parameter description Client IDL transfer from server Dynamic services
new service new version security update outdated service Etc.
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 14
Workflow ManagementWorkflow Management
Workflow representation Direct Acyclic Graph (DAG)
Each vertex is a task Each directed edge represents
communication between tasks
Goals Build and execute workflows Use different heuristics to solve
scheduling problems Extensibility to address multi-
workflows submission and large grid platform
Manage heterogeneity and variability of environment
ANR Gwendia Language definition (MOTEUR & MADAG) Comparison on Grid’5000 vs EGI
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
Idle time Data transfert Execution time
EGI (Glite) 32.857s 132.143 s 274.643 s
Grid’5000 (DIET)
0.214s 3.371 s 540.614 s15
DIET Scheduling: Plug-in Schedulers DIET Scheduling: Plug-in Schedulers SeD level
Performance estimation function Estimation Metric Vector - dynamic collection of performance
estimation values Performance measures available through DIET
FAST-NWS performance metrics Time elapsed since the last execution CoRI (Collector of Resource Information)
Developer defined values
Aggregation Methods Defining mechanism to sort SeD responses: associated with the
service and defined at SeD level Tunable comparison/aggregation routines for scheduling Priority Scheduler
Performs pairwise server estimation comparisons returning a sorted list of server responses;
Can minimize or maximize based on SeD estimations and taking into consideration the order in which the request for those performance estimations was specified at SeD level.
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 16
CoRI-Easy Collector
FAST Collector
CoRI Manager
Other Collectors
like Ganglia
DIET Scheduling: Performance estimationDIET Scheduling: Performance estimation
Collector of Resource Information (CoRI) Interface to gather performance information Currently 2 modules available
CoRI Easy FAST (Martin Quinson’s PhD)
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
16
1116
2126
31
1
6
11
16
21
26
31
0,00
5,00
10,00
15,00
20,00
25,00
30,00
35,00
16
1116
2126
31
1
6
11
16
21
26
31
0,00
5,00
10,00
15,00
20,00
25,00
30,00
35,00
Measured Estimated
Max. error: 14,7 %Avg. error: 3,8 %Max. error: 14,7 %Avg. error: 3,8 %
Extension for parallel program• Code analysis / FAST calls
combination• Allow the estimation of parallel
regular routines (ScaLAPACK-like)
17
Data ManagementData Management
DAGDA Joining task scheduling and data
management Standardized through GridRPC OGF
WG. Data Arrangement for Grid and
Distributed Applications Explicit data replication: Using
the API. Implicit data replication. Data replacement algorithm:
LRU, LFU AND FIFO Transfer optimization by selecting
the more convenient source. Storage resources usage management. Data status backup/restoration.
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
Join work with Gaël LeMahec (UPJV/MIS)
18
Parallel & sequential jobstransparent for the usersystem dependent submission
SeDBatch
Many batch systemsBatch schedulers behaviourInternal scheduling process
Monitoring & Performance prediction Simulation (Simbatch)
Parallel and batch submissionsParallel and batch submissions
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
SeDSeD
OAR
SGELSF
PBS
Loadleveler
SeDBatch
SeD//
NFS
19
Conclusions
http://www.grid5000.org/
Grid-RPC Interesting approach for several applications Simple, flexible, and efficient Many interesting research issues (scheduling, data management,
resource discovery and reservation, deployment, fault-tolerance, …)
DIET Scalable, open-source, and multi-application platform Concentration on several issues like resource discovery,
scheduling (distributed scheduling and plugin schedulers), deployment (GoDIET and GRUDU), performance evaluation (CoRI), monitoring (LogService and VizDIET), data management and replication (DTM, JuxMem, and DAGDA)
Large scale validation on the Grid’5000 platform A middleware designed and tunable for different applications
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 20
ResultsResults
A complete Middleware for heterogeneous infrastructureDIET is light to useDedicated to many applicationsDesigned for Grid and Cloud Efficient even in comparison to commercial toolsDIET is high tunability middlewareUsed in production
SysFera Compagny (11 persons today) http://www.sysfera.com
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 21
OutlineOutline
MAR ApplicationMiddleware: DIETTargeted platform: CIMENTImplementationConclusion
22Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 23
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 24
OutlineOutline
MAR ApplicationMiddleware: DIETTargeted platform: CIMENTImplementationConclusion
25Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
ImplementationImplementation
Write the Client and the DIET ServerWorkflow support
Application DeploymentCompilation of MAR under differents clusters
Foehn Fontaine Nanostar
IRODS supportCIGRI supportWeb Portail
DIET Webboard (old fashion)
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 26
I found a couple of bugs into the DIET workflow
engine
Conflict on devel environment between DIET (boost, omniORB, etc.) and MAR (netcdf, ifort, etc.)
I don’t want the DIET data manager. I want to use IRODS
CIGRICIGRI
Cigri is a lightweight grid middleware Runs on top of a set of OAR clusters (OAR may be
coupled with another RMS like PBS or SGE) Manages ”best-effort” jobs Manages large set of
tasks Cigri v3 is currently under developpment and is
supported by Grid'5000 and CIMENT Complete rewrite into RubyAbility to manage non best-effort, infinite campaignsWill offer a REST APIUses OAR REST API for communication with clusters (no
more SSH/SUDO)New ”runner” design : effort to minimize the submission
time overhead Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 27
(crédits Bruno Bzeznik)
CIGRICIGRI
CIGRI, a light middlewareHeterogeneous sites use common administrative rulesNo heavy auhtentication procedure (ldap acount)No centralised application deploymentNo centralised data management
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 28
SeDSeD
OAR
OGELSF
PBS
Loadleveler
SeDBatch
SeD//
NFS
CIGRI
Workflow Management designed for MARWorkflow Management designed for MAR
XML file to describe the the workflow. Conditional Workflow
<while> ($errorCode eq 0) and ($runNumber lt $nbMaxRun) </while> Fault tolerance: Current state of the workflow is saved
automatically diet_wf_save_transcript_file(profile, transcriptFileName) ; Automatic besteffort mode management
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 29
iRODSiRODS
iRODS: Data Grids, Digital Libraries, Persistent Archives, and Real-time Data Systems
Distributed storage with iRODS iRODS is a distributed storage management
software for grid computing.Used into the CIMENT HPC center and the EGI
node (LPSC). CIGRI users are now strongly encouraged to use
it for their input/output data and applications deployment.
https ://www.irods.org
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 30
IRODS and DIET IRODS and DIET
User puts his datas into iRODS He gets an iRODS identifier (iid)Submits a computing request with iid through the
webboard.Algorithm
Client sends iid to Worker Worker gets datas from iRODSWorker computes the task with given
datas
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 31
DIET Webboard: ConnectionDIET Webboard: Connection
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 32
DIET Webboard for MARSimulationDIET Webboard for MARSimulation
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 33
DIET Webboard: MAR Configuration fileDIET Webboard: MAR Configuration file
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 34
DIET Webboard: SubmissionDIET Webboard: Submission
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 35
DIET Webboard: Jobs summaryDIET Webboard: Jobs summary
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 36
DIET Webboard: Download Manager DIET Webboard: Download Manager
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 37
ConclusionConclusionGrid deployment of MAR application through
DIET CIGRI support iRODS supportWebboard designed for applicationDiscussion: Which model for the next
application ?
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 38
usersusers
Web PortalWeb Portal
MiddlewareMiddleware
ResourcesResources
ApplicationApplication
Who write the dedicated web interface?
Who write the DIET client/server?
Who manage the infrastructure and upgrade it?
Who develop and maintain application?
OutlineOutline
MAR ApplicationMiddleware: DIETTargeted platform: CIMENTImplementationConclusion
39Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences
ConclusionConclusion
Technologies are avaible CIGRI, iRODS, DIET, etc.
Resources are availableA regional Grid
More than a regional Grid: A web portal for computing services could be exist…
Many projects (ANR, European project, etc.) used founding to buy resources or to buy resources access but nothing is taken into account for the software layer integration.
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 40
AcknowledgmentAcknowledgment
Physicists Team Hubert Gallée (LGGE) Christophe Messager (Ifremer, Brest) Hakim Majidi (LGGE)
Statisticians Team Anestis Antoniadis Céline Helbert Clémentine Prieur (INRIA) Laurence Viry (UJF/INRIA)
Computer Scientists Team Bruno Bzeznik (IMAG) Eddy Caron (ENS Lyon) Ibrahima Cissé (SysFera) Benjamin Depardon (SysFera) Florent Rochette (ENS Lyon) Laurence Viry (UJF/INRIA)
Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences 41
http://graal.ens-lyon.fr/DIET