研究領域 | 統合的多階層生体機能学領域の確立とその応用 |
研究課題/領域番号 |
23136513
|
研究機関 | 慶應義塾大学 |
研究代表者 |
舟橋 啓 慶應義塾大学, 理工学部, 准教授 (70324548)
|
キーワード | 生体生命情報学 / ハイパフォーマンス・コンピューティング / バイオテクノロジー / システムバイオロジー |
研究概要 |
平成23年度は、常微分方程式のシミュレーションエンジン(ソルバ)の理解を進め、GPUによる並列化、および高速化の可能性について十分に検討した後、オイラー法、ルンゲ・クッタ法等の最も基本となる数値積分アルゴリズムの並列化を行った。数値積分の並列化には(1)粗粒度並列化、(2)細粒度並列化の2通りのアプローチが考えられる。粗粒度並列処理では、各演算ユニットが独立の演算を行う一方、細粒度並列処理では一つの大きな問題(シミュレーション)を細かいパーツに分割し、各演算ユニットは個々のパーツの演算を行う。細粒度並列処理では一つの大きな問題を複数の演算ユニットが協力して解くことが可能である。細粒度並列処理は高度な並列アルゴリズムが必要となるが、大幅な性能向上を達成する可能性を秘める。当該年度では、オイラー法より高精度なルンゲ・クッタ法の粗粒度並列化を行った。粗粒度並列化の実装には、NVIDIA社が提供するC言語による統合開発環境であるCUDAを用いた。数値計算において計算精度は非常に重要な指標であるため、一般的なGPUプログラミングで採用される単精度浮動小数点演算だけでなく、倍精度浮動小数点演算の実装も行った。また、常微分方程式ソルバは入力としてSBML(Systems Biology Markup Language)で記述された数理モデルの読み込みに対応すべく実装を行った。SBMLはシステムバイオロジーの分野で広く普及されているモデル記述言語であり、すでに300を超える論文で発表された数理モデルがweb上でアクセス可能となっている。本研究課題で実装を進めている高速シミュレータがSBMLに対応することは、基盤構築の上で非常に重要な要素となる。並列化の結果、CPUによる逐次実行と比較して単精度浮動小数点演算では50倍の高速化を、倍精度浮動小数点演算では20倍の高速化を達成した。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
GPUを用いた並列計算は、他の高速化のアプローチと比較して価格性能比に優れるという利点がある。本研究課題にて達成した速度向上をCPUにて実現する場合、コストはおよそ40倍必要となることが概算で求められた。当該年度の成果は、優れた価格性能比を実現する高速シミュレーション基盤の構築に一定の成果を上げたと考えられる。
|
今後の研究の推進方策 |
今後は数値積分アルゴリズムの精度向上、より詳細なSBMLの仕様に対応したシミュレータの実装、高速化、確率モデルシミュレータの実装を行う予定である。数値積分アルゴリズムは大別して陽解法と陰解法が存在する。陰解法はアルゴリズムが複雑になる一方、硬い微分方程式を解くことが可能となる。生化学シミュレーションのモデルにはしばしば硬い微分方程式を含むものがあるため、基盤構築を目標とした場合、陰解法の実装は必須であると考えている。また、SBMLの常微分方程式の記述に対応するだけでなく、微分代数方程式への対応、確率モデルシミュレーションの高速化の実装を進める。
|