MSFS: Windows Environment Settings

In this article we look at the settings that contribute to the Windows environment in which Microsoft Flight Simulator is running.

This article is a subsection of
How to Optimise MSFS for VR

Windows Game Mode (off)

Location:

  • Type Game Mode in the taskbar search box

I no longer use game mode, however, its worth testing for yourself since MSFS recommends it in the ZenDesk support site.

Microsoft Flight Simulator MSFS

Windows Game Mode itself says it will prioritise the game you are using and prevent background downloading from occurring at the same time. Having said that, there are many hardcore simmers out there that insist this should be turned off.

Windows Power Plan

Location:

  • Type Power Plan in the taskbar search box to open your Power Options dialogue.

You should check to see what your power options are set to currently. High Performance is the safer option if you aren’t sure what to do but is not necessarily the best setting overall: as you can see in the Graphics Performance Preference section, you can set the power plan and thread priority to high performance just for MSFS.

!! Warning !!
High Performance on laptops since will degrade the battery faster than the savings modes.

Microsoft Flight Simulator MSFS

Ideally you will benchmark your GPU using both the high performance and balanced options to see if there is a practical difference between the two. It makes sense that MSFS will be given all the power needed once loaded, so I hoped that I could switch my computer to a lower power mode.

The surprise result was that the balanced power mode scored better than the performance mode, so I will have no need to keep everything on high when not needed. Note that this benchmark result is not affected by my Graphics Settings power plan which is set specifically to support MSFS, not the benchmark software used here.

CPU Max Setting

Location:

  • Type Power Plan in the taskbar search box to open your Power Options dialogue.
  • Select: Change Plan Settings
  • Select: Change Advanced Power Settings
  • Find: Processor Power Management

Your The Maximum Processor State is set to 100 by default, and in MSFS this will give you access to the full amount of boost you may have applied via the BIOS or custom overclocking. Its worth checking if you have ever adjusted it.

The max processor speed affects heat generation

For example: the Handbrake video converter does not give the CPU a rest and drove the temperature to over 90°C, uncomfortably close to its limit. By adjusting the Maximum Processor State to 99% the heat of the CPU dropped by 15°C. In theory the CPU will protect itself via thermal throttling, but I’d rather not be in that position in the first place. However, with the CPU at 99%, the clock frequency for the CPUs dropped back to their base frequency of 3600 MHz.

10 cores running in their boosted state

Note that the boosted state (5000 MHz) was provided by default overclocking provided by the MSI BIOS and the windows power modes.

Windows Graphics Settings

Location:

  • Type Graphics Settings in the taskbar search box

Each of the settings are discussed below.

Microsoft Flight Simulator MSFS

Hardware Accelerated GPU Scheduling (HAGS, off)

Location:

  • Type Graphics Settings in the taskbar search box

NVidia drivers have build notes that recently indicated whether the GPU-assisted scheduling should be set on or off, but be aware that VR displays may respond differently to the 2D equivalents. Also bear in mind that you will need to restart the PC for changes to take effect.

When ‘on’, this setting will move time-slicing from a high-priority thread to the GPU hardware. It is intended to decrease latency and overhead in thread scheduling for work executed within the GPU. Overall I found this option to be a little harsh compared to the software equivalent and was visible in the micro steps made by the landscape as it passed by

The biggest difference between GPU scheduling or not is how the system reacts to overload. The GPU scheduled version is strict and tends to stutter more noticeably and more often than the non-GPU version. The non-GPU version has a softer response, which is a plus, but the mouse became inactive fairly often when in Windowed mode which I was using to help the testing. No doubt, this effect came and went as the GPU usage exceeded 90% capacity but moving the sim from windowed mode to full screen mode cleared that problem up.

Variable Refresh Rate

Location:

  • Type Graphics Settings in the taskbar search box

When ‘on’, this setting will support adaptive rates in DX11 games. Adaptive rates will allow increased frame rates when possible. The extra frames will aid ASW/Reprojection which uses the most recent frame to generate a new frame when required. Younger frames will require less reprojection than older ones, so the end result is more accurate and should cause less smearing.

Own the other hand if you are going for a constant 30Hz refresh rate backed by a matching ASW / Reprojection value of 30, this value will be ‘off’.

Graphics Performance Preference (on)

Location:

  • Type Graphics Settings in the taskbar search panel

