Getting an account
First, you need to get an account from NOTUR, the webpage for you request is : https://www.metacenter.no/user/application/form/notur/.
ssh configuration
You can add the following lines to ~/.ssh/config
on your local machine:
Host vilje vilje.hpc.ntnu.no HostName vilje.hpc.ntnu.no User YOURVILJEUSERNAME
and replace YOURVILJEUSERNAME
by your vilje username.
Once this is done, you can ssh vilje by simply doing:
ssh vilje
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 vilje account:
$your_localhost%scp ~/.ssh/id_rsa.pub username@your_remosthost:~
Now on Vilje, copy the content of id_rsa.pub:
$your_remosthost%cat ~/id_rsa.pub >> ~/.ssh/authorized_keys $your_remosthost%rm ~/id_rsa.pub
remember to have correct rights for the .ssh and the authorized_keys (else key wont work) chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
Environment
On Vilje, add the following lines to ~/.bashrc
:
export ISSM_DIR=PATHTOTRUNK # module load intelcomp/17.0.0 mpt/2.14 petsc/3.7.4d module load parmetis/4.0.3 mumps/5.0.2 module load automake
Log out and log back in to apply this change.
Installing ISSM on Vilje
Now, checkout the source code using instructions at https://issm.jpl.nasa.gov/download/
If it is the first time you are installing issm on Vilje you will need to run libtoolize:
libtoolize
The only package from external packages that you may require (if you need to run some inversion) is m1qn3. Install it as usual and source you environment file
cd externalpackages/m1qn3 ./install.sh source ../../etc/environment.sh
Once this is done in ISSM_DIR do:
./scripts/automakererun.sh
Now, create a configuration file called configure.sh and place it in $ISSM_DIR. Use the following configuration script (adapt to your needs):
#!/bin/sh ./configure \ --prefix=$ISSM_DIR \ --without-kriging \ --with-wrappers=no \ --with-petsc-dir="/sw/sdev/Modules/petsc/petsc-3.7.4" \ --with-mpi-include="/sw/sgi/mpt/mpt-2.14/include/" \ --with-mpi-libflags="-L/sw/sgi/mpt/mpt-2.14/lib -lmpi -lmpi++" \ --with-metis-dir="/sw/sdev/Modules/parmetis/parmetis-4.0.3/include" \ --with-mumps-dir="/sw/sdev/Modules/mumps/mumps-5.0.2" \ --with-cxxoptflags="-O2 -xAVX" \ --with-m1qn3-dir="$ISSM_DIR/externalpackages/m1qn3/install" \ --enable-development
You will need to comment the following line in src/c/main/EnvironmentInint.cpp
if(!my_rank) printf("(website: %s contact: %s)\n",PACKAGE_URL,PACKAGE_BUGREPORT);
You can then make your configuration file executable (if it is not already) execute it and install ISSM:
chmod +x configure.sh ./configure.sh make install
vilje_settings
Place one of the following function in your path, it will provide your default options to vilje.
vilje_settings.py | vilje_settings.m |
---|---|
def vilje_settings(md): md.login='YOURNOTURLOGIN' md.queue='workq' md.codepath='YOURCODEPATH' #executionpath should be in /work/username to avoid flooding your home md.executionpath='YOUREXECPATH' md.accountname='nn4659k'#this is for ice2ice md.numnodes=1 md.numprocess=8 return md |