"Out of Memory" Crash - Remember those days. Stable is better than Spectacular

With a previous version of simulator, many of us were plagued with crashes that were not a result of piloting skills. I had a pretty good system but there was a choice forced upon me. Either I could watch a slide show of amazing graphics or I could reduce visibility down to 10 miles, turn off all the boats, cars and other air traffic and fly.

15 or 20 years later leaps and bounds have been made in computer technology. I did an upgrade. Intel i5-8400, NVidia 2060 Super and 32GB of RAM. Of course moving up a couple generations meant a new MB too. I was excited. The latest flight sim was about to hit the market and promised wonderful things.

You know, I have been around through a lot of technological advances and should have been smarter. I have watched sim after sim be released. Each one pushing the hardware market to catch up. Countless magazine (remember those?) articles challenged the manufacturers to develop a chip that would allow the full potential of the current flight sim. Then the next sim would be released and the hardware would fall to it’s knees.

Nothing has changed. I am reminded daily that our current generation of simmers have expectations that exceed the capability of the hardware. We still see systems collapsing under the demand put on them. This is not isolated to simulators. There are plenty of game titles that require hi end systems to play at anything near max settings. I long ago learned that before I started playing in earnest, I needed to shut down all the pretty features and slowly turn up the ones import to me until I had a stable, smooth gameplay.

“Out of Memory” crashes were more due to bitwise limitations of old, but a whole myriad of new, insidious failures have replaced them. The requirement is still, “start with the basics”. The list of resource hogs in MSFS is extensive.

  • Live Weather
  • AI Traffic
  • Live Traffic
  • Multiplayer Traffic
  • Airport Aircraft Traffic
  • Airport Vehicle Traffic
  • Road Traffic
  • Boat Traffic
  • Ferry Traffic
  • Animals in the wild!
  • Birds!

And that doesn’t even get into all the different display resolutions, graphics density and quality settings. Then we have photogrammetry and detailed landmarks! All these wonderful features take up resources and add additional computational threads that are needed to make the cars (mostly) follow the road and the moose wander the forest meadows.

If you, for one moment believe that the computer beside your desk is capable of running all those bits at 100% at 4k resolution while displaying all the other simpilots, real time air traffic and artificially generated “fill the skies” traffic, you are delusional. Alien Ware is not actually alien technology. The Men in Black have not seen fit to share that tech with us.

To get the most out of your MSFS experience you need to start turning OFF features that really don’t impact the immersion.

  • Is it a requirement to have animals roaming the bush?
  • Do you experience a difference having bumper to bumper traffic on every rural road in the known world?
  • When busy with an approach into SeaTac in an A320, does it seem unrealistic to NOT have fishing boats and ferries plying the sound.

I just read a post where a user had tweaked his USERCFG file to 800% LOD! Really!? the single greatest impact on performance is the number of things the computer needs to draw and the detail/textures needed to put them on the screen. Do you really think that your immersion is impacted by a lack of bar stools displayed in the terminal lounge, at a neighboring airport?

I know everyone’s demands are different and we “payed a pile of hard earned cash” to get this software. Reality is, if you would like to USE the software you bought, you really need to be realistic about the stuff on the screen. I have ancient eyes and yet I can still read the gauges on a 42" tv (NOT even a real monitor) at 1080 resolution. I am happily flying, with NO CTDs, at very acceptable frame rates and enjoying smooth, stutter free (mostly) skies.

I know, some of you have an unlucky hardware combination that MSFS doesn’t play well with. The developers are working steadily on CTD bugs just for you. The rest? You need to find your personal slider that controls expectations and slide it all the way left. Then shut off EVERY extraneous feature in the sim and dial back the settings to 0. (that includes resolution) Then take a bit of time to dial back in the stuff that REALLY matters to YOU. Don’t just turn ON marine traffic. Start with 5% and add a bit if needed. If you have all the important stuff turned up and you are rocking a smooth, stutter free simulation, STOP THERE. Don’t keep turning stuff up just because you can. If you were “immersed” with 20% road traffic, why would you need 30%?

