page 1 compframe 2003 workshop a development platform for parallel applications e-mail :...
TRANSCRIPT
Page 1
CompFrame 2003 Workshop
A development platform for parallel applications
E-Mail :
Page 2
Plan
• Origin and concepts
• Building a PALM application
• Supervision tools
• Some applications using PALM
Page 3
Plan
• Origin and concepts
• Building a PALM application
• Supervision tools
• Some applications using PALM
Page 4
Origin
buis:
-> C’est le but de palm
buis:
-> C’est le but de palm
buis: projet créé dans le milieu des annees 90 à partir d’un constat ou pour répondre a un problème précis
-> exemple : en NWP : modele de plus en plus complexe prenant en compte de plus en plus de composants physique mais aussi des composants mathematique : assimilation de donnees, desfois aussi avec des resolution ou des dommaines differents, le tout gere avec cle CPP, …
buis: projet créé dans le milieu des annees 90 à partir d’un constat ou pour répondre a un problème précis
-> exemple : en NWP : modele de plus en plus complexe prenant en compte de plus en plus de composants physique mais aussi des composants mathematique : assimilation de donnees, desfois aussi avec des resolution ou des dommaines differents, le tout gere avec cle CPP, …
Scientific computing applications
Scientific research
Supercomputer technology
Scientific computing applications
Scientific computing applications
Scientific computing applications
Scientific computing applications
Page 5
Origin
buis:
-> C’est le but de palm
buis:
-> C’est le but de palm
buis: projet créé dans le milieu des annees 90 à partir d’un constat ou pour répondre a un problème précis
-> exemple : en NWP : modele de plus en plus complexe prenant en compte de plus en plus de composants physique mais aussi des composants mathematique : assimilation de donnees, desfois aussi avec des resolution ou des dommaines differents, le tout gere avec cle CPP, …
buis: projet créé dans le milieu des annees 90 à partir d’un constat ou pour répondre a un problème précis
-> exemple : en NWP : modele de plus en plus complexe prenant en compte de plus en plus de composants physique mais aussi des composants mathematique : assimilation de donnees, desfois aussi avec des resolution ou des dommaines differents, le tout gere avec cle CPP, …
modular
parallel performant
evolutive &
maintainable
Page 6
Concepts
Source code library Applications
INTEGRATION
UNIT BRANCHOBJECTS COMMUNICATION
buis:
-> l’idée de PALM c’est de pouvoir construire des applications a partir de briques de bases indépendante entre elles (code source avec donnees qu’elles consomme et produise) et indépendante de l’application.
Subroutine fortran pour 1ere version PALM, exe C, fort C++ pour MP
-> a partir d’un jeu d’unites, les assembler en sequences pour créer des appli modulaire et facilement evolutive (integration de nouveaux composants, …) sans changer le code source.
buis:
-> l’idée de PALM c’est de pouvoir construire des applications a partir de briques de bases indépendante entre elles (code source avec donnees qu’elles consomme et produise) et indépendante de l’application.
Subroutine fortran pour 1ere version PALM, exe C, fort C++ pour MP
-> a partir d’un jeu d’unites, les assembler en sequences pour créer des appli modulaire et facilement evolutive (integration de nouveaux composants, …) sans changer le code source.
buis:
1) Unites indep
2) Integration de l’appli -> facilement modifiable, extensible, …
3) Voc PALM
buis:
1) Unites indep
2) Integration de l’appli -> facilement modifiable, extensible, …
3) Voc PALM
Page 7
How PALM ensures the independency between the units ?
• end-point communication scheme
• automatic remapping during the communications
• no reference to the application algorithm in the units : the description of the application algorithm is made in the GUI, during the integration phase
A same framework can be used for several applications by changing the units, and the same units can be used in several applications without any modification
buis:
Faire animation remapping
buis:
Faire animation remapping
Page 8
How PALM ensures the performance of the applications
• 2 levels of parallelism
Sequences: branches
Distributed components:units
Page 9
How PALM ensures the performance of the application
• High performance communication mechanism
memory copies
MPI messages
Page 10
Plan
• Origin and concepts
• Building a PALM application
• Supervision tools
• Some applications using PALM
Page 11
On units side
• Unit’s instrumentation:
Source end-point
CALL PALM_Put (‘space1’, ‘obj1’, time, tag , array, error)
Target end-point
CALL PALM_Get (‘space2’, ‘obj2’, time, tag , array, error)
• Unit’s IDCARD: !PALM_UNIT -sub create\!!PALM_SPACE –name space1\! -shape (10,10)\! -element_size PL_DOUBLE_PRECISION\!!PALM_OBJECT -name obj1\! -space space1\! -intent OUT\
Page 12
Definition of the algorithm in PrePALM
•Launch units
•Conditional execution
•DO, While loops
•Communications
Page 13
Definition of the communication scheme
control structuresphysic
algebra
task parallelismdata parallelism
buis:
General overview of the application
Algorithm : components decomposition, control structure,
Data flux
Parallelism : branches, units
Physics, algebra
Mettre des fleches ???
buis:
General overview of the application
Algorithm : components decomposition, control structure,
Data flux
Parallelism : branches, units
Physics, algebra
Mettre des fleches ???
componentsdata flux
Page 15
Plan
• Origin and concepts
• Building a PALM application
• Supervision tools
• Some applications using PALM
Page 16
Supervision tools
• debug functions can be called during PALM_PUT and PALM_GET to verify the objects values
buis:
Faire une animation pour passer de graphical stat a l’image, …
buis:
Faire une animation pour passer de graphical stat a l’image, …
• an output file per processes of the application containing information about the run with several levels of verbosity per message category
• performance analyser with graphical statistic summaries
• graphical animation
Page 17
Performance analyser
Page 18
Graphical animation
Page 19
Plan
• Origin and concepts
• Building a PALM application
• Supervision tools
• Some applications using PALM
Page 20
• French contribution to the international experiment GODAE (Global Ocean Data Assimilation Experiment).
• Partners:
• Aim: implement an operational oceanic forecast system able to simulate the global ocean with a high resolution model by assimilating in-situ and satellite data
• Strategy: from regional to global model
from simple (OI) to complex (SEEK, 4DVAR) assimilation method
Page 21
The operational system
1 RHHBHBK TfTfOI
XXX fa
Page 22
HIGH RESOLUTIONREGIONAL PROTOTYPE
1/15° Mediterranean-North-Atlantic model assimilating altimeter data
The MERCATOR bulletin
• 4D description of the ocean: Temperature, Salinity, Currents, SSH, movements of water masses…
• Each Wednesday (analyses and 7 days and 14 days forecast).
Page 23
The MERCATOR website
http://www.mercator.com.fr global
mappings
sections
moorings
Gulf Stream
Gulf of Mexicoand Carribean
North Brazil
Tropics
Northern Europe
Eastern North Atlantic
POMMEcampaign area
Med SeaOutflow
8 Regional Zooms
Page 24
ASSET: Assimilation of Envisat Data
• a European project to exploit and develop earth observation data from Envisat satellite using data assimilation
(January 2003 December 2005)
• aims: o develop a European capability for chemical and UV
forecastingo provide analyses for coupled climate / chemistry
studies
• partners: , ….
Page 25
Data AssimilationMethods
buis:
Rajouter PALM dans le schema
buis:
Rajouter PALM dans le schema
assimilation of retrieved Envisat data into a coupled NWP/chemistry system
ASSET: Assimilation of Envisat Data
Data Model
Page 26
A Fluid – structure coupling application
elsA: an ONERA – AIRBUS – CERFACS oriented object compressible flows simulation software
Page 27
Information and Documentations
A website:http://www.cerfacs.fr/~palm
A software:PALM_Research: already available and freePALM_MP: beta version in April
A course:A 3 days free course is regularly organised
An email: [email protected]