Interim Review Cupid: An IDE for Model Development and Modeler Training Cecelia DeLuca 1, Rocky Dunlap 2, Spencer Rugaber 2 1 NOAA ESRL/University of Colorado.

Slides:



Advertisements
Similar presentations
Visual Scripting of XML
Advertisements

NSF NCAR | NASA GSFC | DOE LANL ANL | NOAA NCEP GFDL | MIT | U MICH Emergence of the Earth System Modeling Framework NSIPP Seasonal Forecast.
Earth System Curator Spanning the Gap Between Models and Datasets.
Metadata Development in the Earth System Curator Spanning the Gap Between Models and Datasets Rocky Dunlap, Georgia Tech.
Update to COPC 4 – 5 November 2014 Dave McCarren, NUOPC DPM.
Feature Analysis of Coupling Technologies for Climate Models Spencer Rugaber, Rocky Dunlap and Leo Mark College of Computing Georgia Institute of Technology.
May 2011 Milestone Materials Atmosphere-ocean design document Updated target interoperability table Adoption status table NUOPC Layer software prototype.
21 July 20054th ESMF Community Meeting Overview of the Battlespace Environments Institute Rick Allard Naval Research Laboratory Stennis Space Center, MS.
Integrated Frameworks for Earth and Space Weather Simulation Timothy Killeen and Cecelia DeLuca National Center for Atmospheric Research, Boulder, Colorado.
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
NOAA National Weather Service Water Predictions for Life Decisions DOH/RDM Science Workshop 1 Community Hydrologic Prediction System CHPS George Smith.
Cupid Integrated Development Environment: Strategies for Training and Outreach Rocky Dunlap NOAA ESRL/University of Colorado ESMF Executive Board/Interagency.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
NSF NCAR | NASA GSFC | DOE LANL ANL | NOAA NCEP GFDL | MIT | U MICH First Field Tests of ESMF GMAO Seasonal Forecast NCAR/LANL CCSM NCEP.
The Earth System CoG Collaboration Environment Sylvia Murphy and Cecelia DeLuca (NOAA/CIRES), and Luca Cinquini (NASA/JPL) AGU Ocean Sciences February.
Metadata Creation with the Earth System Modeling Framework Ryan O’Kuinghttons – NESII/CIRES/NOAA Kathy Saint – NESII/CSG July 22, 2014.
The NOAA Environmental Software Infrastructure and Interoperability Group Cecelia DeLuca NESII Team IS-ENES General Assembly June 12, 2014.
Rational Unified Process Fundamentals Module 4: Disciplines II.
Metadata for the Coupled Ocean/Atmosphere Mesoscale Prediction System (COAMPS) using the Earth System Modeling Framework (ESMF) Peter Bosler University.
Unified Process versus Extreme Programming. Outline Compare and contrast UP and XP  Processes / Disciplines  Management  Artefacts Risk management.
NE II NOAA Environmental Software Infrastructure and Interoperability Program Cecelia DeLuca Sylvia Murphy V. Balaji GO-ESSP August 13, 2009 Germany NE.
ESMF Development Status and Plans ESMF 4 th Community Meeting Cecelia DeLuca July 21, 2005 Climate Data Assimilation Weather.
Introduction to MDA (Model Driven Architecture) CYT.
Initial Results from the Integration of Earth and Space Frameworks Cecelia DeLuca/NCAR, Alan Sussman/University of Maryland, Gabor Toth/University of Michigan.
ESMF Code Generation Rocky Dunlap Spencer Rugaber Leo Mark Georgia Tech College of Computing.
ESMF Application Status GMAO Seasonal Forecast NCAR/LANL CCSM NCEP Forecast GFDL FMS Suite MITgcm NCEP/GMAO Analysis Climate Data Assimilation.
Overarching System and NEMS Cecelia DeLuca NOAA Environmental Software Infrastructure and Interoperability (NESII) NOAA ESRL/University of Colorado NGGPS.
1 NUOPC National Unified Operational Prediction Capability 1 Review Committee for Operational Processing Centers National Unified Operational Prediction.
Digital Earth Communities GEOSS Interoperability for Weather Ocean and Water GEOSS Common Infrastructure Evolution Roberto Cossu ESA
February 2012 Milestone Materials Implicit coupling design document NUOPC Layer software prototype bundled with ESMF Updated NUOPC Layer reference manual.
CESM/ESMF Progress Report Mariana Vertenstein NCAR Earth System Laboratory CESM Software Engineering Group (CSEG) NCAR is sponsored by the National Science.
Workflow Architecture Create CaseConfigure CaseSubmit Case Authentication/ Authorization Track Status Post-processDebugging Transfer Files Publish Metadata.
Earth System Modeling Framework Status Cecelia DeLuca NOAA Cooperative Institute for Research in Environmental Sciences University of Colorado, Boulder.
Components, Coupling and Concurrency in the Earth System Modeling Framework N. Collins/NCAR, C. DeLuca/NCAR, V. Balaji/GFDL, G. Theurich/SGI, A. da Silva/GSFC,
State of ESMF Cecelia DeLuca NOAA ESRL/University of Colorado ESMF Executive Board/Interagency Meeting June 12, 2014.
Earth System Modeling Framework Workshop on “Coupling Technologies for Earth System Modelling : Today and Tomorrow” CERFACS, Toulouse (France) – Dec 15.
Cupid: A Smart Development Environment for Earth System Models Rocky Dunlap research sponsored by NASA/ROSES 1.
March 2004 At A Glance autoProducts is an automated flight dynamics product generation system. It provides a mission flight operations team with the capability.
Slides for NUOPC ESPC NAEFS ESMF. A NOAA, Navy, Air Force strategic partnership to improve the Nation’s weather forecast capability Vision – a national.
ESMF Code Generation with Cupid Update and Demo October 2009 Rocky Dunlap Spencer Rugaber Leo Mark Georgia Tech College of Computing.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
ESMF Strategic Discussion Cecelia DeLuca NOAA ESRL/University of Colorado ESMF Executive Board/Interagency Meeting June 12, 2014.
1 National Environmental Modeling System (NEMS) Status M. Iredell and EMC Staff.
Page 1© Crown copyright 2004 FLUME Marco Christoforou, Rupert Ford, Steve Mullerworth, Graham Riley, Allyn Treshansky, et. al. 19 October 2007.
System/SDWG Update Management Council Face-to-Face Flagstaff, AZ August 22-23, 2011 Sean Hardman.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
Earth System Curator and Model Metadata Discovery and Display for CMIP5 Sylvia Murphy and Cecelia Deluca (NOAA/CIRES) Hannah Wilcox (NCAR/CISL) Metafor.
The Earth System Modeling Framework Robert Oehmke, Gerhard Theurich, Cecelia DeLuca NOAA Cooperative Institute for Research in Environmental Sciences University.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
ESMF,WRF and ROMS. Purposes Not a tutorial Not a tutorial Educational and conceptual Educational and conceptual Relation to our work Relation to our work.
Building Community and Capability through Common Infrastructure: ESMF and the Earth System Curator Cecelia DeLuca MAP Meeting College.
Emergence of a Common Modeling Architecture for Earth System Science American Geophysical Union December 13, 2010 Cecelia DeLuca NOAA/CIRES.
ESMF and the future of end-to-end modeling Sylvia Murphy National Center for Atmospheric Research
State of ESMF: The NUOPC Layer Gerhard Theurich NRL/SAIC ESMF Executive Board / Interagency Working Group Meeting June 12, 2014.
NOAA Environmental Modeling System Cecelia DeLuca NOAA Environmental Software Infrastructure and Interoperability (NESII) NOAA ESRL/University of Colorado.
Nesting Milestone Materials Nesting design document Updated NUOPC Layer software prototype bundled with ESMF Updated NUOPC Layer reference manual Nesting.
The NOAA Environmental Modeling System at NCEP Mark Iredell and the NEMS group NOAA/NWS/NCEP Environmental Modeling Center June 12, 2014.
Metadata Development in the Earth System Curator Spanning the Gap Between Models and Datasets Rocky Dunlap, Georgia Tech 5 th GO-ESSP Community Meeting.
Overarching System Team Cecelia DeLuca NOAA Environmental Software Infrastructure and Interoperability (NESII) NOAA ESRL/University of Colorado HIWPP/NGGPS.
The Earth System Curator Metadata Infrastructure for Climate Modeling Rocky Dunlap Georgia Tech.
A Quick Tour of the NOAA Environmental Software Infrastructure and Interoperability Group Cecelia DeLuca Dr. Robert Detrick visit March 28, 2012
GMAO Seasonal Forecast
Building a Distributed Earth System Model Community
ESPC Air-Ocean-Land-Ice Global Coupled Prediction
ESMF Governance Cecelia DeLuca NOAA CIRES / NESII April 7, 2017
Mariana Vertenstein (CGD)
Joint GEOS-Chem and NCAR Modeling Workshop:
Metadata Development in the Earth System Curator
A brief introduction to NEMS
Presentation transcript:

