Research Issues around the DIET Middleware - graal

peaceevenBiotechnology

Oct 4, 2013 (3 years and 11 months ago)

147 views

Eddy Caron

Join 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 Lyon

AVALON Research Team

SysFera

D
istributed

I
nteractive
E
ngineering

T
oolbox

Contexte


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

à

600
mm),

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égional


Hydrostatique


microphysique nuageuse pronostique


paramérisation convection: Bechtold 2002


couplé au svat SISVAT



résolution horizontale: dx = 40 km


40 niveaux verticaux, le premier à 10 m


MAR AMMA

3

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

Motivations


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

Motivations


Modélisation Mathématique


Modé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 statistique


Data : 18 années d’observations


R

(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 i


Yi := (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


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
R
1
,...,
R
p

(resp
R
1
,...,R
p
'
). On choisit x
0,j



R
j

avec
j


{1,...,p}.


Pour x


R
j

on a la décomposition :

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

7

Modélisation statistique des entrées/sorties


Résultats

:

on

retient


deux

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

Outline



MAR Application



Middleware: DIET



Targeted platform: CIMENT



Implementation



Conclusion


9

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

DIET’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
-
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
-
RPC

AGENT(s)

S1

S2

S3

S4

S2 !

Request

Op(C, A, B)

Client

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

12


Distributed Environment


Hierarchical structure

Architecture overview

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

13

Client 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 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 s

15

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 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

Measured

Estimated

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 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 jobs


transparent for the user


system dependent submission??


SeD
Batch


Many batch systems


Batch schedulers behaviour


Internal scheduling process


Monitoring & Performance prediction


Simulation (Simbatch)

Parallel and batch submissions

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

MA

LA

SeD

OAR

SGE

LSF

PBS

Loadleveler

SeD
Batch


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

Results


A complete Middleware for heterogeneous infrastructure


DIET is light to use


Dedicated to many applications


Designed for Grid and Cloud


Efficient even in comparison to commercial tools


DIET is high tunability middleware


Used 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

Outline


MAR Application


Middleware: DIET


Targeted platform: CIMENT


Implementation


Conclusion


22

Modé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

Outline


MAR Application


Middleware: DIET


Targeted platform: CIMENT


Implementation


Conclusion


25

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

Implementation


Write the Client and the DIET Server


Workflow support


Application Deployment


Compilation of MAR under differents clusters


Foehn


Fontaine


Nanostar


IRODS support


CIGRI support


Web 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

CIGRI


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 Ruby


Ability to manage non best
-
effort, infinite campaigns


Will offer a REST API


Uses 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)

CIGRI


CIGRI, a light middleware


Heterogeneous sites use common administrative rules


No heavy auhtentication procedure (ldap acount)


No centralised application deployment


No centralised data management

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

28

MA

LA

SeD

OAR

OGE

LSF

PBS

Loadleveler

SeD
Batch


SeD
//


NFS

CIGRI

Workflow 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

iRODS


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


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 iRODS


Worker computes the task with given


datas

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

31

DIET Webboard: Connection

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

32

DIET Webboard for MARSimulation

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

33

DIET Webboard: MAR Configuration file

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

34

DIET Webboard: Submission

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

35

DIET Webboard: Jobs summary

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

36

DIET Webboard: Download Manager

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

37

Conclusion


Grid deployment of MAR application through DIET


CIGRI support


iRODS support


Webboard designed for application


Discussion: Which model for the next application ?

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

38

users

Web Portal

Middleware

Resources

Application

Who write the dedicated web interface?

Who write the DIET client/server?

Who manage the infrastructure and upgrade it?

Who develop and maintain application?

Outline


MAR Application


Middleware: DIET


Targeted platform: CIMENT


Implementation


Conclusion


39

Modélisation atmosphérique dans un environnement de grille de calcul: Retour d'expériences

Conclusion


Technologies are avaible


CIGRI, iRODS, DIET, etc.


Resources are available


A 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

Acknowledgment


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