Vina-FPGA2:モジュール間パイプラインに基づく高レベル並列ハードウェア加速分子ドッキングツール

Ming LING ,  

Shidi TANG ,  

Ruiqi CHEN ,  

Xin LI ,  

Yanxiang ZHU ,  

Abstract

AutoDock Vina(Vina)は広く採用されている分子ドッキングツールで、多くの研究で分子ドッキング結果の標準として用いられています。しかし、その計算プロセスは非常に時間がかかります。Vinaは現場プログラマブルゲートアレイ(FPGA)ベースのアクセラレータであるVina-FPGAを初めて開発し、ドッキングプロセスの高速化に高いエネルギー効率のソリューションを提供しました。しかし、Vina-FPGAの設計における計算モジュールは効率的に利用されていません。これは、Vinaがネストループ内で不規則な動作を示し、その上限が絶えず変化し制御フローが異なるためです。幸いにも、Vinaで用いられるモンテカルロ反復探索法は、異なるランダムな初期入力に対して独立した計算を必要とし、この特性が並列計算設計の機会を提供します。そこで本論文では、Vina-FPGAの実行効率をさらに向上させることを目的とした、モジュール間パイプライン設計手法であるVina-FPGA2を提案します。まず、計算タスク(Task)を計算モジュールに順次割り当ててタスクの独立性を実現しました。次に、タグチェックモジュールとアーキテクチャの調整によりモジュール間パイプライン並列設計を実現し、これをVina-FPGA2-Baselineと命名しました。資源効率の高いハードウェア実装のために、この設計を最適化問題に変換し、強化学習に基づくソルバーを開発しました。このソルバーはXilinx UltraScale XCKU060プラットフォームを対象に、より効率的なアクセラレータ設計であるVina-FPGA2-Enhancedを実現しました。最後に実験により、Vina-FPGA2-Enhancedは中央処理装置(CPU)に比べて平均12.6倍、Vina-FPGAに比べて3.3倍、Vina-GPUに比べて7.2倍のエネルギー効率を向上させることが示されました。

Keywords

AutoDock Vina(Vina);ハードウェアアクセラレータ;プログラマブルゲートアレイ;ハードウェア・ソフトウェア協調設計

READ MORE