Add MSFS to the performance list in order to control its power mode when it is run, then click on the options panel to select High performance.

Microsoft Flight Simulator MSFS
The Power Plan can be changed to high performance for just the selected application. This appears to raise the thread priority.

By using the Graphics Performance Preference there will be no need to set a high performance plan for the whole computer, and no need to manually raise the thread priority of the flight sim executable each time you run the sim – this will happen automatically.

Processes started by a user or administrator will have a root thread priority of 8 (‘normal’). When the MSFS executable is set to High Performance mode it’s root thread priority is set to 10 (‘above normal’).

Microsoft Flight Simulator MSFS
The properties display of Process Explorer showing that the root thread of MSFS is running at an elevated priority.

Note 1:
Task Manager’s thread priority ‘set’ command has a pre-selected option that doesn’t necessarily represent the current thread priority value displayed in other applications. I assume that Task Manager does not read the current state of the thread in order to build its settings menu although it does remember and display its own internal state.

Note 2:
I have yet to determine the effect of mixing the Foreground High-Performance setting here and the Background Performance Enabled setting. At the moment I have both enabled and it working well.

Performance Allocation to Foreground or Background

Location:

  • Type Performance into the taskbar search box
  • Select the result entitled Adjust the Appearance and Performance of Windows
  • Select the Advanced tab

or

  • Start > Right Click Menu > System > Advanced System Settings (on the right hand side)
  • In the dialogue select the ‘Advanced’ tab
  • Choose an option in the ‘Processor Scheduling’ group

The dialogue related to this section is called Performance Options. On the advanced tab, you can choose to give background services priority over foreground programs. This is something you would normally set for a server since the user interface is not the main purpose of the machine.

Microsoft Flight Simulator MSFS

There is divergence of opinion on how to handle the execution priority of MSFS:

  1. On the one hand you can take the obvious route of pumping it up (see Graphics Performance Preference)
  2. but there is a second method (see Performance Allocation) whereby you can change Windows to prefer supporting background services and switch of execution enhancement for MSFS. This might allow the headset and other processes to run more smoothly.

Enhancing background support contradicts other advice in this article series that suggests you set MSFS to a higher priority. You will need to bear in mind that there is more than one way to configure all of the available options to reach your goal and experiment to find the combination that works for your hardware and preferences.

Windows Page File

Location:

  • Type: Adjust the appearance and performance of windows in the taskbar search box
  • Select the Advanced tab
  • Refer to the Virtual Memory group box

A Page File is a block of memory on a hard drive that is used as an extension of the RAM for:

  1. For the OS to use for own reasons
  2. As performance safety net if you run out of memory for the applications you have loaded.

The OS will always want to use the Page File for its own purposes even if you have a lot of excess main memory available, but you can aid MSFS Sim performance by installing enough RAM for the whole sim to run in. Before you decide what to do, measure your RAM requirement as detailed below.

Note:
Since Sim Update 5 you should be OK to ignore the page file if you have at least 32 Gb of RAM. If you have 16 Gb of RAM, the page file will be need to be about 10 Gb in size (see below).

Disk Capacity & Page File

Just a note to say that if your hard disk is full, this will also affect the performance of the page file due to fragmentation. The extra effort of juggling the fragments will build up exponentially, therefore it’s a healthy thing to have excess disk space as well as excess RAM.

If possible its better not to have anything running near its limits, including the power supply, for example.

How to Determine the Page File Size

To determine the size of the page file you will need to measure the maximum amount of memory that your system uses when MSFS and all of your addons & tools are loaded. In the tool that I am suggesting below, this is called the Peak Commit Value.

The Peak Commit value is the maximum amount of memory your system needs to operate in the way you are using it. This includes Windows, MSFS and all the tools and meshes that you have loaded while you are flying. What you should do is maximise this number by taking MSFS through its worst-case flying scenario and add video recording and anything else you might want to use at the same time.

Although you can find the current usage in the task manager memory usage tab this is not the most convenient way to measure it. Instead, download Process Explorer then run it look for the Peak Commit Charge on display at:

Process Explorer > Menu > View > System Information

Look in the Commit Charge (K) group box and find Peak. Unlike the task manager, the peak value shown here is a record of the maximum value recorded since you opened Process Explorer.

25.4 GB is the maximum memory usage measured after Update 5.
This is significantly less than before.

The Page File Calculation

Once you know your Peak Commit Charge (maximum memory usage):

