27
Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : [email protected]

Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : [email protected]

Embed Size (px)

Citation preview

Page 1: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 1

CompFrame 2003 Workshop

A development platform for parallel applications

E-Mail :

[email protected]

Page 2: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 2

Plan

• Origin and concepts

• Building a PALM application

• Supervision tools

• Some applications using PALM

Page 3: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 3

Plan

• Origin and concepts

• Building a PALM application

• Supervision tools

• Some applications using PALM

Page 4: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 8

How PALM ensures the performance of the applications

• 2 levels of parallelism

Sequences: branches

Distributed components:units

Page 9: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 9

How PALM ensures the performance of the application

• High performance communication mechanism

memory copies

MPI messages

Page 10: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 10

Plan

• Origin and concepts

• Building a PALM application

• Supervision tools

• Some applications using PALM

Page 11: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 12

Definition of the algorithm in PrePALM

•Launch units

•Conditional execution

•DO, While loops

•Communications

Page 13: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 13

Definition of the communication scheme

Page 14: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 15

Plan

• Origin and concepts

• Building a PALM application

• Supervision tools

• Some applications using PALM

Page 16: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 17

Performance analyser

Page 18: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 18

Graphical animation

Page 19: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 19

Plan

• Origin and concepts

• Building a PALM application

• Supervision tools

• Some applications using PALM

Page 20: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 21

The operational system

1 RHHBHBK TfTfOI

XXX fa

Page 22: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

Page 26

A Fluid – structure coupling application

elsA: an ONERA – AIRBUS – CERFACS oriented object compressible flows simulation software

Page 27: Page 1 CompFrame 2003 Workshop A development platform for parallel applications E-Mail : palm@cerfacs.fr

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]