CPU Bug "Limited by Main Thread" is causing the bad FPS

so, single thread? Task Man, Resource Monitor and my RTSS all saying otherwise.

first off, im not making excuses for anyone, let alone Asobo, ive dealt plenty enough criticism to them and continue to do so.

second off, stop singling me out.

my CS Master’s Degree is enough to drown out all the rest of my education background single handedly. and ive been doing this long enough on top of that. 18 years is quite long

When you do get a PhD in tuning FS2020, it turns out a detailed knowledge of which settings affect the cpu and which affect the gpu is a crucial piece of information (I agree the cpu limits the game, but not if your gpu is limiting it first).

My key question is does anyone know of better info than this awesome post by TheOriginalBabu:

The info in it is great (and it surprises me how little it’s used) but I think it was written before it became clear that the need for players (sorry) to tune their CPU usage was going to be widespread.

So any good new post on settings/cpu impact or is TheOriginalBabu the only analysis?

2 Likes

Babu and I made plenty of progress on that thread and the linked thread here comes from the tweaking during the alpha phase. so, he is pretty spot on, and a decent portion of that information is collaborative between myself, Babu and several others.

1 Like

Be interesting to see what ‘significant’ improvements Asobo have made come the next patch.

I agree there does seem to be some correlation between performance this game and the under utilisation of system resources.

It’s definitely not just using a single core though having said that (and I’m no expert) in my experience plenty of games these days do utilise multiple cores but do tend lean on single threaded performance for the majority of their workload so this tends to make more of a substantial difference.

“Limited by Main thread” is not a “CPU bug”. I had to smile at this title.

It is basically only a hint that the system would run faster if you take load from the CPU, at which point it would become “limited by GPU”. Then you take load off the GPU and the cycle repeats.

CPU usage is imo good, better than in other flight sims, especially the use of multiple core. Of course MSFS could get more CPU time but at some point the system would become unresponsive. There are multiple processes running in the background that handle other, absolutely necessary things, and no application should soak up every available processor cycle.

In that respect the current usage may be a bit conservative and could be tweaked somewhat but 100% was never on the cards.

thanks CapStar & the effort that went into the original ‘Babu’ post - was your ‘here’ (as quote above) a link?

I think AI traffic, Terrain LOD and Object LOD are the three settings that most affect the CPU demand (right or wrong from TheOriginalBabu post?) so the most important settings to adjust if you’re cpu limited. This absolutely isn’t a clear comment on any "cpu problem’ thread which makes me think this is unimportant compared to changing Windows settings?

I guess it depends whether fs2020 cpu demand is a bug, or whether it’s a resource that can be managed by scaling back appropriate settings like the gpu.

1 Like

windows settings refers to Power Profiles and the settings contained within them. there is a hidden “Ultimate Performance” plan

among other settings in various places that give and take from performance system wise

Is my interpretation of your data in the original Babu post correct tho?

for the most part yes, we did indepth testing of all the settings and logged the results verbosely

Yet again a really agressive response.

Sure, you have MCSE etc. They are system architect qualifications. I know since I’ve seen family member of mine go through and get those qualifications - MCSE, MSE, CCIE (x2) etc etc etc. I don’t really see that it’s relevant here as @MSGX88 points out.

