デュアルディスプレイの環境下で、OpenGLの動作はどうなのだろうと以前にチェックしたけども、
今回さらなる調査結果が得られたので書いてみたいと思います。
ケース1 単一GPUから複数のディスプレイに接続されているデュアルディスプレイ
この場合において、以下の構成を試してみました。
- NVIDIA製GPU Geforce9800GT
- AMD製GPU RADEON HD 6850
- Intel製 Intel HD Graphics
それぞれのGPUだけを有効化した環境を作り、2画面出力をさせた場合にどうなるかを調べました。
結論は、どの構成であっても正常に動きます。
プライマリディスプレイを変更させたり、ウィンドウを移動させて他方へ持って行っても正常に動きます。
この構成であれば、問題は起こらないようです。
(Adobe Photoshop等がプライマリディスプレイでのみOpenGLエフェクト処理有効化しているらしいが、この結果を見るとその制限はなくてもよいように見えます…。)
ケース2 各GPUからディスプレイに接続されているケース
- Geforce9800GT + Intel HD Graphics
- RADEON HD 5450 + Intel HD Graphics
このケースを試してみます。
Geforce+Intelの組み合わせではプライマリディスプレイとなっているデバイスにあわせられて動くようです。
ウィンドウを画面移動させても、起動画面をどちらのディスプレイにしてもクラッシュということはなさそうでした。
しかし、 以前テストしたときにもわかっているとおり、RADEON+IntelだとプライマリがRADEON の時に限り、セカンダリ側でOpenGLアプリを動かそうとすると正常に動きません。
この結果から、確かにプライマリでのみOpenGLアプリを動かすようにしておけば、余計なトラブルは発生しないといえそうです。