Disable developer mode and all the rest of your monitoring software. Just fly. You will know when it looks good.

The optometrist doesn’t use a gauge to measure your vision,

he asks, “Is it better like this
, 
or like this?”

7 Likes

Q: did you actually experience a memory shortage crash ? Where was that ? I’ve chased the birds and giraffes as well in MSFS and I’ve only 16GB. The only scenery I know of in this game that takes all my memory within minutes is London. Elsewhere total use remains below 11GB. But even if I fly over London, I don’t experience memory crashes and I’ve less memory than you
 and I’ve put most of my options on Medium, also the expensive ones. I wonder why you put this alarming title
 what’s your FpS ?

1 Like

FS2009 thru FSX - “Remember those days”

“Out of Memory” crashes were more due to bitwise limitations of old

Aha so you’re opening a topic about memory crashes in FS2009 and FSX, ok
 :smiley_cat:

You advise the members of this forum to set everything low. If you do that, you’ll miss a lot. I would say choose your settings with a scenery you like or visit often, then tune down carefully until performance suits you. A good measure for performance is frame rate, that is Frames per second, FpS. What’s your frame rate ? for 2060/32GB it should be quite flyable
 more than 25


I think some people are really obsessed with 120+ fps with the best possible detail! The fact is, no generally available current machine is goign to give you that (there may be some hero machine that just might, but it woudl also be impractical, or super expensive).

I dont get obsessed with FPS, I cant anyway, i have a GTX 1080 8Gb, I do have a 4k professional monitor, but its fixed at 60 fps, I have an older Ryzen 1800x, I play the game at 4k. I really dont care about the odd stutter or the occasional drop to bellow 20fps. In general the game plays well enough for me to fly and enjoy.

I also dont get any CTD, but i am not overclocking agressively, I shutdown unessesary processes, like iCUE, and i am dont mess with too many “tweaks”, which when done wrongly cause more harm than help.

And before you think i am not a techie, i am a developer for over 40 years, and have worked on many large performance oriented projects, i have also been building computers for over 30 years.

AS such I choose a suitable set of settigns that allow the game to remain playable at 4K on my system and just enjoy. I dont run FPS meters, or anything, just try and fly.

2 Likes

Memory is only a small part of what makes this title struggle. Each ‘thing’ doing something in your simulated world requires a ‘thread’. I don’t know what your process understanding level is but in simple terms programs execute a list of instructions, one at a time. Multitasking is not really a thing. Computers today are capable of so many instructions per second that they are capable of sharing the ticks of the clock.

  • tick - thread one executes an instruction
  • tick - thread two executes an instruction
  • tick - thread one executes another instruction
  • 
 and on it goes

Without threads, a new process can’t execute until the first one is done. Now they can run side by side but only because each tick the computer is hopping back and forth. Each thread created just means another process sharing the clock. If you have 1000 threads executing then there will be 1000 ticks between thread 1 executing step 1 and step 2. This is over simplified but you get the idea. 1000 cars, 100 boats, 50 birds, 25 airplanes, water waves, clouds moving, on and on it goes. Each one needing a thread to execute its instructions.

So you see. Memory is how the computer stores the instructions that all those threads need. The instructions may not need a lot of memory to calculate pixel positions and what thread is doing what, but the time it takes to get to the next instruction in the main thread is governed by the number of threads running. Sometimes, just like you and me, the main thread just runs out of patience while waiting it’s turn and it throws a fit.

You don’t miss what you never had. There are soo many here that are spending more time on the desktop than in the cockpit. Often times, an overloaded system will have threads timing out that were supposed to provide critical data to another thread that then looks into a memory location for the information it is expecting only to find something meaningless. Now you are back on the desktop.

By starting at zero and working your way up, you never turn on the things that don’t matter. The right process is to list your must have in order of importance. Maximize the first one until it starts to impact performance. Then proceed to item two on your list. If you need to turn item 1 down a bit to get item 2 acceptable then so be it. You may, in the end find that you have lots of features turned off.