Page file size = Peak Commit Charge – system RAM size

  • If the page file size is negative, you don’t have a problem so enable an automatically managed paging file.
  • If the page file size is positive set the Initial Size to your calculated value and the maximum size to any reasonable higher number, for example twice the initial size.

An Example

In the screenshot shown above, the total memory usage recorded is 25.4 GB. This is far less than before MSFS Sim Update 5 and will run in a 32 GB system without a problem. If you have 16 GB of system RAM, the page file start value should be set to (26 – 16 =) 10 Gb and limited to a maximum of 20 GB.

How to Modify the Page File Size

To change the page file size:

  • Type Performance in the taskbar search box
  • Select ‘adjust the appearance and performance of windows‘ to locate the performance options dialogue box.
  • Select the Advanced tab
  • Locate the Virtual Memory group box and select Change.
  • Deselect ‘automatically manage paging file size’ if you need to set a custom size
  • Select the drive where Windows 10 is installed, normally C drive
  • Select ‘custom size’
  • Type in the number of gigabytes you want, the bearing in mind the text box is scaled to megabytes.

The Page File Location

The location of the Page File is significant since an M.2 drive can be up to 10 times faster than an SSD. However, the page file is part of Windows and so in effect you should use your fastest drive as the default C drive upon which you should install Windows and the MSFS data & rolling caches.

The Result of Upgrading to 64Gb RAM and a Fast 2TB M.2 Boot Drive

Note: this was relevant before Update 5 – at that time the peak memory use could reach 45 Gb in my system when everything was loaded.

I increased my RAM from 32Gb to 64Gb and replaced my SSD boot drive with a 2TB m.2 drive that was about 11 times faster. The extra RAM I added meant my system would no longer need to use the Page File, and that reduced stuttering. It also provides plenty of RAM space to generate increased texture resolutions and similar, so the quality could increase without spilling into the slower page file.

The large, fast m.2 boot drive now holds the MSFS program as well as the cache and packages folders. The MSFS quick-start loading time is unchanged at 00:02:14 on its first run of the day. It is probably limited by the transfer rate into the graphics card at a guess.

Conclusion: It was a fairly expensive upgrade providing fairly moderate results so if you don’t want to spend the extra money here, it would be more cost-effective to put the money towards a graphics card with plenty of onboard RAM. Since I’ve been stuck indoors for a year and I can’t buy a graphics card (both due to COVID-19), I thought it would be worth a shot and would add in some longevity to the computer’s lifespan.

Clear Memory to Prevent Stutter

These can be used to solve stutter in the following circumstances:

  • Stutter due to MSFS memory clutter in a flight lasting more than an hour
  • Anyone who is running MSFS on a computer with a limited amount of RAM

The programs:

I haven’t been able to verify either of them since I have 64 Gb of RAM and neither application makes a difference to my setup.

Background App Processing

Location:

  • Type Background Apps In the taskbar search box

These apps can run at the same time as MSFS, and may degrade your flight experience. Although you can turn them all off with a single click, Microsoft Flight Simulator also appears in this list as well, so review them individually.

Background Downloading & Sharing

Location:

  • Type: Delivery Optimisation advanced settings in the taskbar search box
  • The Advanced Options is one step too far. Go back one step (<- settings) to the page entitled Delivery Optimisation.
  • Refer to Allow downloads from other PCs (I have set mine to off).

You should be aware of your downloading policies regarding things like Windows Updates and Steam game downloads. It’s easy to forget the background activity that can silently degrade the work you have put into balancing the sim settings.

Microsoft Flight Simulator MSFS
Search in the taskbar for ‘Delivery Optimisation’

Be aware that if you have the Delivery Optimisation switched on you may also be feeding information to other computers too. It’s not harmful but it may be affecting your sim quality.

Disable Real-Time Antivirus Protection

another stutter source blocked

The real-time monitoring by the Windows Antimalware Service (a.k.a. Windows Defender) can cause stutter. Although on average the CPU usage was only 1.5% on my system, it is examining everything that is being loaded by MSFS and thereby causes noticeable frame timing problems.

Notes:

  • Enabling ‘game mode’ does not stop the real-time virus checking
  • Adding all the accessible MSFS folders and package folders to the exclusion lists of the antivirus program (defender) did not help.
  • The only thing that worked was disabling real-time protection.

