開発事例

分子動力学計算

既存の分子動力学計算プログラムに対してポーティングを行い、GPUを用いた並列高速化を実現します。

分子動力学計算
※1 original : Intel® Core™ i7 4Core

技術要素

【マシン環境】
・PC-Linux デスクトップ機
【GPGPU】
・NVIDIA 社 Tesla C2050
【OS】
・64bit CentOS 5.4
【開発ツールおよび言語】
・PGIコンパイラ、CUDA Fortran

詳細

(1) 分子(A)と分子(B)の登録リストを2つ作成
分子(A)の周りに存在する分子(B)をあらかじめ登録し、リストを作成します。
同様に、分子(B)に対するリストも作成します。
⇒ 処理時間が全体の31%を占めます ... HotSpot!
(2) 分子(A)と分子(B)を別々のループで計算処理するようにコード変更
分子(A)と分子(B)に対する力の計算を同一ループで行っているため、ループ依存が発生します。
それを回避するために、別々のループで計算処理するようにコード変更を行います。
⇒ 処理時間が全体の66%を占めます ... HotSpot!

お問い合わせ

開発事例