Solaris 11.4 上で動画を再生すると gnome-shell
と
Xorg
の CPU 負荷が上がる件。
これは gnome-shell
がコンポジット型であるためと理解。
非コンポジット型の場合、 基本的な描画処理はメディアプレイヤーと X サーバの間のみで行われる。 コンポジット型の場合、描画内容は X サーバからウィンドウマネージャーに送られ、 様々な処理を施された後に X サーバに送られ、実際の表示が行われる。
メディアプレイヤーで動画を再生する場合、例えば1秒間に30回の描画が行われる。 そして、そのたびに X サーバとウィンドウマネージャー間の通信が行われ、 ウィンドウマネージャー側の処理も行われ、 それらのためのコンテキストスイッチも発生する。 これが負荷の要因。
ちなみに、_NET_WM_BYPASS_COMPOSITOR
を設定しても変化は見られず。
$ xprop -format _NET_WM_BYPASS_COMPOSITOR 32c -set _NET_WM_BYPASS_COMPOSITOR 1
また、mpv
を全画面モードで実行すると CPU 負荷の問題は発生しない事を確認。
このとき、_NET_WM_BYPASS_COMPOSITOR
は 1 に設定される。
これを外部的に 0 に変更したとしても、CPU 負荷の問題は発生しない。
0 件のコメント:
コメントを投稿