4

私はここで本当に困惑しています。AMD のグラフィック カードのさまざまな温度でさまざまなイベントを実行するアプリケーションを作成したいと考えています。

私がそのようなアプリケーションを作成したい理由は、GPU 用のアプリケーションが見つからなかったからです。2 つ目は、非常に高い温度に達してカードを揚げないようにするためです。

ただし、(amd/intel/nvidia に接続していない) 人々が、あらゆる種類の温度を監視するアプリケーションを作成する方法がわかりません。

それで、それはどのように起こりますか?私が知らないいくつかのAPIか何か?

4

2 に答える 2

6

少しグーグルした後、私はこれを見つけました:

これは実際にはベンダー固有のものだと思います。おそらく、マザーボードまたはビデオ ドライバーと直接インターフェイスし、どの IOCTL が温度を要求するコードを表しているかを知る必要があります。この目的のために、マザーボード ドライバを一度リバース エンジニアリングしました。思ったほど難しくはありません。製造元のマザーボード/BIOS ユーティリティをダウンロードし、そのアプリがユーザーに温度を表示する必要があるときに呼び出される関数をフックしてみてください。次に、Windows の DeviceIoControl() または Linux の ioctl() への呼び出しを監視し、入力/出力が何であるかを確認します。

これが最善の策かもしれません。ここでこの情報を見つけました:
http://www.gamedev.net/topic/557599-get-gpucpu-temperature/

編集:
これも見つかりました:
http://msdn.microsoft.com/en-us/library/aa389762%28v=VS.85%29.aspx
http://msdn.microsoft.com/en-us/library/aa394493 %28VS.85%29.aspx

それが役に立てば幸い。

于 2011-05-01T13:35:35.730 に答える
1

GPU-Zなどの既存の GPU 温度監視プログラムのいずれかを使用して、継続的な監視用に構成し、ログ エントリを読み取ることができます。

RivaTunerは別の GPU 監視プログラムで、他のプログラムがリアルタイムでデータを取得できるようにする共有メモリ インターフェイスを備えていますが、nVidia に重点を置いています。アクションが「GPU クロック速度を下げる」でない限り、おそらく ATI カードで十分に機能します。

于 2011-05-01T13:57:29.847 に答える