Schrödinger suite Installations on Tetralith & Sigma

NSC has two licenses for Schrödinger software – one covering Jaguar, Maestro, Desmond, and the Quantum Espresso interface that is freely available to all academic users at NSC, and one covering most other Schrödinger products, which you can buy into on a per-user basis. Please see the Schrödinger licenses page for details.

Schrödinger modules

Use the module avail schrodinger command to find available Schrödinger installations:

$ module avail schrodinger

-------------------------------------- /software/sse/modules ---------------------------------------
   Schrodinger/recommendation    (D)    Schrodinger/2018-4-nsc1-bdist
   Schrodinger/2016-4-nsc1-bdist        Schrodinger/2019-1-nsc1-bdist
   Schrodinger/2018-3-nsc1

  Where:
   D:  Default Module

Use "module spider" to find all possible modules.
Use "module keyword key1 key2 ..." to search for all possible modules matching any of the "keys".

Starting jobs from Maestro

Note: NSC recommends using ThinLinc when running graphical applications.

To start Maestro, you should first load a Schrodinger module:

$ module load Schrodinger/2019-1-nsc1-bdist
$ maestro

You are included in the following projects:
1. "nsc"
2. "snic2019-3-203"
3. "snic2018-3-251"
Enter the number for the project that you want to use for jobs submitted from Maestro [ 1 2 3 ]: 1
Using the project: "nsc"

*****************************************************************
Maestro Molecular Modeling Interface
Maestro is a product of Schrödinger, Inc.
Legal notices can be viewed by clicking Help->About Maestro
*****************************************************************

Maestro on Tetralith

Starting Jaguar jobs from the command line

To start a Jaguar job from the command line, you can use the jaguar run command as in the example below:

$ module load Schrodinger/2020-4-nsc1-bdist
$ jaguar run -PARALLEL 8 -HOST batch -QARGS "-A snic202X-Y-ZZ -t 120" jag_input_file.in

This command will queue an 8 core (-PARALLEL 8) job with a wall time of 120 minutes.

Note: Remember to change “snic202X-Y-ZZ” to the name of the project that you want to use. Or if you are only included in one project, you can remove “-A snic202X-Y-ZZ” from the command!

Running Jaguar jobs with a batch script

To run a Jaguar job with a batch script, you can use the jaguar run command as in the example below:

$ cat my_jaguar_script.sh
#!/bin/bash

#SBATCH --time=120
#SBATCH --nodes=1
#SBATCH --ntasks=8
#SBATCH --account=snic202X-Y-ZZ

module load Schrodinger/2020-4-nsc1-bdist

export TMPDIR=$SNIC_TMP

jaguar run -PARALLEL ${SLURM_NTASKS} -WAIT jag_input_file.in &
wait
#END OF SCRIPT

Submit the script to the queue with:

$ sbatch my_jaguar_script.sh

Note: Remember to change “snic202X-Y-ZZ” to the name of the project that you want to use. Or if you are only included in one project, you can remove #SBATCH --account=snic202X-Y-ZZ from the script.

If you are unsure about the run-time for your job, you can safeguard with a trap to copy the restart.in file to your job directory, in case the job hasn’t completed before reaching the scheduled wall time limit:

$ cat my_jaguar_script_w_trap.sh
#!/bin/bash

#SBATCH --time=120
#SBATCH --nodes=1
#SBATCH --ntasks=8
#SBATCH --account=snic202X-Y-ZZ

cp_restart() {
    restart_file=$(find /scratch/local -name restart.in)
    if [ "$restart_file" ]
    then
        cp $restart_file ${SLURM_SUBMIT_DIR}/restart-${jobname}.in
        echo "The restart.in file was copied to ${SLURM_SUBMIT_DIR}/restart-${jobname}.in."
    else
        echo "No restart.in file found."
    fi
}

trap_message="SIGTERM was traped, probably due to job walltime limit."

trap 'echo "$trap_message"; cp_restart; exit' SIGTERM

module load Schrodinger/2021-3-nsc1-bdist

export TMPDIR=$SNIC_TMP

jobname="jaguar_input_file"

jaguar run -PARALLEL ${SLURM_NTASKS} -WAIT ${jobname}.in &
wait
#END OF SCRIPT

Note: Remember to change “snic202X-Y-ZZ” to the name of the project that you want to use. Or if you are only included in one project, you can remove #SBATCH --account=snic202X-Y-ZZ from the script.

Running Desmond jobs with a batch script

See below for an example of running a Desmond job with a batch script:

$ cat my_desmond_script_w_trap.sh
#!/bin/bash

#SBATCH --time=120
#SBATCH --nodes=1
#SBATCH --exclusive
#SBATCH --gpus-per-task=1
#SBATCH --account=snic202X-Y-ZZ

cp_scratch_dir() {
    if [ "$(ls -A /scratch/local/${USER} 2> /dev/null)" ]
    then
        cp -a /scratch/local/${USER} ${SLURM_SUBMIT_DIR}/scratch-${jobname}
        echo "Files from /scratch/local/${USER} copied to ${SLURM_SUBMIT_DIR}/scratch-${jobname}"
    else
        echo "The /scratch/local/${USER} directory is empty or doesn't exist."
    fi
}

trap_message="SIGTERM was traped, probably due to job walltime limit."

trap 'echo "$trap_message"; cp_scratch_dir; exit' SIGTERM

module load Schrodinger/2021-3-nsc1-bdist

export TMPDIR=$SNIC_TMP

jobname="desmond_input_file"

$SCHRODINGER/utilities/multisim -JOBNAME $jobname -maxjob 1 -cpu 1 -m ${jobname}.msj -c ${jobname}.cfg ${jobname}.cms -mode umbrella -set stage[1].set_family.md.jlaunch_opt=[\"-gpu\"] -o ${jobname}-out.cms -WAIT &
wait
#END OF SCRIPT

Note: Remember to change “snic202X-Y-ZZ” to the name of the project that you want to use. Or if you are only included in one project, you can remove #SBATCH --account=snic202X-Y-ZZ from the script.


User Area

User support

Guides, documentation and FAQ.

Getting access

Applying for projects and login accounts.

System status

Everything OK!

No reported problems

Self-service

SUPR
NSC Express