YASARA:AutoDockGPUの性能評価

2024年6月14日金曜日

【YASARA】

t f B! P L

YASARA ver.23.12.24から、AutoDockGPUが利用できるようになりました。そこで、GPUを利用した場合とそうでない場合について、計算時間を測定して比較してみました。

YASARAでは、AutoDockまたはAutoDock Vina を利用できますが、今回GPUに対応したのはAutoDockで、VinaGPU未対応なのでご注意ください。 

AutoDockGPUの実行条件

AutoDockGPUを実行する際には、以下の条件を満たす必要があります。

  • ドッキングメゾッドにAutoDockを指定する
     マクロファイル中のパラメータを、domethod='AutoDockLGA' に変更します。

  • GPU が有効になっている
     メニューからOptions > Processors > Set compute GPUで設定、または、コマンド"Processors GPU=1"を実行して設定できます。

  • リガンドと柔軟な側鎖の原子の合計が 257 未満であること
     (非極性水素はカウントされない)

  • 64 bit OSが実行されている

  • グローバルドッキングが実行されている
    (dock_run.mcr/ dock_runensemble.mcr/ dock_runscreening.mcr
    など)

AutoDock計算時間の検証

 δオピオイド受容体とナルトリンドールの共結晶構造(PDB:4N6H)を使用して、再ドッキングを行います。
マクロファイルは、dock_run.mcr, dock_runensemble.mcrの2つを利用して、それぞれ、GPUありなしCPUのみ)の4通りでAutoDockのドッキングを実行し、計算時間を測定して結果を比較したいと思います。


マクロファイルGPU
1dock_run.mcr--
2dock_run.mcr
3dock_runensemble.mcr--
4dock_runensemble.mcr

実行条件

使用したハードウェア、YASARAのバージョン情報は以下の通りです。

[H/W]
 CPU: AMD Ryzen 5 3600XT(6-Core)
 RAM: 32.0 GB
 GPU: NVIDIA GeForce RTX 2070 SUPER
 OS : Windows 10 Pro(22H2,19045.4412)

[YASARA]
 YASARA Structure ver.24.4.10

CPU6コア12スレッドで実行します。

実行方法

構造ファイルの準備

 
 PDB ID: 4N6Hをダウンロードし、クリーニング処理(Clean処理、不要分子を削除)を行いました。
続いて、Splitコマンドでレセプターとリガンドをオブジェクト分割し、リガンドの周辺に5.0 Å(Shape:Cube)のSimCellを設定しました。
リガンドを.yobファイルとして保存後、リガンドオブジェクトを削除し、レセプターとSimCellを一緒に.sceファイルとして保存し、それぞれの構造ファイルを準備しました。




マクロファイルの編集


 付属マクロdock_run.mcrdock_runensemble.mcrを編集し、メゾッドパラメータをAutoDockに変更しました(method='AutoDockLGA')。
加えて、マクロ冒頭にコマンドを追記し、実行時のプロセッサーを指定しました(GPUを使用しない場合は「Processors GPU=0」、GUPを使用する場合は「Processors GPU=1」を追記。※CPUは事前に6コア12スレッドに設定しています)。


計算の実行

 
 Windowsのコマンドプロンプトから、テキストモードでYASARAのドッキングマクロを実行しました。以下のコマンドを実行して計算の開始時刻と終了時刻を出力し、その差分を計算時間としました。(実行するマクロファイルは適宜変更しています)

(コマンド例)
cmd /v:on /c "echo !TIME! & YASARA.exe -txt dock_run_gpu.mcr "MacroTarget='4n6h'" & echo !TIME!"

実行すると以下のように計算開始時と終了時の時刻が出力されます。
(出力例)


※コマンドラインからマクロファイルを実行する方法の詳細については、弊社のYASARAチュートリアル資料、分子動力学計算の【手順3.2 コマンドラインからマクロを実行する方法】を参考にしてください。上記の例では、PATHを通してYASARA実行ファイルのパスを省略しています。


結果


測定した計算時間を以下にまとめます。


実行マクロファイルGPU計算時間
1dock_run.mcr--4分4.34秒
2dock_run.mcr0分9.66秒
3dock_runensemble.mcr--11分37.88秒
4dock_runensemble.mcr1分4.12秒


まとめ

 AutoDockGPUを利用すると、CPUのみを利用した場合に比べて計算時間が大幅に短縮されることがわかりました。現時点ではVINAGPU対応していませんが、AutoDockを実行する際、GPUを利用できる環境であれば、ぜひ活用してみてください。






code-prettify

このブログを検索

ページビューの合計

人気の投稿

QooQ