Files
kaiju/docs/source/building/buildDerecho.rst
cookieenick 570ac7546c GTR updates
2025-06-14 22:10:05 -06:00

115 lines
3.4 KiB
ReStructuredText

Building the ``kaiju`` software on ``derecho``
==============================================
Introduction
------------
This page provides instructions for building the ``kaiju`` software on the
``derecho`` supercomputer. These instructions assume that you have cloned the
``kaiju`` repository.
Prepare your software environment
---------------------------------
Like most HPC systems, ``derecho`` uses the ``module`` system to manage the
versions of software packages available to the user. When you log in to
``derecho``, the following modules are loaded by default:
.. code-block:: bash
module list
Currently Loaded Modules:
1) ncarenv/23.09 (S) 4) ncarcompilers/1.0.0 7) netcdf/4.9.2
2) craype/2.7.23 5) cray-mpich/8.1.27
3) intel/2023.2.1 6) hdf5/1.12.2
Where:
S: Module is Sticky, requires --force to unload or purge
This set of modules **cannot** be used to build the ``kaiju`` code.
Start by purging any currently-loaded modules, then loading the following
module set:
.. code-block:: bash
module --force purge
module load ncarenv/23.09
module load cmake/3.26.3
module load craype/2.7.20
module load intel/2023.0.0
module load ncarcompilers/1.0.0
module load cray-mpich/8.1.25
module load hdf5-mpi/1.12.2
module load conda/latest
.. note::
For Geospace runs coupled with TIE-GCM (GTR), use the following modules:
.. code-block:: bash
module --force purge
module load ncarenv/23.09
module load cmake/3.26.3
module load craype/2.7.31
module load intel-classic/2023.2.1
module load cray-mpich/8.1.27
module load ncarcompilers/1.0.0
module load mkl/2023.2.0
module load hdf5-mpi/1.12.2
module load netcdf-mpi/4.9.2
module load esmf/8.6.0
module load conda/latest
.. important::
You must use these exact versions of the modules to ensure the software
compiles properly. If you use different versions of any of these modules,
a successful build cannot be guaranteed. This module list is current as of
**11 April 2025**, and is subject to change as the compute environment
changes.
Build the ``kaiju`` software
----------------------------
These instructions show how to build the MPI version of the ``kaiju``
software. The MPI version is built in the subdirectory ``build_mpi``
under the ``kaiju`` source code directory. In practice, you can place the
build directory in any convenient location.
.. code-block:: bash
# Move to your kaiju clone.
cd /path/to/kaiju
# Create the build directory and enter it.
mkdir build_mpi
cd build_mpi
# Run cmake to create the Makefile, saving output.
# NOTE: The FC definition is *required* for proper cmake operation.
FC=`which ifort` cmake -DENABLE_MPI=ON .. >& cmake.out
# You can pick one compile target below or compile all of them, if you'd like
# Compile the MAGE model for geospace simulations
make -j4 voltron_mpi.x >& make-voltron.out
# Compile the GAMERA-helio model for inner heliosphere simulations
make -j4 gamhelio_mpi.x >& make-gamhelio.out
# Compile analysis tools
make -j4 calcdb.x chop.x sctrack.x slice.x >& make-analysis.out
When finished, your build directory will contain a ``bin``
subdirectory which will contain the compiled ``kaiju`` executables.
.. note:: Documentation on the analysis tools is found
:doc:`here </tools/index>`.