| | 1 | These directions should be good on any of the Canadian super computer systems using the common StdEnv/2020 Compute [https://docs.computecanada.ca/wiki/Standard_software_environments#StdEnv.2F2020 Canada module software stack] |
| | 2 | |
| | 3 | == Download ISSM == |
| | 4 | {{{ |
| | 5 | #!sh |
| | 6 | svn --username XXX --password XXX checkout http://issm.ess.uci.edu/svn/issm/issm/trunk-jpl |
| | 7 | }}} |
| | 8 | |
| | 9 | == ssh configuration == |
| | 10 | |
| | 11 | You should first create and upload an SSH key so you don't have to keep typing in your password. See directions: [https://docs.computecanada.ca/wiki/SSH_Keys] |
| | 12 | |
| | 13 | == Environment == |
| | 14 | On Sherlock, add the following lines to `~/.bashrc`: |
| | 15 | {{{ |
| | 16 | #!sh |
| | 17 | module load gcc/9.3.0 openmpi/4.0.3 matlab/2020a metis parmetis imkl petsc |
| | 18 | export ISSM_DIR=PATHTOTRUNK |
| | 19 | source $ISSM_DIR/etc/environment.sh |
| | 20 | }}} |
| | 21 | |
| | 22 | Change PATHTOTRUNK. Log out and log back in to apply this change. |
| | 23 | |
| | 24 | == Installing ISSM on the cluster == |
| | 25 | You need to install the following packages in this exact sequence: |
| | 26 | - m1qn3 (install.sh) |
| | 27 | |
| | 28 | Use the following configuration script (adapt to your needs): |
| | 29 | |
| | 30 | {{{ |
| | 31 | #!sh |
| | 32 | ./configure \ |
| | 33 | --prefix=$ISSM_DIR \ |
| | 34 | --with-numthreads=2 \ |
| | 35 | --with-mkl-libflags="-lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_blacs_openmpi_lp64 -lmkl_scalapack_lp64" \ |
| | 36 | --with-petsc-dir="$EBROOTPETSC" \ |
| | 37 | --with-mumps-dir="$EBROOTPETSC" \ |
| | 38 | --with-m1qn3-dir="$ISSM_DIR/externalpackages/m1qn3/install" \ |
| | 39 | --with-mpi-include="/some/path/just/to/enable" \ |
| | 40 | --with-mpi-libflags="-lmpi_cxx -lmpi_mpifh -lmpi" \ |
| | 41 | --with-fortran-lib="-L$EBROOTGCC/lib64 -lgfortran" |
| | 42 | }}} |
| | 43 | |
| | 44 | == XXX_settings.m == |
| | 45 | |
| | 46 | You have to add a file in `$ISSM_DIR/src/m` entitled `sherlock_settings.m` with your personal settings: |
| | 47 | |
| | 48 | {{{ |
| | 49 | #!m |
| | 50 | cluster.login='XXX'; |
| | 51 | cluster.port=0; |
| | 52 | cluster.codepath=XXX'; |
| | 53 | cluster.executionpath='XXX'; |
| | 54 | }}} |
| | 55 | |
| | 56 | Use your username for the `login` and enter your `codepath` and `executionpath`. These settings will be picked up automatically by MATLAB when you do `md.cluster=XXX()` |