Interim Review Cupid: An IDE for Model Development and Modeler Training Cecelia DeLuca 1, Rocky Dunlap 2, Spencer Rugaber 2 1 NOAA ESRL/University of Colorado 2 Georgia Institute of Technology April 15,

Outline ESMF and the NUOPC Layer The Earth System Prediction Suite (ESPS) NASA Modeling and ESPS NUOPC Layer in Model E Cupid IDE Cupid Demo

The Earth System Modeling Framework (ESMF) was developed as a multi-agency response to calls for common modeling infrastructure. ESMF delivered: Standard interfaces for model components High performance libraries and tools for time management, data communications, metadata and I/O, and parallel grid remapping The Earth System Modeling Framework Metrics: ~5500 downloads ~3000 individuals on info mailing list ~40 platform/compilers regression tested ~6400 regression tests

The initial ESMF software fell short of the vision for common infrastructure in several ways: 1.Implementations of ESMF could vary widely and did not guarantee a minimum level of technical interoperability among sites 2.It was difficult to track who was using ESMF and how they were using it 3.There was a significant learning curve for implementing ESMF in a modeling code New development directions address these gaps. New Directions

1. Implementations of ESMF could vary widely and did not guarantee a minimum level of technical interoperability among sites The National Unified Operational Prediction Capability (NUOPC) is a consortium of operational weather prediction centers and their research partners NUOPC developed the NUOPC Layer software to increase interoperability of ESMF components The NUOPC Layer adds to ESMF: A formalism that describes and splits the phases of initialization A formalism for checking and reporting whether component requirements are satisfied during the run sequence Code templates for drivers, models, mediators (couplers) and connectors, and example application showing a variety of model interactions (e.g. explicit, semi-implicit, implicit coupling) Compliance checkers The National Unified Operational Prediction Capability

