もう全部Lossless Scalingで(ry 生成遅延計測編

October 01, 2024

Post
Share
Line
Hatena bookmark

タグ:AFMF, Lossless Scaling, フレーム生成

目次 +

thumb

※2024/10/10追記 RX6800でのAFMF2のボーダーレス動作は、AMDが想定していない可能性があるため加筆修正

※2024/10/02追記 何度も修正しながら書いたら削除ミス、修正忘れが多数残っていたためそれらを修正

まえがき

~前回のあらすじ~

ネタ切れじゃ…

以上。

ネタまだありました。


結局生成遅延ってどのくらい?

過去記事でロスレスはAFMF2より若干遅延するとお伝えしてきましたが、正確な計測方法がわからず体感でのお伝えとなっていました。

どうにかならんかなと思っていたところ、MSK Gamingという方のこちらの動画にこんなものが。

フレーム生成をメインに解説している方なのですが、他の動画でも通常用途より少し踏み込んだ内容を詳しく語られています。 日本語でこの内容の濃さは他では見当たらないです。

ぶっちゃけこのサイトより有用です。

本題に戻りますが、上記動画でも紹介されているFrame Latency Meterであれば、フレーム生成時の遅延を計測できるとのこと。 今年の7月下旬にAMD公式から配布されたようです。まったく知らなんだ…

こちらで測れるのはあくまでソフトウェア上での数値で、マウスクリックやモニター表示などのハードウェア要因の遅延は計測できないとのこと。 フレーム生成の遅延が知りたいだけならば問題はないでしょう。

上記動画はRTX4060Tiでの検証結果だったので、私もRX6800でやってみます。


ご注意

AFMF2とロスレスの平均時間のグラフは、今回のグラフでは比較できていません。 少なくとも実際のプレイ中に、Titanfall 2でAFMF2がロスレスの2倍生成より遅延していると思ったことはありません。

今回のAFMF2の計測はすべてボーダーレスフルスクリーンで行っていますが、AMD公式によるとRX6000シリーズは排他フルスクリーンのみサポートとのことです。 この点が正確な比較にならなかった理由かもしれません。

とはいえAFMF2は見た限りまともに測れているように見えます。 ロスレス側の計測がどうしても安定しなかったので、そちらが原因の可能性もあります。 flm.exe実行中だけベースfpsが70位所に上がる瞬間も多々ありました。1GPUで実行したからでしょうか? 体感だと、頻度分布のグラフからロスレス関係だけ1メモリ弱遅らせたものが、実プレイで感じる印象に近いです。

ロスレスの挙動は使用GPUやドライバ、そして自身のバージョンによっても異なる場合があるので、あくまで私個人の環境でテストした結果であるということをご留意の上で、以降の記事をご覧ください。


実際に測ってみた

測定環境

  • Lossless Scaling 2.11
    • Arrow Tearling
    • Max Frame Latency 1
    • dxgi_frametime_buffer_size = 1(config.ini)
  • CPU : Core i7 12700F
  • GPU : RX6800
  • AFMF2ベータドライバ(sept-6)

使用ゲーム

  • Titanfall 2(起動オプション有)
    • +fps_max 60 -noborder -windowed
  • Once Human
  • Minecraft Java版(シェーダーMOD有)
    • Iris Shader
    • SEUS PTGI HRR 3

すべてフルHD起動、60fps制限にしています。 ロスレスのバージョン2.11は、RX6800ならここまで詰めてもいける模様。

FSR3 FGは搭載ゲーム持ってないので比較無しです。許して…

flm.exeを利用する場合は常に管理者権限で実行してください。でないと右クリックからオプションが開けません。 公式だとコマンドラインから実行するよう説明されていますが、flm.exeを右クリックから直接起動でもとくに違いはないです。

生成遅延の計測目的なら、基本はGame uses Frame Generationにチェックがあるかだけ確認すればOK。 無効だと計測が安定しません。

01

これで正常に計測できない場合は、Set Capture Regionをクリックして画面の計測範囲を変えたり、スレッショルドの値を変更するなどで対応してください。 Once Humanは位置変更でなんとか計測できるようになりました。

また、ゲーム内が夜だったりあまりにも暗いシーンだと計測ができません。 明るさを上げたり光源のある場所に移動したりと、計測する地点を考える必要があります。 明暗や色の差がハッキリ分かる場所なら問題ないはずです。

Titanfall 2

テストした中だと、わざわざフレーム生成する必要がないくらいには軽量級です。設定はすべて最高。環境をほかのものと合わせるために、起動オプションでfpsとボーダーレス強制指定。

tf01

tf02

tf03

上述の通り、ロスレスはAFMF2よりも気持ち遅れます。 数度測り直していますが、計測上は大体上記と似たような傾向だったので諦めました。

LSFG2.3 x4 パフォーマンスがやけに低遅延ですが、実際に試したところ、

これは確かに低遅延でした。

冗談抜きにAFMF2と同レベルの遅延です。 予想外の結果で普通に一番驚いた…

なお後にdxgi_frametime_buffer_size = 15のデフォルト値でテストしたところ、これは他の計測と同様オフ時より数ms早い程度でした。 今回の遅延低下は、このテストに利用した環境の場合限定のものと言えそうです。

そもそも現行ミドルでも普通に排他で高FPSプレイできるはずなので、FG使う意味ないんですけどね…

Once Human

プリセット最高でテストします。60制限時に30~60%で中程度の負荷といったところです。

oh01

oh02

oh03

Once Humanでの計測は困難を極め、ネイティブでは通常通り計測できるようになったものの、フレーム生成時は高頻度で一時停止します。 なんやかんやあってこれだけで数日潰れています。

実際のプレイにおいては、どの生成パターンもそこまで遅延差は感じませんでした。 強いて言うならAFMF2は若干速く、LSFG1.1が本当にうっっっすら遅れてる気がした程度です。 計測上は3倍より4倍が速いことになっていますが、実際に切り替えて比べても差がよく分かりません。

この手のゲームだと常時木の葉などのオブジェクトが動き続けるので、生成遅延を抑えるには恐らくそれなりに高いスペックが必要です。当環境だと多分足りてません。

Minecraft Java版

高負荷時のテストもしたかったのですが、よく動画で見るようなベンチ系ゲームは興味がなくて何一つ持っていません。 過去に利用していたGTX1060 3GBはサーマルパッドとっくに終わってて分解放置しており、現CPUにはiGPUも無いので、このグラボ1枚しか使えません。

仕方ないのでJava版マイクラにSEUS PTGI HRR 3を導入し、マップ読み込み範囲を調節することで、疑似的に高負荷環境とすることにしました。 60制限時に大体94~98%くらいの使用率になるよう調節しています。

mc01

mc02

mc03

まあ、分かりきっていた結果です。(4倍パフォーマンスだけなんか変だけど…)

こうなるともう3,4倍はパフォーマンスモード利用時だろうと、マウスの視点移動が露骨に遅れます。 負荷安定時には生成FPSは上限まで届くものの、負荷上昇時はスタッタリングが普通に発生します。 パフォーマンスモードオフの時はもうfpsすらまともに上がりません。

元から高負荷な状態で、フレーム生成を使用してはいけません。

とくにロスレスでフレーム生成をする際は、適度な使用率の状態で掛けるようにし、生成によって負荷が限界を迎えないように適切に設定しましょう。

本当はflm.exe上で計測した平均fpsも貼りたかったのですが、諦めました。 1GPUで負荷を上げすぎているせいか、AFMF2しかちゃんとしたfpsが測れません。 ロスレスの計測値がなぜか60fps付近になってしまいます。 どう見ても100は出てるのにその表示だったので、計測不可能です。

AFMF2について

AFMF2が妙に高遅延ですが、fpsは110後半付近で安定していました。 ロスレスの2倍パフォーマンス時は瞬間的に120には届くのですが、大体100~110前半をうろうろしており、その他二つにおいてはそもそも110まで行きません。また、AFMF2のほうがスタッタリングも起きにくかったです。

この条件だと、視認性の良さではAFMF2が上でした。 お前ほんと強くなったなぁ…

ちなみにrx6800の場合は使用率80~90%くらいまでなら、AFMF2をそれほど問題なく使用できました。(ロスレスだと若干無茶) 負荷下げられないけど2倍でいいからフレーム生成欲しいという場合は、多分AFMF2だけあればいいです。


計測を終えて

なんか思ったほど上手いこといかなかったです。

労力の割には微妙なデータしか取れませんでした。 専門的な環境がない状況での遅延計測は、一筋縄ではいかないようです。

ただ、Titanfll 2での4倍パフォーマンス時のように、ごく限られた条件では遅延が大幅に減ることもあるという、新たな発見もありました。 ロスレスの生成モード間に遅延差はないというのが公式回答らしいので、極めて稀ないい意味での俺環のような気はします。

上記の例外を除くと、パフォーマンスモードはGPU使用率がほどほどの場合でも、計測上はうっすら低遅延なレベルということが多いですが、私の環境では実プレイ時にその差を感じることは少ないです。 生成モード自体を切り替えた場合のほうが差を感じます。

参考になるかはわかりませんが、今回計測したデータを表にまとめたものをzipで配布します。

download

内容は実際にグラフ作成で使ったLibreOffice用のodsファイルと、それをExcel 2007-365形式で保存したxlsxファイルです。

繰り返しになりますが、ロスレススケーリングの挙動は使用GPU、ドライバ、ロスレスのバージョンによって異なる場合があります。 あくまでも一環境の一例に過ぎないということはご了承ください。


あとがき

疲れた…慣れないことはするもんじゃありません。

時間かかった割には若干コレジャナイ結果になってしまったのが悲しい。 ちゃんとした環境だとどうなるか気になるが、そんな余裕はない…

FSR4はハード側のAI処理を使うようになるという噂が出ていますが、これが事実ならAFMFもそのうちAIアクセラレーター依存になるんですかね。 そうなったらなったで逆にロスレスと棲み分け出来そうですが。

この記事がどなたかの参考になったなら幸いです。

それでは…


Profile picture

Written by doranarasi . Follow on X