For a while I was able to run MSFS on ultra settings (render 100) at 1440p with 40-50fps,maybe 60 from time to time but recently I’ve had troubles getting over 40 FPS without clouds, out in the woods, down to 15-25 at international airports.
Checking in developer mode it flickers between limited by mainthread and limited by GPU, however neither of them are running at its full power (CPU 20% and GPU 70-80%) and their temperatures are within the normal.
20% CPU usage you’re seeing is an average of all cores.
Use Xbox game bar or MSI afterburner to display per core cpu usage. You will find that when it says Mainthread Limited, one of your CPU core is maxing out.
DX11 rendering uses one main thread with secondary threads to handle other workshops. Once that main thread gets maxed out at 100%, you’re effectively CPU bottlenecked even though total CPU usage will be well under 100%. This is a limitation of DX11, and most people here running under 4K will have this issue.
Your 3070 isn’t running at 100% because your resolution is at 1440p, something it can handle easily. If you crank up your render resolution higher, you’ll start to see this get closer to 100% load as rendering at or near 4K is harder on your GPU.
Not really, this is mainly a limitation of DX11 rendering. You’re right in your assumption that DX12 should help prevent bottlenecking on one thread, but whether or not it’ll actually help performance is still the million dollar question. Rendering resolution is the biggest impact on GPU load, but bumping it up to 4K or increasing render scaling will just trade CPU bottleneck for a GPU bottleneck.
What type of in-game settings do you have? There’s some that affect the CPU more than others. Probably the biggest right now is LOD - I’d keep it at 200 if you’re concerned about being limited by the main thread. Perhaps if you post a picture of your settings, I can help guide. It should be worth pointing out that having your main thread being the bottleneck isn’t necessarily a “bad” thing. Even on my rig with a 5950x and 3090 at near 4K resolution, I’m limited by the main thread probably 75% of the time.
To be honest, your settings look pretty conservative. You can try to move render scaling <100 at the cost of a slight reduction in image quality, but I wouldn’t recommend it unless you want a very easy way to net a few frames. Setting this to 80 or 90% will help, and the image quality shouldn’t suffer that much. Bring up anistrotropic filtering to 16X - this has almost no effect on performance on modern cards. Turn down the shadow maps a notch or two - this can have a pretty big impact, but less so on a 3070.
Just a suggestion:
You could try the following: All graphics settings at Ultra, terrain and objects LOD at 200
Then reduce AI and vehicle traffic to 25 as it is taxing the CPU.
See how it affects the game experience and FPS, then increase the traffic sliders gradually.