Jump to content

Long FSX load times with SSD


Recommended Posts

Windows is on a dedicated SSD as is FSX (separate from Windows) - during loading FSX sits for up to 30-seconds at a time with high CPU and NO I/O and then reads the SSD at 1/10 of the available speed/thruput.

 

Win 10 64-bit at 17134.829

i5 processor (4 processors) at 3.61GHz with 4 GB Memory

 

Drive C (Windows) is a 222 GB SanDisk SSD

Drive F (dedicated to only FSX) is a 500 GB Cruical SSD

Both C and F are reported to be 100% optimized

Third party dedicated SSD testing software reports:

C can do 252 MB/s of sequential reads (17 MB/s reading 4K blocks)

F (FSX drive) can do about 217 MB/s of sequential reads (27 MB/s reading 4K blocks)

 

The system has no antivirus software running. I manually shutdown EVERY application and process that is not essential to supporting FSX

 

I use Task Manager and Resource Manager to monitor hardware, the system, and FSX.

 

I have all the monitors running at a high update frequency when I start FSX.

 

During the 1st 60-seconds of FSX loading - it uses 24% to 29% of the total available CPU. i.e. one processor is almost 100% busy. During that time Drive F (SSD FSX drive) is pushing 10 to 40 MB/sec thru to FSX.

 

From 61-seconds to 80-seconds the CPU is 50% busy (two of the four are running at ~98%) but there is almost NO I/O - the average thruput from F is about 4 KB/second.

 

At 81-seconds an FSX message pops up "Loading Terrain Data" and the completion bar is at 6%.

 

From 81-seconds to 211-seconds that message remains on the screen at 6%. The CPU usage is constant at 27% and the data coming from Drive F is less than 1 MB/s and stays at 0 KB/s for 10 to 20-seconds at a time. Task Manager Wait Analysis shows that FSX is running normally and not waiting. The Resource manager reports Drive F has a 0.0 to 0.2 ms response time (as you would expect from an SSD).

 

From 212-seconds to 220-seconds the "Loading Terrain Data" remains but the completion bar is moves from 6% to 28% while the Drive F thruput is above 12 MB/sec.

 

From 220-seconds to 228-seconds the FSX message changes to "Adjusting Scenery" with the completion bar moving to 80% Loaded. the CPU is at 37% and there is aout 500KB/ to 2 MB/s moving.

 

From 229-seconds to 277-seconds the "Adjusting Scenery" remains with the completion bar moving to 90% Loaded. the CPU is at 51% and about 2 MB/s is being moved from Drive F to FSX.

 

Between 277 and 286-seconds the on screen message reports weather and traffic is being loaded.

 

At 4 minutes 46 seconds the FSX screen jumps to the VC of my default flight.

 

I don't have a lot of addons - here are the big ones:

GEX

UTX

REX Texture Direct

REX Worldwide Airports HD

About 25 ORBX airports

ORBX North America

ORBX scenery for much of Western US

 

I tried a test of disabling almost all of my scenery library, via the options while running FSX. When FSX rebuilt the scenery library - it acted EXACTLY the same as when loading FSX and the timing of the library rebuild as almost exactly the same as from 81-seconds to 265-seconds.

 

Why is FSX not able to exploit the speed of my SSDs?

 

WHY does FSX sit with a busy CPU and almost NO I/O for 20 or more seconds at a time?

 

What can I do to speed things up?

Edited by tacomasailor
i7-9700K / 32GB DDR4 memory / RTX 3060 Ti with 8GB /Flight Sim on SSD and Win10 on separate SSD / 375 MegaBit / Second internet connection / HP Reverb G2
Link to comment
Share on other sites

If you want faster load times, you would need to bypass the relatively slower SATA3 bus (6 gigabits max) with standard SSD's and run directory from the PCIe bus with NVMe drives (up to 6.5 gigabytes max).

 

Then there would be a noticeable difference!

 

My next upgrade with harddrives as backup...

 

 

