前回。
これが大体2年前。2年経ったのでちょっとパワーアップするか~って事で、今度はRadeonに買い替えました。
PowerColorのAXRX 6800 16GBD6-M2DHCです。
現在はRX7000シリーズが販売されているので、今更RX6000シリーズかよ!って言われそうですが、RTX2080からの乗り換えなのでいいんです。お値段は5万円ぐらいでしたが、Type-Cが欲しいのでリファレンスモデルを選ばざるを得ないわけで……まぁ、仕方ないね。
SteamVRを立ち上げるときに一時的にコイル鳴きがしてるようですが……。その時の数秒間だけなのでまぁええねん。ヨシッ!
リミッターを掛けた運用
トリプルモニタでアイドル状態でも45Wぐらい使っていたRTX2080とは異なり、低負荷時は5~10Wぐらいで動いてくれるようです。ウェブブラウズしてるぐらいの使い方をしているときのシステム全体の消費電力は30~40Wぐらい減りましたね、凄い。
UPSのモニターによると、システム全体で150Wぐらい使っていたのが、110Wとなっているので何か繋ぎ忘れたかな?と思ってしまいました。素晴らしい。
とはいえ、ゲームをするときにガッツリ持って行かれると嫌なので、こちらのサイトを参考に、電力・電圧の制限をしたと周波数を落としました。
- 電力制限 -8%
- 電圧制限 1025mV → 974mV(-5%)
- 最大周波数 2105MHz → 2000MHz
原神をWQHD最高設定で遊ぶぐらいであれば全体で200Wに収まりますね。電力制限 -8%だけの状態でVRChatを遊んだら、システム全体の消費電力は250~350Wと高かったのですが、電圧と周波数の制限を掛けたところ、200Wちょっとで済むようになりました。(※Quest 2向けの解像度設定の場合)
色々と制限をしているのでパフォーマンスは落ちますが、RTX2080よりも性能は上なのでどうということはありません。
ALVR動作OK、VRChatも大丈夫
RadeonはVRChatのシェーダーがおかしくなるだとか、ハードウェアエンコーダーの実装が怪しくてALVRでHEVC(H.265)を使うとクラッシュするだとかの情報があったので、今はどうかなと少々不安でしたがどれも大丈夫そうです。VRAM16GBなのが美味しいやつ。
おまじない
Radeonのドライバは「Adrenalin 23.3.1 (WHQL Recommended)」をインストールしました。特別な理由がない限り最新を使っておいた方が良いとの考えから最新版を利用しています。23.2.2でエンコードビットレートが100Mbpsに制限される不具合は修正されていますし、性能の向上や消費電力の低下などのメリットもあります。
「AMD Software:Adrenaline Edition」から、幾つかの設定をしておきます。Radeonは初期設定のまま使うともれなく事故るとのこと。(マジで?)
ひとまず、テッセレーションモードをアプリケーション設定に変更して、Radeon Chillを無効にしました。FreeSyncも怪しい気がしたのでオフにしてあります。
現在は初期設定で大丈夫です。むしろ下手に触らない方が良さそうにも思えます。
ALVRの動作テスト
ALVRはNightlyビルドの「v20.0.0-dev07+nightly.2023.03.15」を使用しています。こちらはドライバほどのリスクはないとの考えから、安定版ではなくNightlyビルドを使用しました。コミットを追っかけるのは面倒なので確認していませんが、新しい機能への対応や不具合の修正に期待しています。
HEVC(H.265)になっているのを確認してQuest 2と接続すると、特に問題なく動作しました。VRChatも動作が引っかかるだとか映像が乱れるといったこともありません。試しにH.264を選ぶと著しく品質が低下しましたので、設定はHEVC一択です。10bitカラーでストリーミングすることでカラーバンディングを減らす「Reduce color banding」も動作するはずなのでチェックしておきます。
画質と遅延については久しぶりすぎてちょっと分かんないです……。最大ビットレートをそこそこ上げてストリーミングを実行しているときのレイテンシーなどは以下の通りです。総レイテンシー70msあたりをうろついてる感じでした。
VRそのものはフレームタイミンググラフの11ms(90Hz)には余裕で収まっており、Ryzen 7 5800X3Dのパワーもあって90FPSをキープするのは楽勝そうです。足を引っ張る部分があるとすれば、ALVRが担当する部分となりますが、かなり昔にRTX2080で実行したときに総レイテンシー64msあたりだった記録があったので、多分大きな差は無いです。パケロスもありませんし。
AMFエンコーダーの設定をしてみる
映像の詳細オプションを開くとエンコーダーの設定が変更できます。
エンコーダーのクオリティ設定があったので、まずはそこを弄ってみました。クオリティ設定をBalancedにしたところ、総レイテンシーが100msを超えるようになりました。Qualityにすると映像が所々乱れるようになって追いつかないようです。初期設定のSpeedのままか、動き回らないのであればBalancedにしておくのが無難そうです。
次に、AMF(Advanced Media Framework)の設定です。amfControlsの部分ですね。(Radeonなのですぐ上にあるNVENCの欄は弄っても意味は無いはずです。)
「VBAQ(Variance Based Adaptive Quantization)」を有効にすると、見た目が気になりがちな部分をいい感じにビット配分してくれる……らしいです。グラデーションになっている部分や、単色で塗りつぶされているような所など、潰れた感じになっていたのがだいぶ改善されたように思います。
「Pre-Processor component」はRX5000以上で利用可能だそうで、ビットコストが高くて人間の視覚的に重要ではない部分を削ってくれるようです。Strengthはフィルタリングの強度で、Sensitivityはエッジに対する感度の設定とのこと。この前処理が重そうなら切った方が良いかもしれませんが。
ALVR Nightlyビルド追記
ALVRをv20.0.0-dev08+nightly.2023.04.03に更新してみました。ダッシュボードが新しくなっており、なにやら大幅に変更されているようです。
解像度を片目1832×1920@80Hzとし、エンコーダーのクオリティ設定をQualityにその他VBAQやPreProcessorの設定を有効にしてみたところ、レイテンシーに大きな変化はなく、画質も改善されていました。
ビットレートを上げただけではぼんやりとしていて変化がなかったのですが、この品質ならありかも。
Type-Cウレシイヤッター(2回目)
液タブをUSB Type-Cケーブル1本で繋ぎたいので無いと困るやつ!今やType-Cコネクタが付いてるグラボはRadeonだけになってしまったので、AMDは今後もリファレンスモデルにType-Cを搭載し続けて欲しいですね。