Skip to content

Commit a581507

Browse files
authored
Merge pull request #908 from GEOS-ESM/feature/mathomp4/v11-remove-sles15-detection
v11: Remove NCCS OS Detection
2 parents c24b0fb + 1b92301 commit a581507

File tree

2 files changed

+57
-50
lines changed

2 files changed

+57
-50
lines changed

README.md

Lines changed: 48 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -16,23 +16,23 @@
1616
| [CICE](https://github.com/GEOS-ESM/CICE) | [geos/v0.2.0](https://github.com/GEOS-ESM/CICE/releases/tag/geos%2Fv0.2.0) |
1717
| [CPLFCST_Etc](https://github.com/GEOS-ESM/CPLFCST_Etc) | [v1.0.1](https://github.com/GEOS-ESM/CPLFCST_Etc/releases/tag/v1.0.1) |
1818
| [ecbuild](https://github.com/GEOS-ESM/ecbuild) | [geos/v1.4.0](https://github.com/GEOS-ESM/ecbuild/releases/tag/geos%2Fv1.4.0) |
19-
| [ESMA_cmake](https://github.com/GEOS-ESM/ESMA_cmake) | [v3.56.0](https://github.com/GEOS-ESM/ESMA_cmake/releases/tag/v3.56.0) |
20-
| [ESMA_env](https://github.com/GEOS-ESM/ESMA_env) | [v4.35.0](https://github.com/GEOS-ESM/ESMA_env/releases/tag/v4.35.0) |
19+
| [ESMA_cmake](https://github.com/GEOS-ESM/ESMA_cmake) | [v3.58.2](https://github.com/GEOS-ESM/ESMA_cmake/releases/tag/v3.58.2) |
20+
| [ESMA_env](https://github.com/GEOS-ESM/ESMA_env) | [v4.36.0](https://github.com/GEOS-ESM/ESMA_env/releases/tag/v4.36.0) |
2121
| [FMS](https://github.com/GEOS-ESM/FMS) | [geos/2019.01.02+noaff.10](https://github.com/GEOS-ESM/FMS/releases/tag/geos%2F2019.01.02%2Bnoaff.10) |
22-
| [FVdycoreCubed_GridComp](https://github.com/GEOS-ESM/FVdycoreCubed_GridComp) | [v2.13.0](https://github.com/GEOS-ESM/FVdycoreCubed_GridComp/releases/tag/v2.13.0) |
22+
| [FVdycoreCubed_GridComp](https://github.com/GEOS-ESM/FVdycoreCubed_GridComp) | [v2.14.0](https://github.com/GEOS-ESM/FVdycoreCubed_GridComp/releases/tag/v2.14.0) |
2323
| [GAAS](https://github.com/GEOS-ESM/GAAS) | [v1.0.0](https://github.com/GEOS-ESM/GAAS/releases/tag/v1.0.0) |
2424
| [geos-chem](https://github.com/GEOS-ESM/geos-chem) | [geos/v13.0.0-rc1](https://github.com/GEOS-ESM/geos-chem/releases/tag/geos%2Fv13.0.0-rc1) |
2525
| [GEOS_OceanGridComp](https://github.com/GEOS-ESM/GEOS_OceanGridComp) | [v2.5.0](https://github.com/GEOS-ESM/GEOS_OceanGridComp/releases/tag/v2.5.0) |
26-
| [GEOS_Util](https://github.com/GEOS-ESM/GEOS_Util) | [v2.1.6](https://github.com/GEOS-ESM/GEOS_Util/releases/tag/v2.1.6) |
26+
| [GEOS_Util](https://github.com/GEOS-ESM/GEOS_Util) | [v2.1.7](https://github.com/GEOS-ESM/GEOS_Util/releases/tag/v2.1.7) |
2727
| [GEOSchem_GridComp](https://github.com/GEOS-ESM/GEOSchem_GridComp) | [v1.16.0](https://github.com/GEOS-ESM/GEOSchem_GridComp/releases/tag/v1.16.0) |
28-
| [GEOSgcm_App](https://github.com/GEOS-ESM/GEOSgcm_App) | [v2.3.10](https://github.com/GEOS-ESM/GEOSgcm_App/releases/tag/v2.3.10) |
29-
| [GEOSgcm_GridComp](https://github.com/GEOS-ESM/GEOSgcm_GridComp) | [v2.7.2](https://github.com/GEOS-ESM/GEOSgcm_GridComp/releases/tag/v2.7.2) |
28+
| [GEOSgcm_App](https://github.com/GEOS-ESM/GEOSgcm_App) | [v2.3.11](https://github.com/GEOS-ESM/GEOSgcm_App/releases/tag/v2.3.11) |
29+
| [GEOSgcm_GridComp](https://github.com/GEOS-ESM/GEOSgcm_GridComp) | [v2.7.3](https://github.com/GEOS-ESM/GEOSgcm_GridComp/releases/tag/v2.7.3) |
3030
| [GEOSradiation_GridComp](https://github.com/GEOS-ESM/GEOSradiation_GridComp) | [v1.12.0](https://github.com/GEOS-ESM/GEOSradiation_GridComp/releases/tag/v1.12.0) |
3131
| [GFDL_atmos_cubed_sphere](https://github.com/GEOS-ESM/GFDL_atmos_cubed_sphere) | [geos/v2.9.1](https://github.com/GEOS-ESM/GFDL_atmos_cubed_sphere/releases/tag/geos%2Fv2.9.1) |
3232
| [gigatraj](https://github.com/GEOS-ESM/gigatraj) | [geos/v1.0.0](https://github.com/GEOS-ESM/gigatraj/releases/tag/geos%2Fv1.0.0) |
3333
| [GMI](https://github.com/GEOS-ESM/GMI) | [v1.3.0](https://github.com/GEOS-ESM/GMI/releases/tag/v1.3.0) |
34-
| [GMAO_perllib](https://github.com/GEOS-ESM/GMAO_perllib) | [v1.0.0](https://github.com/GEOS-ESM/GMAO_perllib/releases/tag/v1.0.0) |
35-
| [GMAO_Shared](https://github.com/GEOS-ESM/GMAO_Shared) | [v2.0.0](https://github.com/GEOS-ESM/GMAO_Shared/releases/tag/v2.0.0) |
34+
| [GMAO_perllib](https://github.com/GEOS-ESM/GMAO_perllib) | [v1.1.0](https://github.com/GEOS-ESM/GMAO_perllib/releases/tag/v1.1.0) |
35+
| [GMAO_Shared](https://github.com/GEOS-ESM/GMAO_Shared) | [v2.1.0](https://github.com/GEOS-ESM/GMAO_Shared/releases/tag/v2.1.0) |
3636
| [GOCART](https://github.com/GEOS-ESM/GOCART) | [v2.3.0](https://github.com/GEOS-ESM/GOCART/releases/tag/v2.3.0) |
3737
| [HEMCO](https://github.com/GEOS-ESM/HEMCO) | [geos/v2.3.0](https://github.com/GEOS-ESM/HEMCO/releases/tag/geos%2Fv2.3.0) |
3838
| [Icepack](https://github.com/GEOS-ESM/Icepack) | [geos/v0.3.0](https://github.com/GEOS-ESM/Icepack/releases/tag/geos%2Fv0.3.0) |
@@ -42,7 +42,7 @@
4242
| [MITgcm](https://github.com/GEOS-ESM/MITgcm) | [checkpoint68o](https://github.com/GEOS-ESM/MITgcm/releases/tag/checkpoint68o) |
4343
| [MOM5](https://github.com/GEOS-ESM/MOM5) | [geos/5.1.0+1.2.0](https://github.com/GEOS-ESM/MOM5/releases/tag/geos%2F5.1.0%2B1.2.0) |
4444
| [MOM6](https://github.com/GEOS-ESM/MOM6) | [geos/v3.5](https://github.com/GEOS-ESM/MOM6/tree/geos/v3.5) |
45-
| [NCEP_Shared](https://github.com/GEOS-ESM/NCEP_Shared) | [v1.3.0](https://github.com/GEOS-ESM/NCEP_Shared/releases/tag/v1.3.0) |
45+
| [NCEP_Shared](https://github.com/GEOS-ESM/NCEP_Shared) | [v1.4.0](https://github.com/GEOS-ESM/NCEP_Shared/releases/tag/v1.4.0) |
4646
| [QuickChem](https://github.com/GEOS-ESM/QuickChem) | [v1.0.0](https://github.com/GEOS-ESM/QuickChem/releases/tag/v1.0.0) |
4747
| [RRG](https://github.com/GEOS-ESM/RRG) | [v1.1.0](https://github.com/GEOS-ESM/RRG/releases/tag/v1.1.0) |
4848
| [RRTMGP](https://github.com/GEOS-ESM/rte-rrtmgp) | [geos/v1.7+1.0.0](https://github.com/GEOS-ESM/rte-rrtmgp/releases/tag/geos%2Fv1.7%2B1.0.0) |
@@ -63,26 +63,18 @@ In your `.bashrc` or `.tcshrc` or other rc file add a line:
6363

6464
##### NCCS
6565

66-
NCCS currently has two different OSs. So you'll need to use different modulefiles depending on which OS you are using.
67-
68-
###### SLES 12
69-
70-
```
71-
module use -a /discover/swdev/gmao_SIteam/modulefiles-SLES12
72-
```
73-
74-
###### SLES 15
75-
7666
```
7767
module use -a /discover/swdev/gmao_SIteam/modulefiles-SLES15
7868
```
7969

8070
##### NAS
71+
8172
```
8273
module use -a /nobackup/gmao_SIteam/modulefiles
8374
```
8475

8576
##### GMAO Desktops
77+
8678
On the GMAO desktops, the SI Team modulefiles should automatically be
8779
part of running `module avail` but if not, they are in:
8880

@@ -180,16 +172,12 @@ This will set up `mepo` to use blobless clones for all future clones by adding a
180172

181173
### Single Step Building of the Model
182174

183-
If all you wish is to build the model, you can run `parallel_build.csh` from a head node. Doing so will checkout all the external repositories of the model and build it. When done, the resulting model build will be found in `build/` and the installation will be found in `install/` with setup scripts like `gcm_setup` and `fvsetup` in `install/bin`.
184-
185-
#### Building at NCCS (Multiple OSs)
186-
187-
In all the examples below, NCCS builds will act differently. Because NCCS currently has two different OSs, when you use
188-
`parallel_build.csh` you will see that the `build` and `install` directories will be appended with `-SLES12` or `-SLES15` depending
189-
on where you submitted to. When NCCS moves to a single OS again, this will be removed.
175+
If all you wish is to build the model, you can run:
176+
```
177+
./parallel_build.csh
178+
```
190179

191-
Note that if you use the `-builddir` and `-installdir` options, you can override this behavior and no OS will be automatically
192-
appended.
180+
from a login node. Doing so will checkout all the external repositories of the model and build it. When done, the resulting model build will be found in `build/` and the installation will be found in `install/` with setup scripts like `gcm_setup` and `fvsetup` in `install/bin`.
193181

194182
#### Develop Version of GEOS GCM
195183

@@ -267,6 +255,7 @@ each sub-repository.
267255
#### Build the Model
268256

269257
##### Load Compiler, MPI Stack, and Baselibs
258+
270259
On tcsh:
271260
```
272261
source @env/g5_modules
@@ -277,24 +266,39 @@ source @env/g5_modules.sh
277266
```
278267

279268
##### Create Build Directory
280-
We currently do not allow in-source builds of GEOSgcm. So we must make a directory:
281-
```
282-
mkdir build
283-
```
284-
The advantages of this is that you can build both a Debug and Release version with the same clone if desired.
285269

286270
##### Run CMake
287-
CMake generates the Makefiles needed to build the model.
271+
272+
CMake generates the Makefiles needed to build the model. This command:
288273
```
289-
cd build
290-
cmake .. -DBASEDIR=$BASEDIR/Linux -DCMAKE_Fortran_COMPILER=ifort -DCMAKE_INSTALL_PREFIX=../install
274+
cmake -B build -S . -DCMAKE_INSTALL_PREFIX=install
291275
```
292-
This will install to a directory parallel to your `build` directory. If you prefer to install elsewhere change the path in:
276+
277+
As is, this command assumes you are in the root of the GEOSgcm checkout and will create a `build/` directory in the root of the checkout and install into `install/ parallel to the `build/` directory.
278+
279+
This command has three options:
280+
281+
1. `-B` specifies the build directory.
282+
2. `-S` specifies the source directory (root of the checkout).
283+
3. `-DCMAKE_INSTALL_PREFIX` specifies the installation directory.
284+
285+
If you prefer to install elsewhere change the path in:
286+
293287
```
294-
-DCMAKE_INSTALL_PREFIX=<path>
288+
-DCMAKE_INSTALL_PREFIX=/path/to/install
295289
```
296290
and CMake will install there.
297291

292+
If you prefer your build somewhere else, you can specify that with:
293+
```
294+
-B /path/to/build
295+
```
296+
297+
Finally, if your source is in a different directory than the current one, you can specify that with:
298+
```
299+
-S /path/to/source
300+
```
301+
298302
###### Create and install source tarfile
299303

300304
Note that running with `parallel_build.csh` will create and install a tarfile of the source code at build time. But if CMake is run by hand, this is not the default action (as many who build with CMake by hand are developers and not often running experiments). In order to enable this at install time, add:
@@ -303,17 +307,20 @@ Note that running with `parallel_build.csh` will create and install a tarfile of
303307
```
304308
to your CMake command.
305309

306-
##### Build and Install with Make
310+
##### Build and Install
311+
307312
```
308-
make -jN install
313+
cmake --build build -j N
314+
cmake --install build
309315
```
316+
310317
where `N` is the number of parallel processes. On discover head nodes, this should only be as high as 2 due to limits on the head nodes. On a compute node, you can set `N` has high as you like, though 8-12 is about the limit of parallelism in our model's make system.
311318

312319
### Run the GCM
313320

314321
Once the model has built successfully, you will have an `install/` directory in your checkout. To run `gcm_setup` go to the `install/bin/` directory and run it there:
315322
```
316-
cd install/bin
323+
cd /path/to/install/bin
317324
./gcm_setup
318325
```
319326

components.yaml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ GEOSgcm:
55
env:
66
local: ./@env
77
remote: ../ESMA_env.git
8-
tag: v4.35.0
8+
tag: v4.36.0
99
develop: main
1010

1111
cmake:
1212
local: ./@cmake
1313
remote: ../ESMA_cmake.git
14-
tag: v3.56.0
14+
tag: v3.58.2
1515
develop: develop
1616

1717
ecbuild:
@@ -22,27 +22,27 @@ ecbuild:
2222
NCEP_Shared:
2323
local: ./src/Shared/@NCEP_Shared
2424
remote: ../NCEP_Shared.git
25-
tag: v1.3.0
25+
tag: v1.4.0
2626
sparse: ./config/NCEP_Shared.sparse
2727
develop: main
2828

2929
GMAO_Shared:
3030
local: ./src/Shared/@GMAO_Shared
3131
remote: ../GMAO_Shared.git
32-
tag: v2.0.0
32+
tag: v2.1.0
3333
sparse: ./config/GMAO_Shared.sparse
3434
develop: main
3535

3636
GEOS_Util:
3737
local: ./src/Shared/@GMAO_Shared/@GEOS_Util
3838
remote: ../GEOS_Util.git
39-
tag: v2.1.6
39+
tag: v2.1.7
4040
develop: main
4141

4242
GMAO_perllib:
4343
local: ./src/Shared/@GMAO_Shared/@GMAO_perllib
4444
remote: ../GMAO_perllib.git
45-
tag: v1.0.0
45+
tag: v1.1.0
4646
develop: main
4747

4848
# When updating the MAPL version, also update the MAPL version in the
@@ -62,7 +62,7 @@ FMS:
6262
GEOSgcm_GridComp:
6363
local: ./src/Components/@GEOSgcm_GridComp
6464
remote: ../GEOSgcm_GridComp.git
65-
tag: v2.7.2
65+
tag: v2.7.3
6666
sparse: ./config/GEOSgcm_GridComp.sparse
6767
develop: develop
6868

@@ -75,7 +75,7 @@ GigaTraj:
7575
FVdycoreCubed_GridComp:
7676
local: ./src/Components/@GEOSgcm_GridComp/GEOSagcm_GridComp/GEOSsuperdyn_GridComp/@FVdycoreCubed_GridComp
7777
remote: ../FVdycoreCubed_GridComp.git
78-
tag: v2.13.0
78+
tag: v2.14.0
7979
develop: develop
8080

8181
fvdycore:
@@ -239,7 +239,7 @@ umwm:
239239
GEOSgcm_App:
240240
local: ./src/Applications/@GEOSgcm_App
241241
remote: ../GEOSgcm_App.git
242-
tag: v2.3.10
242+
tag: v2.3.11
243243
develop: develop
244244

245245
UMD_Etc:

0 commit comments

Comments
 (0)