17
On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi, Eleftheria Katsiri and John Darlington

On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

Embed Size (px)

DESCRIPTION

Goals  A flexible coupling framework where components can be individually developed and coupled together.  The coupling needs to be correct, intelligent and without undue programming effort.  In synch with existing efforts: (GCF, Iceni I, Apples AMWAT, Reality Grid), but a system of the size and complexity of Genie requires a supporting semantic framework. 2

Citation preview

Page 1: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE

Sofia Panagiotidi, Eleftheria Katsiri and John Darlington

Page 2: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

1

Motivation

Reverse engineer GENIE to inform research on component coupling frameworks:

Analysis of a monolithic piece of code such as GENIE. Extraction of interface and model coupling semantics. Development of methods for capturing such semantics and validating the development.Methods to express at higher-levels co-ordination structure.

Page 3: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

Goals

A flexible coupling framework where components can be individually developed and coupled together.

The coupling needs to be correct, intelligent and without undue programming effort.

In synch with existing efforts: (GCF, Iceni I, Apples AMWAT, Reality Grid), but a system of the size and complexity of Genie requires a supporting semantic framework.

2

Page 4: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

3

What is GENIE?

Grid ENabled Integrated Earth system model. Investigate long term changes to the Earth’s climate (i.e.

global warming) by integrating numerical models of the Earth system.

e-Science aims:Flexibly couple together state-of-the-art components to

form unified Earth System Model (ESM).Execute resultant ESM on a Grid infrastructure.Share resultant data produced by simulation runs.Provide high-level open access to the system, creating

and supporting virtual organisation of Earth System modellers.

Page 5: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

4

GENIE model framework

3D atmosphere

3D ocean

2D sea ice

AtmosphericCO2

2D land surface

Land biogeochemistry

Ocean biogeochemisty

Ocean sediments

3D ice sheets

Page 6: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

Previous Work

Separation of the code into pieces - Layered representation of the application.

Wrapping GENIE as ICENI binary component. Delivery of Web-based System (portal) to allow a virtual

organisation of environmental scientists to create and manage simulations at a high-level.

Submission of multiple sweep experiments to the portal, exploiting multiple resources over a Condor pool.

Implementation of database management system to allow scientists to share, access and visualise data produced by simulation runs.

5

Page 7: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

Currently in GENIE

genie.F is a glorified metafile containing if-then-else statements.

Fortran routines act as “wrappers”, IN/OUT annotation.

Life cycle phases scattered, i.e. igcm_adiab.F and initialise_atmos.F.

Shared memory, file based I/O. Complex semantics (e.g. grid

interpolations). Hard-coded time steps.

6

Page 8: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

7

OLOGEN

Ontology for GENIE: Classes Relations

Page 9: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

Entities (1)

OLOGEN Class Hierarchy: Abstractions - What is the abstraction granularity? Component

Module (atmosphere, land, ocean etc) Model (IGCM, c-Goldstein, etc) Wrapper

Routine Function (…)

Interface Data Flow Type (IN, OUT, INOUT, Control) Model Scope (Common, Model-Specific) Binding (Late, Current) Layer (Local, Wrapper)∶

8

is pa

rt of

Page 10: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

Entities (2)

8

Page 11: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

10

Relations

Page 12: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

11

Higher-order Functions Co-ordination forms

The Wrap Skeleton The Thread Coupler Skeleton Distribution Model

Same-hostDistributedParallel

Page 13: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

12

The Wrap Skeleton

Wrap(c,list of wrapper input interfaces, list of wrapper output interfaces, list of local input interfaces, list of local output interfaces, list of control interfaces)=C

Page 14: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

13

The Thread Coupler Skeleton[SCL, Darlington93]

IterFor koverall{ IterFor n step A IterFor m step B

where

step A = threadA.executethreadB.notify(interfaceB)step B = threadB.executethreadA.notify(interfaceA)}

Page 15: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

Nested Coupling

igcm_land_surflux

pass results 3

pass lowest level values to ocean & land

igcm3_adiab flag_

land

not

igcm_ocean_surflux

igcm_ocean_blayerflag_goldsteinocean and

flag_goldsteinseaice

not

check_fluxes_surf_l

flag_checkfluxes_surf

not

igcm_land_blayer

genie_land_surflux

igcm3_diabpass results 2

land_niter_tim

katmos_int

ocean_niter_tim

14

Page 16: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

15

Conclusions

Use of reverse engineering approach to research on component coupling frameworks:

Analysis of a monolithic piece of code such as GENIE. Extraction of interface and model coupling semantics. Development of OLOGEN, an ontology for capturing such semantics and validating the development.Co-ordination via functional skeletons.

Page 17: On Advanced Scientific Understanding, Model Componentisation and Coupling in GENIE Sofia Panagiotidi,…

16

Acknowledgments

We would like to thank Andrew Price, Dan Lunt, Gethin Williams, Ian Rutt, Andrew Yool, Neil Edwards, Tim Lenton and John Shepherd for their assistance and guidance.

Acknowledgments also go to the GENIE investigators: Prof. Paul Valdes (Reading), Prof. John Shepherd (SOC, Southampton), Prof. Andrew Watson (UEA), Prof. Melvyn Cannell (CEH Edinburgh), Dr. Anthony Payne (Bristol), Prof. Richard Harding (CEH Wallingford), Prof. Simon Cox (SReSC) and Prof. John Darlington (LeSC).

Reference: [SCL, Darlington93] J. Darlington, Y. Guo, H. W. To, and J. Yang. Functional skeletons for parallel coordination. In Seif Haridi, Khayri Ali, and Peter Magnussin, editors, Euro-Par'95 Parallel Processing, pages 55-69. Springer-Verlag, August 1995.