This week I received my new PC, set it up, and was able to actually look at 10.30 performance problems with AMD hardware on the Catalyst 13-9 drivers.  With the actual “problematic” configuration (and a hard drive that wasn’t barfing up sectors like an infant with reflux) it only took about 15 minutes to find the actual problem.

Which was…face palm…a GL drawing code path that I had disabled during private testing (due to low performance) was actually not disabled at all due to a lack of parenthesis.  So I’m an idiot.

What’s interesting is the relative effects of this code path on multiple platforms.

  • On OS X, this code path runs at pretty much full speed, so having it in the beta didn’t reveal any actual problems.  Hence while my PC was dead, my few attempts to reproduce the reported behavior on my Mac totally failed.
  • The code path is slower on both Nvidia 331.88 drivers and AMD 14-4 drivers.  But…1030’s basic performance is faster than 10.25, so the two canceled out, yielding somewhat reasonable looking fps tests.  That’s why when I asked Philipp to try to reproduce things on an NVidia windows box, he told me things didn’t look broken.
  • On the AMD 13-9 drivers, the code path is absolute death.  I believe that this is where the majority of bug reports were coming from.
  • The actual total performance win from 10.25 to 10.30 appears to be quite a bit bigger on NVidia hardware than AMD hardware. For some reason, one of the modernization changes in 1030 is more important for NV than AMD.  I don’t know what the specific changes that are helping are – the goal of 1030 is to simply use the best code paths we can find.

Here’s an excerpt from my performance testing numbers – this is with fps test 3 with the 747 replay.  The hardware for the test is a GeForce 680 GTX and a Radeon HD 7970.  Expect better fps with the NV card – it’s a generation newer than the AMD card.  Numbers are framerate, probably good +/- 1 fps.

Driver/hw   10.25       10.30b5      10.30b6 (fixed)
NV 331.88   34          34           42
AMD 13-9    28          11           30
AMD 14-4    27          28           29

So you can see here that on better functioning drivers (331.88, 14-4) even with the performance problems of 10.30b5 the net change in framerate from 10.25 was positive. But once I remove the stupid code path, things get a lot better.

That 11 fps in 10.30b5 with 13-9 is the bad code path behaving badly.  That will be fixed in the next beta.

I am hoping that this code path is also responsible for the remaining “low fps in local map” reports, but I haven’t confirmed that yet.

Your Mileage Will Vary

One of the problems with performance testing is that X-Plane’s content varies by add-ons, so how much the problems with 10.30b5 affect you will have a lot to do with which aircraft you fly. This is why some users already thought 10.30 was a win over 10.25 performance wise, and others thought the build was totally unusable.  How much speedup you get will depend on the kind of content you use.

AMD: What Drivers Should I Use

The 14-4 drivers are slightly slower than the 13-9 drivers for either shipping X-Plane 10.25 or 10.30b6 (not yet released).  I believe this represents a fundamental (small) loss of performance with the newer drivers. The loss is actually smaller than it looks if you view the raw fps numbers with fractions, and the precision for the tests isn’t better than 1 fps.

If you can run the 14-4 drivers you should – they fix a bug in sRGB blending with HDR that makes the 13-9 drivers look rather weird with HDR mode.

If you are stuck on the 13-9 drivers because you have old hardware (the oldest GPU the new drivers support is the HD 6000 series – so if you have the HD 5870 or older you need the older drivers) at least 10.30b6 will improve performance.

Clouds Are Their Own Performance Problem

The other big performance problem that I am aware of besides this one is that clouds use a lot more fill rate than they used to.  This is my next bug to try to fix – it is totally separate from this one, and affects all platforms.  My goal is to get the clouds to use the same fill rate as they did in 10.25.  That work isn’t done yet, but at least now I have hardware to work 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.