Now, to address some of the points you’ve made as I still think we’re talking at cross purposes here.

  1. Regarding RTX, you seem to be misunderstanding this. I’m not saying it’s mandatory on - no game is. What I mean by this game not being RTX-ON is that this game does not support RTX in any form since this needs to be implemented directly into the game code at time of development! Therefore, anyone with an RTX card is not running RTX on in this game as they cannot. It’s simply not possible. This game does not support it so it cannot be having an impact since it’s not being used! Some reading on this subject would help you out.

  2. You say you’re not new to this topic by which I take it that you’ve explored issues like this elsewhere. What I am saying is that you seemed new to this exact thread - this exact section of the forum which started on Aug 22nd and is entitled “CPU Bug “Limited by Main Thread” is causing the bad FPS”. The reason I felt that you were new is that your response was not in-keeping and was not really all that helpful. I don’t understand why you’re getting so defensive about it. If you’ve read all 350 (at time of writing) responses to this thread then I take it back - it just didn’t seem that you’d been in this particular thread all the way from the start.

  3. You say you’re not going to spend 2 hours summarising the alpha thread etc. Question is, why mention it in the first place then? It’s like saying “I’ve got the cure for cancer - not going to tell you what it is though.” Surely a simple generalisation would be good enough - “it’s caused by X, do Y to fix”.

  4. Your comments about DX12 seem very confused. Sure, maybe older versions of windows etc didn’t have native DX12 support, but that doesn’t help MSFS since it’s not a DX12 game at current - same as how it’s not an RTX-ON game. Having native or non-native DX12 support makes no difference if the game isn’t using DX12 in the first place. I don’t see why you’ve brought this up.

  5. Your comments regarding single thread performance seem to show a lack of understanding on your part. We’re not saying that it’s only running on one core - far from it. What we’re saying is that there is a single core tying together all of the work the other cores are doing - the “Main Thread” if you will. If this 1 core is being utilised 100% - it doesn’t matter what the other cores are doing, they’ll be held up by the one compiling all their outputs and sending it to the GPU for rendering. So, in situations where you’re CPU bound (in this game - near cities and when lots of textures are being loaded - not high up in the air where you’re generally GPU bound) you can see that one CPU core is maxxed out, while the others have lower utilisation - see picture below:

If you consider this in the context of the developer tools section, it shows how many milliseconds your different components are taking to do what they need to for each frame. If the CPU has a higher number than the GPU, you are CPU bound. The CPU number is being bound by how much that core with 100% utilisation can pump out since it is the one that is pulling together all the info from the other cores to feed to the GPU - it is “Limited by Main Thread”. Hence, where the CPU has a lot to do for each frame (like in cities etc), it’s number is higher than the GPU and you are bottlenecked by the CPU. If you’re high in the air, the CPU has less work to do, and the frame rates increase until the GPU cannot give you any more. Then you’re GPU bottlenecked.

  1. With your final paragraph - you’re essentially pointing the finger at all of us and saying that we don’t know what we’re doing while simultaneously refusing to help. This leads me to question why you replied to this thread in the first place since all you’ve done with your responses so far is say it’s not a problem for you (good - I’m happy for you) and then point fingers at others very aggressively while not offering any help.

  2. You essentially say that perhaps Asobos understanding of English is poor and that what they’ve written into their developer tools may not be accurate. My question is, if this were the case, do you not think someone internally would have picked this up by now? The French for “Limited by Main Thread” is not that different to the English - it’s “Limité par Main Thread”. So I very much doubt that when it says “Limited by Main Thread”, then it means something entirely different.

Finally, there are a number of other Alpha testers who have been very active on this thread. I understand that mere release customers like me won’t have access - they will. So, why don’t you post the link to the alpha section and those who can access it can read it, implement the changes and report back here as to whether they helped. If they do, maybe they can be bothered to summarise and help us all out, or at the very least, confirm it’s existence and confirm that we are indeed barking up the wrong tree and save us all some time.

7 Likes

see how your CPU usage differs from mine?

then obviously something is different on your end than my end. notice how all my cores and threads are balanced?

falls right back to, you have something set differently than i do. explore all your settings and tune them till you get the best results just like i spent the 6 days worth doing so.

here is another example of all 3 of my screens, notice the near perfect balance of my CPU?

And another one showing pegged CPU during scenery loading in.

and a third, after the scenery loading, showing equal tasking.


sorry, but you are going to have to find out why your CPU is tasking its single thread issues that way. ive figured out mine

sorry wrong initial image

no, i will not post a alpha link, to this section of the forums, I AM NOT ALLOWED TO DO SO.

Yeah, I can see that your CPU usage differs (edit - actually, in 2 of the 3 situations you’ve posted you also seem to be CPU bottlenecked).

I can also see how the playing situation differs. From the screenshots you posted, you seem to be GPU bound - GPU utilisation up between 96% and 106% (???). If you were to try that same flight again with the developer tools on, I guess you’d see “Limited by GPU” not “Limited by Main Thread”. This is also the case for me when I’m up in the air like that. My FPS is around 70 and it says “Limited by GPU” - perfectly undestandable.

