DeepAb is antibody structure prediction using interpretable deep learning.
Allocate an interactive session and run the program.
Sample session (user input in bold):
[user@biowulf]$ sinteractive --gres=gpu:p100:1 -c 8 --mem=20g salloc.exe: Pending job allocation 46116226 salloc.exe: job 46116226 queued and waiting for resources salloc.exe: job 46116226 has been allocated resources salloc.exe: Granted job allocation 46116226 salloc.exe: Waiting for resource configuration salloc.exe: Nodes cn3144 are ready for job [user@cn3144 ~]$ module load deepab [user@cn3144 ~]$ predict.py --decoys 4 --num_procs $SLURM_CPUS_ON_NODE --use_gpu --renumber \ --pred_dir $(pwd)/preds --model_dir $DEEPAB_HOME/trained_models/ensemble_abresnet \ $DEEPAB_HOME/data/sample_files/4h0h.fasta [user@cn3144 ~]$ exit salloc.exe: Relinquishing job allocation 46116226 [user@biowulf ~]$
Create a batch input file (e.g. deepab.sh). For example:
#!/bin/bash set -e module load deepab predict.py --decoys 4 --num_procs $SLURM_CPUS_ON_NODE --use_gpu --renumber --pred_dir $(pwd)/preds --model_dir $DEEPAB_HOME/trained_models/ensemble_abresnet $DEEPAB_HOME/data/sample_files/4h0h.fasta
Submit this job using the Slurm sbatch command.
sbatch --cpus-per-task=8 --mem=20g --gres=gpu:p100:1 deepab.sh
Create a swarmfile (e.g. deepab.swarm). For example:
annotate_attention.py --renumber --cdr_loop h3 --model_file $DEEPAB_HOME/trained_models/ensemble_abresnet/rs0.pt --out_file output_1.pdb sample_1.pdb annotate_attention.py --renumber --cdr_loop h3 --model_file $DEEPAB_HOME/trained_models/ensemble_abresnet/rs0.pt --out_file output_2.pdb sample_2.pdb annotate_attention.py --renumber --cdr_loop h3 --model_file $DEEPAB_HOME/trained_models/ensemble_abresnet/rs0.pt --out_file output_3.pdb sample_3.pdb annotate_attention.py --renumber --cdr_loop h3 --model_file $DEEPAB_HOME/trained_models/ensemble_abresnet/rs0.pt --out_file output_4.pdb sample_4.pdb
Submit this job using the swarm command.
swarm -f deepab.swarm -g 10g -t 2 --module deepabwhere
-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). |
--module deepab | Loads the deepab module for each subjob in the swarm |