Afterburnerとゲームの相性が悪くて、どうにかならんかと調査。パワーリミットをかけているだけなので、その部分だけを別の方法でできないかなぁって感じで調査したところ、GeForceのドライバに標準で入っているnvidia-smi.exeを使用するとできるとのことだった。
設定変更するには管理者権限が必要なので、ターミナルを管理者権限付きで開いて、以下のコマンドを実行。
真ん中あたりにある「WDDM」がパワーリミット。うちのGeForceRTX3080は320Wになっている。Afterburnerで90%に設定していたので、パワーリミットを288Wに設定。
毎回手動で実行するのは面倒なので、ログイン時に実行するようにタスクスケジューラに登録しておく。
- バッチファイルを作成
GeForcePowerLimit.batの中はこんな感じ(適当なテキストエディタで作成)
@ECHO OFF
C:\Windows\System32\nvidia-smi.exe -pl 288 - タスクスケジューラ起動
タスクバーの検索ボタンから「タスクスケジューラ」を検索すると見つかる
- 操作にある「タスクの作成...」を実行
プロパティ画面からいろいろ設定
トリガーは新規で「ログオン時」「任意のユーザーのログオン時」で作成
名前:適当に(うちは「Geforce PowerLimit」)
セキュリティ オプション:
「ユーザがログオンしているときにのみ実行する」
「最上位の権限で実行する」
構成:Windows 10
操作は「プログラムの開始」で作成したバッチファイルを指定して「OK」で完了
- 作成したタスクを手動で動かして問題ないことを確認
作成したタスクを右クリックして表示される「実行する」で動くことを確認しておくと安心。
事前にタスクスケジューラの「操作」にある「すべてのタスク履歴を有効にする」を行っておくと実行結果が履歴に残ります。
一応、手動で動かすことも考えて、管理者権限で起動できるようにショートカットを作成しておく。バッチファイルと同じフォルダにショートカットを作成してプロパティを開き、「ショートカット」の「詳細設定」を開く
管理者として実行をチェックして「OK」で戻る。
プロパティ画面も「OK」で閉じる。