A funny method I used to optimize performance

I guess we all know, multi monitor setups cost a lot of performance. I don't know why but fact is that the GPU has to render both monitors in realtime.
You can even see the mouse cursor in my main monitor while I play Elite (fullscreen).
Oculus DK2 is essentially a multi monitor setup.

What I did was a test how it would perform without my main monitor connected and I found that the occasional judder (which is an engine bug in ED) is a lot shorter than usual.
Also I found that moving my head feels more natural, sort of "smooth" when the DK2 is the only monitor on my GPU.
I do have a SLI 980 GTX solution, so this should apply to everyone here as well.

What will happen:
As soon as I enable my DK2 (button) my main screen will be disabled in Windows (turns black, shows up as disconnected), it is essentially gone and my DK2 is the primary monitor.
As soon as I click the off-button on my DK2 the main monitor is automatically enabled again and it is primary again.
So to play Elite I just close all programs (for performance) prepare the launcher and enable the device. Then I click on Play while using only one eye in the DK2 and ED launches.
When I am finished I just switch off my DK2 and everything is back to normal.

I have a special case, I have a 3rd screen which is connected to the Intel onboard card, this should not cause any performance loss and I still got an additional screen if I need while my main screen is off.



I think benefit from a bug/feature in windows (8.1 in my case), I do not know if it is easy to trigger this everywhere and if it applies to all windows versionsa

This is how I managed to come to this behaviour:
1. Install "MultiMonitorTool" (will call it MMT), this is a free tool to work with monitor setups with full command line support to automate stuff (like using a shortcut)
2. Enable your DK2
3. Store the screen profile in MMT and name it "default" or similar
4. Stop ALL other programs including chrome
5. Make sure your DK2 runs in the same resolution as your monitor (that is important if you want the easiest solution). I have a 1440p primary screen so I permanently supersample the DK2 to that resolution in the Nvidia CC.
6. Now in MMT right click the primary screen and "Disable" it.
7. In MMT make sure that DK2 is primary now
8. Store the new configuration as "rift-primary" or similar

If you now switch off the DK2 Windows automatically enables the disconnected (real) primary monitor and automatically switches it to "primary"
If you switch DK2 on again Windows disconnects the primary monitor and switches everything to the DK2

That's kinda great, it is not really supposed to happen and I read about this no where.
It essentially means that you do not have to do anything in software anymore.
If you want to play on DK2 you just enable it, use it as primary screen and your GPU will be able to deliver the best performance.
When you are finished switch it off and everything is back to normal.

I did not try it yet but I guess it might even be possible to switch it on and off while playing (on your own risk :)
 
I guess we all know, multi monitor setups cost a lot of performance. I don't know why but fact is that the GPU has to render both monitors in realtime.
Extended Mode shouldn't noticably cost any performance. The game is rendered in the same resolution as if there's only one monitor. Multi monitor setups do cost more performance if the game actually runs on all these monitors with insane resolutions. The only additional work for the GPU here is to render your "second" desktop which is neglectable.

[...]This is how I managed to come to this behaviour:[...]
You can easily achieve this with the Nvidia Control Panel or Catalyst Control Manager. They save your monitor setup natively. So when you configure your multi monitor setup to only use the Rift it will do so whenever you switch on or connect the Rift. As soon as you switch off or disconnect the Rift your main monitor will switch on again. But again this shouldn't be needed for performance reasons. Maybe for compatibility in some apps (like for VSync or else).

[...]I have a 1440p primary screen so I permanently supersample the DK2 to that resolution in the Nvidia CC.
Maybe we have a winner here and this causes your poor performance. Remember that apps for the Rift built with the Oculus SDK use an internal render target that's about 1.5x the actual screen/output resolution. That's probably what the Oculus Quality slider in the in-game graphics options does adjust. I don't know if the render target is a fixed 1.5x1080p or if it's multiplying the actual set resolution. Maybe you should give this a try.
 
Back
Top Bottom