第15章 RHEL for Real Time での rtla-osnoise を使用したスケジューリングレイテンシーの測定
超低レイテンシーとは、遅延に対する許容度が低く、大量のデータパケットを処理するように最適化された環境です。超低レイテンシー環境では、CPU などの専用リソースをアプリケーションに提供することが一般的に行われます。たとえば、ネットワーク機能仮想化 (NFV) アプリケーションにおける高パフォーマンスネットワーク処理では、単一のアプリケーションに、タスクを継続的に実行するための CPU 電力制限が設定されます。
Linux カーネルには、オペレーティングシステムノイズ (osnoise
) トレーサーのインターフェイスを提供するリアルタイム分析 (rtla
) ツールが搭載されています。オペレーティングシステムノイズとは、オペレーティングシステム内のアクティビティーの結果としてアプリケーションで発生する干渉のことです。Linux システムでは、次の原因でノイズが発生する可能性があります。
- マスク不可割り込み (NMI)
- 割り込み要求 (IRQ)
- ソフトウェア割り込み要求 (SoftIRQ)
- その他のシステムスレッドアクティビティー
- マスク不可能な高優先度のシステム管理割り込み (SMI) など、ハードウェア関連ジョブ
15.1. rtla-osnoise トレーサー リンクのコピーリンクがクリップボードにコピーされました!
Linux カーネルには、オペレーティングシステムノイズ (osnoise
) トレーサーのインターフェイスを提供するリアルタイム分析 (rtla
) ツールが搭載されています。rtla-osnoise
トレーサーは、指定された期間にわたって定期的に実行されるスレッドを作成します。period
の開始時に、スレッドは割り込みを無効にして、サンプリングを開始し、ループで時間をキャプチャーします。
rtla-osnoise
トレーサーは次の機能を提供します。
- CPU が受けるオペレーティングノイズを測定します。
- CPU で発生するオペレーティングシステムノイズの種類を特徴付けます。
- 予期せぬ結果の根本原因を特定するのに役立つ、最適化されたトレースレポートを出力します。
- 干渉源ごとに干渉カウンターを保存します。マスク不可割り込み (NMI)、割り込み要求 (IRQ)、ソフトウェア割り込み要求 (SoftIRQ)、およびスレッドの干渉カウンターは、ツールがこれらの干渉のエントリーイベントを検出すると増加します。
rtla-osnoise
トレーサーは、期間の終了時に、ノイズ源に関する次の情報を含む実行レポートを出力します。
- ノイズの総量。
- ノイズの最大量。
- スレッドに割り当てられている CPU の割合。
- ノイズ源のカウンター。