Skip to content

Commit

Permalink
Merge pull request #169 from scrasmussen/feature/derecho-documentation
Browse files Browse the repository at this point in the history
Derecho MkDocs Documentation
  • Loading branch information
gutmann committed Aug 22, 2023
2 parents f15969a + 6496c78 commit fa1802a
Show file tree
Hide file tree
Showing 4 changed files with 62 additions and 4 deletions.
36 changes: 34 additions & 2 deletions docs/compiling.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Also to set the compiler for your machine if necessary (defaults to gfortran)
make install
# compile if necessary, then install in the install directory [~/bin]

### Options:
### Options
MODE=fast # more optimization, slower compile, WARNING:not safe optimizations
MODE=profile # set profiling options for gnu or intel compilers
MODE=debug # debug compile with optimizations
Expand All @@ -29,5 +29,37 @@ Also to set the compiler for your machine if necessary (defaults to gfortran)

add -jn to parallelize the compile over n processors

### Example:
### Example
make install MODE=debug -j4 # uses 4 processes to compile in debug mode


### Derecho System Specifics
Instructions for building ICAR on [Derecho](https://arc.ucar.edu/knowledge_base/74317833), a supercomputer at NCAR.
See [instructions](running/running.md#derecho-system-specifics) for running ICAR on Derecho.

#### Cray Compiler
``` bash
module load cce ncarcompilers cray-mpich netcdf fftw
make -j 4
```

#### GNU Compiler
``` bash
module load gcc ncarcompilers cray-mpich netcdf fftw caf/derecho-2.10.1
COMPILER=gnu make -j 4
```

#### Intel Compilers
- __Note__: currently the classic Intel compiler is recommended for production runs but testing `ifx` and reporting issues would be useful.
- __Note__: test `debugslow` mode is required for successful running and compilation, issue is being worked on.

##### Classic
``` bash
module load intel-classic ncarcompilers intel-mpi netcdf-mpi fftw-mpi
COMPILER=intel MODE=debugslow make -j 4
```
##### OneAPI
``` bash
module load intel-oneapi ncarcompilers intel-mpi netcdf-mpi fftw-mpi
COMPILER=intel MODE=debugslow F90=ifx FC=ifx make -j 4
```
25 changes: 25 additions & 0 deletions docs/running.md → docs/running/running.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,3 +69,28 @@ LONG = Longitude on ICAR mass grid (degrees)
[SOIL] = Soil type classification for land surface model
```
Must be in a (nearly) constant dx,dy projection (e.g. Lambert Conformal Conic)


### Derecho System Specifics
In the following examples one Derecho node is used with 128 processes.
See [instructions](../compiling.md#derecho-system-specifics) for compiling ICAR on Derecho and the list of modules to use.
#### Cray Compiler
``` bash
mpiexec -np 128 ./icar icar_options.nml
```

#### GNU Compiler
``` bash
cafrun -n 128 ./icar icar_options.nml
```

#### Intel Compilers
##### Classic
``` bash
FOR_COARRAY_NUM_IMAGES=128 ./icar icar_options.nml
```

##### OneAPI
``` bash
FOR_COARRAY_NUM_IMAGES=128 ./icar icar_options.nml
```
File renamed without changes.
5 changes: 3 additions & 2 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
site_name: ICAR
pages:
nav:
- Home: index.md
- Compiling: compiling.md
- Running: running.md
- Running: running/running.md
- Settings Documentation: running/settings_documentation.md
- Developing: developing.md
- Errors: errors.md
theme: readthedocs
Expand Down

0 comments on commit fa1802a

Please sign in to comment.