Skip to main content
QUICK REVIEW

[論文レビュー] A Comparison of Sequential and GPU Implementations of Iterative Methods to Compute Reachability Probabilities

Elise Cormie-Bowins|arXiv (Cornell University)|Oct 24, 2012
Advanced Memory and Neural Computing被引用数 5
ひとこと要約

この論文は、マコフ連鎖の到達確率計算に生じる線形方程式系を解くための、逐次処理とGPUアクセラレーションを施したヤコビ法とBiCGStab法の実装を比較している。CUDAアクセラレーションされたヤコビ法は、スパース行列において特に顕著に逐次版を上回る性能を示す一方、GPU上でのBiCGStab法は、大規模で密行列の場合にのみ利点を示す。これは、スパース性ゆえにヤコビ法が確率的モデルチェックにおいてKrylov部分空間法を上回る可能性があるという仮説を支持する。

ABSTRACT

We consider the problem of computing reachability probabilities: given a Markov chain, an initial state of the Markov chain, and a set of goal states of the Markov chain, what is the probability of reaching any of the goal states from the initial state? This problem can be reduced to solving a linear equation Ax = b for x, where A is a matrix and b is a vector. We consider two iterative methods to solve the linear equation: the Jacobi method and the biconjugate gradient stabilized (BiCGStab) method. For both methods, a sequential and a parallel version have been implemented. The parallel versions have been implemented on the compute unified device architecture (CUDA) so that they can be run on a NVIDIA graphics processing unit (GPU). From our experiments we conclude that as the size of the matrix increases, the CUDA implementations outperform the sequential implementations. Furthermore, the BiCGStab method performs better than the Jacobi method for dense matrices, whereas the Jacobi method does better for sparse ones. Since the reachability probabilities problem plays a key role in probabilistic model checking, we also compared the implementations for matrices obtained from a probabilistic model checker. Our experiments support the conjecture by Bosnacki et al. that the Jacobi method is superior to Krylov subspace methods, a class to which the BiCGStab method belongs, for probabilistic model checking.

研究の動機と目的

  • マコフ連鎖における到達確率を計算するための逐次処理とGPUアクセラレーションを施した反復的解法の性能を評価すること。
  • CUDAによるGPUアクセラレーションが、確率的モデルチェックから得られる行列を対象としたヤコビ法およびBiCGStab法の性能に改善をもたらすかどうかを特定すること。
  • 確率的モデルチェックにおいてヤコビ法がBiCGStabのようなKrylov部分空間法を上回る理由が、行列のスパース性に起因するのか、それともメモリアクセスのオーバーヘッドに起因するのかを調査すること。
  • JPFから得た実際の確率的モデルチェックデータと、同サイズ・同密度の合成ランダム行列との間で結果を比較すること。
  • 行列のサイズと密度が、この文脈におけるGPUアクセラレーションされた解法の性能に与える影響を評価すること。

提案手法

  • NVIDIAのCUDAフレームワークを用いて、C言語でヤコビ法およびBiCGStab法の逐次版とCUDA並列版を実装した。
  • 一般の性能特性をテストするため、さまざまな次元と非ゼロ要素数を持つランダムな密行列およびスパース行列を生成した。
  • ランダム化された逐次アルゴリズムから得られる遷移確率行列を生成するために、Java PathFinder(JPF)の確率的拡張を用いた。
  • 到達確率計算のための線形方程式系A·x = bを形成するために、JPFが生成した行列から単位行列を差し引いた。
  • 各行列タイプと解法バージョンについて、複数回の試行における実行時間を測定した。標準偏差は図に表示されないほど小さかった。
  • JPFが生成した行列、同サイズ・同密度のランダム行列、およびランダムな正の整数要素を持つ合成行列の間で性能を比較した。

実験結果

リサーチクエスチョン

  • RQ1マコフ連鎖における到達確率問題を解く際、CUDAによるGPUアクセラレーションがヤコビ法およびBiCGStab法の性能を向上させるか?
  • RQ2この文脈において、ヤコビ法とBiCGStab法の性能特性は、スパース行列と密行列の間でどのように異なるか?
  • RQ3確率的モデルチェックにおいてヤコビ法がBiCGStabのようなKrylov部分空間法を上回るという観察は、行列のスパース性に起因するのか、それともメモリアクセスのオーバーヘッドに起因するのか?
  • RQ4行列のサイズと密度が、この文脈におけるGPUアクセラレーションの性能向上に与える影響はどの程度か?
  • RQ5JPFから得た実際の確率的モデルチェックデータで観察された性能トレンドは、同サイズ・同密度の合成行列に対しても再現可能か?

主な発見

  • CUDA最適化されたヤコビ法は、常に逐次版を上回り、特にスパース行列において顕著な性能向上を示した。これはGPU並列化による明確な利点を示している。
  • GPU上でのBiCGStab法は、大規模で密行列の場合にのみ性能上の利点を示すが、小規模でスパースな行列では逐次版のBiCGStabが高速であった。
  • JPFが生成した行列に対しては、ヤコビ法がBiCGStabを上回った。これは、Bosnackiらの仮説である「ヤコビ法はこの分野においてKrylov部分空間法よりも適している」という仮説を支持する。
  • JPFが生成した行列における性能トレンドは、同サイズ・同密度の合成ランダム行列に対しても再現された。これは、サイズと密度が解法の性能の主な要因であることを示しており、モデルチェック行列に固有の構造的性質が影響しているわけではない。
  • ヤコビ法がスパース行列で優れた性能を発揮するのは、メモリアクセスのオーバーヘッドではなく、スパース性に起因する。これは、BiCGStabの性能が低い主な理由が、より高いメモリ要件にあるという仮説を否定する。
  • 通常の確率的モデルチェックデータでは、行列のスパarsityが高いため、CUDA版BiCGStabの実装は性能向上を示さない。これは、GPUの利点を発揮するのに必要なサイズと密度の閾値を満たしていないためである。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。