And if you thought that was a lot of data to figure out.. Here comes DCS 🙂
I’ve recorded a Free flight in SU-25T in Georgia with DCS1.5.7. The test track consists of some low flying at the beginning, then climbing up in altitude only to dive down into a little valley run.
Live game Vs. Replay
Before we get into the actual test data we need to prove that our method of testing is valid. I’ve measured FPS during the recording of the track and compared it to a playback in the same settings level.
As you can see graphs line up pretty much perfect, which means that we can use the playback as a valid consistent way to indicate expected performance in this scenario of the track, while negating the human factor. A perfect benchmark.
High Settings preset
We’ll start with the more common full screen scenario. I’m testing on a 4K screen, so lower res will naturally have better performance.
Settings used in this test:
Again we have Min/Max/AVG and FPS plot graphs.
There is a gain in performance, the three 8700k runs are very tightly packed, and there is a gain of about 40 fps in the very busy parts, and nothing in the “normal parts”. But all in all, frame rate on the 2600k didn’t drop below 30 fps, and again, this is a 4K screen with high settings.
I’ve made a little Oopsie
The keen eyed of you would have noticed that in the full screen tests, the game was actually running in fullscreen borderless, rather then actual full screen (no checkbox in “full screen”).
So I’ve tested it again with that checkbox in place, if there is no change between actual full screen to the tests I’ve done so far, then the test is valid.
Now for the main event. I actually decided on the upgrade on the SOLE purpose of boosting VR performance in DCS. I was very content with performance of everything else on my system and would probably have stuck with the 2600K till the day it died.
The way I tested hardware were designed in order maximize the knowledge gains from the test, trying to quantify gains from different aspects of hardware.
Settings used for this test:
so let’s go!
I’m putting this graph here first, but it’s hiding the truth, as VR FPS is capped at 90 FPS, and will drop to 45, 30 and 24 FPS. if you hit 30 you start going into the motion sickness zone, but more important, going below that will break immersion pretty much instantly. Looking at this graph alone, it seems that there is no significant difference, average FPS is slightly higher. but that’s exactly the point. To understand this, we’ll need to look at the FPS plot.
It’s kind of a mess of a graph, but I’ll try and explain what we have here (click on the image to get a better look at it).
let’s start with the red graph, that’s the “original” 2600k. As you can see it sufferes quite a bit at the beginning sitting at 45FPS for the first 6 minutes of the track as I was flying over towns and trees at low altitude. then it goes back up to 90 for most of the time, with dips as houses and trees show up here and there.
Now look at the dark green, the stock 8700k with 2133Mhz memory. it performs much better in a noticable way, providing 90fps for more of the time. if you look closly, you’ll see dips to the 60-80 FPS range. which in theroy makes no sense, as FPS should be either 90 or 45. FRAPS however, provides us with a one second average (i.e number of frames shown it that specific second). those “mid range” values, are actually small drops in FPS where framerate is not stable within that second.
Now look at the light blue line, representing XMP profile enabled. now we have a stock 8700K paired up with 3200Mhz memory. The faster memory “eats up” most of the dips in the stock 8700 graph. which indicates that those drops are probably due to asset fetching in or out of memory. The faster memory shortens this time, allowing for a smoother operation and a more consistent framerate.
Last is the MCE performance graph, shown in light green. There is a very, very noticeable improvement in consistency over all the previous configurations. Framerate goes to 90 in times it was not there even with XMP on. I believe this is indicative to the way DCS does some of the “behind the scenes” where a single actions spawns lots of small tasks in threads (My guess is that it’s Async fetching of assets to or from disk, system memory or GPU memory), those small threads are assigned by the OS to a random core, and because of the “Sync all cores” feature we discussed in the synthetic tests, it just the smidgen faster pace needed to maintain 90 fps.