II-27-5. 性能評価の解析、シミュレーションとモニタリング

性能評価の解析的手法、シミュレーションによりシステム性能を評価するシミュレータ、および実機の性能をモニタリングする様々な手法を説明する。また具体的な例として、PIC (Programmable Intelligent Computer)を対象としたOSSのシミュレータであるgpsim, SxSim, PICEMUなどを紹介する。

【学習の要点】

* 性能評価の解析的手法として、確率ペトリネットや待ち行列理論が用いられる。

* ターゲットデバイスや入出力デバイスのシミュレーションを行う、シミュレータを用いた性能評価も行われる。シミュレータは実機でデバッグする際に生じるオーバーヘッドを削減する。

* PICを対象としたOSSのシミュレータにはgpsim、SxSimなどが存在する。

図II-27-5. 待ち行列理論(M/M/nモデル)

【解説】

1) 性能評価の解析的手法

* 性能評価の解析的手法として、確率ペトリネットや待ち行列理論が用いられる。

* 確率ペトリネット(Stochastic Petri-net)

- ペトリネットは並行動作や分散状態、および資源の概念を表現できる。

- ペトリネットの状態遷移に対して遅延時間を設定できるものを時間ペトリネットと呼ぶ。

- 時間ペトリネットでは、発火遅延時間モデル(発火可能になってからの遅延時間を設定)、発火継続時間モデル(発火してからの継続時間を設定)、プレース遅延時間モデル(プレースにトークンが来てから発火するまでの遅延時間を設定)という時間モデルが用意されている。

- 確率ペトリネットは、時間ペトリネットで導入された時間に確率を導入するモデルであり、遅延時間に指数分布する確率分布を与えたものである。

* 待ち行列理論 (Queuing Theory)

- 待ち行列理論は、オペレーションズリサーチの分野で発展した理論であり、様々な待ち行列の形態に対して、平均長、到着して行列を抜けるまでの時間などを数学的に計算する。

- 待ち行列は、ケンドールの記法(1953)を用いて「M/M/1」のように表現される。これは、「窓口に到着する人の到着する間隔(到着率)/窓口でサービスを受ける時間/窓口の数」であり、「ポアソン分布に従ったランダムな到着間隔/ポアソン分布に従ったランダムな処理時間/処理するサービスの窓口は1つ」を意味する。

- PDQ(http://www.perfdynamics.com/Tools/PDQ.html)は待ち行列理論を利用したオープンソースの性能解析ツールである。

2) シミュレーション

* ターゲットデバイスや入出力デバイスのシミュレーションを行う、シミュレータを用いた性能評価も行われる。シミュレータは実機でデバッグする際に生じるオーバーヘッドを削減する。

* PIC(Programmable Intelligent Computer)を対象としたオープンソースのシミュレータには以下の事例がある。

- Gnucap (http://www.gnu.org/software/gnucap/ ): Gnuの回路解析用パッケージ。

- NG-spice (http://sourceforge.net/projects/ngspice/): Spice3f5(UCバークレー校が開発したOSSの回路シミュレータ)の後継版ツール(Next Generation Simulation Program with Integrated Circuit Emphasis)。

- gpsim (http://www.gnupic.org/): GnuのPICマイコン用のシミュレータ。

- PICEMU (http://www.picemulator.com/): PICエミュレータ。

OSS Course Naviのコンテンツは IPA OSS モデルカリキュラムを基としています。