No cookie for

Performance Tuning in VR-Vantage

Posted by on Uncategorized

VR-Vantage IG includes tools to help customers measure performance and manage tradeoffs between scene content and performance.

Performance isn’t just for IG users who have strong 60hz requirements, it’s for everyone. if you are building a scenario in VR-Forces or are using VR-Vantage as a stealth, it’s just as important to have smooth, quality movements.

Because we value performance, we spend about 50% of our development effort these days ensuring all of our visuals meet that 60hz requirement, and we’ve had lots of success on that front due to the customizability of VR-Vantage. In fact, we are starting to see requirements for 120hz, and often on large 4k and soon 8k projectors too. 

When you have a program that has specific performance requirements (smooth 60hz, for example) how do you hit your target? The best way to get there is to manage your content. Less-populated scenes easily achieve high frame rates, but balance and tuning become more important when large amounts of content are added. In order to tune performance, it’s important to understand how processing power is being allocated.

There are lots of ways to try to figure this out in VR-Vantage 2.3: 

Screen stats that tell you when you are GPU- or CPU-bound

 

Screen shots that show if you are dropping frames (new in 2.3), how much video ram you are using, and some broad categories of where you are spending your time (is it the ocean, the clouds, the trees, etc?) 

 

Statistics that show you specifically what calls in VR-Vantage are using your time so you can communicate with our engineers effectively

 

Screen statistics that are designed for dome environments with blended screens (new to 2.3)

 

Colorized drawables that show how complex your scene is and how many calls to the GPU are required to send down the content

 

Custom shaders which explain the complexity of the art as well as allow you to debug art constructs (including emissive textures)

 

Most importantly, customers can use NVidia NSight to look into every frame rendered with VR-Vantage. NVidia NSight is a free tool that you can find documentation from here: 

http://www.nvidia.com/object/nsight.html

NSight lets you: 

  • Quickly see every texture that is loaded into the scene. 

 

  • NSight allows you to see exactly how much time is spent drawing different parts of the scene and figure out where your optimization focus should be:

 

For the upcoming release of VR-Vantage we've tagged most of our gpu resources and draw phases with performance markers that NSight can display. 
 
We use NSight extensively for our internal performance analysis and customers can download it and use it too. NSight basically hooks into your video drivers to intercept stuff going to the card via all the OpenGL calls VR-Vantage makes. 
 
When VR-Vantage makes a call to the video card, users can see what it is, and figure out if bad things are going to the card, exactly what is being sent to the video card, and how long its taking. 
 
Loading and streaming performance has been a big focus of 2.3. To help us make sure that we are utilizing the CPU in an optimal fashion we've adopted Microsoft Concurrency Visualizer. Which has allowed us to identify when we miss our 60fps target and focus on what went wrong that frame. 
 
The Visualizer can show thread contention and utilization, mutex locks and provides precise timing for many operations allowing us to focus our optimization work on what's actually slowing us down. This timing data will be available in the upcoming release of VR-Vantage as well.
 

 

These tools are key to understanding performance in VR-Vantage and tuning it to achieve project requirements. The thing that sets VR-Vantage apart from other IG’s is its flexibility, which cannot be maximized without these tools.

Jim

Last modified on
Trackback URL for this blog entry.

Comments

  • No comments made yet. Be the first to submit a comment

Leave your comment

Guest
Guest 18 September 2019