DX12: Ashes Of The Singularity Benchmark

Oxide Games released its RTS game Ashes of the Singularity. Ashes is an RTS title powered by their Nitrous game engine. The game’s look and feel somewhat resembles Total Annihilation, with large numbers of units on-screen simultaneously, and heavy action between ground and flying units. The game has been in development for several years, and it’s the debut title for the new Nitrous engine.

Truth be told, we remain a little hesitant in deciding whether or not to use this benchmark in our test suite. But is does show improvements in Async compute hence we have added this DX12 class title. We use the internal benchmark with high quality settings. The test run executes an identical flyby pass and tests various missions and unit match-ups. This benchmark doesn't pre-compute the results. Every segment of the game engine, including its AI, audio, physics, and firing solutions is executed in real-time, every single time. Making it a valid test. Also, not using it would raise even more questions I guess, so from this point onwards we'll start to include results.

We measure at high detail settings at a monitor resolution of 2560x1440 - You will notice that the benchmark results designates batches, CPU framerate and average of all frames. Batches can be seen as predefined draw calls. “Normal” batches contain a relatively light number of draw calls, heavy batches are those frames that include a huge number of draw calls increasing scene complexity with loads of extra objects to render and move around. The idea here is that with a proper GPU you can fire off heavy batches with massive draw calls. And as we all know, one of the major benefits of DirectX 12 is the ability to increase draw calls to the system with lower API overhead, resulting in more complex scenes and better use of lower spec hardware. As with all benchmarks, higher=better.



Additional chart with different workloads (batches)