access_JEDIAtNCI_MiniAcademyJune2020_Activity2B - ACCESS-NRI/accessdev-Trac-archive GitHub Wiki

Interactive activity 2B

This covers "Tuesday - Session B"

1)

We will ssh to a Gadi login node so you can skip this step.

2)

Read the Monterey tutorial and clone ufo-bundle. Have a look at the top-level CMakeLists.txt file and read an explanation. Monterey tutorial suggests that you make a change to CMakeLists.txt by changing some of the ecbuild_bundle declarations: switch from using the develop branches to the feature/academy branches for the oops, saber, ioda and ufo sub-projects. Since the Monterey academy many of the JCSDA repositories have moved on and so the suggested changes break the ufo-bundle build. Instead in our tutorial we will use the develop branches for the oops, saber, ioda and ufo sub-projects. This means you don't need to modify CMakeLists.txt for this step.

3)

There is no need to start a JEDI container.

Follow the instruction to configure the build. Then run make and ctest. If you think running parallel jobs on a Gadi login node will inconvenience other people then follow the instructions in Step 7 under the heading, "Running JEDI subsystems and applications" in JEDIAtNCI to use a compute node to run make and ctest.

WARNING You may find some SABER tests failing. The failures are due to either the test results not matching references or in some cases references not being available. There is a PR open which may/may not be related to this problem. In any case we won't be running SABER so you can safely move on to the next step.

4)

Read this step in Monterey tutorial

5)

Read this step in Monterey tutorial

6)

The source code for the DifferenceCheck filter is,

cd ${TOP_DIR}/academy/jedi/src/ufo-bundle/ufo  # go to the top of the ufo sub-project directory within the ufo-bundle source directory
ls src/ufo/filters/DifferenceCheck.h           # C++ header file
ls src/ufo/filters/DifferenceCheck.cc          # C++ source file where the DifferenceCheck filter is implemented

Read this step in Monterey tutorial.

7a), 7b) and 7c)

Follow the Monterey tutorial.