1

Windows (7) で CPU 周波数を決定する信頼できる方法を見つけるのに少し苦労しています。

Perfmon を使ってみたのですが、最大サンプリング周波数が 1 Hz です。また、カーネル レベルのアクセス権がないため、マシン固有のレジスタを使用できません。プロセッサの最大周波数を決定できる C 関数は多数ありますが、SpeedStep と Turbo Boost を使用すると、これらの方法が信頼できなくなります。 t は可変プロセッサ周波数を反映します。

CPU-Z などのプログラムが CPU 周波数を直接測定できることは知っていますが、実際にどのように測定しているのかわかりません。どんな助けでも大歓迎です!

編集: ACPI を使用して CPU の P-States を監視する可能性も検討しています...これはオプションですか?

Edit2:現在、マシン固有のレジスタの使用を検討しています ( http://www.intel.com/content/dam/doc/manual/64-ia-32-architectures-software-developer-vol-3b-part -2-manual.pdf ) この情報を取得するには... これは解決策としてはやり過ぎかもしれないと感じていますが、現時点で私が得た最良の手がかりです。

4

2 に答える 2

1

次のリンクで概説されているように、aperf と mperf rato を分析する Windows ドライバーを介して CPU 周波数を特定することができました

于 2012-09-07T19:48:45.703 に答える
0

このリンクを確認してください。

  • このリンクでは、アプリケーションを含む 1 つの単純な WDM IOCTLドライバーが適切な説明とともに提供されます。このコードを使用して周波数を見つけることができました。周波数は、MSR (モデル固有レジスタ) APERF および MPERF 値を使用して計算されます。
于 2016-10-25T05:09:23.110 に答える