page 1© crown copyright 2004 flume marco christoforou, rupert ford, steve mullerworth, graham...

21
© Crown copyright 2004 Page 1 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

Upload: augustus-singleton

Post on 21-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 1

FLUME

Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al.

19 October 2007

Page 2: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 2

• what is FLUME?

• everything you wanted to know about FLUME Metadata

• some other interesting things

• progress report

Page 3: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 3

What is FLUME?

• FLexible Unified Model Environment

• scientific code is modularised;• infrastructure code is generated

• big plans for UM vn7.0

(a bit)

Page 4: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 4

What is FLUME?

• a small set of F90 modules which provide types and subroutines to link components into a coherent program

2. Framework

1. Components

• any piece of atomic code that can form part of a composition• “everything is a model”

Page 5: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 5

What is FLUME?

• a set of tools to aid the user in creating experiments.• helps users to manipulate metadata so that it can be passed on to the code generator.

4. User Interface

3. Code Generator [BFG]

• transforms a metadata description of an experiment into code (and input files) to actually run the experiment

Page 6: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 6

What is FLUME?

5. Metadata

• links all of the above entities together• describes all necessary aspects of a FLUME experiment• manipulated according to the DCCD paradigm

Page 7: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 7

FLUME Metadata

why do we need another set of schemas?

• process-driven:• each metadata document corresponds to a particular step in the experiment-creation (DCCD) process

• syntactic:• FLUME describes models at a very low level – it is predominantly syntactic rather than semantic

• generic:• there is almost nothing climate-specific about FLUME metadata

• therefore it shouldn’t need to be extended as new climate configurations emerge

Page 8: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 8

FLUME Metadata

• definition - defining a job’s components; writing code and creating metadata that follows the FLUME Single Model Guidelines

• configuration - creating a specific instance of a component based upon the set of potential instances described by its definition; filling in the blanks

• composition - creating links between components; specifying the behaviour of the coupled system

• deployment - specifying how to deploy a composition onto computing resources

• validation - ensuring no constraints are broken; ensuring that (definitions) metadata accurately reflects code

DCCD

Page 9: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 9

FLUME Metadata

machines data grids

resources

roles groups users

administration

“models”

scientific models

transformer models

diagnostic models

composite models

configuration

composition

deployment

modified during definition

grids

modified during configuration

modified during composition

modified during deployment

definitions selections

nonspecific information

model-specific information

experiment-specific information

constraints

Page 10: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 10

• grids are dissociated from model code and model metadata• grids are defined as resources that (variables within) models can map to

• uninstantiated grids• high-level generic schema just containing some standard names, a set of question / answer pairs, and a reference to a grid instantiator

• grid instantiators• algorithm that takes the answers to a configured uninstantiated grid as input and produces (a set of) instantiated grid(s) as output

• instantiated grids• a “complete” description of a grid (gridspec?)

some interesting things

grids

Page 11: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 11

some interesting things

• how grid information might flow through flume:• configured grid data is referenced as data by a configured component; this data is passed directly to the component code (as subroutine arguments, for instance)• algorithm instantiates the grid and the FLUME Framework reads that information directly (and uses it for coupling, for instance)

Page 12: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 12

some interesting things

• specify logical relationships among metadata elements• built into metadata (written in XML)• implicit vs. explicit constraints• local vs. global constraints

constraints

Page 13: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 13

some interesting things

Page 14: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 14

progress report

• framework can flexibly couple toy models (add and remove models, change coupling options, etc.)

framework

components

• “FLUMEifying” the UM Atmosphere (stripping out infrastructure code)

Page 15: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 15

progress report

metadata & code generator• basic structure is there• code generation “works”• grids• decompositions• constraints• more complex compositions

Page 16: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 16

final thoughts

where does FLUME fit within the vast menagerie of standards• compatible with OASIS because using OASIS will be a deployment option• complementary to ESMF because generating ESMF models is a target of BFG• incorporates (a variant of) BFG• agnostic (probably) about model output metadata• has a different goal than NMM • one of the standards informing METAFOR• as for Curator…

Page 17: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 17

the end

Page 18: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 18

the end

Page 19: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 19

the end

Page 20: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 20

the end

Page 21: Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007

© Crown copyright 2004 Page 21

the end