nsf ncar / nasa gsfc / doe lanl anl / noaa ncep gfdl / mit / u mich may 14, 2003 nancy collins, ncar...

11
May 14, 2003 NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MIC Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the Earth System Modeling Framework NSIPP Seasonal Forecast NCAR/LANL CCSM NCEP Forecast GFDL FMS Suite MITgcm NASA GSFC PSAS

Upload: alaina-woods

Post on 17-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

Nancy Collins, NCAR

Components Workshop, Princeton, NJ

Components in the Earth System Modeling Framework                  

NSIPP Seasonal ForecastNCAR/LANL CCSM

NCEP Forecast

GFDL FMS SuiteMITgcm

NASA GSFC PSAS

Page 2: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

Outline

• ESMF Component Design Principles• ESMF Component User Environments• ESMF Component Details

Page 3: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

ESMF Project Overview

GOAL: To increase software reuse, interoperability, ease of use and performance portability in climate, weather, and data assimilation applications

PRODUCTS: • Coupling superstructure and utility infrastructure software • Synthetic code suite for validation and demonstration• Set of 15 ESMF-compliant applications (including CCSM, WRF, GFDL models;

MIT, NCEP and NASA data assimilation systems)• Set of 8 interoperability experiments

RESOURCES: $10.1M over 3 years from NASA Earth Science Technology Office

Page 4: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

ESMF Class Structure

MachineModel

Layout

DistGridPhysGrid

State

Bundle

GriddedComponent

Array

Utilities: TimeMgr, Config, LogErr, I/O etc.

F90

Superstructure

Infrastructure

Field

Grid

Regrid

Comm

Data Communications

Route

CouplerComponent

C++

ApplicationComponent

Page 5: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

Design Principles:Scalable ApplicationsSince each ESMF application is also a component, entire ESMF applications may be treated as Gridded Components and nested within larger applications.

climate_comp

ocn_comp atm_comp

ocn2atm_coupler

atm_phys

phys2dyn_coupler

atm_dynPE

Example: atmospheric application containing multiplecoupled components within a larger climate application

Page 6: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

Design Principles:Local CommunicationAll inter-component communication within ESMF is local.

climate_comp

ocn_comp atm_comp

atm_phys

phys2dyn_coupler

atm_dynPE

atm2ocn _coupler

This means:

Coupler Components must be defined on the union of the PEs of all the components that they couple.

In this example, in order to send data from the ocean component to the atmosphere, the Coupler mediates the send.

Page 7: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

Design Principles:Import/Export StatesGridded Components do not have access to the internals of other Gridded Components. They have 2 options for exchanging data with other Components; the first is to receive Import and Export States as arguments.

coupler

ocn_componentsubroutine ocn_run(comp, &

ImportState,ExportState, Clock, rc)

atm_componentsubroutine atm_run(comp, &

ImportState,ExportState, Clock, rc)

States contain flags for “is required”, “isvalid”, “is ready”, etc.

Page 8: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

Design Principles:Transforms and StatesGridded Components using Transforms do not have to return control to a higher level component to send or receive State data from another component. They can receive function pointers which are methods that can be called on the states.

coupler

ocn_componentcall ESMF_StateXform(ex_state, &

xform)

atm_componentcall ESMF_StateXform(xform, &

im_state)

transformcall ESMF_CompRun(atm, xform)call ESMF_CompRun(ocn, xform)

Page 9: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

Design Principles:Registration ProcessComponents must provide a single externally visible entry point which will register the other entry points with the Framework. Components can:

- Register one or more Initialization, Run, Finalize, and Checkpoint entry points.

- Register a private data block which can contain all data associated with this instantiation of the Component; particularly useful when running ensembles.

Higher level Comp

cmp_register() cmp_run() cmp_final()cmp_init()

ESMF Framework Services

Public subroutinePrivate subroutine

Page 10: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

ESMF User Environments

•Languages: F90 (predominately), C++•Systems: Unix/Linux variants (inc IBM, SGI, Compaq, Linux clusters, Mac OS X)•Memory: MPI, PThreads/SMP•Execution: Sequential and Concurrent•Runtime system: LoadLeveler, poe, bsub, mpirun

Page 11: NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH May 14, 2003 Nancy Collins, NCAR Components Workshop, Princeton, NJ Components in the

May 14, 2003

NSF NCAR / NASA GSFC / DOE LANL ANL / NOAA NCEP GFDL / MIT / U MICH

Component Details

• Components create others• Nested parent/child relationship• Annotated States contain all data passed

between components• Data objects use CF name conventions• Can be created dynamically • Initialization/Run/Finalize/Checkpoint