Realizing that you can’t have all the features is the first step to “Sim Salvation”. Will you get to see those things “you are missing”? Maybe. One day the NEXT generation of computer MAY allow you to turn the animals back on. But don’t bet on it.

1 Like

You mean context switching. But a modern quad core is not “hopping” that much
 Threads are parked in a thread pool when not used. This thread pool is most effective, when you allocate one thread per core. As a result, there is only context switching in certain events, say Gauges on your dashboard get updated. But the rendering (scene drawing) is not so multi-multi threaded as you seem to think. In DX-11, the technology this simulator was built upon when development started, Microsoft required programmers to use only ONE thread for the rendering loop. This has changed in DX-12, MSFS took a lot of effort to integrate things, but MSFS basic architecture still has a very buzzy “main thread” running. You can see that in the actual performance report you get, if you switch on SDK, choose Options/Show FPS.

Have you looked at the number of active threads MSFS is using. (Placing call to Men in Black for a 2300 core CPU :slight_smile: )

Actually I wasn’t even thinking of the rendering. Other than the “next” computation, there is really no need to share resources with the CPU. Drawing pretty pictures is done soo much better by the GPU.

I was really just thinking of all the calculations required to decide


  • where is car 1? Is it on the road? How far will it have moved when we have to redraw it?
  • where is car 2? 

  • where is boat 1? 

  • let’s ask the server what airliners are in our area. Are any of them new? Lets start a new thread to manage its flight plan.

There is a lot of stuff going on, between frame draws. each of those threads need to be pulled from the pool and executed to figure out WHAT needs to be drawn, long before we worry about rendering anything. Just fire up the task manager performance graphs and start turn up traffic and boats and cars. It won’t be long before the GPU load starts to fall off and the CPU load starts banging its head(s) on the ceiling. “LIMITED BY MAIN THREAD” simply means the GPU has plenty of leisure time while it waits for the CPU to figure out what it should draw next. The best scenario would be for the CPU to be waiting for the GPU to finish drawing so it can send the next picture.

The amount of work the GPU needs to do is only based on the resolution of the picture. 2 million pixels is 2 million pixels. The CPU needs to be able to calculate what those pixels represent. don’t limit its time by making it figure out where the killer whale is.

Well I’ve not seen any directional intelligence in cars :smiley_cat: they seem to follow a base plane at random. That can be done easily with a controlled animation, in some way this AI traffic behaves is like a particle model. “Brownian movements” haha

Absolutely. Traffic is upload-intensive process. The CPU maintains the movements, the GPU has to render them. You can have 10.000 cars but when each car only has 20 triangles, you can put all that traffic in the same frame you put e.g. St Paul’s Cathedral. But your CPU is sweating ! It has to compute all these coordinate targets. These are simple models (look at it, very funny sometimes)

In the recent past, I’ve fiddled some things in VS2019 and both versions of DX, and I can assure you a GPU and a CPU must be closely orchestrated. The GPU organizes its own threads (and is massively parallel !) and the CPU delivers skeleton and texture data, which is “dressed” in the GPU shaders. Most work is done in the GPU. But pumping all that data into the GPU represents most work. As far as I know threading is not per scenery or per animated object. These animated objects are like “smart” particles handled by a particle shader, their direction and position are put in one buffer, all at once by a single thread. Cars in sight will be rendered, but the viewport itself is handled in the GPU not in the CPU. The CPU does not have to steer the cars, the GPU does that. All these thread handles you see in mem manager are no running threads, they are to be woken up when a semaphore is set, when the next load of car coordinate targets must be computed. In effect, ca 2296 of these 2300 threads are waiting for events. That means they are woken up by monitor processes.

Threads on the PC side are mainly allocated to inspect and update data queue content. There’s a LOT of that while you fly. The horizon will add new scenery that has to be loaded by the CPU at first. The faster you go and the higher you fly, the more CPU cycles you will need to keep up. If you have e.g. a normal harddisk, it’s no use to buy 3090/64GB hardware, because your hard disk drive will set a limit to performance. You’ll never have the performance of an SSD.

DX12 is coming


