Building the UM within Rose/Cylc

Slides:



Advertisements
Similar presentations
SolidWorks Enterprise PDM Data Loading Strategies
Advertisements

NCAS Unified Model Introduction Part 1b: Running the UM University of Reading, 3-5 December 2014.
1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
CSE 4939 Alex Riordan Brian Pruitt-Goddard Remote Unit Testing.
Part 1a: Overview of the UM system
NCAS Unified Model Introduction Part 5: Finale University of Reading, 3-5 December 2014.
Revision Control Systems Amin Tootoonchian Kian Mirjalali.
Part 5: Rose and shared repositories
James Boother Blog: INTRODUCTION TO POWERSHELL.
ASP.net – Mysteries, Myths and Truths By George W. Ponick IV – Nov. 14, 2006.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
The project plan. December 16, Agenda The project plan –Risks –Language decision –Schedule –Quality plan –Testing –Documentation Program architecture.
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
Presented by Mina Haratiannezhadi 1.  publishing, editing and modifying content  maintenance  central interface  manage workflows 2.
Julie McEnery1 Installing the ScienceTools The release manager automatically compiles each release of the Science Tools, it creates a set of wrapper scripts.
SCRAM Software Configuration, Release And Management Background SCRAM has been developed to enable large, geographically dispersed and autonomous groups.
Apache Server The Apache Server Apache is a WWW server that implements the HTTP protocol. Apache runs as a daemon. This means that it is a resident.
SKA/KAT SPIN Presentation Software Engineering (!?) Robert Crida.
Trilinos 101: Getting Started with Trilinos November 7, :30-9:30 a.m. Mike Heroux Jim Willenbring.
The Pipeline Processing Framework LSST Applications Meeting IPAC Feb. 19, 2008 Raymond Plante National Center for Supercomputing Applications.
April 6, 2010GMQS Meeting1 Optional Feature Support in HDF5 Tools Albert Cheng The HDF Group.
INFSOM-RI Juelich, 10 June 2008 ETICS - Maven From competition, to collaboration.
Overview of LHCb applications and software environment LHCb software tutorial - March
Subversion (SVN) Tutorial Source:
Object-Oriented Analysis & Design Subversion. Contents  Configuration management  The repository  Versioning  Tags  Branches  Subversion 2.
(Sub)Version Control. 2 Keep large teams working on the same code Back up your work so you don't lose it all Compare changes to previous versions Revert.
Progress with migration to SVN Part3: How to work with g4svn and geant4tags tools. Geant4.
DireXions – Your Tool Box just got Bigger PxPlus Version Control System Using TortoiseSVN Presented by: Jane Raymond.
CVS – concurrent versions system Network Management Workshop intERlab at AIT Thailand March 11-15, 2008.
Replay Compilation: Improving Debuggability of a Just-in Time Complier Presenter: Jun Tao.
The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology Bluelink – an integrator of the Integrated.
Version Control with SVN Images from TortoiseSVN documentation
CVS – concurrent versions system AROC Guatemala July 19-23, 2010 Guatemala City, Guatemala.
Dissecting the Windows CE Build Process James Y. Wilson Principal Engineer, Windows Embedded MVP CalAmp, Inc. James Y. Wilson Principal Engineer, Windows.
Introduction on WRF-Var Regression Test Ruifang Li MMM Phone:
Technical Validation The Technical Validation is a testing framework of the AUGER offline to monitor the code development process. It is not a validation.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Part 4: FCM and the UM University of Reading, December 2015.
Transition to SVN server: follow up P.Hristov 24/01/2008.
How to configure, build and install Trilinos November 2, :30-9:30 a.m. Jim Willenbring.
SVN code server for AliRoot P.Hristov 18/10/2007.
CERN Tutorial, September Overview of LHCb applications and software environment.
Modules, Compiling WRF, and Running on CHPC Clusters Adam Varble WRF Users Meeting 10/26/15.
1 PSI/PhUSE Single Day Event – SAS Applications – June 11, 2009 SAS Drug Development from the Inside Magnus Mengelbier Director.
March 2014 NCAS Unified Model Introduction Finale York – March 2014.
Modularization of Geant4 Dynamic loading of modules Configurable build using CMake Pere Mato Witek Pokorski
CTS Change & Transport System. Introduction The Change and Transport System (CTS) is a tool that helps you to organize development projects in the ABAP.
ACCESS NWP Suite Design
Summary of G3 work to date
Hands on training session for core skills
Michael Naughton, Wenming Lu
Open Source Software Development Environment
SVN intro (review).
z/Ware 2.0 Technical Overview
Cross Platform Development using Software Matrix
Work report Xianghu Zhao Nov 11, 2014.
Chapter 2: System Structures
ACCESS Rose-cylc Technical Infrastructure at NCI & BoM
Rose & Cylc Rose suites 09/02/2016 by Joao Teixeira.
ETL Job Scheduler Job Database Server User Interface Scheduler
GLAST Release Manager Automated code compilation via the Release Manager Navid Golpayegani, GSFC/SSAI Overview The Release Manager is a program responsible.
CVS revisions UML diagram
Overview of timelines for ACCESS systems porting to Ngamai
ACCESS NWP Version Releases
Introduction to a UM suite
C Preprocessor(CPP).
UM Practical Exercises
A Collaborative Environment
Introduction to the Rose suite
Building LabKey with Gradle
Presentation transcript:

Building the UM within Rose/Cylc www.cawcr.gov.au Ian Campbell 26th March 2014

Background Current method for building the UM UMUI interface FCM 1.5 FCM 2.0 (released in March 2011, current version 2.3.1) Single command and framework of a configurable chain of steps New configuration file format Peformance greatly increased Rose (first release in Nov 2012, current version 2014-03) A framework for managing and running meteorological suites A replacement for UMUI The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Simple Build Job for UM 8.5 Suite au-aa054 is a basic suite that builds the UM 8.5 and reconfiguration executable. To run the suite on Accessdev rosie checkout au-aa054 rose suite-run -C ~/roses/au-aa054 This suite will build the following executables on Raijin $HOME/cylc-run/au-aa054/share/fcm_make/build-atmos/bin/um-atmos.exe $HOME/cylc-run/au-aa054/share/fcm_make/build-recon/bin/um-recon.exe Share and work directories are in /short/$PROJECT/$USER/cylc-run/au-aa054/work/ /short/$PROJECT/$USER/cylc-run/au-aa054/share/ The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

How the UM is built within Rose Rose has FCM 2 as a built-in application Any task names starting with "fcm_make" are considered FCM tasks. FCM tasks use make files defined in your suite. Eg. au-aa054/app/fcm_make/file/fcm-make.cfg Combines suite's make file with external make files into single make file. Eg. $HOME/cylc-run/au-aa054/share/fcm_make/fcm-make.cfg On Raijin build jobs need to be a two-step process fcm_make - Extracts the Source code. fcm_make2 - Compile the Source code The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Example FCM tasks in Suite.rc [runtime] [[root]] initial scripting = """ module use ~access/modules module load rose module load cylc . ~access/umdir/vn8.5/environment module rm fcm module load fcm/2013-12 """ command scripting = "rose task-run -vv" [[[environment]]] ROSE_TASK_N_JOBS = 4 ROSE_TASK_OPTIONS = --ignore-lock [[[event hooks]]] … [[[remote]]] host=raijin.nci.org.au [[fcm_make]] [[[job submission]]] method = background [[fcm_make2]] method = pbs [[[directives]]] ….. Module Environment module use ~access/modules module load rose module load cylc ~access/umdir/vn8.5/environment module unload fcm module load fcm/2013-12 Environment Variables passed to FCM ROSE_TASK_N_JOBS ROSE_TASK_OPTIONS The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Overview of the fcm-make.cfg (I) Defining Source Base Version $um_base = fcm:um-tr #FCM keyword to trunk $um_rev = vn8.5 #FCM revision number $jules_base = fcm:um-tr #FCM revision number $jules_rev = vn8.5 #FCM revision number The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Overview of the fcm-make.cfg (II) Adding Branches/working copies: extract.location{diff}[um] = \ branches/dev/vn8.5/GlobalAtmos6p0@7678 \ fcm:um_dev/vn8.5/local_changes@HEAD extract.location{diff}[jules] = \ branches/dev/mrd599/um8.5_GlobalLand6p0@387 The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Overview of the fcm-make.cfg (III) Steps for Building the UM $steplist = extract mirror $mirror_steplist = preprocess-atmos build-atmos \ preprocess-recon build-recon $MIRROR_TARGET = \ $HOME/cylc-run/$ROSE_SUITE_NAME/share/fcm_make include = fcm:um_dev/vn8.5/local_changes/fcm-make/linux-ifort-nci/um-atmos-safe.cfg@HEAD The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Overview of the fcm-make.cfg (IV) Definitions for pre compiler $keys_atmos_app = A03_9C=a03_9c A13_2A=a13_2a A19_1B=a19_1b C84_1A=c84_1a C95_2A=c95_2a C96_1C=c96_1c C97_3A=c97_3a C98_0A=c98_0a UM_JULES=um_jules L19_1A=l19_1a $keys_recon_app = RECON=recon GRIB_API=grib_api C95_2A=c95_2a C98_0A=c98_0a UM_JULES=um_jules Extra compiler options $fcflags_omp = # Extra options for open mpi at compile time $ldflags_omp = # Extra options for open mpi at link time The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

When things go wrong!! Rose log files Suite log files on Accessdev $HOME/cylc-run/au-aa054/log/suite/log $HOME/cylc-run/au-aa054/log/suite/out $HOME/cylc-run/au-aa054/log/suite/err Extract log files on Accessdev $HOME/cylc-run/au-aa054/log/job/fcm_make.1.N.err $HOME/cylc-run/au-aa054//log/job/fcm_make.1.N.out Compile log files on Raijin $HOME/cylc-run/au-aa054/log/job/fcm_make2.1.N.err $HOME/cylc-run/au-aa054/log/job/fcm_make2.1.N.out FCM log files on Raijin and Accessdev $HOME/cylc-run/au-aa054/share/fcm_make/fcm-make.log High level Low level The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Stand alone Build Suites Don't rely on external FCM make files in the access-svn repository Allow users see the nuts and bolts of make files without searching through the various external make files UM Build Suite au-aa059 Reconfiguration Build Suite au-aa063 The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Further information Access Wiki Rose Documentation FCM 2 https://trac.nci.org.au/trac/access/wiki/UMRoseExecs https://trac.nci.org.au/trac/access/wiki/UMStandAloneExecs Rose Documentation http://metomi.github.io/rose/doc/rose.html http://metomi.github.io/rose/doc/rose-rug-task-run.html#rose-task-run.built-in-app.fcm_make FCM 2 http://metomi.github.io/fcm/doc/user_guide/ The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology

Thank you Thank you Ian Campbell Phone: 03 9616 8412 The Centre for Australian Weather and Climate Research A partnership between CSIRO and the Bureau of Meteorology Ian Campbell Phone: 03 9616 8412 Email: i.campbell@csiro.au Web: www.cawcr.gov.au Thank you Thank you www.cawcr.gov.au