• ベストアンサー

高分解能パフォーマンスカウンタ??

WIN32 APIのQueryPerformanceFrequecyで周波数を取得できるカウンタってどんなカウンタなんでしょうか? MSDNには高分解能パフォーマンスカウンタって書いてますけどよくわかりません。 ネットで調べてもOSのカウンタ?H/Wカウンタ?と諸説です。 ちなみにXPだとCPUクロックっぽい値が出て来ました。 H/WにもOSにもあまり(というかほとんど)詳しくないですが、教えて頂けたら嬉しいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • nitscape
  • ベストアンサー率30% (275/909)
回答No.1

これは「カウンタの周波数」です。CPUクロックとは無関係とは言い切ることはできませんが、CPUクロックの値ではありません。 QueryPerformanceCounterは「カウンタ」になります。 このカウンタは例えば何かの処理をするときに処理時間を知りたいときに使うものです。 nStart = QueryPerformanceCounterの値 処理 nEnd = QueryPerformanceCounterの値 処理カウント=nEnd - nStart という処理で処理に要したカウントを得ることができます。このときにQueryPerformanceFrequencyの周波数によって処理に要した時間を計算することができます。 QueryPerformanceCounterはOS上でできるだけ細かい時間間隔のカウンタになります。そのため結局のところCPUクロックと同じような値になります(ちなみにMSDNには「count might be the cycle rate of the processor clock.」とあります)。

take-mon
質問者

お礼

申し訳ありません。 お礼が非常に遅くなりました。 有難うございます。