Skip to content

Slurm submission scripts

Information on versions

  • Following instructions are for AlphaFold >= 2.3.2.
  • If you are after an older version, refer to these page which the instruction on how to deploy it via Singularity/Apptainer containers

Directory structure (recommended)

  • Use nobackup filesystem at all times
  • We recommend storing input .fasta files , corresponding outputs and slurm logs in three separate directories

image

monomer

Slurm script for a single monomer query file

terminal

#!/bin/bash -e

#SBATCH --account       nesi12345
#SBATCH --job-name      af-test
#SBATCH --mem           24G
#SBATCH --cpus-per-task 6
#SBATCH --gpus-per-node A100:1
#SBATCH --time          03:00:00
#SBATCH --output        /nesi/nobackup/nesi12345/slurmlog/%j.out

module purge
module load AlphaFold2DB/2023-04
module load AlphaFold/2.3.2

INPUT_PATH=/nesi/nobackup/nesi12345/input
OUTPUT=/nesi/nobackup/nesi12345/output

run_alphafold.py --use_gpu_relax \
--data_dir=$AF2DB \
--uniref90_database_path=$AF2DB/uniref90/uniref90.fasta \
--mgnify_database_path=$AF2DB/mgnify/mgy_clusters_2022_05.fa \
--bfd_database_path=$AF2DB/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
--uniref30_database_path=$AF2DB/uniref30/UniRef30_2021_03 \
--pdb70_database_path=$AF2DB/pdb70/pdb70 \
--template_mmcif_dir=$AF2DB/pdb_mmcif/mmcif_files \
--obsolete_pdbs_path=$AF2DB/pdb_mmcif/obsolete.dat \
--model_preset=monomer \
--max_template_date=2022-6-1 \
--db_preset=full_dbs \
--output_dir=${OUTPUT} \
--fasta_paths=${INPUT_PATH}/filename.fasta

Slurm array for multiple monomer queries

code

#!/bin/bash -e

#SBATCH --account       nesi12345
#SBATCH --job-name      af--array_test
#SBATCH --mem           24G
#SBATCH --cpus-per-task 6
#SBATCH --gpus-per-node A100:1
#SBATCH --array         0-5
#SBATCH --time          4:00:00
#SBATCH --output        /nesi/nobackup/nesi12345/slurmlog/%A.%a.out

module purge
module load AlphaFold2DB/2023-04
module load AlphaFold/2.3.2

INPUT_PATH=/nesi/nobackup/nesi12345/input
OUTPUT=/nesi/nobackup/nesi12345/output

INPUT_FASTA=($INPUT_PATH/*.fasta)
INPUT_NAMES=$(basename ${INPUT_FASTA[SLURM_ARRAY_TASK_ID]%.*})

run_alphafold.py --use_gpu_relax \
--data_dir=$AF2DB \
--uniref90_database_path=$AF2DB/uniref90/uniref90.fasta \
--mgnify_database_path=$AF2DB/mgnify/mgy_clusters_2022_05.fa \
--bfd_database_path=$AF2DB/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
--uniref30_database_path=$AF2DB/uniref30/UniRef30_2021_03 \
--pdb70_database_path=$AF2DB/pdb70/pdb70 \
--template_mmcif_dir=$AF2DB/pdb_mmcif/mmcif_files \
--obsolete_pdbs_path=$AF2DB/pdb_mmcif/obsolete.dat \
--model_preset=monomer \
--max_template_date=2022-6-1 \
--db_preset=full_dbs \
--output_dir=${OUTPUT}/${INPUT_NAMES} \
--fasta_paths=${INPUT_PATH}/${INPUT_NAMES}.fasta

multimer

Slurm script for a single multimer query file¶

code

#!/bin/bash -e

#SBATCH --account       nesi12345
#SBATCH --job-name      af-test
#SBATCH --mem           24G
#SBATCH --cpus-per-task 6
#SBATCH --gpus-per-node A100:1
#SBATCH --time          03:00:00
#SBATCH --output        /nesi/nobackup/nesi12345/slurmlog/%j.out

module purge
module load AlphaFold2DB/2023-04
module load AlphaFold/2.3.2

INPUT_PATH=/nesi/nobackup/nesi12345/input
OUTPUT=/nesi/nobackup/nesi12345/output

run_alphafold.py \
--use_gpu_relax \
--data_dir=$AF2DB \
--model_preset=multimer \
--uniprot_database_path=$AF2DB/uniprot/uniprot.fasta \
--uniref90_database_path=$AF2DB/uniref90/uniref90.fasta \
--mgnify_database_path=$AF2DB/mgnify/mgy_clusters_2022_05.fa \
--bfd_database_path=$AF2DB/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
--uniref30_database_path=$AF2DB/uniref30/UniRef30_2021_03 \
--pdb_seqres_database_path=$AF2DB/pdb_seqres/pdb_seqres.txt \
--template_mmcif_dir=$AF2DB/pdb_mmcif/mmcif_files \
--obsolete_pdbs_path=$AF2DB/pdb_mmcif/obsolete.dat \
--max_template_date=2022-6-1 \
--db_preset=full_dbs \
--output_dir=${OUTPUT} \
--fasta_paths=${INPUT}/test_multimer.fasta