私のPCにUbuntu 19.04をインストールしました。
Ubuntuを使い始めた当初、私はこの煩わしい画面のちらつきに気づきました。それはFirefoxだけだと思っていましたが、ウィンドウを振ると、ウィンドウを2つの部分に分割する(引き裂く)水平線が表示されました。これは、あらゆる種類のウィンドウまたはアプリケーションで発生します。私はたくさん読んで、これは私がこれまでに行ったことです:
gsettings set org.gnome.mutter experimental-features "['x11-randr-fractional-scaling']"
/usr/share/X11/xorg.conf.d/10-nvidia.conf
で。これは、再起動またはシャットダウンで設定がリセットされることに気付いたためです。nvidia-settings -q CurrentMetaMode
の出力:
Attribute 'CurrentMetaMode' (EST:1.0): id=50, switchable=yes, source=RandR ::
DPY-7: nvidia-auto-select @5120x2880 +0+0
{Transform=(1.333328,0.000000,0.000000,0.000000,1.333328,0.000000,0.000000,0.
000000,1.000000), ViewPortIn=5120x2880, ViewPortOut=3840x2160+0+0,
ResamplingMethod=Bilinear, ForceCompositionPipeline=On,
ForceFullCompositionPipeline=On}
10-nvidia.conf
を添付しました。これを発火するとすぐにティアリングが修正されるのは非常に奇妙ですが、10-nvidia.conf
を設定した場合でも、時々それを再適用する必要があります。
Sudo nvidia-settings --assign CurrentMetaMode="nvidia-auto-select
@5120x2880 +0+0 { ViewPortIn=5120x2880, ViewPortOut=3840x2160+0+0,
ResamplingMethod=Bilinear, ForceCompositionPipeline=On,
ForceFullCompositionPipeline=On }"
ようやく自分の解決策を見つけたと思います。以下の手順で、ティアリングフリーのエクスペリエンスを取得し、読みやすいコンテンツを取得するようにHiDPIディスプレイを設定することができました。設定とディスプレイデバイス(GNOMEとNVIDIAの間で以下の問題を参照)でGNOMEスケーリングモードを回避し、DPIを正しく設定することでスケーリングを解決したかったのです。想像したとおりには機能しませんでした(DPIスケーリング、テアリングは修正されています)。しかし、私はあなたのフィードバックを探しています。多分それは結局働くようにすることができます。
次の問題に対処する必要がありました。
10-nvidia.conf
_を設定しました。10-nvidia.conf
_は、再起動またはシャットダウン後、時々、ティアリングが戻ってきたため、一部のみを修正しました。ただし、これらすべての問題を念頭に置いて、すべてをデフォルトに戻し、最初からやり直したいと思いました。
10-nvidia.conf
_以外の_Section "OutputClass"
_をすべて削除しましたSudo nvidia-settings
_を実行し、「Configuration」を選択して「Disabled」を選択しました。私はダイアログを確認し、可能な限り適用することを選択しました。安全のため、後で_nvidia-settings
_でも同じことを行いました(NVIDIA設定を閉じた後、rootなしで実行しました)。gsettings reset org.gnome.mutter experimental-features
_を実行して、分数スケーリングを無効にしました。後で再起動していくつかのgoogleリクエストを行うと、Gnomeのスケーリングを回避し、NVIDIAドライバーでDPIに関するすべてのことを実行できるようなセットアップが必要でした。
10-nvidia.confのセットアップ:
_nvidia-settings
_-> "Xサーバーディスプレイ構成"-> "X構成ファイルに保存"-> "プレビューを表示..."を開き、すべてのものをコピーして、そのファイルの基本を取得しました。
_Sudo gedit /usr/share/X11/xorg.conf.d/10-nvidia.conf
_を使用して、「プレビューを表示...」のセクションを既存のコンテンツに貼り付けました。 DO NOT REPLACE。
次に、次のコンテンツを追加/編集しました(ファイルをコピーして貼り付けないでください)。
Option "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On}"
_Option "DPI" "161 x 158"
_xdpyinfo | grep -B2 resolution
_が_resolution: 96x96 dots per inch
_を出力する可能性は非常に高いですが、実際には正しいDPIではありません。 whtyger's postを使用して、DPIを計算しました。randr | grep -w connected DP-4 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 621mm x 341mm
xrandr --dpi 144
_を実行して、DPIスケーリングを144%に設定しました。コマンドの後、PCは反応しませんでした。 Strg + Alt + F1でログイン画面が表示され、144 DPIが得られたところで再度ログインできました。ただし、UI要素のスケーリング係数は変更されませんでした。desired_DPI / 96
_を使用して、1.5の倍率(144 DPI/96)を取得しました。ほとんどのデスクトップ要素とアプリケーション要素は現在読み取り可能であり、ディスプレイデバイスではGNOMEスケーリングモードを使用しません。Option "Composite" "Enable"
_を追加し、引き裂くことなくより良いパフォーマンスを得ることを望みました。魔法の修正を行っても、ティアリングはすでにForceCompositionPipeline
で修正されているため、パフォーマンスの向上には気付きませんでした。Sudo nvidia-settings
_を使用して、「OpenGL設定」に移動し、「VBlankに同期」を無効にし、「フリップを許可」をアクティブにしました。
最終的な考え:
全体的な感じははるかに良く、引き裂きは死んでいます。しかし、私はまだ60 Hzがそんなに遅いとは信じられません。だから私は狂った地獄のように窓を振るとき、私はまだ窓の多くのゴーストを見る。 Flameshotを再び使用できるようになりました。ナイトモードを使用してnvidia-settingsを開始すると、何かがそのモードに干渉するため、ナイトモードが終了します。幸いにも、Windowsは同じ戦いを繰り広げています。
書きすぎず、どちらか一方の問題を解決できることを願っています。フィードバックをお待ちしています。
参照:
buntu 19.04でフラクショナルスケーリングを有効にする方法
LinuxでHi-Dpi画面を処理する方法
画面DPIを見つけて変更する方法
GNOME Tweak Tool
HiDPI
Nvidia独自のドライバーDPI設定
Xorg
新しいnVidia GPUで画面がちらつく
10-nvidia.conf-コピー/貼り付けしないでください:
_Section "OutputClass"
Identifier "nvidia"
MatchDriver "nvidia-drm"
Driver "nvidia"
Option "AllowEmptyInitialConfiguration"
ModulePath "/usr/lib/x86_64-linux-gnu/nvidia-418/xorg"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Ancor Communications Inc ASUS PB287Q"
HorizSync 24.0 - 160.0
VertRefresh 30.0 - 80.0
Option "DPMS"
Option "DPI" "161 x 158"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 1080 Ti"
Option "UseEdidDpi" "False"
Option "DPI" "161 x 158"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "DFP-7"
Option "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On}"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSection "Display"
Depth 24
Modes "3840x2160"
EndSubSection
EndSection
Section "Extensions"
Option "Composite" "Enable"
EndSection
_