Skip to content

Simulator

Yuya Degawa edited this page Jun 5, 2023 · 3 revisions

dst/設定/XMLノードのリファレンス/Session/Simulator.md

<Simulator>

  • <Simulator> では,シミュレーションに関わる設定を行う

    • シミュレーションを行う命令数やモード
    • シミュレーション対象となる各リソースの初期化パラメータや,生成個数,接続情報などの設定
  • <Simulator> は,以下のノードを持つ

<Simulator Configuration='DefaultConfiguration'>
  <Configurations/>
  <Caches/>
  <System/>
  <TimeWheelBase/>
<System>

@Configuration

  • <Configurations> の子ノードのうち,使用するノードの名前を指定

<Configurations>

<Caches>

@FloatConversionLatency

  • 整数<>浮動小数点の変換に必要なレイテンシを設定

<System>

@Mode

動作モードの指定を行う

  • Emulation
    • エミュレーションのみを行う
  • Simulation
    • サイクルアキュレートなシミュレーションを行う
  • Inorder
    • シミュレータ側で命令を解釈してインオーダに実行を行う
    • 分岐予測やキャッシュのみのシミュレーションを行いたい場合は,これをベースにすると良い
  • SkipByInorder
    • 後述する命令のスキップをInorder で行う
    • インオーダ実行でキャッシュをあっためて起きたい場合などに使用すると良い
  • CreateEmulationTrace
    • エミュレーションのトレースを出力
    • デバッグ用

のいずれかを指定

@SimulationCycles

  • シミュレーションを行うサイクル数を指定
  • 0であった場合は@SimulationInsnsが使用される

@SimulationInsns

  • シミュレーションを行う命令数を指定
  • 0であった場合は@SimulationCyclesが使用される

@SkipInsns

  • @ModeSimulationであった場合,ここで指定した命令数をEmulation によって実行したのち,@SimulationCycles@SimulationInsnsで指定した命令数のシミュレーションを行う

<TimeWheelBase>

@Size

  • TimeWheelのサイズを指定
Clone this wiki locally