Unfortunately:

  • With real-time protection off your computer will be more vulnerable to attack than otherwise
  • You may forget to turn it back on after each use of the flight sim, but it promises to re-enable itself ‘after a short time’. It did re-enable itself after I restarted the computer.
  • There isn’t a quick way to turn it on and off, you have to open up the dialogue etc.

The best I can suggest is to put the Windows Security icon onto the task bar so it’s state is visible:

  • Right-click the task bar and choose Taskbar Settings
  • Scroll down the page and find the title: ‘Notification Area’
  • Click on ‘select which icons appear on the taskbar’
  • Find and enable: ‘Windows Security notification icon’
Real-time protection resumes after a restart

To disable real-time protection:

  • Right click the windows security icon and choose View Security Dashboard
  • Click on Virus and Threat Protection
  • Find the title: ‘Virus and Threat Protection’
  • Underneath that title click on ‘Manage settings’
  • Turn Real-Time Protection off

Disable Windows NDU

I think this one is best ignored unless you are having significant problems, so I won’t show the actual fix here.

This is what I can tell you about it:

  • Google says NDU stands for either Network Diagnostic Usage or Network Data Usage, the common words being Network & Usage. It’s probably a network usage monitoring tool and is linked to an executable called NDU.sys in System32.
  • This fix involves changing a registry value, so if you are not sure how to do that then leave it alone.
  • You are likely to forget that you have changed the registry and that could cause problems in future.
  • The NDU service is said to have the job of detecting USB devices when they are connected to the system. When you disable it, you will no longer be able to detect a new USB device when you plug it in.

Here is a useful video from 737NG Driver discussing it with a realistic attitude, and another by Easyjetsimpilot. The latter’s comments section suggests that for some it makes a big difference, but for others there is little or no change.

Memory Compression

Location:

  • You can access this setting via a command prompt / DOS box / Windows Terminal in admin mode
  • I recommend you leave this setting alone!
  • Note 1: memory compression occurs even if you have an excess of available memory.
  • Note 2: Altering Memory Compression will not improve the FPS of a game, as shown in this video by Britec09.

When memory compression is enabled, blocks of memory that are on standby are compressed in order to release up to 70% of its memory footprint to other programs. This is a much faster option than accessing a page file on a disk.

This screenshot shows 3.8 MB is compressed while running MSFS

You can find your current memory statistics within the task manager: select the Performance tab, choose the Memory item, and underneath the Memory Usage graph is a memory composition bar. Hover your mouse over it to see the details in a tooltip window. The summary is onscreen as shown marked in red.

Game Bar Settings

Location:

  • To open the Game Bar press: Windows Key + ALT + G

You should disable audio recording if you aren’t using it.

Xbox capture settings

Simplify with a C:\MSFS Folder

This is not an FPS saver, but will make things easier in general since you will be able to locate the community and related folders easily.

Microsoft Flight Simulator app and data distribution
The controller settings and profile stats are stored on Microsoft servers.
Graphics settings are reset when the packages path is altered.

Here’s how:

  1. Create the new folder structure:
    • C:\MSFS
    • C:\MSFS\Packages
    • C:\MSFS\Cache
  2. Move the following folders over:
    • Move your saved Community and Official folders into the Packages folder.
    • Move your manual and rolling cache files into the Cache folder.

There is a reference to the Packages folder at the end of the UserCfg.opt file. I have used this method before but I can’t recommend it for people who are unsure. It might be better to delete and reinstall MSFS so it will ask you where to put the packages during its first launch. The core MSFS files are about 1 GB in size and so wont take too long to replace on an average broadband link.

  1. Ensure you have already moved the packages and cache files as described previously before you continue.
  2. Uninstall MSFS
  3. Reinstall MSFS
  4. Start the sim.
  5. Data will be synced, meaning that all the configurations for your controllers are being retrieved.
  6. You will now be offered the chance to choose your packages path, so you can select the packages folder you created above. Microsoft Flight Sim will check for updates by scanning the directories. If all goes well, it will find all the packages you moved from the original installation and MSFS will decide that no downloads are required.
  7. Microsoft Flight Sim will now go to its home screen.
  8. Open ‘Options > General > Data’ and set the rolling cache path to the new location.
  9. Select ‘view the manual cache’ and set its cache file location as necessary.
  10. Open ‘Options > General > Graphics’ and set your options as required.
  11. All done – now you can reach the community folder easily.

Related Articles