locked
パフォーマンスでのCPU監視について RRS feed

  • 質問

  • はじめまして。
    現在、MailサーバをSolarisで運用しており、CPUの負荷をsarコマンドから取得して監視しています。
    ですが、今回Windows serverでCPUの負荷を監視することになり、パフォーマンスのカウンタログから

    sarコマンドと同様のCPU情報を取得できないか調べていたのですが、
    %sys %usrに関しては%Privileged Timeと%User Timeで情報を取得することが

    可能であることはわかったのですが

     

    %iowait:CPUがアイドル状態で入出力完了を待っている時間の割合

     

    を取得できるカウンタがどれにあたるのでしょうか?

     

    ご教授宜しくお願い致します。
    2008年8月12日 7:04

回答

  • Linuxの%iowaitの説明は下記にあり、「CPU総時間当たりのI/O待ち時間の割合(%)」

    また、%idleは「CPU総時間当たりのアイドル時間の割合(%)」とあります。

    http://www.thinkit.co.jp/free/tech/23/4/

     

    「I/O待ち時間の割合」と「アイドル時間の割合」の用語の厳密な違いはLinuxを使ったことがない私には、

    「I/O待ち時間の割合」≒「アイドル状態で入出力完了を待っている時間の割合」と解釈します。

     

    また、下記に「アイドルタイム」の用語の解説があります。

    http://www.sophia-it.com/content/%E3%82%A2%E3%82%A4%E3%83%89%E3%83%AB%E3%82%BF%E3%82%A4%E3%83%A0

    >次のの作業指示やデータを待つための時間のこと

     

    また、下記によると

    http://technet.microsoft.com/ja-jp/library/aa998175(EXCHG.80).aspx

    >% Processor Time パフォーマンス カウンタは、プロセッサがアイドルではないスレッドを実行している時間の割合

    とあります。

     

    100%-%Processor Time≒「プロセッサがアイドル状態である時間の割合」と解釈します。

     

    Perfmon.msc  を叩いてProcessorオブジェクトの中で、「100%-%Processor Time」に該当するものは「%Idle Time」と考えられます。

    実際に、Perfmon.msc を叩きProcessorオブジェクトの中の%Idle Time カウンタを追加してみれば、検証できます。 

    2008年8月16日 5:50

すべての返信

  • dai7suke さん、こんにちは。

    フォーラムオペレーターの鈴木裕子です

     

    Solaris のことはほとんどわからないので外しているかもしれないのですが、
    CPU のアイドル状態の割合をみるカウンタということでしたら、「% Idle Time 」ではいかがでしょうか?

     

    オブジェクトとしては「Processor」になります。
    カウンタの追加の画面で [説明] から確認してみて下さい。

     

    また、こちらの技術情報にも記載があります(英語ですが・・・)。

     

    Processor Object

    http://technet.microsoft.com/en-us/library/cc786359.aspx

     

    また、“間接的に”ですが、参考になりそうな KB もありましたので、ご参考までに。

     

    Windows 2000、Windows Server 2003、

    または Windows XP のタスク マネージャで CPU 使用率が正しく計算されないことがある
    http://support.microsoft.com/kb/873289/ja

     

    ただ、私は実際の運用で活用しているわけではないので、
    どなたか詳しい方いらっしゃいましたら、コメントいただけるとありがたいです。
    よろしくおねがいします!

    2008年8月15日 9:46
  • Linuxの%iowaitの説明は下記にあり、「CPU総時間当たりのI/O待ち時間の割合(%)」

    また、%idleは「CPU総時間当たりのアイドル時間の割合(%)」とあります。

    http://www.thinkit.co.jp/free/tech/23/4/

     

    「I/O待ち時間の割合」と「アイドル時間の割合」の用語の厳密な違いはLinuxを使ったことがない私には、

    「I/O待ち時間の割合」≒「アイドル状態で入出力完了を待っている時間の割合」と解釈します。

     

    また、下記に「アイドルタイム」の用語の解説があります。

    http://www.sophia-it.com/content/%E3%82%A2%E3%82%A4%E3%83%89%E3%83%AB%E3%82%BF%E3%82%A4%E3%83%A0

    >次のの作業指示やデータを待つための時間のこと

     

    また、下記によると

    http://technet.microsoft.com/ja-jp/library/aa998175(EXCHG.80).aspx

    >% Processor Time パフォーマンス カウンタは、プロセッサがアイドルではないスレッドを実行している時間の割合

    とあります。

     

    100%-%Processor Time≒「プロセッサがアイドル状態である時間の割合」と解釈します。

     

    Perfmon.msc  を叩いてProcessorオブジェクトの中で、「100%-%Processor Time」に該当するものは「%Idle Time」と考えられます。

    実際に、Perfmon.msc を叩きProcessorオブジェクトの中の%Idle Time カウンタを追加してみれば、検証できます。 

    2008年8月16日 5:50
  • こんにちは、フォーラムオペレータ大久保です。

     

    dai7suke さん、フォーラムのご利用ありがとうございます!

    弊社 鈴木 と、試験問題作成委員会 さんのアドバイス、参考になりましたでしょうか?

     

    試験問題作成委員会 さんの説明は明快でわかりやすいと思いますので、「回答済み」チェックをつけさせていただきました。

    試験問題作成委員会 さん、いつもありがとうございます!

     

    それでは、また何かありましたらフォーラムをご利用くださいませ

     

    2008年9月5日 6:54