-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #72 from yoctoyotta1024/installyac
Include yac enable/disable in helper bash scripts for building CLEO
- Loading branch information
Showing
27 changed files
with
344 additions
and
77 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,50 @@ | ||
External Libraries | ||
================== | ||
|
||
CLEO depends upon Kokkos and may depend upon some additional external libraries such as YAC and | ||
``yaml-cpp`` depending on your setup. These are automatically built using CMAKE and compiled if | ||
required. | ||
|
||
.. note:: | ||
The installation of YAC for CLEO is currently in development and may require some manual installation. | ||
CLEO depends upon Kokkos and may depend upon some additional external libraries such as ``YAC`` and | ||
``yaml-cpp`` depending on your setup. | ||
|
||
Kokkos | ||
------ | ||
All builds of CLEO require Kokkos in order to implement thread parallelism. You can read more about | ||
how we use Kokkos on :doc:`our page about Kokkos<../intro/kokkos>`. | ||
|
||
The Kokkos libaries for CLEO are automatically built using CMAKE and compiled if required. | ||
|
||
.. _extern_yac: | ||
|
||
YAC | ||
--- | ||
YAC is required if CLEO couples to dynamics using YAC and/or uses MPI domain decompoisiton. You can | ||
find more information about it from `its documentation: <https://dkrz-sw.gitlab-pages.dkrz.de/yac>`_. | ||
|
||
TODO(all): Detail how to install YAC for CLEO. | ||
To build CLEO with dependency on YAC, you will first need to install YAXT and YAC manually. | ||
(YAXT is a dependency of YAC.) | ||
|
||
.. note:: | ||
The installation of YAC for CLEO is currently in active development and so may not be exactly as written here. | ||
|
||
How to Install YAC (and YAXT) | ||
############################# | ||
|
||
The easiest way to install YAXT and YAC is to run the ``install_yac.sh`` bash script found in | ||
``scripts/bash/``. Note you will need to provide the path to the directory where you want | ||
to put the installations. | ||
|
||
Alternatively you can download `YAXT <https://swprojects.dkrz.de/redmine/>`_ and | ||
`YAC <https://gitlab.dkrz.de/dkrz-sw/yac/>`_ as compressed files and then configure and compile | ||
them yourself. | ||
|
||
yaml-cpp | ||
-------- | ||
CLEO's ``initialise`` library depends on the ```yaml-cpp``` package to read and write YAML files. You | ||
can find more information about it from `its repository: <https://github.com/jbeder/yaml-cpp>`_. | ||
|
||
The yaml-cpp library for CLEO is automatically built using CMAKE and compiled if required. | ||
|
||
CVODE | ||
----- | ||
CLEO's ``coupldyn_cvode`` library requires the SUNDIALS CVODE package. You can find more information | ||
about it from `its webpage: <https://computing.llnl.gov/projects/sundials/cvode>`_. | ||
|
||
The CVODE libraries for CLEO are automatically built using CMAKE and compiled if required. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
#!/bin/bash | ||
#SBATCH --job-name=yac_3d | ||
#SBATCH --partition=compute | ||
#SBATCH --nodes=1 | ||
#SBATCH --ntasks-per-node=128 | ||
#SBATCH --mem=30G | ||
#SBATCH --time=00:05:00 | ||
#SBATCH --mail-user=clara.bayley@mpimet.mpg.de | ||
#SBATCH --mail-type=FAIL | ||
#SBATCH --account=mh1126 | ||
#SBATCH --output=./yac_3d_out.%j.out | ||
#SBATCH --error=./yac_3d_err.%j.out | ||
|
||
### ---------------------------------------------------- ### | ||
### ------------------ Input Parameters ---------------- ### | ||
### ------ You MUST edit these lines to set your ------- ### | ||
### ---- build type, directories, the executable(s) ---- ### | ||
### -------- to compile, and your python script -------- ### | ||
### ---------------------------------------------------- ### | ||
buildtype="openmp" | ||
path2CLEO=${HOME}/CLEO/ | ||
path2build=${HOME}/CLEO/build_yac3d/ | ||
enableyac=true | ||
executables="yac_3d" | ||
|
||
pythonscript=${path2CLEO}/examples/yac/yac_3d/yac_3d_fromfile.py | ||
configfile=${path2CLEO}/examples/yac/yac_3d/src/config/yac1_fromfile_config.yaml | ||
script_args="${configfile}" | ||
### ---------------------------------------------------- ### | ||
### ---------------------------------------------------- ### | ||
### ---------------------------------------------------- ### | ||
|
||
### ---------- build, compile and run example ---------- ### | ||
${path2CLEO}/examples/run_example.sh \ | ||
${buildtype} ${path2CLEO} ${path2build} ${enableyac} \ | ||
"${executables}" ${pythonscript} "${script_args}" | ||
### ---------------------------------------------------- ### |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.