Boltz 2.2.1

ウェブページ

https://github.com/jwohlwend/boltz

バージョン

2.2.1

インストール環境

  • Python 3.12.12 (pyenv 2.6.17)

インストール手順概略

$ module load pyenv/2.6.17
$ export PYENV_ROOT=/apl/pyenv/repos/2.6.17
$ pyenv install 3.12.12
$ pyenv virtualenv 3.12.12 3.12.12-boltz-2.2.1
$ pyenv activate 3.12.12-boltz-2.2.1
(3.12.12-boltz-2.2.1) $ eval "$(pyenv init -)"
(3.12.12-boltz-2.2.1) $ pip install boltz[cuda]==2.2.1 -U

実行例

ログインノード(ccfep)で一度実行し、Colabfold のサーバにアクセスして MSA とデータ処理まで行い、その後にジョブスクリプトを生成し、prediction を GPU ノードで実行する形です。

#!/bin/sh

INPUT=prot.yaml
JOBFILE=sample-prot-jsub.sh
MSALOG=msa-prot.logfile

NCPUS=16
NTHREADS=8
NGPUS=1
WALLTIME="16:00:00"

BOLTZ_VER="2.2.1"

# ------------------------------------------------

module -s purge
module -s load boltz/${BOLTZ_VER}

# generate MSA on ccfep
boltz predict ${INPUT} --use_msa_server >& ${MSALOG}

# prediction
cat -<< EOF > ${JOBFILE}
#!/bin/sh
#PBS -l select=1:ncpus=${NCPUS}:mpiprocs=1:ompthreads=${NTHREADS}:ngpus=${NGPUS}
#PBS -l walltime=${WALLTIME}
cd \$PBS_O_WORKDIR
module -s purge
module -s load boltz/${BOLTZ_VER}
boltz predict ${INPUT}
EOF
jsub ${JOBFILE}

メモ

  • 共用領域内に作った pyenv 環境内に導入しています。
  • GPU が無い状況で実行すると、prediction の段階でエラー終了します。(一度目の boltz predict)
  • 既にデータがあるのであれば、それを使って prediction が行われます。(二度目の boltz predict)