What we’re all talking about is when this changes to “Limited by Main Thread”. This screenshot was taken simply on the ground in Barcelona El Prat in a Cirrus SR22 sat at the end of the runway. Since this airport is very close to the center and has photogrammetry for La Segrada Familia, it’s using lots of CPU resource for doing that. This means that I’m being limited by my CPU load. As you can see, this is causing my CPU to be used 100% on one core, meaning I’m limited by single core performance.

You’ve previously said I’m catagorically wrong on that but the proof is in that image and your own response to it.

Now, since this doesn’t seem to be getting us anywhere, I don’t think there’s much more to discuss. I posted by conclusions (in post 331) and I stand by them. Without the developers improving the game engine and/or implementing DX12 support, then most of us will continue to be CPU limited most of the time unless we go about overclocking the CPU. I also stand by that adding more CPU cores will not make it better if they are running at the same number of calculations per cycle and the clock speeds are the same. This is because it’s the single core performance of the CPU which is holding us back, not overall CPU usage.

Finally, I heavily doubt that posting a link (which presumably is protected by a login etc) violates your NDA.

3 Likes

read that and then stop barking at me about the rules of Alpha testers posting links and information contained in the alpha.

the only two things you have not told me, is what power plan are you running ( and having attempted to unhide the “Ultimate Perf” power plan, ) and if you have checked your CPU Park status and tasking limits.

and if you cant figure out how im getting 106% GPU Usage, google it.

other than that, im done talking to you. figure out your CPU with others.

1 Like

Read.

Nowhere does it say that you’re not allowed to post a hyperlink which you’d need to log into. This is not sharing pictures, videos or information from previous test builds, nor is it comparing test builds to release.

An alpha tester should be able to follow the link to somewhere they’re allowed to have access to while others like me will not. No issue there.

As for the other 2 things - yes I’m running in ultimate performance power plan.

When it comes to CPU parking, I don’t know much about it. This is perhaps where you can become really helpful to a large number of us on this thread since it may well help our problem. Are you able to explain what it is and how we’re able to use this to help us?

And I’m not barking mate. I’ve tried to be really measured in my responses. I’d appreciate the same.

5 Likes

post links to the closed alpha section or revealing the —> INFORMATION <— contained within that section to the PUBLIC RELEASE section is NOT ALLOWED.

says it right there in the post:

PERIOD POINT BLANK END OF DEBATE.

send a message to the Community staff if you dont believe me. im sick of arguing that with you, you are borderline asking for me to block you because you seem to know the rules better than anyone else yet, you havent even been part of these forums for more than 3 weeks.
YOU WERE NOT A ALPHA, I WAS, I KNOW THE RULES. I AM NOT GOING TO POST A LINK THAT VIOLATES THE RULES… !!! is it THAT hard for you to accept that?


now, CPU Parking and Tasking Limits -

get this little app

watch your CPU during sim activity and see if any of your cores/threads go grey, if they do, disable CPU Parking outright.

come back then tweak your settings in the NV CPL for DSR, AA/AF Settings, Threaded Optimization, the entire list of settings, it takes time to figure out the best settings. your settings will differ from mine.

say one more thing about posting links or information from the Alpha section of the forums and you will find all this information gone.

@anon33898240 is correct. The NDA Reminder posted by Microsoft makes this clear. This forum is for the discussion of the release version of MSFS only. Thank you.

1 Like

There’s no need you be so aggressive. We disagree about the rules, sure. We seem to have a different interpretation. But there’s no need to be so aggressive.

And as for “all this information”, you’ve given a link to an app - ParkControl.

As far as I’m aware, you’re not a moderator and aren’t able to simply block me from the forums because you have a personal grievance with me.

I’ll take a look at the app but don’t be so aggressive. There’s no need. Everything flows better if you simply keep things chill and provide reasoned arguments, backed up with evidence.

6 Likes

Thanks for the clarification @Sartanius.

It’s unfortunate to see that even links to closed sections of the forums which only alpha testers would have access to is seen as information.

None-the-less, thanks for clearing that up.

5 Likes

actually, i can block you. personally on my end, personal blocks that prevent you from interacting with me or even seeing any of my posts, if i so desire.

no need for a mod to do that. it’s called personal block list, just like facebook and social media does.

and you are itching my fingers to click it.