Perf テストでは、不適切な待機時間を使用する Windows 関数の呼び出しなど、システムのパフォーマンスとエネルギー消費量に影響を与える API の効率的な使用を確認します。
この一連のテストには、次の停止コードが含まれています。
定義された待機時間が 300 ミリ秒未満を誘導する Windows 関数の使用は、エネルギー効率のバグです。 イベント ベースのデザインの使用に切り替えるか、待機時間を延長します。
考えられる原因待機/遅延間隔期間を指定して待機型 API を呼び出す場合は、300 ミリ秒以上にする必要があります。 この API を 300 ミリ秒未満で呼び出すと、Windows は CPU を頻繁にウェイクアップします。 Windows が CPU を強制的にスリープ解除すると、より多くの電気エネルギーが消費され、バッテリ寿命が大幅に低下し、不要な電力が消費される可能性があります。
アプリケーション検証ツール によって表示される 情報- 形式: - ERROR: %ws(...%ws= ...)%d。%ws
- パラメーター 1 - API 名のアドレス (文字列のダンプに du を使用)
- パラメーター 2 - パラメーター名の アドレス (文字列をダンプするために du を使用)
- パラメーター 3 - パラメーター値 (ミリ秒) の待機/遅延時間
- パラメーター 4 - 追加情報の アドレス (文字列をダンプするために du を使用)
- テスト レイヤー: パワー
- 停止 ID: ERROR_DELAY_INTERVAL_DURATION_TOO_SHORT
- Stop コード: 7000000
- 重大度: エラー
- 1 回限りエラー:
- エラー レポート: 中断
- ファイルへのログ: はい
- バックトレースの作成 : はい
許容可能な遅延メカニズムを 300 ミリ秒未満で使用しても、システムの十分な中断間隔が許可されず、エネルギー効率のバグになります。 イベント ベースの設計の使用に切り替えるか、遅延時間を延長します。
考えられる原因許容可能な遅延で待機型 API を呼び出す場合、期間は 300 ミリ秒以上にする必要があります。 この API を 300 ミリ秒未満で呼び出すと、Windows は CPU を頻繁にウェイクアップします。 Windows が CPU を強制的にスリープ解除すると、より多くの電気エネルギーが消費され、バッテリ寿命が大幅に低下し、不要な電力が消費される可能性があります。
アプリケーション検証ツール によって表示される 情報- 形式: - ERROR: %ws(...%ws= ...)%d。%ws
- パラメーター 1 - API 名のアドレス (文字列のダンプに du を使用)
- パラメーター 2 - パラメーター名の アドレス (文字列をダンプするために du を使用)
- パラメーター 3 - パラメーター値 (許容されるミリ秒の分散)
- パラメーター 4 - 追加情報の アドレス (文字列をダンプするために du を使用)
- テスト レイヤー: パワー
- 停止 ID: ERROR_TOLERABLE_VARIANCE_DURATION_TOO_SHORT
- 停止コード: 7000001
- 重大度: エラー
- 1 回限りエラー:
- エラー レポート: 中断
- ファイルへのログ: はい
- バックトレースの作成 : はい
定義された待機時間が 300 ミリ秒未満を誘導する Windows 関数の使用は、エネルギー効率のバグです。 イベント ベースのデザインの使用に切り替えるか、待機時間を延長します。
考えられる原因待機/遅延間隔で待機型 API を呼び出す場合、期間は 300 ミリ秒以上にする必要があります。 この API を 300 ミリ秒未満で呼び出すと、Windows が CPU を頻繁にスリープ解除する可能性があります。 Windows が CPU を強制的にスリープ解除すると、より多くの電気エネルギーが消費され、バッテリ寿命が大幅に低下し、不要な電力が消費される可能性があります。
アプリケーション検証ツール によって表示される 情報- 形式: - 警告: %ws(...%ws= ...)%d。%ws
- パラメーター 1 - API 名のアドレス (文字列のダンプに du を使用)
- パラメーター 2 - パラメーター名の アドレス (文字列をダンプするために du を使用)
- パラメーター 3 - パラメーター値 (ミリ秒) の待機/遅延時間
- パラメーター 4 - 追加情報の アドレス (文字列をダンプするために du を使用)
- テスト レイヤー: パワー
- 停止 ID: WARNING_DELAY_INTERVAL_DURATION_TOO_SHORT
- Stop コード: 7000002
- 重大度: 警告
- 1 回限りエラー:
- エラー レポート: 中断
- ファイルへのログ: はい
- バックトレースの作成 : はい
許容可能な遅延メカニズムを 300 ミリ秒未満で使用しても、システムの十分な中断間隔が許可されず、エネルギー効率のバグになります。 イベント ベースの設計の使用に切り替えるか、遅延時間を延長します。
考えられる原因許容可能な分散を持つ待機型 API を呼び出す場合、期間は 300 ミリ秒以上にする必要があります。 この API を 300 ミリ秒未満で呼び出すと、Windows が CPU を頻繁にスリープ解除する可能性があります。 Windows が CPU を強制的にスリープ解除すると、より多くの電気エネルギーが消費され、バッテリ寿命が大幅に低下し、不要な電力が消費される可能性があります。
アプリケーション検証ツール によって表示される 情報- 形式: - 警告: %ws(...%ws= ...)%d。%ws
- パラメーター 1 - API 名のアドレス (文字列のダンプに du を使用)
- パラメーター 2 - パラメーター名の アドレス (文字列をダンプするために du を使用)
- パラメーター 3 - パラメーター値 (許容されるミリ秒の分散)
- パラメーター 4 - 追加情報の アドレス (文字列をダンプするために du を使用)
- テスト レイヤー: パワー
- 停止 ID: WARNING_TOLERABLE_VARIANCE_DURATION_TOO_SHORT
- Stop コード: 7000003
- 重大度: 警告
- 1 回限りエラー:
- エラー レポート: 中断
- ファイルへのログ: はい
- バックトレースの作成 : はい
システムの広いタイマー分解能を調整すると、エネルギー効率に大きな影響を与える可能性があり、通常はパフォーマンスが向上しません。 この API は使用しないでください。
考えられる原因システムでこの値を選択できるようにすることは、パフォーマンスとエネルギー効率の両方に最適です。 システムタイマーを調整すると、バッテリ寿命が大幅に低下し、不要な電力が消費される可能性があります。
アプリケーション検証ツール によって表示される 情報- 形式: - ERROR: %ws(...%ws= ...)%d。%ws
- パラメーター 1 - API 名のアドレス (文字列のダンプに du を使用)
- パラメーター 2 - パラメーター名の アドレス (文字列をダンプするために du を使用)
- パラメーター 3 - パラメーター値 (ミリ秒) のタイマー解決
- パラメーター 4 - 追加情報の アドレス (文字列をダンプするために du を使用)
- テスト レイヤー: パワー
- 停止 ID: ERROR_SYSTEM_TIMER_RESOLUTION_ADJUSTMENT
- 停止コード: 7000004
- 重大度: エラー
- 1 回限りエラー:
- エラー レポート: 中断
- ファイルへのログ: はい
- バックトレースの作成 : はい
電力消費量が増加する可能性が高い、実行中のシステムに調整が行われました。 ユーザーの操作を想定していないマルチメディア (ビデオ/オーディオ) を提示するアプリケーションのみが、これらの API を呼び出す必要があります。
考えられる原因エネルギー効率を向上させるために、ユーザーの操作を想定しないマルチメディア アプリケーション (ビデオ/オーディオ) を除き、この API の使用を回避することをお勧めします。 この API を呼び出すと、Windows は節電操作を見送り、バッテリ寿命を大幅に短縮したり、不要な電力を引き出したりします。
アプリケーション検証ツール によって表示される 情報- 形式: - %ws という名前の API が呼び出され、システムのエネルギー消費量が増加します。 %ws
- パラメーター 1 - API 名のアドレス (文字列のダンプに du を使用)
- パラメーター 2 - 追加情報の アドレス (文字列をダンプするために du を使用)
- パラメーター 3 - N/A
- パラメーター 4 - N/A
- テスト レイヤー: パワー
- 停止 ID: WARNING_SYSTEM_POWER_USAGE_INCREASE
- Stop コード: 7000005
- 重大度: 警告
- 1 回限りエラー:
- エラー レポート: 中断
- ファイルへのログ: はい
- バックトレースの作成 : はい
こちらもご覧ください
アプリケーション検証ツール - アプリケーション検証ツール 内のテスト