情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

詳しい分析の一般的な問題

評価では、事前定義された測定対象のアクティビティの完了の分析しきい値を設定します。評価では、アクティビティの時間がこのしきい値を超えた場合に問題が特定されて報告されます。Windows(R) アセスメント ツールキットの一部の評価では、高度な問題分析が行われます。これらの問題は、Windows Assessment Consoleと Windows(R) Assessment Services - Client (Windows ASC) で表示でき、Windows(R) Performance Analyzer (WPA) で詳しく分析できます。

noteメモ
評価で生成される問題の原因は複数あります。このトピックでは、高度な分析で生成されるいくつかの一般的な問題についてのみ説明します。

Windows Assessment Consoleと Windows ASC では、評価で報告される問題は、[Results View] (結果ビュー) ページの左側の列と右側の詳細ウィンドウの 2 か所に表示されます。[Results View] (結果ビュー) ページでは、問題、警告、エラーが実行情報の表と評価結果の表に表示されます。[Issues] (問題) を右クリックしてグループ化する条件を選ぶと、これらの問題をグループ化できます。詳細ウィンドウでは、問題は重大度で並べ替えられます。キーワードとメタデータを使ってこれらの問題をフィルター処理できます。詳しくは、「問題をグループ化、フィルター処理、検索する」をご覧ください。

結果ビューのリンクを使って WPA を開くと、評価で特定された問題の一覧が WPA の [Issues] (問題) ウィンドウに表示されます。これらの問題のいずれかを選ぶと、詳細と推奨される解決策が WPA の [Details] (詳細) ウィンドウに表示されます。WPA について詳しくは、Windows Performance Analyzer に関するページをご覧ください。

このトピックの内容:

Windows Assessment Consoleと Windows ASC の詳細ウィンドウに表示される問題のほとんどは、次のような項目を含む共通の構造を備えています。

  • タイトル

    タイトルには、問題の測定基準や影響を受けたアクティビティの名前など、問題に関する必須の情報が含まれています。また、問題が検出されたときの評価のフェーズが含まれている場合もあります。

  • 推奨事項

    検出された問題の解決策がある場合は、その手順が詳細ウィンドウに表示されます。また、問題の詳しい調査に役立つガイダンスが表示されることもあります。この情報には、パフォーマンスを最適化するか、評価で特定された問題を他の方法で克服するのに役立つ方法またはベスト プラクティスが含まれている場合があります。

  • 詳細

    場合によっては、詳細ウィンドウに、問題を解決するための手順に関する情報を提供できる Web サイトへのリンクという形で追加情報が表示されることがあります。

  • 詳しい分析

    高度な分析で生成される問題の場合は、詳細ウィンドウに [WPA in-depth analysis] リンクが表示されます。このリンクを使うと、WPA を開いて問題の原因を詳しく調べることができます。

    WPA を開くと、評価で特定された問題の種類に応じて、次のような追加の情報が表示されます。

    • 特定された問題を生成したプロセスに関するファイルとバージョンの情報を含むプロセス イメージの詳細。これには次の情報が含まれます。

      • ファイル名

      • ファイル パス

      • ファイルの説明

      • ファイルのバージョン

      • 製造元

    • ファイルによるディスク活動の要約。これには次の情報が含まれます。

      • ディスクの読み書きのサイズと回数

      • ディスク フラッシュの回数

    • プロセス/スレッドによる CPU 活動の要約。これには次の情報が含まれます。

      • CPU 時間で表されるプロセスの各スレッドの影響

      • パフォーマンスに対する影響が発生した場所とその影響が続いた時間を示すコール スタック

    • プロセスまたはスレッドによる CPU またはディスク活動によって生じた遅延の要約。これには次の情報が含まれます。

      • 遅延したスレッドまたはプロセス (遅延時間を含む)

      • プロセスの各スレッドの影響 (遅延時間を含む)

      • 遅延を引き起こしている、または遅延の影響を受けている各スレッドのコール スタック

        noteメモ
        コール スタックから提供される情報はアクティビティの統計的表現です。この情報の精度は、評価で収集されたサンプルによって異なります。

マネージ コードとは、Microsoft(R) .NET 共通言語ランタイム (CLR) で実行されるコードのことです。CLR は、Microsoft .NET Framework を基盤とするアプリケーションの実行を管理します。CLR プロセスは Windows のブート中に開始し、追加のリソース消費を引き起こす場合があります。これにより、ブート時間が長くなる可能性があります。CLR の初期化中に .NET Framework によって読み取られるファイルは、数メガバイトの追加の記憶域読み取りを招く場合があります。これにより、ブート プロセスとスタート画面の表示に遅延が生じる可能性があります。

問題の例

<X>.exe はマネージ コードのスタートアップ プロセスです。

推奨事項

マネージ コードのカテゴリに属する問題については、NET Framework ベースのアプリケーションまたはサービスが Windows のブートに必須である場合には、マネージ コードを使わないようにすることをお勧めします。マネージ コードを使わざるを得ない場合は、.NET Framework ベースのアプリケーションまたはサービスの起動を遅らせて、Windows のブート時に他の必須のアプリケーションまたはサービスのために必要になるリソースとの競合を回避することをお勧めします。

マネージ コードを使うと、パフォーマンスのオーバーヘッドが発生し、各呼び出しのオーバーヘッドが非常に顕著になる可能性があります。問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、オーバーヘッドの原因を特定した後、次のいずれかの手順に従って遅延を軽減します。

アプリケーションまたはサービスによる CPU の過度の使用は、UI の不応答やビデオとサウンドのエラーなどのユーザー エクスペリエンスの低下を招く場合があります。通常の優先度または高い優先度で実行されているプロセス スレッドがプロセッサ リソースの使用のしきい値を超えた場合、評価によってそのプロセスに問題があることを示すフラグが立てられ、遅延が計算されます。単一のプロセスが CPU を過度に使っている場合、システム リソースに対する競合が発生するため、その他のプロセスに遅延が生じる場合があります。生成された問題は、CPU に対する影響に応じて赤または黄に色分けされます。

問題の例

プロセス <X> は、高速スタートアップ再開後のオン/オフ中に CPU を 5.3 秒使っています。

推奨事項

問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、詳しい調査が必要なプロセスの関数を特定します。プロセッサの過度の使用は、一度に複数のスレッドで発生する場合があります。関連する各スレッドについて、WPA で関数コール スタックを確認します。

noteメモ
コール スタックから提供される情報はアクティビティの統計的表現です。この情報の精度は、評価で収集されたサンプルによって異なります。

プロセスは、実行時に記憶域の読み取り、書き込み、またはフラッシュを実行する場合があります。ハード ドライブは単一の共有リソースであるため、記憶域の過度の使用または不要な使用は、評価で特定される、パフォーマンス上の重大な問題を引き起こす可能性があります。

問題の例

プロセス <X>.exe は、高速スタートアップ再開後のオン/オフ中に記憶域から 23 MB のデータを読み取っています。

プロセス <X>.exe は、高速スタートアップ再開後のオン/オフ中に記憶域に 12 回フラッシュしています。

推奨事項

問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、上位のファイル I/O の概要一覧を確認します。この一覧を使って、過度の読み取りまたは書き込みを引き起こしているファイルを見つけます。ディスク フラッシュの場合は、原因を示しているコール スタックを見つけます。

  • ディスクの過度の読み取りまたは書き込みの場合は、プロセスで処理するデータの量を減らすか、読み取りまたは書き込みを遅らせることをお勧めします。

  • 減らすことも遅らせることもできない I/O の場合は、64 ~ 128 KB の I/O サイズを使って、他の完了していない I/O 処理を著しく妨げる可能性がある小さな破壊的ストリームを回避することをお勧めします。

  • ディスク フラッシュは、他のプロセスによって I/O 処理に影響します。ディスク フラッシュは、必要な場合にのみ行ってください。

スレッドが CPU またはディスク リソースを使う場合、アクティビティの時間が長くなります。プロセッサに対する競合は、多くの場合、スレッドのスタベーションまたはプリエンプションという形で表面化します。この問題の分析セクションは、プロセスによって影響されたすべてのスレッドで構成されます。これらのスレッドは、最初にプリエンプションまたはスタベーションの対象になった後、プロセスの完了後に準備されたものです。

スレッドは作業が完了するまで待機します。作業が完了すると、DPC はこの待機中のスレッドを準備します。

待機中のスレッドのスレッド ID とその累積待機時間は問題の詳細に表示されます。問題の詳細を展開し、このスレッドの待機スタックを表示します。

複雑なアクティビティでは、あるスレッドが別のスレッドを待機し、さらにそのスレッドが作業の完了を待機している別のスレッドを待機していることも珍しくありません。DPC、実行中のスレッド、スケジューラ、または別のメカニズムにより、最も新しい待機中のスレッドが準備されます。この最も新しい待機中のスレッドは、もう一度実行され、それを待機しているスレッドを準備します。このプロセスは、最も古い待機中のスレッドが準備され、もう一度実行されるまで、待機中の各スレッドについて繰り返されます。

問題の詳細には、この制御移行のシーケンスが時間順に示されます。次に例を示します。

  • プロセス csrss.exe (600) のスレッド 712 は 374 ミリ秒待機しています

  • プロセス explorer.exe (1836) のスレッド 2724 は 374 ミリ秒待機しています

  • プロセス explorer.exe (1836) のスレッド 4748 は 373 ミリ秒スリープしています

  • タイマー DPC はスレッド 4748 を準備します

  • スレッド 4748 は待機中のスレッド 2724 を準備します

  • スレッド 2724 は待機中のスレッド 712 を準備します

アクティビティの実行中に、同じ制御移行のシーケンスが何度も繰り返される場合があります。待機時間は累積時間です。

待機中のスレッドを示すセンテンスを選び、待機中の関数を含むスタックを表示します。別のスレッドを準備しているスレッドを示すセンテンスを選び、準備中の関数を示すスタックを表示します。

最も内側のスレッド (上の例ではスレッド 4748) の待機中のスタックは、通常、遅延の原因に関するよいヒントになります。待機中の関数の前のスタック フレームとスタックの後のファイル情報を調べると、問題に関するさらに詳しい手掛かりが得られる場合があります。

処理遅延の種類は次のとおりです。

  • CPU の使用

    スレッドが実行されると、分析しているアクティビティの実行中のスレッドの優先順位に関係なく、CPU 時間が消費され、アクティビティの合計時間に加算されます。これにより、アクティビティの完了に遅延が生じる場合があります。

    問題の例

    プロセス <X> による CPU の使用により、高速スタートアップ再開後のエクスプローラーの初期化アクティビティに 125 ミリ秒の遅延が生じています。

    推奨事項

    問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、遅延を引き起こしているスレッドのコール スタックを分析します。

  • スタベーション

    プロセスの実行中に発生するスレッド スタベーションは、アクティビティの完了に遅延を生じさせる可能性があります。スレッドの実行準備が整っているにもかかわらず、そのスレッドの即座の実行が他のスレッドによって妨げられた場合、そのスレッドはスタベーションの対象になります。

    問題の例

    プロセス <X> はスタベーションの対象になりました。このスタベーションにより、高速スタートアップ再開後のエクスプローラーの初期化アクティビティに 50 ミリ秒の遅延が生じています。

    推奨事項

    問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、スタベーションが発生したスレッドとそのスレッドの実行を妨げたスレッドを確認します。問題の詳細と関数コール スタックを調べて、スレッドのスタベーションの原因を特定します。

  • プリエンプション

    実行中のスレッドは、より優先順位の高い別のスレッドが代わりに実行されると、プリエンプションの対象になります。より優先順位の高いスレッドは、他のスレッドのアクティビティの完了に遅延を生じさせる場合があります。

    問題の例

    プロセス <X> はプリエンプションの対象になりました。このプリエンプションにより、高速スタートアップ再開後のエクスプローラーの初期化アクティビティに 150 ミリ秒の遅延が生じています。

    推奨事項

    スレッドのスケジューリングについて詳しくは、スレッドのスケジューリングに関するページをご覧ください。

  • スリープ

    スレッドが使用可能ないずれかの Windows スリープ関数 (SleepEx など) を呼び出すと、そのスレッドはスリープします。これにより、スレッドのアクティビティの完了に遅延が生じます。

    問題の例

    プロセス <X> が 4.0 秒スリープしているため、高速スタートアップ中断後のデバイスの BAR アクティビティに遅延が生じています。

    推奨事項

    問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選びます。予期しないスレッド スリープの原因を関数コール スタックとファイル情報から特定できます。

スレッドが記憶域リソースを使う場合、アクティビティの時間が長くなる可能性があります。複数のスレッドが記憶域の使用で競合する場合、ランダム ディスク シークが発生して遅延がより大きくなります。

記憶域遅延の種類は次のとおりです。

  • 記憶域の読み取りと書き込み

    次の問題には、アクティビティの実行中に読み取り (または書き込み) によって生じたすべての遅延の合計が含まれています。

    問題の例

    高速スタートアップ再開後のエクスプローラーの初期化アクティビティは、記憶域からの 2.3 MB の読み取りにより、1.2 秒遅延しています。

    推奨事項

    問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、遅延の大きいものから順に並べ替えられたスレッドと、このアクティビティの実行中のパフォーマンスを向上させるための推奨事項を確認します。

  • 記憶域のフラッシュ

    次の問題は、アクティビティの遅延を招いたすべてのフラッシュの合計を示しています。

    問題の例

    高速スタートアップ再開後のエクスプローラーの初期化アクティビティは、記憶域への 4 回のフラッシュにより、300 ミリ秒の遅延を招いています。

    推奨事項

    問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、ディスクへのフラッシュを引き起こしている各スレッドのコール スタックを確認して、アクティビティの遅延を招いた関連コードを特定します。

レジストリのフラッシュは、プロセスがレジストリの変更を完了した後に RegFlushKey 関数を明示的に使った場合に発生します。評価では、レジストリのフラッシュが、ユーザーが体感するパフォーマンス上の問題の重要な要因になりうると判断されました。

レジストリを変更するたびに RegFlushKey 関数を使う必要はありません。この関数は、レジストリの変更を直ちにディスクに適用する必要がある場合にのみ使うことをお勧めします。

レジストリのフラッシュの問題には次の 2 種類があります。

  • レジストリを 1 回以上フラッシュしていると特定されたプロセス。これらの問題は重要度高として分類されます。

    問題の例

    1 つ以上のプロセスが、高速スタートアップ再開後のオン/オフ中にレジストリ ハイブをフラッシュしています。

    推奨事項

    問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、この動作を引き起こしているプロレスの各スレッドを調べます。WPA には、アクティビティの発生場所である、関連する関数コール スタックが表示されます。

  • アクティビティの実行中にレジストリをフラッシュし、アクティビティの完了に遅延を生じさせているプロセス。

    問題の例

    プロセス <X> は、レジストリ ハイブを 405 ミリ秒フラッシュして、高速スタートアップ中断後のサブスクライバー プロファイルの呼び出しアクティビティに遅延を生じさせています。

    推奨事項

    問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、プロセスの各スレッドの関数コール スタックを分析します。

評価では、通常、アクティビティごとに複数の問題が報告されます。時間説明問題は、複数の問題によって説明される合計時間と、問題によって説明されないアクティビティの部分を示します。アクティビティが多数の短時間の問題で構成されていて、各問題が分析しきい値を下回る場合、それらの問題は個別の問題として報告されません。この設計は、最も影響の大きい問題を明らかにして、それらの問題を集中的に調べるのに役立ちます。

アクティビティ時間のしきい値

このしきい値は、アクティビティ全体にかかると予想される時間です。時間説明問題は、測定されたアクティビティ時間と評価で設定されたアクティビティ時間のしきい値に基づいて報告されます。

最小分析しきい値

問題は、その影響が分析しきい値より大きい場合にのみ報告されます。

 

種類 1:

アクティビティ時間がアクティビティ時間のしきい値を超えています。アクティビティにはさらに、分析しきい値を超える問題が含まれています。

問題の例

要約: 高速スタートアップ シャットダウン後の Example.exe の処理に 6.5 秒かかっており、2 秒のしきい値を超えています。評価では、このアクティビティに影響する他の問題が特定されました。これらの問題は、このアクティビティの時間を完全に説明します。

種類 2:

アクティビティ時間がアクティビティ時間のしきい値を超えています。アクティビティにはさらに、分析しきい値より大きい問題と分析しきい値より小さい問題が混在しています。

問題の例

要約: 高速スタートアップ シャットダウン後の Example.exe の処理に 6.5 秒かかっており、2 秒のしきい値を超えています。評価では、このアクティビティに影響する他の問題が特定されました。これらの問題は、このアクティビティの時間のうちの 5.9 秒を占めます。残りの 500 ミリ秒は、150 ミリ秒の最小分析しきい値を超えない問題で構成されます。

種類 3:

アクティビティ時間がアクティビティ時間のしきい値を超えています。このアクティビティに影響する問題はすべて、分析しきい値より小さいため表示されません。

問題の例

要約: 高速スタートアップ シャットダウン後の Example.exe の処理に 6.5 秒かかっており、2 秒のしきい値を超えています。評価では、このアクティビティに影響する他の問題が特定されました。このアクティビティに影響するこれらの問題は、200 ミリ秒の最小分析しきい値を超えないため省略されます。

種類 4:

アクティビティ時間が、評価のログ記録がアクティブになっていた時間を超えています。ただし、ログ記録がアクティブになっていたときにアクティビティで遅延が発生していたことがわかりました。これらの遅延は CPU またはディスクの競合によって生じたものです。

問題の例

要約: 高速スタートアップ再開後のオン/オフは、評価のログ記録の終了後に完了したため、時間が不明です。評価のログ記録がアクティブになっている間の、このアクティビティのうちの 4 秒は、CPU の競合によるものです。

推奨事項

問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、この問題を Windows Performance Analyzer で表示します。報告時のこのアクティビティの動作を詳しく調べて、遅延の根本原因を把握します。次の手順に従って、関連する問題を表示します。

  1. フィルター オプションを使って、問題のタイトルで挙げられている、アクティビティに関連する問題をすべて表示します。

  2. 問題の完全な一覧を表示する場合は、プラス記号 (+) を選び、フィルター オプションの一覧から [Activity] (アクティビティ) を選択します。

  3. [Issue Activity] (問題があるアクティビティ) フィルター ボックスに、アクティビティの名前を入力します。名前付きのアクティビティの一覧から特定のアクティビティを選びます。この時間説明の要約問題に関連する問題のフィルター処理された一覧が表示されます。

関連する問題を見つける方法について詳しくは、「問題をグループ化、フィルター処理、検索する」をご覧ください。

評価の中には、シンボルへのアクセスが必要なものがあります。それらの評価では、シンボル サーバーが使用できないと、誤った情報または不完全な情報が返されることがあります。多くの場合は、インターネットに接続して Microsoft パブリック シンボル サーバーにアクセスすると、この依存関係が満たされます。それ以外の場合は、プライベート シンボル サーバーをセットアップするか、ローカル コンピューターにシンボルをインストールします。

使用されるシンボルには次の種類があります。

  • 重要なシンボル: このシンボルが使用できない場合、評価では、収集したデータの完全な分析を完了できません。この場合、問題のテキストには、評価の分析中に使用できる構成済みのシンボルがないモジュールの特定のモジュール名が含まれています。

  • サード パーティ コンポーネントのシンボル: このシンボルが使用できない場合、評価は正常に完了しますが、結果に誤りがあるか、結果が不完全になる可能性があります。生成された問題の詳細を Windows Performance Analyzer で表示すると、不完全な情報または誤った情報が含まれている場合があります。たとえば、[Issue Details] セクションに表示されるコール スタックに、特定のコンポーネントの関数名が含まれていない場合があります。

  • カーネル シンボル: Memory Footprint (メモリ使用量) 評価では、その分析にカーネル シンボルが使われます。構成済みのカーネル シンボルが見つからない場合、評価が完了した後に、シンボルが存在しないことを示す問題が結果に作成されます。

推奨事項

重要なシンボルの欠落: コンピューターが Microsoft パブリック シンボル サーバーにアクセスできるようにします。この問題は、正しいシンボルの場所を示すか、ローカル ドライブにシンボルをインストールすることによって解決できます。

Microsoft 以外のコンポーネントのシンボルの欠落: この欠落シンボルは、ユーザー独自のコンポーネントか、別のパートナーが所有するコンポーネントのシンボルである場合があります。パートナーと協力して、シンボルがないコンポーネントのサード パーティー シンボルを取得し、コンピューター上に正しいシンボル パスを構成してから、評価をもう一度実行します。

noteメモ
正しいシンボル パスの設定方法について詳しくは、Windows Assessment Services のトラブルシューティングに関するページをご覧ください。

エコシステムでコンポーネントのシンボルをパートナーと共有すると、信頼性が高く効率的なバグの選別と分析プロセスを通じてコラボレーションを向上させることができます。パートナーがこのようなコラボレーション関係を定めることをお勧めします。これにより、システム コンポーネントで報告された問題の根本原因を見つけるために必要なリソースを確実に入手できるようになります。

Long-running Deferred Procedure Calls (DPCs) (長時間実行される遅延プロシージャ呼び出し (DPC)) と Interrupt Service Routines (ISRs) (割り込みサービス ルーチン (ISR)) は、アクティビティの時間を長くする遅延を招く場合があります。このような待ち時間は、ユーザーによってパフォーマンス上の問題と見なされる可能性があります。

DPC (および ISR) の問題は、通常、DPC (または ISR) に関連する作業に精通したエンジニアによる詳しい分析を必要とします。この問題を詳しく分析する方法は、遅延またはリソース使用の原因になっている DPC の種類によって異なります。

アクティビティに遅延を生じさせている DPC

スレッドは作業が完了するまで待機します。作業が完了すると、DPC はこの待機中のスレッドを準備します。

待機中のスレッドのスレッド ID とその累積待機時間は問題の詳細に表示されます。問題の詳細を展開し、このスレッドの待機スタックを表示します。

複雑なアクティビティでは、あるスレッドが別のスレッドを待機し、さらにそのスレッドが作業の完了を待機している別のスレッドを待機していることも珍しくありません。DPC、実行中のスレッド、スケジューラ、または別のメカニズムにより、最も新しい待機中のスレッドが準備されます。この最も新しい待機中のスレッドは、もう一度実行され、それを待機しているスレッドを準備します。このプロセスは、最も古い待機中のスレッドが準備され、もう一度実行されるまで、待機中の各スレッドについて繰り返されます。

問題の詳細には、この制御移行のシーケンスが時間順に示されます。次に例を示します。

  • プロセス csrss.exe (600) のスレッド 712 は 374 ミリ秒待機しています

  • プロセス explorer.exe (1836) のスレッド 2724 は 374 ミリ秒待機しています

  • プロセス explorer.exe (1836) のスレッド 4748 は 373 ミリ秒スリープしています

  • タイマー DPC はスレッド 4748 を準備します

  • スレッド 4748 は待機中のスレッド 2724 を準備します

  • スレッド 2724 は待機中のスレッド 712 を準備します

アクティビティの実行中に、同じ制御移行のシーケンスが何度も繰り返される場合があります。待機時間は累積時間です。

待機中のスレッドを示すセンテンスを選び、待機中の関数を含むスタックを表示します。別のスレッドを準備しているスレッドを示すセンテンスを選び、準備中の関数を示すスタックを表示します。

最も内側のスレッド (上の例ではスレッド 4748) の待機中のスタックは、通常、遅延の原因に関するよいヒントになります。待機中の関数の前のスタック フレームとスタックの後のファイル情報を調べると、問題に関するさらに詳しい手掛かりが得られる場合があります。

DPC 関連の問題は、次の例に示すように 3 つの種類に分類できます。

問題の例

ネットワーク DPC: ネットワークの使用により、高速スタートアップ全体の再開アクティビティに 4.0 秒の遅延が生じています。

タイマー DPC: 高速スタートアップ シャットダウン後の Example.exe の処理アクティビティに 5.3 秒の遅延が生じています。

高速スタートアップ中断後のデバイスの BAR アクティビティは、待機中のスレッドにより 2.6 秒の遅延を招いています。DPC Example.sys はこの待機中のスレッドを準備します。

アクティビティの実行中に発生する DPC または ISR

この種類の問題は、シナリオのパフォーマンスに影響する可能性がある、時間のかかる ISR または DPC に焦点を当てます。この問題は、この ISR/DPC アクティビティの遅延に結び付きません。

[Issue Details] には、ISR/DPC によってプリエンプションの対象になった各スレッドの一覧が表示されます。この一覧は、ほぼプリエンプション時間の降順になっています。一覧のスレッドを展開し、ISR/DPC がプリエンプションの対象にしたスレッドのアクティビティの概要を示すスタックを表示します。

問題の例

DPC は、メディア エンジンの有効期間中に 1.0 ミリ秒のしきい値を 5 回超過しています。この DPC の 5 つのインスタンスの合計実行時間は 3.7 秒です

noteメモ
コール スタックで提供される情報は、問題のアクティビティ (1 ミリ秒ごとに 1 回サンプリングされたもの) の統計的表現です。この情報の精度は、評価で収集されたサンプルによって異なります。

要約問題には、評価で特定された、特定のパフォーマンス動作を示す問題の概要が含まれており、これらの問題がシステムに及ぼす広範な影響を視覚化するのに役立ちます。次に、評価結果で報告される可能性がある 3 種類の要約問題を示します。

アクティビティのディスク使用量の要約

