CtrlAltStudio Viewer 1.2.6.43412 Performance Testing

As noted in an earlier post CtrlAltStudio Viewer 1.2.6.43412 was released by David Rowe on 18th July 2016 to allow VR access to Second Life and OpenSim via the Oculus CV1 and DK2 using Oculus SDK/Runtime 1.5.0/1.6.0. This blog posts reports on some testing of its performance, especially with respect to frames per second in the VR HMD view.

Oculus Debug Tool

The Oculus Debug Tool with Visible HUD = Performance was used to provide the application frames per second. The DK2 can run at up to 75fps and the CV1 at up to 90fps.

Oculus-Debug-Tool-Performance-HUD

Test Environment

  • Dell Precision T5810 Xeon E5-1620 v3 @ 3.50GHz, 32GB memory, Windows 10 Pro
  • Nvidia GTX 980 GPU, GeForce Driver 368.81 (14/07/2016)
  • Dell Monitor (1920×1200)
  • Oculus Rift DK2
  • Oculus App Version 1.6.0.250794 (1.6.0.250620)

Tests on OpenSim – Openvue grid – Openvue region

Tests on a rich welcome region with many objects. Little in view beyond 128m.

Looking away to an area with few objects first.. the steady state application frame rate observed = 75Hz, the maximum that can be expected.

Steady-75fps

Then tests were conducted facing an area with many objects but no other avatars visible. Various graphics settings were tried and the application FPS observed. The following image shows the test area in the 2D monitor view…

2D-monitor-view-Openvue

                                                   Application FPS
Graphics  distance    shadows  Pixel density     low    avg.   high
Ultra      256         all          1.0         37.5   37.5    37.5
Ultra      256         none         1.0         37.5   39.8    42.2
Ultra      128         none         1.0         37.5   39.8    42.2

Good       128         none         1.0         56.3   58.6    63.3
Good       128         none         2.0         37.5   37.5    37.5

Ultra-256-w-Shadows Ultra-256-wo-Shadows
Good-128-wo-shadows

Tests on OpenSim – Openvue grid – Vue-Port region

Tests were also conducted on a simple arrival, meeting space and hypergrid teleport region with few objects. Little is in view beyond 128m. The following image shows the test area in the 2D monitor view…

Vue-Port-2D

                                                   Application FPS
Graphics  distance    shadows  Pixel density     low    avg.   high
Good       128         none         1.0         72.7   72.7    75.0 

Vue-Port-3D Vue-Port-75fps

FOV Multiplier

Changing the Preferences > Graphics > Display Output > Rift > FOV multiplier to 2.0 and restarting appeared to have no visual effect and did not seem to effect frame rate.

David Rowe notes:

FOV: Increasing it is subtle as it’s operating at the physical limits of the hardware. But if you look straight ahead (eyeballs forward) you should notice a slight increase in peripheral vision (which you lose as you rotate your eyeballs). Decreasing the FOV, on the other hand, is much more noticeable.

Pixel Density

Changing references > Graphics > Display Output > Rift > Pixel density to 2.0 and restarting MAY make the textures on objects a little clearer. It is not a big effect, but it may be visible when looking at textures close up. Note that hover text shows smaller (X 0.5 when using a Pixel density of 2.0?) in relation to object size. As expected there is a marked drop in application FPS when using higher pixel density… in the same test context, 58.6fps with 1.0 (click on left hand thumbnail for full sized image) was reduced to 37.5fps with 2.0 (click on right hand thumbnail for full sized image).

Pixel Density 1.0 Pixel Density 2.0

David Rowe notes:

Pixel density: If you have antialiasing on and increase pixel density you probably won’t notice much difference. However, if you have antialiasing off and double the pixel density the improvement over 1.0 pixel density should be marked.

Other Observations

  1. Turning off the screen mirror (surprisingly) appears to have no effect on frame rate or other performance metrics I observed (on Nvidia GTX980).
  2. Turning off the visible avatar, hover text and/or context menus appears when in Riftlook mode appears to have no effect on frame rate.
  3. Full screen for 2D Monitor Mirror (1920×1200, again surprisingly) slightly improves (increases) the frame rate when in Riftlook/3D view.
  4. The biggest impact on frame rate I noted was if the on screen window was not selected. Then frame rate drops from an example of 37.5 to 16.4. Reselecting the CtrlAltStudio viewer on screen mirror window instantly restores the frame rate.
  5. Changing the on screen mirror window size while in Riftlook mode can mess up the normal 2D screen when you return from Riftlook. Resize only when in the 2D view to be safe.

App Motion-to-Photon Latency, Application Frames Dropped and Performance Headroom

Most of the “Application Frames Dropped” as shown by the Oculus debug Tool are when the viewer is in 2D mode or when the viewer application does not have foreground mouse focus. When in regular Riftlook and the viewer has mouse focus, on a sample scene where the maximum 75FPS and “App Motion-to-Photon Latency” of about 24ms on a DK2 was being achieved fairly steadily, only 1 frame was dropped each few seconds when there was a little blip on a regular basis. But if the viewer was not given mouse focus (e.g. if you selected another app in the foreground) the “Performance Headroom” dropped instantly to around -270%, the “App Motion-to-Photon Latency” to around 45ms.

This entry was posted in Oculus, OpenSim, Second Life, VR and tagged , , , , , . Bookmark the permalink.