MSFS: Hardware etc

This page contains notes on hardware and software that is one step further from the sim and windows settings.

Turn Hyperthreading On

Note: AMD has something akin to it called Simultaneous Multi-Threading (SMT).

Hyperthreading allows two primary threads to be assigned to one physical CPU core, and each hyper thread represents one logical CPU core. There is some hardware support built onto the CPU to make the overhead of task switching worth doing and the net effect for general statistics is a gain of up to 30% efficiency. This is a good gain for general computing, and makes a lot of difference for single, dual and quad core devices.

If the running hyper thread in each physical core needs to pause for any reason, it can hand over control to the other hyper thread to ensure that the CPU is fully utilised. These gains make a hyperthreaded system more efficient than a non hyperthreaded system.

You will know if your hyperthreading is turned on or off by looking at the performance tab in Task Manager where there will be a graph running representing the load on each core. If you have double the number of cores you bought, that means Hyperthreading is turned on. In order to turn it off you will have to enter the BIOS to disable it.

Prevent ISP’s from Throttling MSFS Traffic

Sharpwave has reported that his ISP is throttling MSFS traffic, and suggests the use of Cloudfare WARP to circumvent this. Its a VPN service with an emphasis on speed, so you could try other VPN providers.

Cloudflare WARP has a free and paid version which offers its own fast DNS and VPN service. It was originally intended to improve mobile speeds via an App called 1.1.1.1, but there is now a desktop WARP client.

WARP Tests:

  • I tested the WARP app on my phone connected by WIFI to my desktop and saw a speed drop from 51Mbps to 47Mbps which isn’t a bad hit for switching to a free VPN. The desktop app had the same result as anticipated, since the route is 99% the same.
  • The desktop version ran at 48Mbps, 1Mbps faster than the WIFI connected phone
  • When switching to mobile-only on my phone, the WARP app did do a much better job delivering 5.3Mbps rather than 1.1Mbps nearly x5 better. Although that’s not a lot of use for MSFS, but does say something positive for its infrastructure.

WARP also has the option to switch to DNS only (no VPN) which it offers when you hit the ‘disable’ button. WARP+ offers a faster speed in theory, but unless the data is compressed your throughput will still be controlled by the speed or your ISP line.

Create a RAM Drive

This achieves two things

  • Prevents read/write timing conflicts on your MSFS drive
  • Speeds up access to your cache
  • Ensures the cache never has old data in it (if you choose)

DensestSnail693 essentially pointed out that it is a good idea to move the rolling cache off of the drive that contains all the MSFS packages. If you do this then reads and writes to the cache file will not be competing with reads from the MSFS packages. He also suggests a using a RAM drive for the rolling cache which would be significantly faster than a disk based solution and not something I had considered before.

If you are interested in this idea, I suggest you make a permanent RAM drive for free using IMDisk. In other words, once you create the drive with the correct settings it will auto load at Windows start and can be optionally saved when your PC shuts down. The RAM drive is always present and it doesn’t get in the way. To keep things simple, I did use it to store the windows Temp files.

Notes:

  • The rolling cache file is constantly being updated as you fly. If you leave it on a solid state drive the write operations will be nibbling into the lifespan of the drive. This is another good reason to move the rolling cache. You can use an empty rolling cache as the source file for the RAM Drive and opt not update it on exit.
  • In 2021 I noted that that once RAM use rises to 24GB and heads towards 30GB a progressively intense stutter is induced, which you can control with memory list cleaning apps mentioned elsewhere. In practical terms it has the effect of extending the frame times. I assume that the same memory management technique is being applied to the rolling and manual caches, in which case as a safety measure you might want to limit your rolling cache on a RAM disk to 20GB.

How Much VRAM Do You Need?

MSFS in VR needs a lot of VRAM. One of the most persistent stutters you will be faced with will be due to the lack of VRAM on your GPU. Each stutter will be caused by data being replaced in the VRAM as you fly over a region. This stutter may also persist if you have an active RAM drive for a rolling cache.

In VR, MSFS can fill up 24GB of VRAM over cities with photogrammetry. The faster you are travelling the more acute the VRAM data swapping stutter will be. You can help the VRAM use by modifying the se sliders:

  • Texture resolution
  • Render resolution
  • Terrain Pre-caching

The Task Manager shows the GPU VRAM use as ‘Dedicated GPU Memory Usage’. You cannot assume that if its less than 100% filled it wouldn’t use more if it could. Some storage space may be used as a holding pen to manage the changing data and the list is made of irregularly sized chunks that won’t fit perfectly into what’s available.

The current GPU VRAM use is shown as
‘Dedicated GPU Memory Usage’

I’ve come to the conclusion that MSFS is bigger than my GPU can handle, so when buying a new graphics card, the amount of VRAM it carries will be an important factor. Unfortunately, only the most expensive cards carry 24GB+ of VRAM.

Reduce Overheating on the Main Menu

The Power Saving option in MSFS replaces the animated background with a static image, but this isn’t as effective as switching that option off and going to the Content Manager menu in 2D mode as shown in the chart below.

A GPU & CPU Heat Chart.
The top line is GPU temperature, the others are CPU core temperatures

The order of the operations makes a difference, so follow each step in the listed order.

  1. A VR flight is in progress, exit to main menu
  2. The GPU temperature rises to maximum
  3. Switch to 2D mode
  4. Go to the Content Manager menu
  5. The GPU temperature should now be falling. If it doesn’t, return to the main menu then back to the content manager once more
  6. You may be able to reduce the temperature of the cores by closing your VR drivers
Use the Content Manager Menu in 2D
to prevent stressing the GPU when you take a break