2. It was difficult to track who was using ESMF and how they were using it The Earth System Prediction Suite (ESPS) is a collection of weather and climate modeling codes that use ESMF with the NUOPC conventions. The ESPS makes clear which codes are available as ESMF components and modeling systems. ESPS on CoG: The Earth System Prediction Suite

Currently, components in the ESPS can be of the following types: coupled system, atmosphere, ocean, wave, sea ice Target codes include: The Community Earth System Model (CESM) The NOAA Environmental Modeling System (NEMS) and Climate Forecast System version 3 (CFSv3) The MOM5 and HYCOM oceans The Navy Global Environmental Model (NavGEM)-HYCOM-CICE coupled system The Navy Coupled Ocean Atmosphere Mesoscale Prediction System (COAMPS) and COAMPS Tropical Cyclone (COAMPS-TC) NASA GEOS-5 NASA ModelE Model Codes in the ESPS

The ESMF team has been working with GISS developers and GSFC staff to implement NUOPC interfaces in Model E Current status: Model E can be driven by a NUOPC driver. Ocean, atmosphere and “other” components are wrapped in NUOPC interfaces The system validates bfb for a simple active atmosphere configuration (EM20), test report here: The overall status for this activity is tracked here: ESMF/NUOPC Layer in Model E

ESPS Code Status LEGEND Compliant(Completion date)In progress Candidate Coupled Modeling Systems NEMSCFSv3 COAMPS / COAMPS-TC NavGEM- HYCOM-CICE GEOS-5ModelECESM Atmospheres GFS/GSM NMMB CAM 2014 FIM2014 GEOS-5 FV 2015 ModelE Atm 2014 COAMPS Atm NavGEM NEPTUNE WRF 2014 Oceans MOM5 HYCOM NCOM MPAS-O POP 2014 Ice CICE2014 Wave WW32014 SWAN Spanning major climate, weather, and ocean codes, ESPS is the most direct response to calls for common modeling infrastructure yet assembled

ESPS creates opportunities for the Cupid team: There is an opportunity for the GEOS-5 and Model E codes to become more interoperable with other codes in the community, and each other. o The NUOPC Layer and the Modeling Analysis and Prediction Layer (MAPL) that GEOS-5 uses are similarly structured and share use of ESMF as an underlayer. A report details the relationship between the two software packages, here: o The ESMF and GMAO teams plan to incorporate MAPL into the ESMF distribution, in much the same way that NUOPC is bundled with ESMF. o This will create opportunities for reducing redundancy and further merging the NUOPC Layer and MAPL packages. o A translator will be written to convert between the interfaces. There is an opportunity for training users across ESPS modeling systems. ESPS and Cupid

Cupid Development and Training Environment 3. There was a significant learning curve for implementing ESMF in a modeling code CUPID GOAL: Make ESMF training and development simpler and more appealing NOAA CIRES, GA Tech, and NASA GISS/GSFC collaboration Eclipse-based “Integrated Development Environment” or IDE Customized for ESMF applications with NUOPC conventions Cupid is a working prototype expected to be ready for first public release in FY14. Cupid project: Cupid tutorial: ide/cupid/blob/master/org.earthsystemcurator.cupid.nuopc.fsml/doc/latex/cupid.pdf?raw=true ide/cupid/blob/master/org.earthsystemcurator.cupid.nuopc.fsml/doc/latex/cupid.pdf?raw=true

Cupid Development and Training Environment Select sample code or model Pick a training problem (or coupled model) Generate a framework-aware outline of the source code Navigate around the source code using the outline Use an editor to modify the source code Automatically generate code needed for NUOPC compliance Compile and run locally or on a cloud (currently Amazon Web Services) Run locally or on a cloud Source code editor Console for viewing output Project explorer NUOPC outline

Selecting the Training Scenario or Model Four options are available, each with a different architecture and coupling behavior: Single Model with Driver Coupled Atmosphere-Ocean Driver Coupled Atmosphere-Ocean with Mediator and Driver Model E EM20 (atmosphere only) configuration (untested) Scenario selection: Populates the Project Explorer Determines software prerequisites

Smart, Framework-aware Code Editing Environment Central idea: A framework-aware editor provides contextual guidance as code is being written by checking for compliance to framework rules and automatically generating and inserting code fragments into existing code Reverse engineer Generate code

Smart, Framework-aware Code Editing Environment NUOPC View compact outline of NUOPC component source code linked with source code editor contextual reference documentation compliance issues shown in red new elements can be added to outline, simultaneously generating code in the editor

Behind the Scenes: Smart, Framework-aware Code Editing Environment

Running Code in Cupid: Local or Cloud-based Job Submission Eclipse projects can be configured to run on a personal or cloud-based computing system. What advantages does cloud-based computing offer for an IDE? Configuration of a computational environment for compiling and running models requires expert knowledge, and Configuration of an IDE for a particular computing system (e.g., NASA/Discover) introduces complexity

Cloud-based Training Environment Central idea: Integrate cloud computing with the IDE so trainees get quickly to important learning objectives Advantages: trainee not required to configure computational environment on-demand training in low-risk sandboxes pre-configured scenarios highlight important ESMF/NUOPC concepts New Cupid Training Project Wizard spins up Amazon EC2 instances

Behind the Scenes: Cloud-based Training Environment NESII Amazon Elastic Compute Cloud (EC2) account: preconfigured machine images – NUOPC and ModelE (EM20 rundeck) can request access to NESII cloud account, or can provide your own EC2 account credentials XML-based training scenario configuration:

Thanks!

Extra slides

Behind the Scenes: Smart, Framework-aware Code Editing Environment Structural Pattern ExpressionStructural Elements Matched module Matches a Fortran module m moduleName Matches the name of the module m m subroutine Matches a subroutine defined inside module m m subroutine(name(type1, type2,...)) or m subroutine(*(*)) Matches a subroutine defined inside module m with the given signature. The wildcard * can be used in place of the name and/or types. s subroutineName Matches the name of subroutine s s formalParam(i) Matches the i th formal parameter of subroutine s Mapping Types

Behind the Scenes: Smart, Framework-aware Code Editing Environment Structural Pattern ExpressionStructural Elements Matched s call Matches a subroutine call within the implementation of subroutine s s call(name(arg1, arg2,...)) Matches a subroutine call within the implementation of subroutine s to a subroutine with the given name and given set of argument. c argByIndex(i) Matches the i th argument value for the call c c argByKeyword(keyword) Matches the value of the argument with the given keyword for the call c Mapping Types (cont.)

Behind the Scenes: Smart, Framework-aware Code Editing Environment NUOPC Driver driverName standardNUOPCImport callsGenericSetServices module(#driverName) usesModule(NUOPC) standardESMFImport usesModule(ESMF) implementsSetServices subroutine(*(inout type(ESMF_GridComp) #p_gcomp, out integer #p_rc) )... call(#^genericImports/importsGenericSS (#^p_gcomp, #^p_rc)) genericImports usesModule(NUOPC_Driver) importsGenericSS usesEntity(routine_SetServices)