ディスク使用量は、アクティビティ実行中の記憶域の読み取り、書き込み、フラッシュという形で記憶域 I/O を実行するすべてのプロセスのディスク使用量を合計したものです。この要約では、評価結果で既に報告されている記憶域使用の問題に加えて、ディスク使用量に関する追加の洞察が提供されます。

WPA の問題の詳細には、ファイル イメージの情報とシナリオのパフォーマンスを向上させるための推奨事項が含まれています。分析ではさらに、ディスクを使っているプロセスの一覧が影響の小さいものから順に表示されます。

問題の例

要約: 高速スタートアップ全体の再開は、275 MB の読み書きを実行しています。

要約: 高速スタートアップ全体の再開は、275 MB の読み書きを実行し、記憶域に 82 回フラッシュしています。

noteメモ
[Results View] (結果ビュー) ページの [Category] (カテゴリ) で問題をグループ化した場合、この要約問題は、[Storage Use] (記憶域の使用) グループで関連する問題の上に表示されます。

プロセッサの使用の要約

プロセッサの使用の要約問題では、評価で既に特定された類似の問題が集約され、アクティビティの実行中に発生した影響の小さい問題と一緒に報告されます。この要約では、関連するすべてのプロセッサ使用の問題を幅広い観点で捕らえることができます。

この要約問題では、プロセスごとの詳細が影響の小さいものから順に表示されます。各プロセスについて、プロセス内のすべてのスレッドのアクティビティを結合する関数コール スタックと、CPU およびファイル イメージの情報が表示されます。個別の問題 (存在する場合) には、該当する各スレッドのより詳しい関数コール スタックが含まれています。

問題の例

要約: プロセスは、高速スタートアップ全体の再開中に 26.9 秒の CPU 時間を使っています。

noteメモ
[Results View] (結果ビュー) ページの [Category] (カテゴリ) で問題をグループ化した場合、この要約問題は、[Processor Use] (プロセッサの使用) グループで関連する問題の上に表示されます。

プロセッサとディスクの競合の要約

この問題では、プロセッサとディスク リソースに対する競合によるアクティビティ遅延の要約が示されます。競合するアクティビティは、シナリオを完了するための必須のタスクの妨げになります。問題の詳細には、関連するさまざまな下位アクティビティの一覧が競合の量の少ないものから順に表示されます。

関数コール スタックやスレッドごとのファイル情報などのその他の情報は、評価で報告された個別の問題内に表示されます。

問題の例

要約: 高速スタートアップ全体の中断に 29.5 秒かかっています。この時間のうち、300 ミリ秒は CPU の競合によるものです。

[Results View] (結果ビュー) ページの [Category] (カテゴリ) で問題をグループ化した場合、この概要問題は、[Processor delays] (プロセッサの遅延) グループで関連する問題の上に表示されます。

推奨事項

要約問題は、最も影響の大きい問題を集中的に調べるのに役立ちます。多くの場合、要約の問題に目を通すだけで、これらの問題が及ぼす広範な影響を理解するための手掛かりを得ることができます。

要約問題から十分なメリットを得るには、Windows Assessment Console で次の 2 つの条件のうちの 1 つを使って問題の一覧をグループ化します。

  • [Category] (カテゴリ)。これは要約問題の推奨される既定のビューです。このビューでは、要約問題は、特定の種類の同一/比較可能な問題と一緒にグループ化されます。

  • [Test case] (テスト ケース)。このビューでは、要約問題は、特定のアクティビティまたはテスト ケースに適用される問題のサブセットと一緒にグループ化されます。

Warning警告
コール スタックで提供される情報は、問題のアクティビティ (1 ミリ秒ごとに 1 回サンプリングされたもの) の統計的表現です。この情報の精度は、評価で収集されたサンプルによって異なります。

評価では、分析用のデータの収集に Windows イベント トレーシング (ETW) が使われます。このログ記録では、システム リソースが使われます。この問題カテゴリは、評価の実行中に発生する記憶域アクティビティを説明します。

問題の例

評価は、高速スタートアップ再開後のオン/オフ中に 39 MB のログを記憶域に記録しています。

推奨事項

問題の [Further analysis] (詳しい分析) 領域で、[WPA in-depth analysis] リンクを選び、ログ ファイルへの記憶域書き込みに関する情報を見つけます。

関連項目

表示:
© 2014 Microsoft