[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
ISISは主として並列計算機をターゲットとした、計算機シミュレータのための C++言語によるクラスライブラリである。
並列計算機をシミュレーションによって評価する場合、重点が置かれる評価に 応じて様々なシミュレータが実装される。しかし、これらのシミュレータの多 くは特定のアーキテクチャを持つ並列計算機の評価を目的として開発されるた め、想定されていない構成の並列計算機をシミュレートすることはできない。 また、評価対象に応じて異なるシミュレーション方式を採用するのが一般的で ある。このような理由から、新たに並列計算機を評価する必要性が生じた場合 には、新しいシミュレータを実装することが多い。このオーバヘッドは研究者 にとって大きな負担となる。
そこでISISでは、計算機内部のプロセッサやメモリなどのハードウェア機能ブ ロックをユニットと呼ばれるクラス単位で実装している。ユニットを結合させ ることによりターゲットの計算機アーキテクチャを表現し、シミュレーション を行う。ISISには計算機内部の基本的な機能ブロックがあらかじめ用意されて いるので、並列計算機シミュレータを実装する場合はそれらの機能ブロックを そのまま組み合わせるだけで良い。また、ISISで用意されていない特殊な機能 ブロックを独自に追加することもできる。したがって、どのような計算機シミュ レータでも比較的容易に構築することができる。
ISISはユニット、パケット、ポートという概念を用いてシミュレートする計算 機をモデル化する。
ISISはC++言語によるクラスライブラリである。パケット、ポート、ユニット 等のモデルは、それぞれがクラスとして実装されている。また、クラス間の関 係は継承で表現され、パケット、ポートと言った概念ごとに個別のクラス階層 が形成される。
ISISを使用する場合は、必要なクラスのヘッダファイルをインクルードしてソー スファイルをコンパイルし、ISISのライブラリファイルとともにリンクを行う ことで実行バイナリを生成する。トップモジュールの記述は全てユーザ自身の 手によって行う。
ISISが提供するクラスは、以下の様に分類される。
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |