langEnglish
ホーム > INtime > リアルタイム性能
ピックアップ
-製品・ソリューション
リアルタイムモーション制御ソリューション

-コラム
社長からの一言
リアルタイム性能
CPU使用率
リアルタイム制御では処理を開始するタイミングの精度を求められますが、処理の目的そのものは外部接点信号処理など、数命令でごく短時間に処理するものがほとんどであるため、CPUを長時間に渡って占有してしまうものではありません。
またオーバヘッド時間も極限まで短縮しているとともに、規則性さえも計算されているので、INtimeの導入によってWindowsのパフォーマンスが悪化することはありません。
INtimeカーネルアイコン
* カーネルティック500usで接点出力制御を実施している例をWindowsパフォーマンスモニタで測定した例。
ハイパースレッド機能で動作するWindows処理(2本)と比較すると、緑色のINtimeリアルタイムスレッドのCPU使用率は限りなく0%に近い状態です。

Core2Duoにおける性能評価結果
ハードウェア割り込みレイテンシ測定
ハードウェア割り込み信号発生から、INtimeアプリケーションの割り込みハンドラが開始されるまでの所要時間を測定した結果を掲載します。
測定方法
  • PCIタイプのタイマボードを使用して1ミリ秒毎に割り込みを発生するように指定
  • 想定される割り込み発生時刻をゼロとして、そこからの遅延時間をRDTSC CPU命令で算出
  • 1000回の測定を行う
Core2Duo 2.1GHz
  • 最小0.83μ秒
  • 平均1.25μ秒
  • 最大遅延は1.66μ秒
ハードウェア割り込みレイテンシ測定結果

スレッドスイッチングのオーバヘッド時間測定
低優先度スレッドから高優先度スレッドに対するソフトウェアイベント発行の瞬間から実際にエントリするまでに所要した時間を測定した結果を掲載します。
測定方法
  • 低優先度スレッドからセマフォイベントを発行する時点でRDTSC CPU命令で時刻を算出
  • 高優先度スレッドがセマフォイベントを受け入れた直後にRDTSC CPU命令で時刻を算出
  • 時刻の差を算出
  • 1000回の測定を行う
Core2Duo 2.1GHz
  • 最小479.9ナノ秒
  • 平均481.9ナノ秒
  • 最大遅延487.4ナノ秒
スレッドスイッチングのオーバヘッド時間測定結果