私は2つのモニター(「Join Display」設定)、NVIDIA 1070 GTXモバイルGPU、OpenGL 4.6ベースのGNOME 3を持っています。
ノートパソコンに内蔵されているモニターの再生率は最大120.02Hzに設定され、2台目のモニター(VGA経由)の再生率は最大59.88Hzに設定されています。
2台目のモニターが接続されていない場合、glxgears
20,000FPSが報告されます。ただし、2台目のモニターを接続して内蔵glxgears
モニターで実行すると、glxgears
Intel統合GPUを使用しているかのようにフレームレートは60FPSに固定されます。
X11 または OpenGL は、すべてのモニターのリフレッシュ頻度を最も低い共通周波数に固定しますか?
これを防ぎ、各モニターに独自の画面走査率を持たせる方法はありますか?それとも設計上必要ですか?
答え1
環境変数を使用して垂直同期を無効にすると、問題が解決します。
デスクトップドライバの場合vblank_mode=0 glxgears
。
NVIDIA独自のドライバについては、__GL_SYNC_TO_VBLANK=0 glxgears
以下を参照してください。http://us.download.nvidia.com/XFree86/Linux-x86_64/304.43/README/openglenvvariables.html。
~/.nvidia-settings-rc
()SyncToVBlank=0
で設定し、nvidia設定GUI(Sync to VBlank
OpenGL設定のオプション)を使用することもできます。