Ubuntu 15.04 (Gnome Shell) にて GVim の描画問題に悩まされた人へ朗報
どうも、とってもお久しぶりです有末です。
TL;DR
$ sudo apt-get purge nvidia-304 $ sudo apt-get install nvidia-331
詳しい経緯と理由
以前よりGnome Shell を好んで利用しているのですが、いつ頃からか GVim の描画がまともにされない(ことがある)という問題に悩まされていました。 この問題はスクリーンショットを取ろうとしたり、ウィンドウサイズを変更すると治るため状況の共有もできず、たいへん困っていました。
で、いい加減イライラマックスになったのでむっちゃ検索した結果、どうもNVIDIA の Adaptive Clocking と Gnome Shell の組み合わせで引き起こされるバグらしいというところまで突き止めました。
となると NVIDIA の Adaptive Clocking を止めたくなるわけでございます。デスクトップ PC だし。 んで、いろいろ調べると下記のようにすれば止められるという情報がありました
$ nvidia-settings -a [gpu:0]/GPUPowerMizerMode=0
で、実行するわけですがなんか ERROR: Error querying target relations
とかエラー出るし nvidia-settings
みても明らかに止まってない。んでそれを調べてみると、どうやら sudo apt-get install nvidia-current
でインストールされるのはちょっと古い nvidia-304
であり、このバージョンだと nvidia-settings
にバグがあるから nvidia-331
にするといいよという回答がありました。
ここでハタと気が付きます。あれ、これ nvidia-331
入れたら描画問題すら治るんじゃね?
んで早速 nvidia-331
を入れました。これ、いいですね nvidia-settings
のインターフェイスからでも Adaptive Clocking の設定が変更できるようになってます。
とりあえず今のところ問題は起こってない感じです。もしもまた問題が発生したら下記のように Adaptive Clocking を止めてしまえば治るかもしれません(GUIでやってもいい)
$ nvidia-settings -a [gpu:0]/GPUPowerMizerMode=0 # 無効化 $ nvidia-settings -a [gpu:0]/GPUPowerMizerMode=1 # 有効化
あといちいち上記を実行するのが面倒なので、上記で治るようなら xorg.conf
に書いちゃったほうがいいかもしれません。その時は別途また調べよう。
ほか参考になるかもしれないURL
[ubuntu] Disable Nvidia Driver's Adaptive Clocking?
powermizer: adaptive / maximum performance from CLI - nV News Forums