syba_Content_02.jpg

Edited by dogdish
Gigabyte GA-X99 Gaming G1, i7-5960X, Noctua NH-D14, Crucial Ballistix Elite 64Gb, Nvidia GTX Titan X, Creative ZxR, Ableconn PEXM2-130, WD Black SN750 250Gb & 2Tb NVMe/Gold 10Tb HDD, Sony BDU-X10S BD-ROM, PC Power & Cooling 1200w, Cosmos C700M, Noctua iPPC 140mm x6, Logitech M570/K800, WinX64 7 Ultimate/10 Pro
Link to comment
Share on other sites

Yeah, the rare dual NVMe adapters are about $200.00 right now (besides two NVMe drives), but if you can get by with just one NVMe, the single PCIe adapters can be had for around $25.00

 

So you would only need to sell a kidney :)

Edited by dogdish
Gigabyte GA-X99 Gaming G1, i7-5960X, Noctua NH-D14, Crucial Ballistix Elite 64Gb, Nvidia GTX Titan X, Creative ZxR, Ableconn PEXM2-130, WD Black SN750 250Gb & 2Tb NVMe/Gold 10Tb HDD, Sony BDU-X10S BD-ROM, PC Power & Cooling 1200w, Cosmos C700M, Noctua iPPC 140mm x6, Logitech M570/K800, WinX64 7 Ultimate/10 Pro
Link to comment
Share on other sites

Don't close everything down. Especially not Windows Services. Re-enable the services you permanently disabled.

 

This is not a slow harddisk problem, or slow cpu.

 

Also, reset your startup flight to the default Friday Harbor flight. A problem in your current own startup can easily cause all this.

[sIGPIC][/sIGPIC]
Link to comment
Share on other sites

With the never ending problems I had with FSX I just stopped using it, after buying the Steam version there was 1 hiccup and have been happy with it since. Microsoft cannot get it's act together. It looks like their newest version is going to be filled with four times as many complaints. They should learn how to walk with crutches before any attempts at running with crutches.
Link to comment
Share on other sites

I manually shutdown EVERY application and process that is not essential to supporting FSX

 

NO - there is NO I/O and less than .1% CPU usage from anything except the monitors

i7-9700K / 32GB DDR4 memory / RTX 3060 Ti with 8GB /Flight Sim on SSD and Win10 on separate SSD / 375 MegaBit / Second internet connection / HP Reverb G2
Link to comment
Share on other sites

I only shutdown processes that do not support the system. I know Windows pretty well - having been a systems programmer for over 40-years. The SAME problem occurs when I have NO default flight and the loading stops at the FSX menu.

 

I disabled ALL non-Microsoft packages for FSX and the load to my default Friday Harbor flight takes 67-seconds. I then enabled all the UTX stuff and the load to that flight takes 87-seconds. I then activated the ORBX KFHR airport scenery and the load took 90-seconds. I then turned on all the ORBX libraries, meshes, scenery and the load took 287-seconds.

 

So - it is something to do with ORBX mesh or scenery. I can find no reason the I/O would go to 0 B/sec for 20-seconds at a time.

 

Oh Well - I'lll just have to live with it because I love the ORBX visuals.

i7-9700K / 32GB DDR4 memory / RTX 3060 Ti with 8GB /Flight Sim on SSD and Win10 on separate SSD / 375 MegaBit / Second internet connection / HP Reverb G2
Link to comment
Share on other sites

The biggest factor in FS load times are how many planes you have installed. Whether that be AI or flyable. The CPU is your bottle neck and no matter how much money you throw at it the CPU load times will not improve due to the fact FS2004 and FSX are single threaded games. Meaning only one CPU core will be used in the processing of the planes for the game to load.

 

During the 1st 60-seconds of FSX loading - it uses 24% to 29% of the total available CPU. i.e. one processor is almost 100% busy. During that time Drive F (SSD FSX drive) is pushing 10 to 40 MB/sec thru to FSX.

 

