Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Repositories #681

Merged
merged 12 commits into from
Dec 3, 2023
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
version: 2.1

# Anchor to prevent forgetting to update a version
baselibs_version: &baselibs_version v7.13.0
baselibs_version: &baselibs_version v7.14.0

orbs:
ci: geos-esm/circleci-tools@1
Expand Down
34 changes: 23 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ This document explains how to build, set up, and run the GEOS land modeling and

## How to Build GEOSldas

### Step 1: Load the Build Modules
### Step 1: Load the Build Modules

Load the `GEOSenv` module provided by the GMAO Software Infrastructure team. It contains the latest `git`, `CMake`, and `mepo` modules and must be loaded in any interactive window that is used to check out and build the model.

Expand All @@ -13,7 +13,7 @@ module use -a (path)
module load GEOSenv
```

where `(path)` depends on the computer and operating system:
where `(path)` depends on the computer and operating system:

| System | Path |
| ------------- |---------------------------------------------------|
Expand All @@ -28,7 +28,7 @@ For development work, clone the _entire_ repository and use the `develop` branch
```
git clone -b develop git@github.com:GEOS-ESM/GEOSldas.git
```
For science runs, you can also obtain a specific tag or branch _only_ (as opposed to the _entire_ repository), e.g.:
For science runs, you can also obtain a specific tag or branch _only_ (as opposed to the _entire_ repository), e.g.:
```
git clone -b v17.9.1 --single-branch git@github.com:GEOS-ESM/GEOSldas.git
```
Expand All @@ -40,13 +40,25 @@ To build the model in a single step, do the following:
```
cd ./GEOSldas
parallel_build.csh
```
from a head node. Doing so will check out all the external repositories of the model (albeit only on the first run, [see subsection on mepo below](#mepo)!) and build the model. When done, the resulting model build will be found in `build/` and the installation will be found in `install/`, with setup scripts like `ldas_setup` in `install/bin`.
```
from a head node. Doing so will check out all the external repositories of the model (albeit only on the first run, [see subsection on mepo below](#mepo)!) and build the model. When done, the resulting model build will be found in `build-SLES12/` and the installation will be found in `install-SLES12/`, with setup scripts like `ldas_setup` in `install-SLES12/bin`.

To obtain a build that is suitable for debugging, use `parallel_build.csh -debug`, which will build in `build-Debug/` and install in `install-Debug/`. There is also an option for aggressive optimization. For details, see [GEOSldas Wiki](https://github.com/GEOS-ESM/GEOSldas/wiki).
To obtain a build that is suitable for debugging, use `parallel_build.csh -debug`, which will build in `build-Debug-SLES12/` and install in `install-Debug-SLES12/`. There is also an option for aggressive optimization. For details, see [GEOSldas Wiki](https://github.com/GEOS-ESM/GEOSldas/wiki).

See below for how to build the model in multiple steps.

#### Running on Milans at NCCS

By default, `parallel_build.csh` will build on SLES12 nodes at discover (either Skylake or Cascade Lake). However, Milan nodes were
recently installed at discover, which use SLES15 as their operating system. Because of this OS difference, if you want to run on the
Milans, you must build on the Milans. To do so you can run `parallel_build.csh` with the `-mil` flag, e.g.:

```
parallel_build.csh -mil
```

This will by default build in `build-SLES15` and install to `install-SLES15`.

---

## How to Set Up (Configure) and Run GEOSldas
Expand All @@ -57,7 +69,7 @@ a) Set up the job as follows:
cd (build_path)/GEOSldas/install/bin
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this correct?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suppose this would need to be something like cd (build_path)/GEOSldas/install-SLES12/bin
Let's fix it when we include the SLES15 vs SLES12 instructions in #693

source g5_modules [for bash or zsh: source g5_modules.[z]sh]
./ldas_setup setup [-v] (exp_path) ("exe"_input_filename) ("bat"_input_filename)
```
```

where

Expand All @@ -70,14 +82,14 @@ where

The three arguments for `ldas_setup` are positional and must be ordered as indicated above.

The latter two files contain essential information about the experiment setup.
The latter two files contain essential information about the experiment setup.
Sample files can be generated as follows:
```
```
ldas_setup sample --exeinp > YOUR_exeinp.txt
ldas_setup sample --batinp > YOUR_batinp.txt
```

Edit these sample files following the examples and comments within the sample files.
Edit these sample files following the examples and comments within the sample files.

The ldas_setup script creates a run directory and other directories at:
`[exp_path]/[exp_name]`
Expand Down Expand Up @@ -156,7 +168,7 @@ and CMake will install there.
```
make -j6 install
```
If you are at NCCS, you **should** run `make -j6 install` on an interactive _compute_ node.
If you are at NCCS, you **should** run `make -j6 install` on an interactive _compute_ node.


## Contributing
Expand Down
10 changes: 5 additions & 5 deletions components.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ GEOSldas:
env:
local: ./@env
remote: ../ESMA_env.git
tag: v4.17.0
tag: v4.20.5
develop: main

cmake:
local: ./@cmake
remote: ../ESMA_cmake.git
tag: v3.30.0
tag: v3.35.0
develop: develop

ecbuild:
Expand All @@ -22,20 +22,20 @@ ecbuild:
GMAO_Shared:
local: ./src/Shared/@GMAO_Shared
remote: ../GMAO_Shared.git
tag: v1.9.1
tag: v1.9.5
sparse: ./config/GMAO_Shared.sparse
develop: main

GEOS_Util:
local: ./src/Shared/@GMAO_Shared/@GEOS_Util
remote: ../GEOS_Util.git
tag: v2.0.2
tag: v2.0.3
develop: main

MAPL:
local: ./src/Shared/@MAPL
remote: ../MAPL.git
tag: v2.39.4
tag: v2.41.1
develop: develop

GEOSgcm_GridComp:
Expand Down
Loading