All of this is true. It is also beyond the understanding and interest of most users.
My point in this is that reducing the amount of work required by the computer dealing with a bunch of stuff that you will never notice or even see in most cases doesn’t enhance the user experience. Reduce the load. Turn down or off stuff that doesn’t matter (to you) and find the sweet spot for your system. You CAN’T have it all. you will have to sacrifice something to get the smooth hi quality experience we all want.

You can’t have it all but I prefer to start somewhere up high :slight_smile:

As of cars, when you’re flying at about 1000Ft, cars start to become small like pixels, you would not miss them. I like to fly scenery, and I often notice on approach it is much slower than after flying for a while inside the scenery itself. Once you arrived and start fly in circles, large parts of your surroundings maybe already loaded into the GPU. All it needs is a trigger.

I think some people have an unrealistic expectation of what they can expect out of MSFS. To reach 60 fps at all Ultra 4K is not unattainable to someone with top tier hardware. However, due to the complexity of the sim, maintaining that is not realistic. At least not on today’s hardware.

For me, it’s all about consistent, smooth experience. If I can maintain 30+ fps consistently, I’d be happy. Unfortunately, since WU3, I struggle to maintain 30 fps in any consistent manner regardless how low I set my settings. I miss the 45+ fps days at all ultra from launch. There were a lot of microstutters and really busy areas were performance black holes, but I never dipped below 30 fps. And it was lovely. I wish I could get that back.

The issue I see with that is that often you will end up with features that don’t matter left on, using resources that could allow turning up something you want without impacting performance. Starting with nothing and bringing in the stuff you want optimizes your performance.

I touch my settings very often. I run low line graphics here, so I need to tune it. When I fly e.g. Skerries, I set LOD and field of view optimal, the rest to medium. I fly up there, find a nice place, set everything to Ultra and put a drone
 wait for a while (!) and then take a screenshot. After that, I put everything back to medium, start throttle back to the airport
 and if it that is some big airport, I tune it again. I set grass, trees, lighting options and texture sampling all to low, before I land. When you move your airplane
 you don’t need texture sampling, you can also do without anisotropic filters and all that stuff
 when you move you need the Fps.

That is the importance of tuning to personal preferences. Since I installed the sim on release day. I have never even used the drone. I can count the number of times I used external view on one hand. When I fly VFR I am looking for landmarks. Couldn’t care less about cars, boats and animals. where I spent the majority of my career flying I may see 1 vehicle in two hours following a road.

I am far more interested in quality weather effects. They help challenge my navigational skills. Even in real life, the amount of time I spent looking at buildings does not justify super detailed parking lots or recognizable pubs. If a VFR route into a busy airport requires reporting over the cement plant, it is nice if the AI made it look like one but it isn’t critical to my flight.

If I am flying IFR then the approach lights are of much higher priority than the accuracy of Robinson’s Treehouse while on approach to John Wayne. (next door to Disneyland)

1 Like

Great post !

1 Like

Reading Comprehension – You used to have to get a reasonable score on the college entrance exams to get in.

Willis’ whole point is that this sim is just like all others in the past in terms of pushing the STATE OF THE ART computers to their limit. It is an exercise in frustration to start with all features on and at their highest, and then tune down until it works.

I agree with him on the approach of starting low – starting with a configuration you know will work well on your computer – then tune UP little by little, only turning on things that you can’t live without.

From what I’ve read on this forum, very few people can afford to – or are willing to – spend the kind of money it takes to buy a top end computer, monitor, flight control peripherals, etc. So don’t expect to run the sim at top end, either. Everybody doesn’t get a trophy in this game.

We all know the sim is young and going through growing pains. I’m 6’4" tall and grew about 3" over a period of 1 year. It was indeed painful, both physically and mentally. But there was nothing my parents could do other than buy me new clothes as needed and give me time to get through the growth spurt. That’s all we can do here, too.

2 Likes

What a fitting (excuse the pun) username, then. :wink:

1 Like

Thanks for that. :slight_smile:
Hopefully it helps some of the folks having stuttering, bad frame rates, and CTD.