Correct. That one CPU core is doing all the work.

 

Now if you don't have a ton of planes installed then I chalk this up to Winblows 10. For the Sim you really are better with Windows 7. But, it's the latest OS now and we're stuck with it.

Link to comment
Share on other sites

Good Eye - I have GEX installed but it is not activated.

 

The question about number of aircraft is interesting. I fly only GA singles and twins with just a couple WWII fighters and light twin bombers. I have removed all other AC from the SimObjects/Airplane folder. But, I do have many dozen FTX AI planes in the folder.

 

However, when I have NO ORBX scenery enabled - the VC of my default flight appears in less than 80-seconds so I doubt the number of AC is an issue. I will experiment with the idea.

i7-9700K / 32GB DDR4 memory / RTX 3060 Ti with 8GB /Flight Sim on SSD and Win10 on separate SSD / 375 MegaBit / Second internet connection / HP Reverb G2
Link to comment
Share on other sites

"Only ga aircraft"

aircraft from 'AA Simulations' may be ga, but are very heavy on the pc.

Do your tests with default aircraft. And test at a default airport.

 

Also run: "sfc /scannow"

from an admin command prompt to check all system files are ok.

[sIGPIC][/sIGPIC]
Link to comment
Share on other sites

Also test with default weather. No detailed active sky or FsRealwx and such. Default "clear skies" or "sunny". No storms. And low cloud density in weather settings.

 

Actually, best to:

Close fsx first,

rename your fsx.cfg file to fsx_old.cfg

Close and save the file.

And then to start fsx so it can create a new fsx.cfg file with all settings at default.

 

That way you get an idea of how fsx behaves when the graphics settings are not set too high.

 

Maybe an idea to also adjust some settings in your Nvidia menu's. Too high settings there (AA and AF for example) can also grind things to a halt.

[sIGPIC][/sIGPIC]
Link to comment
Share on other sites

Good Eye - I have GEX installed but it is not activated.

 

The question about number of aircraft is interesting. I fly only GA singles and twins with just a couple WWII fighters and light twin bombers. I have removed all other AC from the SimObjects/Airplane folder. But, I do have many dozen FTX AI planes in the folder.

 

However, when I have NO ORBX scenery enabled - the VC of my default flight appears in less than 80-seconds so I doubt the number of AC is an issue. I will experiment with the idea.

 

NEVER a good idea to removed default aircraft. Put them back and see if loading times decrease. I can't see what you were trying to achieve by replacing them with a large quantity of AI aircraft?

 

You can make default aircraft invisible as a selection but you should NOT remove them, as they provide AI options and are embedded in code which means you can get an incessant loop as the sim searches for the `missing` aircraft...

Link to comment
Share on other sites

My prior life was heavily involved in making computer applications run faster and use fewer hardware resources so I do enjoy getting down into the dirt and weeds. I allowed FSX to do a full load of everything I want available while using Process Monitor to track and record each and every system call made by FSX.

 

It becomes easy to understand the long loading time!

 

From the initial system call to 67-seconds fsx.exe reads a lot of files in a fairly normal fashion, albeit using mostly 4,096 byte block lengths, which is far from optimum but, then again, this is 15-year old code. OTH, 30+ years ago I was teaching application programmers how to optimize read I/O with BIG blocks, if at all possible.

 

At 67-seconds the loading of ORBX libraries begins. From then till 154-seconds those ORBX files are read in a normal fashion, again with 4,096 blocks but at least it keeps the MB/sec read rate from the SSD above 10 MB/second. These reads are for vector, airport, and texture files from ORBX.

 

Beginning at 155-seconds fsx.exe starts reading scenery files and executes the same seven system calls for each .bgl object:

FASTIO_NETWORK_QUERY_OPEN

IRP_MJ_CREATE

IRP_MJ_READ

FASTIO_QUERY_INFORMATION

IRP_MJ_CLEANUP

IRP_MJ_CLOSE

FASTIO_READ

 

For my particular system that sequence was executed 1,785,274 times!!

 

That is 10,711,648 system calls.

 

fsx.exe loaded, from Drive F, the SSD where FSX lives - over 8 GB of data.

 

It is a wonder the whole thing only takes about 4-minutes.

i7-9700K / 32GB DDR4 memory / RTX 3060 Ti with 8GB /Flight Sim on SSD and Win10 on separate SSD / 375 MegaBit / Second internet connection / HP Reverb G2
Link to comment
Share on other sites

An example of the I/O that occurs while loading the ORBX files:

 

F:\Program Files\Microsoft Games\Microsoft Flight Simulator X\ORBX\FTX_NA\FTX_NA_SCA05_SCENERY\scenery\FTX_SCA_POI_library_bridges_29Palms.bgl

 

requires 14,989 system calls during the fsx.exe load:

 

2,069 IRP_MJ_READ - of which eight (8) requested 65,536 bytes each, eight (8) requested 126,976 bytes each and the remaining 2,053 requested 188 bytes each

 

The 16 IRP_MJ_READ operations requesting the larger blocks were all PAGING IO because the file was originally read into a user buffer, backed by virtual memory , which was eventually paged out and then had to be paged back in.

 

2,069 FASTIO_READ during which each requested 4,096 bytes - these are the reads that load the data from the user buffer and if the file segment is not found in the buffer a page fault is generated.

 

The file is 6,585 KB in length and the total bytes read were 10,400 KB.

 

I picked that file at random, there are thousands of other similar files.

Edited by tacomasailor
i7-9700K / 32GB DDR4 memory / RTX 3060 Ti with 8GB /Flight Sim on SSD and Win10 on separate SSD / 375 MegaBit / Second internet connection / HP Reverb G2
Link to comment
Share on other sites

An example of the I/O that occurs while loading the ORBX files:

 

F:\Program Files\Microsoft Games\Microsoft Flight Simulator X\ORBX\FTX_NA\FTX_NA_SCA05_SCENERY\scenery\FTX_SCA_POI_library_bridges_29Palms.bgl

 

requires 14,989 system calls during the fsx.exe load:

 

2,069 IRP_MJ_READ - of which eight (8) requested 65,536 bytes each, eight (8) requested 126,976 bytes each and the remaining 2,053 requested 188 bytes each

 

The 16 IRP_MJ_READ operations requesting the larger blocks were all PAGING IO because the file was originally read into a user buffer, backed by virtual memory , which was eventually paged out and then had to be paged back in.

 

2,069 FASTIO_READ during which each requested 4,096 bytes - these are the reads that load the data from the user buffer and if the file segment is not found in the buffer a page fault is generated.

 

The file is 6,585 KB in length and the total bytes read were 10,400 KB.

 

I picked that file at random, there are thousands of other similar files.

 

And lets not forget asking the sim to read countless other files from addon developers exposes the user and his/her sim to the vagaries of THEIR programming, too.

 

How many of the default scenery addons have you disabled? And how many addons have you flown from/to just once or twice?

Link to comment
Share on other sites

I cannot say that I can follow tacomasailor's explanation in detail, but enough so I can understand why my FSX (and P3D) both take so long to load, as I have a ton of add-on scenery and AI.

 

I am wondering whether I should move this add-on scenery and the AI to a separate SSD?

 

Jorgen

 

No. Just delete the ones you are not flying at currently. We all have a tendency to add files for the `rainy day` or the `chance that you divert` but actually you never fly there, or simply d/l it to try just once...

 

The huge advantage of FTX product is how easy it is to re-install if you ever actually need it again. Just get in the habit of removing it when you don't need it anymore.

 

Their new ORBX Central utility will make that even easier.

 

I tend to spend more of my time removing addons from my clients list than adding them... Keeps them running sweet!

Link to comment
Share on other sites

I guess were all in agreement about the numerous files FSX moves while loading which is why I mentioned the "brute strength" method of file transfer at the beginning of this thread.

 

A 7200 RPM SATA hard drive manages around 100MB/s depending on age, condition, and level of fragmentation. Most SATA connected SSDs will provide Read/Write speeds in the neighborhood of 530/500 MB/s. For comparison, NVMe drives, on the other hand, provide write speeds as high as 3500MB/s.

 

That's 7x over SATA SSDs

 

That's with current PCIe 3.0 standard max of 8GB transfer speeds.

 

AMD's latest X570 chipsets support PCIe 4.0 16GB transfers. I have a feeling Intel will leap frog over to the PCIe 5.0 standard with 32GB transfer speeds.

 

These will all no doubt be expensive propositions involving new motherboard, CPU upgrades.

 

In the meantime you could place FSX on a PCIe 3.0 NVMe m.2 SSD. My motherboard has a SATA Express M.2 slot, however it is limited to about 1000MB transfers.

 

Which is why I want to get a PCIe M.2 NVMe adapter which you can find a cheap single drive one for about $10.00 and a Samsung or Western Digital 250GB m.2 NVMe around $80.00.

 

Then the next bottle neck would be how quickly your processor can handle the transfers.

Gigabyte GA-X99 Gaming G1, i7-5960X, Noctua NH-D14, Crucial Ballistix Elite 64Gb, Nvidia GTX Titan X, Creative ZxR, Ableconn PEXM2-130, WD Black SN750 250Gb & 2Tb NVMe/Gold 10Tb HDD, Sony BDU-X10S BD-ROM, PC Power & Cooling 1200w, Cosmos C700M, Noctua iPPC 140mm x6, Logitech M570/K800, WinX64 7 Ultimate/10 Pro
Link to comment
Share on other sites

Correct me if I am wrong, but my understanding is that these NVMe drives plug right into the PCIe controller.

 

If that is the case, then that brings about the question of room on the motherboard, where the first priority probably has to be the graphics adapter, which can take the space up to 2, 2 1/2 or 3 slots. Alongside that you would then have to fit the PCIe controller, with the NVMe drives sticking out of that somehow....

 

Jorgen

Link to comment
Share on other sites

Just read an article about these drives, on some motherboards you can apparently plug them directly into the board, and then they stick out vertically.

 

It still raises the question of how many slots you can have available in practice somehow, but the price on Amazon of about USD 120 for 1 TB isn't that bad.....

 

Jorgen

Link to comment
Share on other sites

Depends on the motherboard and processor. In my case I have a 40 PCIe lane CPU, some have less. I pulled out my manual and found out slot 1 is a switchable 16/8x, slot 2 is 16x, slot 3 if populated shares bandwidth with slot 1, slot 4 is 8x.

 

So I put my GPU in the recommended slot 1. I'm reserving slot 2 for a 2nd GPU for SLI. Slot 3 is useless unless you have a x3 GPU SLI so won't use it, otherwise it would drop slot 1 to 8x. So the best slot in my case is to put the PCIe adapter (which is a 4x adapter, 8x for a dual NVMe adapter) in slot 4.

 

If you have Windows 10, you have a native NVMe driver, Windows 7 requires a update, KB2990941 which Microsoft has now pulled (And tells you to get Windows 10) but you can get at https://www.win-raid.com/t29f25-Recommended-AHCI-RAID-and-NVMe-Drivers.html

 

Also your BIOS might need a update to support NVMe drives.

Gigabyte GA-X99 Gaming G1, i7-5960X, Noctua NH-D14, Crucial Ballistix Elite 64Gb, Nvidia GTX Titan X, Creative ZxR, Ableconn PEXM2-130, WD Black SN750 250Gb & 2Tb NVMe/Gold 10Tb HDD, Sony BDU-X10S BD-ROM, PC Power & Cooling 1200w, Cosmos C700M, Noctua iPPC 140mm x6, Logitech M570/K800, WinX64 7 Ultimate/10 Pro
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...