CSCS
The following section provides details on how to run Sencast on the supercomputer Alps Eiger at CSCS.
Register for an account
Get access permission from your local IT Admin. You will be required to set up multifactor authentication
Access using ssh
This access is only valid for 24 hours after which the process will need to be repeated.
Login at https://sshservice.cscs.ch/
Click Get a signed key follow the instructions and download the private and public key
Move the keys to your users .ssh directory
mv /downloads/location/cscs-key-cert.pub ~/.ssh/cscs-key-cert.pub
mv /download/location/cscs-key ~/.ssh/cscs-key
chmod 0600 ~/.ssh/cscs-key
Login to the CSCS entrance server
ssh -A username@ela.cscs.ch
Switch to Alps Eiger
ssh username@eiger.cscs.ch
Install Sencast
This step must be completed on the command line after logging in using one of the above methods. This only needs to be performed once.
Create environmental definition file (EDF)
Create file ${HOME}/.edf/sencast.toml
image = "eawag/sencast:latest"
mounts = [
"${SCRATCH}/DIAS:/DIAS",
"${HOME}/sencast:/sencast"
]
workdir = "/sencast"
entrypoint = false
Clone the repo for sencast to your user area:
cd ~
git clone https://github.com/eawag-surface-waters-research/sencast.git
Add docker.ini environment file to sencast/environments/
Move to the scratch drive and create an output folder. Don’t save large amounts of data to user area, data stored in the scratch drive is removed after 30 days.
cd ${SCRATCH}
mkdir DIAS
Run Sencast
The first step is to check that the environment is working correctly by running the tests.
srun --environment=sencast bash -c "source /opt/conda/etc/profile.d/conda.sh && conda activate sencast && python -u /sencast/main.py -e docker.ini -t"
Create a submission script containing the following (adjust details to match your user) - make sure you are writing to scratch.
vim run.sh
#!/bin/bash
#SBATCH --job-name=sencast
#SBATCH --time=01:00:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --account=<your-account>
srun --environment=sencast bash -c "source /opt/conda/etc/profile.d/conda.sh && conda activate sencast && python -u /sencast/main.py -e docker.ini -p example.ini"
Then you can run Sencast:
sbatch run.sh
See the status of your job:
squeue -u username
You get an email when the job begins and if it fails. A live log is deposited in the directory from where you start the run.