AutoDock is a suite of automated docking tools. It is designed to predict how small molecules, such as substrates or drug candidates, bind to a receptor of known 3D structure.
Autodock is still available on Biowulf, but we enocourage users to try the newer version, Autodock-GPU
Autodock is apart of the Autodock Suite, along with: AutodockCrankPrep and Autodock Vina
pythonsh command available when you load the module. This will ensure your environment is properly set up.
Autodock-GPU processes ligand-receptor poses in parallel over multiple compute units on GPUs. [Autodock-GPU website]
Test script:
#!/bin/bash
module load Autodock-GPU
cd /data/$USER
mkdir autodock-gpu
cd autodock-gpu
git clone https://github.com/L30nardoSV/reproduce-parcosi-moleculardocking.git
cd reproduce-parcosi-moleculardocking
git clone https://gitlab.com/L30nardoSV/ad-gpu_miniset_20.git
# note: this test job requires the executables to be available in the same dir
ln -s ${AUTODOCK_BIN}/* .
./prepare_inputs.sh
./evaluate_numwi.sh <<EOF
Y
Y
1
k80
EOF
Select a GPU type (e.g. k80, p100, v100) and submit with:
sbatch --partition=gpu --gres=gpu:k80:1 test.sh
Launch a graphical session to use ADT and PMV:
[user@cn3144 ~]$ module load Autodock [+] Loading Autodock 4.2.6 ... [user@cn3144 ~]$ adt setting PYTHONHOME environment Run ADT from /usr/local/apps/Autodock/mgltools_x86_64Linux2_1.5.7/MGLToolsPckgs/AutoDockTools MSMSLIB 1.4.4 started on cn2063 Copyright M.F. Sanner (March 2000) Compilation flags
At this point you should see two Autodock windows appear.
Follow the same process for PMV:
[user@cn3144 ~]$ module load Autodock [+] Loading Autodock 4.2.6 ... [user@cn3144 ~]$ pmv setting PYTHONHOME environment Run PMV from /usr/local/apps/Autodock/mgltools_x86_64Linux2_1.5.7/MGLToolsPckgs/Pmv MSMSLIB 1.4.4 started on cn2063 Copyright M.F. Sanner (March 2000) Compilation flags
At this point you should the Python Molecule Viewer window appear.
Batch jobCreate a batch input file (e.g. autodock.sh). For example:
#!/bin/bash module load Autodock autodock4 -p myfile.dpf -l myfile.dlg
Submit this job using the Slurm sbatch command.
sbatch [--mem=#] autodock.shThe --mem=#g flag should be used if the autodock run requires more than the default 4 GB of memory.
Swarm of Jobs
Create a swarmfile (e.g. myfile.swarm). For example:
cd /data/$USER/mydir; autodock4 -p lig1.macro.def -l lig1.log cd /data/$USER/mydir; autodock4 -p lig2.macro.def -l lig2.log cd /data/$USER/mydir; autodock4 -p lig3.macro.def -l lig3.log cd /data/$USER/mydir; autodock4 -p lig4.macro.def -l lig4.log [...]
Submit this job using the swarm command.
swarm -f myfile.swarm [-g #] --module Autodockwhere
| -g # | Number of Gigabytes of memory required for each process (1 line in the swarm command file) |
| -t # | Number of threads/CPUs required for each process (1 line in the swarm command file). (not useful for Autodock which is single-threaded, but can be used for a swarm of Vina jobs) |
| --module Autodock | Loads the Autodock module for each subjob in the swarm |