Wayland vs. X11 の入力遅延議論の具体的な数値
(mort.coffee)-
昨日読んだブログ記事では、Linux ユーザーが Wayland における入力遅延への不満を議論していた。このユーザーは主観的な体験を説明していたが、明確な証拠は示せていなかった。
-
筆者は Wayland ユーザーとして、カーソル遅延が X11 より大きいという印象を共有している。実験は 90 FPS のカメラに制限されていたが、筆者は 240 FPS のカメラを使えば、より明確な結果が得られるはずだと考えた。
実験設計
- 筆者はカメラを画面と机に向け、マウスカーソルと手がフレームに入るようにして、マウスを繰り返し動かす様子を録画した。
- Wayland と X11 のセッションでそれぞれ 16 回ずつ録画し、結果の動画ファイルを JPEG シリーズに変換して、マウスが動き始めたフレームからカーソルが動いたフレームまでを計測した。
ハードウェア詳細
- ディストリビューション: Fedora Workstation 41
- GNOME バージョン: 47
- CPU: AMD Ryzen 9 5950X
- GPU: AMD Radeon RX 7900XT
- モニター: Gigabyte M32U (4k IPS @ 144.99, DPI スケーリングなし)
- マウス: Logitech G502 Lightspeed
- カメラ: iPhone 15 Pro, スローモーション 240 FPS
制限事項
- 240 FPS でも依然として十分ではない。144Hz の画面では、画面のリフレッシュ 1 回あたりカメラ 2 フレーム未満しかない。
- ピクセルは即座に切り替わらないため、カーソルが新しい位置でかすかに見え始める曖昧なフレームがある。
- 動画の録画には重複フレームが含まれている。これを時間経過として解釈し、通常どおり計算した。
結果
- GNOME X11 の平均遅延は 16.7ms、Wayland は 23.2ms で、Wayland は X11 より約 6.5ms 大きいカーソル遅延を示した。
- この差が統計的に有意かどうかは不明だが、明確で一貫した差がある。
結論
- この結果は、X11 と Wayland の間に入力遅延の差が存在することを示している。追加のハードウェアやリフレッシュレートでのテストが必要だ。
- このテストは、Wayland がゲームで X11 より高い入力遅延を示すことを証明するものではない。カーソルに限られた遅延である可能性がある。追加テストが必要だ。
1件のコメント
Hacker Newsの意見
科学的手法で実験を設計することが重要だという意見がある。Waylandの追加遅延の理由は分からないが、X11の初期の頃にも画面遅延への不満は多かった。WaylandはX11より新しい技術なので、まだ十分な検証が行われていない。
ffmpegを使って動画の各フレームの「プレゼンテーション時刻」を取得する方法を説明している。Webブラウザでも似たようなことができ、コンピュータがすべてのフレームを十分に速くデコードできない場合は、.playbackRateを低く設定する必要があるかもしれない。144Hz画面では、WaylandはX11より平均して約6.5ms大きいカーソル遅延を持つ。これはほぼ1回の画面リフレッシュに相当し、60Hzモニターでは1/60秒になりうる。ほとんどの人はそれを説明できなくても、違いを感じることはできる。
結果はコンポジター、GPU、構成によって異なる可能性がある。X11は1つのXサーバー実装だけを使うため、このような差は少ない。多くのコンポジター/GPUの組み合わせで、ハードウェアカーソルプレーンを得られない問題があるのかもしれない。
Waylandはすでに16年が経っており、数年後にはXが最初に登場した時と同じくらいの年齢になるだろう。しかし、それでもなおXより良くないという評価がある。
既存のソリューションを現代的で保守しやすいものにしようとする試みは、常に成功するとは限らないという意見がある。新しい世代の開発者は、性能や最適化に関する知識が不足しているという批判がある。
GPUが過負荷状態のとき、大きな遅延スパイクが発生する。X11との比較テストはしていないが、以前はこうした問題はなかった。追加のフレーム遅延はそれ自体で好ましくなく、ときどき発生する遅延スパイクは非常にいら立たしい。
iPhoneで
isitsnappy.comを使ってすばやく測定でき、TVに接続した状態のSteam Deckのリズムゲームで100msの遅延が発生していたことを確認した。Waylandが常にX11より1フレーム遅いのであれば、モニターを非常に低いリフレッシュレートに設定して実験を繰り返してみる価値があるかもしれない。
これはおそらくコンポジター次第であり、mutterの問題なのか、kwinでも再現するのか気になる。
統計の専門知識が不足していて、差が統計的に有意かどうか分析できないという意見がある。2標本t検定の統計量は-4.74で、p値は4.20e-05である。