wiki:totten

Important note about storage

Totten has several drives. Your home directory is on a small drive (6 TB), so make sure to work on the big RAID system /totten_1 that has 83 TB. You will probably need to create a directory:

cd /totten_1
mkdir YOURUSERNAME

and replace YOURUSERNAME by your totten username. This is were you should install ISSM and create your "projects" directory.

ssh configuration

You can add the following lines to ~/.ssh/config on your local machine:

Host totten totten.dartmouth.edu
   HostName totten.dartmouth.edu
   User YOURUSERNAME

and replace YOURUSERNAME by your totten username.

Once this is done, you can ssh totten by simply doing:

ssh totten

Password-less ssh

Once you have the account, you can setup a public key authentification in order to avoid having to input your password for each run. You need to have a SSH public/private key pair. If you do not, you can create a SSH public/private key pair by typing the following command and following the prompts (no passphrase necessary):

$your_localhost% ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/username/.ssh/id_rsa):RETURN
Enter passphrase (empty for no passphrase):RETURN
Enter same passphrase again:RETURN
Your identification has been saved in /Users/username/.ssh/id_rsa.
Your public key has been saved in /Users/username/.ssh/id_rsa.pub.

Two files were created: your private key /Users/username/.ssh/id_rsa, and the public key /Users/username/.ssh/id_rsa.pub. The private key is read-only and only for you, it is used to decrypt all correspondence encrypted with the public key. The contents of the public key need to be copied to ~/.ssh/authorized_keys on your totten account:

$your_localhost%scp ~/.ssh/id_rsa.pub username@your_remosthost:~

Now on totten, copy the content of id_rsa.pub:

$your_remosthost%cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
$your_remosthost%rm ~/id_rsa.pub

If Totten complains that about /home/mmorligh/.ssh/authorized_keys: No such file or directory, you may need to create an .ssh directory first.

Environment

On totten, add the following lines to ~/.bashrc:

export ISSM_DIR=PATHTOTRUNK
source $ISSM_DIR/etc/environment.sh
#MATLAB alias
alias ma='LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6:/usr/lib/x86_64-linux-gnu/libgfortran.so.5:$ISSM_DIR/externalpackages/petsc/install/lib/libmpi.so:$ISSM_DIR/externalpackages/petsc/install/lib/libmpifort.so  /usr/local/MATLAB/R2023b/bin/matlab -nodesktop -nosplash -r "addpath $ISSM_DIR/src/m/dev; devpath;"'

Feel free to remove anything that you may have by default in this file. Log out and log back in to apply this change.

Installing ISSM on totten

You can follow the instructions on the website http://issm.jpl.nasa.gov/download/unix/. You will need to install the following packages:

  • autotools
  • petsc (take the latest version 3.20 or later)
  • triangle
  • m1qn3

Use the following configuration script (adapt to your needs):

./configure \
    --prefix=$ISSM_DIR \
    --without-kml \
    --with-matlab-dir="/usr/local/MATLAB/R2021b" \
    --with-triangle-dir="$ISSM_DIR/externalpackages/triangle/install" \
    --with-metis-dir="$ISSM_DIR/externalpackages/petsc/install" \
    --with-petsc-dir="$ISSM_DIR/externalpackages/petsc/install" \
    --with-mpi-include="$ISSM_DIR/externalpackages/petsc/install/include" \
    --with-mpi-libflags="-L$ISSM_DIR/externalpackages/petsc/install/lib -lmpi -lmpifort"\
    --with-blas-lapack-dir="$ISSM_DIR/externalpackages/petsc/install" \
    --with-scalapack-dir="$ISSM_DIR/externalpackages/petsc/install" \
    --with-mumps-dir="$ISSM_DIR/externalpackages/petsc/install/" \
    --with-m1qn3-dir="$ISSM_DIR/externalpackages/m1qn3/install" \
    --with-fortran-lib="-L/usr/lib/x86_64-linux-gnu -lgfortran" \
    --with-numthreads=32 \
    --enable-development \
    --enable-debugging

Run Jupyter Notebook on totten

You can run Jupyter Notebook on totten (after ssh to the remote server) with the following command:

jupyter notebook --no-browser --port=8080

Keep this terminal alive, where you will need the token to access the Notebook.

To access your notebook via the browser from your local machine, you just need to link the totten's port 8080 to your localhost:8080 by the command (on your local machine)

ssh -L 8080:localhost:8080 yourname@totten.dartmouth.edu

After this, open a web browser on your local machine, and access the Jupyter Notebook from http://localhost:8080/. You might be asked to enter the token, which you can find in the terminal you kept alive for Jupyter Notebook.

Install custom image on kubeflow

Installing ISSM with CoDiPack (AD)

You will need to install the following *additional* packages:

  • codipack
  • medipack

Use the following configuration script (adapt to your needs, make sure to NOT include --with-petsc-dir):

./configure \
   --prefix=$ISSM_DIR\
   --without-kriging \
   --without-kml \
   --without-Love \
   --without-Sealevelchange \
   --with-matlab-dir="/usr/local/MATLAB/R2021b" \
   --with-mpi-include=$ISSM_DIR/externalpackages/petsc/install/include  \
   --with-mpi-libflags="-L$ISSM_DIR/externalpackages/petsc/install/lib -lmpi -lmpifort"\
   --with-metis-dir=$ISSM_DIR/externalpackages/petsc/install \
   --with-mumps-dir=$ISSM_DIR/externalpackages/petsc/install/ \
   --with-blas-lapack-dir=$ISSM_DIR/externalpackages/petsc/install \
   --with-scalapack-dir=$ISSM_DIR/externalpackages/petsc/install/ \
   --with-triangle-dir=$ISSM_DIR/externalpackages/triangle/install \
   --with-m1qn3-dir="$ISSM_DIR/externalpackages/m1qn3/install" \
   --with-codipack-dir="$ISSM_DIR/externalpackages/codipack/install" \
   --with-medipack-dir="$ISSM_DIR/externalpackages/medipack/install" \
   --with-cxxoptflags="-g -O3 -fPIC -std=c++11 -DCODI_ForcedInlines" \
   --with-numthreads=32 \
   --enable-tape-alloc \
   --enable-development \
   --enable-debugging
Last modified 4 weeks ago Last modified on 04/09/24 05:35:10
Note: See TracWiki for help on using the wiki.