Strange CPU Bottleneck when changing to VR

Hello all,
I wanted to ask whether I am alone in this.
For context I’ve got an RTX 3080 and 5800X for my setup, so plenty of horsepower. Rift S user
I’ve been doing some of the bush flight series, and have found some strange performance effects when changing to VR.
While out of the headset, the FPS monitor is saying that I’m getting around 80FPS, with the GPU limiting it(in that it’s rendering as many frames as it can). That said, when I put the headset on and change to VR, FPS drops down to 50FPS(ASW off). I know some people would still say 50FPS is good, but just want to make sure I’m not leaving performance on the table I could quite easily be having. The FPS monitor suggests now that it is limited by mainthread instead, and GPU usage dials back accordingly.
Unless I’m missing something, what is it about VR that would suddenly become so CPU intensive? Or is it a case of the coding of MSFS? Or alternatively have I got something set up wrong that’s impacting performance?

It just doesn’t seem logical that with something like VR that should be GPU intensive, putting on the headset means I’m bottlenecked by the CPU? I would understand an FPS drop because of the GPU, but mainthread seems so weird.

Cheers,
Peter

Is the perception of movement smooth? That’s all that matters. FPS is irrelevant.

1 Like

Skint, I think you believe your comment to be more helpful than it is.

To rephrase, what I’m trying to understand is why switching vr impacts the cpu so much more and the graphics card scales back. What is it about VR, or at least msfs vr, that is cpu intensive?
I can understand that producing a stereoscopic image(yes, I understand the premise of vr) has a cpu impact, and I do understand you will see an fps impact. What I’m surprised about is that this impacts CPU performance so much that the 3080 scales back from running at full down to 70%.

On your point of resolution - I use a 4k monitor, which is a higher resolution compared to the rift S settings. Even then, this is a moot discussion because resolution primarily concerns the GPU - and we can see that changing to VR is limiting the CPU - not the GPU - because the graphics card is going back to 70%.

So back to the original question - what is it about msfs vr that is so demanding on the cpu that has such a heavy impact? I’ve searched threads upon threads about VR in general and it’s a bit out of the blue to say vr is extremely CPU dependent for high frames?
I completely understand I won’t get the same fps as just with the monitor - but dropping 30 seems quite strong.

Cheers

Is your PC settings the same as your VR settings? I’ve got a 6 year old Intel processor and I’m GPU limited in VR

1 Like

I will investigate that tomorrow!

It’s down to draw calls. This is a CPU dependent part of the rendering pipeline and - as suggested above - for VR it has to be done independently for each eye.

In an application such as MSFS which is already CPU intensive, doubling this workload easily pushes it over the edge.

Not all of it necessarily though. There are technologies meant to helping this:
VRWorks - Multi-View Rendering (MVR) | NVIDIA Developer

Which is one part of a series of NVidia VR libs:
NVIDIA VRWorks™ | NVIDIA Developer

However there is an experiment showing some problems arising from SPS (now Multiview) which are really peculiar with the G2 in particular:

Single Pass Stereo: the artifacts with HP Reverb G2 – Learning by creating

All rather irrelevant considering developers appear to have almost almost universally ignored them.

The last link looks interesting though, thanks.

Single Pass Stereo is a technology introduced by NVIDIA and is supported by graphics cards from GTX1060 onward. It is used to simultaneously project the geometry for the left and right eyes in order to reduce the processing time of each frame. It states that the developers can almost double the geometric complexity of their world without having an increase in processing times. This sounds like a great technology and is already integrated in Unreal Engine and Unity.

Single Pass Stereo: a study – Learning by creating

Thank you for the article on draw calls. Appreciate the insight.
So, considering MSI Afterburner states my CPU isn’t going above 25% usage - this basically means that the game engine is part of the limiting factor?
If so I’ll take a deeper look on what settings I can lower to free some cpu space

I will read these other articles as i go along.

I know exactly what SPS is and how long it’s been around. Are you aware of any significant uses outside glorified tech-demos such as Nvidia’s VR Funhouse? I read iRacing implemented it, but no idea how much effect it had.

From that website you linked to:

If the application is using very detailed models or generating a lot of geometry then the frametime can drop at most about 20% – 30%. Expecting to have a 50% reduction is not feasible because there is still the second pixel pass for the right eye and we can expect a bit of background processing by the GPU even if the geometry passes are reduced to one.

Given the issues it goes on to detail, I’m beginning to understand why its use isn’t more widespread.

Please note: even if I’m answering your post because of the “almost universally ignored them” and I wanted to point out Unreal and Unity are both supporting it in standard, which is not my definition of universally ignoring it, my post is not about judging your knowledge on this technology but sharing the information about the technology for those who don’t know what it is about.

Having said this I agree with you it looks like a good idea on paper but maybe not a so good idea in practice.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.