28 comments on “Fixing X-Plane 10.30 Performance

  1. Thanks for the update Ben, I enjoy the behind-the-scenes look at the technical side of things. One comment about the AMD drivers: on their site it says that 14.4 is also for the HD5xxx series, and indeed that is what I’m running on my HD5770 card.

    Another interesting note in the YMMV category: in 10.30b3 I was seeing about the same performance as 10.25 (maybe 1 or 2 fps less) but in 10.30b5 (I didn’t try b4) my framerate dropped by about 25%. Nothing else changed on my PC or in my X-Palne install between b3 and b5, so not sure what I got the drop. I even knocked everything down to the “Set all settings for maximum speed” to test and was still almost 25% below what I got in b3 with my normal settings. Looking forward to trying b6.

  2. As a NV user I am curious how the frame rate in the final version will be. Since then I am impatiently waiting 🙂 and reading the success stories here. Thank you!

    1. I don’t know yet. I’ll run Intel benchmarks next – I’m still completing the NVidia series. (I ran one subset on NV to make sure that what was good for AMD hadn’t TOTALLY hosed NV.)

      1. I hope it hasn’t hosed it all since I just spent all my pennies on a new nVidia card.

  3. Hi Ben, that’s great news!
    Just one question: Was that a typo “Nvidia 331.88 drivers”? as I’ve just checked the NVIDIA Driver Downloads and can’t find “331.88”, but can find “337.88”.
    Name Version Release Date
    GeForce 337.88 Driver WHQL NVIDIA Recommended 337.88 26.5.2014
    GeForce 335.23 Driver WHQL 335.23 10.3.2014
    GeForce 334.89 Driver WHQL 334.89 18.2.2014
    GeForce 332.21 Driver WHQL 332.21 7.1.2014
    GeForce R331 Game Ready Driver WHQL 331.82 19.11.2013
    GeForce R331 Game Ready Driver WHQL 331.65 7.11.2013
    GeForce R331 Game Ready Driver WHQL 331.58 21.10.2013
    GeForce 327.23 Driver WHQL 327.23 19.9.2013
    GeForce 320.49 Driver WHQL 320.49 1.7.2013
    cessna729

  4. Hello Ben,

    I’ve upgraded to 10.30b5 and i saw a strange performance behaviour.

    When i start the sim at daytime i get about 14 fps. It’s about 8 fps less then 10.25. Then i started to elapse time to twilight the fps went to 30 fps.

    I hope you can give me an update on that.

    Thanks

  5. Thanks for the update, Ben !

    Just one question: I know about the demo mode but I am not entirely sure about how it works. The few time I tested it (as I remember) it did load additional sceneries and stuff (plugins).

    How about an easy to use benchmark mode without many options that disables all plugins, takes you to KSEA with fixed mid-range rendering settings and that records fps, cpu and gpu load ? It would be much easier to check out things like changing driver settings, overclocking and so on.

        1. You have to use an FDR file for the replay

          X-Plane.exe –fps_test=3 –load_smo=Output/replays/test_flight_747.fdr

          Also, clouds do not work right in the time demo – I’m trying to fix this now.

  6. Regarding ideal hardware.

    Thanks for the info (from the comments on the previous post). I had been good at checking the forums about hardware and so the replies were more of a review than new information. I just noticed a performance downgrade since 10.25 and was wondering if I needed to upgrade anything. My greatest FR drop was in the clouds, so that jives with the cloud fill-rate bug.

    I fly using PilotEdge and VATSIM, not AI. I use many Carenado files and some X-Aviation files, and a third-party WX updater to get multilayer WX. I keep the AA dialed back and the texture resolution one setting lower than the max.

    Sounds like I could use a video card update, but will get a few more miles out of my current one by dialing back the clouds. Thanks for the info. I’d love to arrange a visit if I ever come through Columbia, even if it’s just to buy you guys lunch.

  7. Great news as I have been suffering with my 7950 Ice Q*2, even on the demo scenery I was getting 13 FPS!
    I Sincerely hope the next update fixes this but when can we expect b6?
    Are you working on other fixes as well before you release because I was kind of hoping it would be out sooner rather than later 🙂

  8. Hey Ben , great news and I’m really looking to chech the performance on my Nvidia hardware .
    Sorry that it’s a bit of topic but is there any time-frame that you have to release WED 1.3 with the new automatic photoreal builder ?
    Also is there any option that this new tool will support multiple Geotiff’s import? now you can import only one file per click and it’s a bit annoying 🙂

    1. I’m not sure if the photoreal builder will be in the next release of WED, but the next release of WED should go beta in a week or two.

  9. Obviously, the Mac is a much more homogenous platform than the PC. Does this make development easier in practice? Or are you just fighting different problems?

    1. In practice it’s not that much more homogenous. On OSX we have 3 “half” drivers (The bottom half of OGL for NV, AMD, and Intel GPUs). On Windows 3 have 3 “full” drivers (the full OGL for NV, AMD, and Intel).

      So there is more consistency on OS X wrt OpenGL bugs, but I think that effect is dwarfed by the different philosophy and Apple vs the IHVs…Apple focuses on stability with GL a lot more, while NV and AMD are just fighting for perf, perf, perf. So we see more regression bugs on Windows where the GPU vendor tries to make things faster, breaks something, then puts it back.

Comments are closed.