-
Notifications
You must be signed in to change notification settings - Fork 361
Installing CUPID
This page follows the CUPiD Installation Documentation, with some tweaks specific to the NCAR super computer.
TOC
cd /glade/work/$USER
git clone --origin escomp -b CUPiD https://github.com/ESCOMP/CTSM.git ctsm_cupid_2026
cd ctsm_cupid_2026
./bin/git-fleximod updateYou will see something like this:
rtm up to date.
mosart up to date.
cism up to date.
Recursively checking out submodules of cism
ccs_config up to date.
mpi-serial up to date.
share up to date.
cdeps up to date.
Recursively checking out submodules of cdeps
cmeps up to date.
cupid updated to 6b12f0b093e2f9f0d91061960975270b63cfad5a
Recursively checking out submodules of cupid
mizuRoute up to date.
Recursively checking out submodules of mizuRoute
parallelio up to date.
fates up to date.
Recursively checking out submodules of fates
cime up to date.
Recursively checking out submodules of cime
CUPiD is available from the NCAR organization on github.com. And comes with the version of CTSM that you checked out above (in the tools/CUPiD subdirectory). It requires conda to manage a few different python environments. The NCAR system administrators provide conda through a module, which you can access by running
module load conda
At this point you should have an open terminal in JupyterHub and the current working directory should be your ctsm_cupid_2026 workshop directory.
The rest of this tutorial will refer to the location with CUPiD in the CTSM checkout as ${CUPID_ROOT}. To be able to copy and paste blocks of commands directly, we need to add the variable to your environment.
Most of you are using bash or zsh, which have been the default shell on Linux and Unix computers for a while now. To set the environment variable run
cd tools/CUPiD
export CUPID_ROOT=`pwd -P`Note: This environment variable only exists in this specific terminal. It will need to exported again if you open a separate terminal, unless you modify your start files (see the NCAR documentation for this process for more information).
CUPiD needs a python environment with specific packages installed to run the CUPiD tools, while the diagnostic notebooks provided with CUPiD need a different set of packages.
To run CUPiD itself we use the (cupid-infrastructure) environment, then CUPiD runs the diagnostics notebooks with (cupid-analysis). We will use mamba to install these environments and the --yes option to avoid mamba waiting for approval before continuing with the install:
cd ${CUPID_ROOT}
mamba env create -f environments/cupid-infrastructure.yml --yes && \
mamba env create -f environments/cupid-analysis.yml --yes
Notes:
This is two separate commands separated by &&; the second command (installing (cupid-analysis)) will only run if the first command (installing (cupid-infrastructure) finishes successfully). Also, the \ is a line continuation operator - without it, the command would be on a single line and very long.
If you remove the --yes flag, mamba will ask you to confirm the installation after it determines what packages will be installed.
Next to the CUPiD overview page
Back to the Main LMWG-CUPiD Tutorial Page
-
General
-
Documents
-
Bugs/Issues
-
Tutorials
-
Development guides
CTSM Users:
CTSM Developer Team
-
Meetings
-
Notes