GPUの現在の負荷を取得する標準的な方法はありますか?CPU%を表示するタスクマネージャーに似たものを探しています。GPU-Zなどのユーティリティはこの値を示しますが、これをどのように取得するかはわかりません。現時点で特にAMDグラフィックカードに興味があります。ポインタがあれば役に立ちます。
それを行うためのクリーンなAPI方法がない場合、この情報を取得するために出力をキャプチャできるプログラムはありますか?
AMD/ATI カードについては、GPU PerfStudio を確認してください。 http://developer.amd.com/gpu/Pages/default.aspx
NVidia カードについては、PerfHUD を参照してください。 http://developer.nvidia.com/object/nvperfhud_home.html
MS の DirectX SDK には、これらのツールと部分的に重複する Pix と呼ばれるより一般的なツールもあります。
私の知る限り、GPU の %-use 数値のような単純なものを取得する方法はそれほど単純ではないため、方法はありません。ただし、これらのツールは、GPU で何が起こっているかをデバッグおよびプロファイリングするのに役立ちます。ATI と NVidia はどちらも、特定の種類の GPU ボトルネックを見つけて修正するための推奨手順を記載した公開ドキュメントを提供しています。
nvidia-smi -a を試してください。nvidia ドライバーが同梱されています。現在の GPU コアとメモリ使用率の情報を提供します。
nvidia --help で完全なヘルプ情報が表示されます。
この種の情報は、常に PerformanceCounter または WMI を介して提供されます。Perfmon.exe を使用するか、WmiCodeCreator をダウンロードして、カードの製造元が提供したものを確認してください。言うまでもなく、この種のコードはあるマシンから別のマシンにうまく移植できません。