Enable the Resizable BAR: a Free GPU Upgrade

BAR stands for Base Address Register. The Resizable BAR is a PCI technology that allows the CPU direct access to the frame buffer of the GPU. Nvidia and AMD claim a 12% increase whilst independent measurements are more like 8% probably due to the selected game, resolution and hardware. In some cases it can decrease performance.

I’m pleased to say I saw a significant quality increase when I enabled the Resizable Bar for MSFS (MSI motherboard + RTX380). The steps involved were:

You can find Nvidia’s web page about the resizable BAR here or get an overview of what’s involved from this AMD biased video:

MSI Resizable Bar for AMD
  1. Check online to see if your motherboard supports the Resizable Bar.
    • If not you may need to update your BIOS firmware as necessary.
    • If yes, you may need to go into your BIOS to enable Resizable BAR
  2. If you do have Resizable BAR enabled in your BIOS, check to see if your graphics card supports the Resizable Bar by opening the Nvidia Settings panel and clicking on the System Information link at the bottom left of the panel. Look for Resizable BAR in the list on the right along with a YES or NO status. Note: you may need to update your GPU firmware as necessary
  3. Ensure you have the latest Nvidia graphics driver installed
  4. This video by 2020fsers will explain the required steps BUT since this video was made, Microsoft Flight Simulator has been officially enabled for Resizable BAR at location 0x005D7297, so you do not need to add it in yourself.
  5. When you have completed everything remember to restart your computer

More Resizable Bar Settings

As shown in this video by Q8 Pilot, there are some more settings that should be selected via Nvidia Profile Inspector.

  • First select the profile for Microsoft Flight Simulator at the top of the app.
  • Go to Section 5
  • Set ‘rBar – Feature’ to Enabled
  • Set ‘rBar – Options’ to 0x00000001
  • Set ‘rBar – Size Limit’ to 0x0000000040000000
The settings for section 5 in the Nvidia Profile Inspector
  • Go to Section ”Other’
  • Set ‘Memory Allocation Policy’ to 0x00000001 WKS_MEMORY_ALLOCATION_POLICY_MODERATE_PRE_ALLOCATION
  • Apply Changes in the top right hand corner

Note:
You can reset all Nvidia Profile Inspector settings to default values using the toolbar button marked with the Nvidia logo. To see the tooltip for it, select the app and then hover your mouse over the button and a tooltip will show up.

Test the High Performance Event Timer (HPET)

As always: if in doubt, do nothing!

The location of HPET in the Device Manager

You can test if HPET leads to FPS loss with LatencyMon. This video by Troublechute explains all you need to know, including what HPET its used for and use of a test program.

How to test and set HPET correctly for your PC

With regards to LatencyMon, the report on the front page is misleading. It states a ‘conclusion’ when in fact it is always monitoring and the test is ongoing. Any detected latency a any time will change the statement to a negative one. I would predict that you will always get a negative conclusion if you left it running through a sim flight, with HPET on or off.

LatencyMon in action

I think the best way to use the monitor is to check the use of HPET in a moderately loaded system to see if it has a preference for HPET to switched on on off. If it doesn’t have a preference, then leave the setting alone.

Most Effective PC Components

Focus on the components that make most difference.

pcpartpicker have made a study of how PC parts are utilised by the sim and suggest parts lists for low to high end computers. The sim is likely to remain controlled by a single thread for the foreseeable future, therefore CPU with 6 or more cores, a high single core clock speed and 25 MB or more of level 3 cache will provide the best results.

VR Headset Rough Comparison

What the flight sim needs is a headset with display panels above 2000 x 2000 pixels, a display port to avoid compression artefacts, and inside-out tracking to reduce desk clutter.

(click to enlarge)

Check Your Bios Settings

It may be worth checking your BIOS to ensure its set or still set the way you want and/or expect it to be. If you are not sure what to do, find out before you go into the BIOS and don’t change things you don’t fully understand or you may regret it (specifically don’t change voltage levels).

In my case I have two preconfigured options for the CPU and memory, so I just ensure that these are enabled and then exit.

Note 1: without the memory speed ‘boost’ it would not be running at the advertised speed.

Note 2: The CPU speed boost sets the clock speed to maximum

Note 3: Consider the USB power mode setting – this controls the power state of the USB ports when the rest of the computer has been switched off.

Here is a useful video that might help.

The MSI built-in CPU boost option
The MSI built-in memory speed support

How to Overclock an Nvidia Graphics Card

NOT FOR LAPTOPS
(EXTRA HEAT WILL BE GENERATED)

MSI Afterburner is a free utility for basic overclocking. The electrical limits on the UI are defined by the manufacturer and are adhered to by Afterburner.

I don’t think this is completely risk free so unless you have ready access to a replacement graphics card and/or motherboard should anything go wrong you would be better leaving it alone.

MSFS VR overclocking
The MSI Afterburner
  • The instructions for the MSI Afterburner are in a blog post on the MSI site and can be found here. The skin shown in the instructions is called MSI Cyborg Afterburner Skin White.
  • MSI Afterburner can be used to:
    • Create and maintain a fan speed profile
    • Create a one-click GPU overclocking profile
    • Overclock your graphics memory
  • The Apply button is shown as a tick icon and you must press that button to confirm that you are saving or using a profile each time you make a change.
  • The storage areas marked 1 to 5 are accompanied by a padlock icon. You must open the padlock in order to save a profile to one of the storage areas.
  • In order for MSI Afterburner to be able to do its job it must be configured to start with Windows and left running. You can hide it away in the taskbar system tray area by selecting the appropriate options.

You can find an entertaining explanation of the process here.

You Might Also Like…

…these individual hardware related articles: