I’ve been meaning for weeks now to write up some notes about 10.40. I’ve also been trying to put the hood back on 10.40 so we can get it to public beta; instead the last few weeks have been a flying circus of driver bugs, expiring certificates, etc.

But we are making progress, so I’ll start off in this post by describing a change in how DSFs are loaded and the wide DSF box.

A Tangent: Stuttering and Pauses

A post that involves X-Plane pausing during flight is going to invariably bring up a bunch of blog comments: “X-Plane stutters while I fly on my really expensive machine!” This is not good, and from what I’ve been hearing, it sounds like something got worse recently; this is something that we are investigating now.

But I also want to mention that historically, X-Plane has never been “no-pause”. What we have done is periodically made the pauses much shorter; our goal is to get down to zero pauses, ever, but this will happen by finding every source of pausing and fixing them one at a time. In other words, we’re in the middle of a process of improving smoothness, but even if one source of pausing is fixed, another source might still be causing problems.

DSF Loading: the Old Way

X-Plane has, since X-Plane 9, loaded DSFs in the background on a second core while you fly. This cuts down the amount of time it takes to change scenery. (Older versions of X-Plane would pause while scenery was loaded and shifted.)

The old DSF loader did have a few weaknesses though:

  • The sim pauses while DSFs are deleted. As DSFs become bigger, this pause is becoming more noticeable.
  • If the loader ever gets behind by two scenery shifts, it just waits until it catches up. This is where the dreaded “Async load timed out after 30 seconds” comes in – it indicates that the DSF loader was so far behind that it locked up for half a minute and didn’t catch up.
  • The old DSF loader loads one DSF at a time, tops.

DSF Loading the New Way

X-Plane 10.40 has the new DSF loader, which both loads and unloads DSFs on worker threads to keep flight smoother. It also will load more than one DSF at a time, limited only by the requirement that adjacent DSFs not be loaded at the same time.

X-Plane 10.40 also has the option of an extended DSF scenery region for sharper terrain; with this option off, two DSFs are loaded at one time during sim boot and one or two are loaded at a time while you fly. With the extended DSF region on, up to four DSFs are loaded at once during sim boot and one or two are loaded while you fly.

The extended DSF scenery region is optional; don’t use this if you’re using HD meshes or you’re short on RAM. The new DSF loader is always on.

About Ben Supnik

Ben is a software engineer who works on X-Plane; he spends most of his days drinking coffee and swearing at the computer -- sometimes at the same time.

60 comments on “X-Plane 10.40: The New DSF Loader

  1. Really awesome news!
    Thanks for this update.

    If I may ask , if I recall correctly there was also a new code for the fog in plans , is it something that expected to come in 10.40?

    1. Hi,

      We are -not- changing the fog model.

      However, the extended DSFs _do_ allow us to show higher visibility clearer, so the upper altitude views should be a lot less “foggy”. I think I showed some high altitude pics a while ago that showed the difference.

      1. Hi Ben,

        I didn’t mean that you are changing the fog model howver If I recall correctly there is an “open bug” in the fog that makes it kinda look like a “walking wall” when moving towards it , something about that the “fade” effect inside the fog should start sooner if I remember.

        But maybe I was just dreaming 😀

        1. It’s not really an open bug, it’s a design limitation of the current model. Like all things in X-Plane, I would like it to be better, and I am sure someday it will be, but for 1040 I think there’s only two things going on re: fog:

          1. We sometimes have more DSFs, which means we don’t have to go blurry or foggy as soon and
          2. There was a bug in the shaders that caused the fog to have a white artifact zone in the middle that should now be gone.

          In other words, the fog is correct for what it is, but it still is what it is.

          1. Yeah now I remember the thing with the white artifact , which I think you talked about before, it seems like I mixed some stuff 🙂

            thanks!

          2. Right – I think the pictures I posted a while back were some mixture of the white artifact gone and the DSFs extended for less blurries.

    1. More memory will -not- be mandatory.

      But for some combinations of add-ons and the new extended DSFs, you might need more memory to take advantage of these new features -and- the add-ons.

      My machines all have 12-16 GB and can run the extended DSFs without trouble, but I’m not running custom meshes or super-fancy add-on aircraft.

        1. There’s no hard rule: re minimum RAM – I think alpilotx posted some numbers of real RAM use on his system with various meshes, but this can vary tremendously based on rendering settings and region. The only -hard- requirement is that you be running x-plane 64-bit.

          1. BTW forgot to ask , is this may increase lights draw distance?
            Im talking about the light “bulb” itself rather than the object.
            The lights stop at about 20 miles in the distance , if it could be increased it will be really awesome espicially when flying above the sea towards a big city (really like this immersion in real life!)

          2. This change doesn’t affect that, but we could try making the distance larger. The low distance is mostly from the days of 32-bit-only where we were running out of memory.

  2. Thanks Ben!!!

    i was experiencing those sim-pauses time to time. Hopefully this gets into the past!

    Does the extended DSF feature means that we may have also available information at the local map from a further distance?
    i have noticed when you are kind of adjacent to a DSF, you may not pick up ATIS information neither see the destination airport on the local map until the DSF loads no matter you are supposed to be the freq. range? i am correct?

    1. I -think- the map shows a wider area with extended DSF on.

      Re: the ATIS, the radio frequency range should not be dependent on DSF load size, and we don’t -need- the DSF to be loaded.

      If you can find a situation where the ATIS should be in range (in the real world!!) but is not, please file a bug, and include (1) the ATIS frequency you’re trying to get and (2) your lat/lon location, or the ICAO of an airport you’re at. We can investigate!

  3. Are you still going to put the runway follow contours on or off option ..
    That you can fly between them ..

    Regards

      1. Ben, what about the option to be able to turn off flattening for specific airports, so that I can have flattening on for everything except for the few airports where it is almost mandatory (like alpine strips?) You told me you would consider that. Thanks

  4. Good day,
    I think this should work well on an iMac 27″ with 16GB ram and a NIVIDA GTX 775M 2048 MB video card I do have two more slots for an up-grade to 32GB of ram but the V-Card is where the XP app is using VRAM…
    captbullett

  5. No fog uppdate.. It is No. 1 thing for realistic IFR flying (including clouds) and X-Plane should be a flight Sim not a Terra Sim if I remember it correctly.
    Unfortunately you had a nice chance to make perfect Sim, but you missed it. For some reason you focus on wrong things.
    P3D is doing much better job.

    Still hoping…

    1. Just because these are not YOUR priorities doesn’t mean they are wrong priorities. P3D is a training program that costs 200 US$ and focuses only on professional users. Lockheed Martin does also have another kind of funding and staff behind it. It also has a mucher more recent graphics engine and is not a cross-plattform solution as X-Plane is. On the other hand you have lots of things that X-Plane does a lot better, especially for the kind of money you have to invest. If you want a fully real flightsim cough up the money to book a full flight simulator.

      It is not very often that hard working people who are trying to make it right for everybody are so openly communicating their decisions with the reasoning behind it and even their mistakes as well. It really shows your mindset when you tell them off for not following your personal priorities because you paid some 50 bucks 5 years ago while getting constant support and updates.

      I really really appreciate the openess and professionalism of Ben’s work and especially his communication.

  6. hi I was wondering if there will be any improvements to the ATC in this update and if not what update are they planed for?

    1. There is now a “who’s online” menu that lets you figure out easily who the overlying ATC is – besides saving time to look up frequencies, it’s a big help where our ATC map isn’t the same as the real-world sectorization. We’re still working on various bug fixes,but some won’t be ready for 1040.

      1. Thank you for the reply and the info. i look forward to the the update. with it be pushed to steam at the same time?

        1. The release will be available on steam as a “beta” a day or two before it goes final; it will be pushed to all steam users a day or two after it goes final. The beta program itself will not be available to Steam users.

          (But: as a Steam user you -can- download the demo and run betas of the demo. This isn’t useful for actually flying the sim, and it isn’t useful for testing scenery, but it can be useful for basic testing of aircraft.

          Beta is really -not- meant as a way to “get cool stuff early” – it’s meant as an opportunity for authors to test their add-ons with the sim and for us to find bugs that happen on real user’s machines that don’t happen “in the lab”.

  7. Hi Ben,
    Sounding great, and getting better all the time to be sure!
    You said,
    “The extended DSF scenery region is optional; don’t use this if you’re using HD meshes”

    What amount of memory would I need then to run both? I have 16GB now and a 4GB card.

    Thanks,
    Joel

  8. hey ben, not sure if this has to do with dsf’s , but stuttering for sure. when in flight and changing liveries there is always a stutter, and more annoying is when your in flight and you go to select a aircraft situation, the livery of the plane your using changes to the next one available.

    ie; i choose united tulip , start flying and get bored, go to formation flying or landing, loads and comes back and now its united current livery.

    * no its not alphabetical, that was just an example, changing situations doesn’t allow to keep your livery.

  9. How much does the Custom Scenery content affect the loading, we now have some seriously heavier content that is noticeable as you load, city areas are prone to this of course and certainly if they have a few or more airports and city scenery.

    Is there any difference can be made in like a step loading with distance from your position help and how does this relate to new DSF loader. SD

    1. Custom scenery can increase loading time if it has more data – the UDH meshes are slow to load, for example. We don’t currently step-load on initial flight – the thinking is that when the sim is done loading, everything should be “ready”.

      1. This is interesting Ben. You say that XPL should be ready after scenery loading, but since 10.30 I think, I am experiencing something different. Having lot of custom sceneries (ortho, airports, castles etc), X-Plane finishes loading and then it runs on 1 to 10 fps for a while, while (20 s or so) feeding the data into graphics card. I realized this by looking to rendering options, watching the graphics memory consumption, which rises slowly during this process. When it stops (arround 2GB of graphics memory consumption), X-Plane runs nicely between 30 to 50 fps, until next tile is being loaded and the process repeats. I don’t remember this was happening in 10.25, but have no idea how to test it. My card is nVidia 980 with 4GB of video ram

        1. When we fly, _we_ are done loading, but if the graphics card’s driver has taken all of our “upload texture” instructions and gone “ha ha yeah right I’ll do that later” then there can be this kind of overhang. Normally by the end of the first frame the driver has realized we’re serious and brought in everything we need; I’m not sure what’s going on over a 20 second period.

  10. Excellent news Ben

    Two things are the main core reason for my change from FS to XP, and that is performance and stability, stutters and lagging are from my viewpoint the two most devastating factors that would ruin a game. I could survive with bad graphics if the fuid motion was perfect, a trade-off however would be a continuous battle between the two evils axis of performance and eyecandy. I am glad the focus now is on fixing performance related issues rather than introducing new features to the core.

    And thank you for your descriptive blogpost on the DSF loading and syncing. Int. to learn how things are working.

  11. Hi,
    “don’t use this if you’re using HD meshes or you’re short on RAM”

    Can you elaborate more on this? The OR statement worries me a bit. Do you mean that extended DSF will be not compatible with the HD meshes EVEN if I have plenty of RAM on my system?

    1. No. I mean the rather obvious thing:

      Extended DSFs + HD meshes uses MORE RAM than just HD meshes, so IF you’re using HD meshes you -might- not be able to use both. It will depend on how much RAM you have.

      1. Looks like I will have to finally move from 12 to 24 GB of memory on my Workstation to run X-Plane.

        Well, this is a great reason to install the remaining 3 memory modules and have all 6 banks populated…

  12. Hi Ben,

    you wrote that the earlier version was using second core for loading and now you are doing it in worker threads with more than one DSF in parallel.

    Does this mean you are now finally using all available cores and hyperthreads a CPU provides (4 or 8 in my case)?

    One more thing:

    I have a Core i7 4770K overclocked to 4.2 Ghz (this clock freq is reported by e.g. the CoreTemp tool). However X-Plane in log.txt still reports a frequency of just 3.5 Ghz (CPU 0: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz Speed (mhz): 3500), which is the non-overclocked standard frequency.

    Could this have negative impact on any internal jobs or calculations within X-Plane?

    Would it be possible to fix that readout?

    1. We use a worker pool – we have always built a pool big enough to use all of your cores, and for some tasks we do: building 3-d meshes, loading textures, and handling AI planes.

      The DSF load itself can now go up to 3-way where it was 1-way before, so that uses more cores.

      The actual rendering is still single core.

      The clock speed read-out is unrelated to your performance – we just get a number from the OS and print it; I cannot spend time trying to debug why your OS says your clock speed is not the OC clock speed; it affects nothing and is just there for tech support to read.

  13. This is a great news. And what About the weather engine? Any news of update? At least for a deeper way of controlling weather, clouds, thermals (I’m really interested in this feature)…
    Thanks!

  14. As for the lights draw distnace (feeling kina annoying posting so many comment :\ but I’ll give it a shot) , could this be considered for 10.40?

    1. Sure – I mean, I can try tweaking the setting and see if it’s doable. Two related notes:
      1. The _hdr_ spill light distance is significantly shorter than the billboard distance. What we found is that the spill lights, due to their relatively small cones sizes, contribute very little to the scene past around 5 or 6 km. So we don’t burn CPU, bus bandwidth and RAM by building them out really far.

      2. I have an experiment in 10.40 to set the billboard size to be proportional to the screen, not fixed size in pixels. For users with a screen > 1024 pixels wide (read: 99.9% of our users) this will result in (1) brighter lights and (2) lights visible farther away.

      1. “Tweaking the settings…” , so billaboard drawing distance could be tweaked via datarefs ? (I know that you can make further billadbords brighter with data refs , I’m talking about drawing more in the further distance)

        Anyway that sounds cool , Xplane night ligthing by-far gives the best night experience , it’s this billabord distance thing that could make it absloutly perferct , can’t wait to see what you’ll acheive in 10.40 !

          1. Well , I did my own experimentation .
            I have a custom model and with library extensions I replaced all the default street lights so Xplane will render the custom one.
            I gave it higher LOD , but it seems no matter what I do , light billadbords still have their own LOD (not even 20nm , about ~10nm).

            I didn’t found anything in art controls that increases billadbord drawing distance…

            But what’s interesting is that airport lights (runway lights etc…) do have much higher lods than street lights , for example Im about 20nm far from the this city’s beach , all the city is dark but the only lights I can see are the moving cats lights and airport lights , which looks kinda weird…

          2. Right – the limit you see isn’t the LOD of the objects, it’s the LOD of the -engine- instantiating those objects around the user’s aircraft. I don’t know if those are art-controllable or have to be set in code right now – I’ll have to look.

      2. Will changing the billboard size also alter the appearance of the moon and stars?

        Currently running XP at very high resolution (I use 3840×2160 aka 4k) stretches the appearance of the stars and moon so that the stars appear as “flying saucers” and the moon is very pixelated. See this screenshot for an example: //i.imgur.com/OrUHj4D.jpg

  15. About 10.40 and ATC enhancement – could you add an option to choose whether there are or aren’t taxiway arrows when using ATC? Some users, me included, would love to turn them off. Maybe this is an easier task for you.

    Thank you very much!

    1. Hi Carsten,

      I’ll add it to my todo list! This was actually one of the items in an internal discussion about how to make ATC more usable…the idea is that features that make ATC easier to use (but unrealistic) should be optional.

      cheers
      Ben

  16. Microsoft Windows 10 will be coming out at the end of July according to an email I received. Do you anticipate any issues with the 10.40 release of X-plane?

    1. Hopefully not. We’ve had people run on Win10 and tell me the app works okay, and Microsoft is -really- good about backward compatibility. I don’t think we have -ever- had to issue a patch to X-plane due to a new Windows OS version coming out. The strength (and weakness) of Windows is not breaking apps.

  17. And what about the transparent world in the night? I mean that strange effect by which you can see stars or the moon through the land, mountains or even the sun when flying at late sun-set or night.
    Thanks.

    1. As of this writing, it’s still broken; I spent about 2 days working on it last week and when I was done, I had made things significantly worse. I’ll take another stab at it once we’re in beta.

  18. good news on 10.40 a great sim gets better. it beggars belief how such a small team had written and maintains code of this quality & magnitude. There’s a ‘however’ coming you sensed it… Stuff like the XP ATC being what we UK developers call flaky and the sim pauses continue to be a pain. i’d be prepared to sign up to pay up for a XP v11 upgrade, and perhaps most other users would too, thereby giving Laminar more dev resources. i’ve seen a lot about ‘XP mobile’ this or that which doesn’t help me but the core product still has issues IMO.

  19. For those of us running HD mesh, is there any solution on the horizon (forgive the bad pun) beyond insanely more hardware (like maybe 64GB RAM, etc) to all for extended DSF’s with HD mesh?

    I literally cannot enjoy flying without photoscenery and such any longer and the low res distance is the last hurdle for immersion on my side…. Well, that and being able to run enough clouds to have them display deep enough to avoid them popping in and out….

    Thanks again for all the great work.

    1. Hi Rich,

      HD meshes and orthophotos are -not- the same things, and they have really different memory footprints.

      Properly built orthophoto scenery packs are not very RAM intensive, and I’d be surprised if they don’t work well with extended DSF range on moderate systems; 64 GB will not be necessary.

      High density meshes are RAM intensive and slow to load, and will have an even higher RAM footprint when extended.

      In the long term, HD meshes will be replaced with hardware tessellation, which will give us high density only where we need it with a lower RAM footprint.

      1. Thanks Ben. My complication is that they’re essentially tied together. SimHeaven’s stuff, as I understand it, comes pre-loaded with aipilot’s HD mesh. I guess I could dump out the mesh. The ortho is essential and I really want extended DSF range for immersion.

        1. You’ll have to try the actual meshes and see how it goes. I really can’t comment on third party higher-than-normal-setting meshes…I don’t have the data.

Comments are closed.