Our New CPU Testing Suite for 2018 and 2019

Spectre and Meltdown Hardened

In order to keep up to date with our testing, we have to update our software every so often to stay relevant. In our updates we typically implement the latest operating system, the latest patches, the latest software revisions, the newest graphics drivers, as well as add new tests or remove old ones. As regular readers will know, our CPU testing revolves an automated test suite, and depending on how the newest software works, the suite either needs to change, be updated, have tests removed, or be rewritten completely. Last time we did a full re-write, it took the best part of a month, including regression testing (testing older processors).

One of the key elements of our testing update for 2018 (and 2019) is the fact that our scripts and systems are designed to be hardened for Spectre and Meltdown. This means making sure that all of our BIOSes are updated with the latest microcode, and all the steps are in place with our operating system with updates. In this case we are using Windows 10 x64 Enterprise 1709 with April security updates which enforces Smeltdown (our combined name) mitigations. Uses might ask why we are not running Windows 10 x64 RS4, the latest major update that doesn't delete your data – this is due to some new features which are giving uneven results. Rather than spend a few weeks learning to disable them, we’re going ahead with RS3 which has been widely used.

Our previous benchmark suite was split into several segments depending on how the test is usually perceived. Our new test suite follows similar lines, and we run the tests based on:

  • Power
  • Memory
  • Office
  • System
  • Render
  • Encoding
  • Web
  • Legacy
  • Integrated Gaming
  • CPU Gaming

Depending on the focus of the review, the order of these benchmarks might change, or some left out of the main review. All of our data will reside in our online benchmark database, Bench, for which there is a new ‘CPU 2019’ section for all of our new tests.

Within each section, we will have the following tests:

Power

Our power tests consist of running a substantial workload for every thread in the system, and then probing the power registers on the chip to find out details such as core power, package power, DRAM power, IO power, and per-core power. This all depends on how much information is given by the manufacturer of the chip: sometimes a lot, sometimes not at all.

We are currently running POV-Ray as our main test for Power, as it seems to hit deep into the system and is very consistent. In order to limit the number of cores for power, we use an affinity mask driven from the command line.

Memory

These tests involve disabling all turbo modes in the system, forcing it to run at base frequency, and them implementing both a memory latency checker (Intel’s Memory Latency Checker works equally well for both platforms) and AIDA64 to probe cache bandwidth.

Office

  • Chromium Compile: Windows VC++ Compile of Chrome 56 (same as 2017)
  • PCMark10: Primary data will be the overview results – subtest results will be in Bench
  • 3DMark Physics: We test every physics sub-test for Bench, and report the major ones (new)
  • GeekBench4: By request (new)
  • SYSmark 2018: Recently released by BAPCo, currently automating it into our suite (new, when feasible)

System

  • Application Load: Time to load GIMP 2.10.4 (new)
  • FCAT: Time to process a 90 second ROTR 1440p recording (same as 2017)
  • 3D Particle Movement: Particle distribution test (same as 2017) – we also have AVX2 and AVX512 versions of this, which may be added later
  • Dolphin 5.0: Console emulation test (same as 2017)
  • DigiCortex: Sea Slug Brain simulation (same as 2017)
  • y-Cruncher v0.7.6: Pi calculation with optimized instruction sets for new CPUs (new)
  • Agisoft Photoscan 1.3.3: 2D image to 3D modelling tool (updated)

Render

  • Corona 1.3: Performance renderer for 3dsMax, Cinema4D (same as 2017)
  • Blender 2.79b: Render of bmw27 on CPU (updated to 2.79b)
  • LuxMark v3.1 C++ and OpenCL: Test of different rendering code paths (same as 2017)
  • POV-Ray 3.7.1: Built-in benchmark (updated)
  • CineBench R15: Older Cinema4D test, will likely remain in Bench (same as 2017)

Encoding

  • 7-zip 1805: Built-in benchmark (updated to v1805)
  • WinRAR 5.60b3: Compression test of directory with video and web files (updated to 5.60b3)
  • AES Encryption: In-memory AES performance. Slightly older test. (same as 2017)
  • Handbrake 1.1.0: Logitech C920 1080p60 input file, transcoded into three formats for streaming/storage:
    • 720p60, x264, 6000 kbps CBR, Fast, High Profile
    • 1080p60, x264, 3500 kbps CBR, Faster, Main Profile
    • 1080p60, HEVC, 3500 kbps VBR, Fast, 2-Pass Main Profile

Web

  • WebXPRT3: The latest WebXPRT test (updated)
  • WebXPRT15: Similar to 3, but slightly older. (same as 2017)
  • Speedometer2: Javascript Framework test (new)
  • Google Octane 2.0: Depreciated but popular web test (same as 2017)
  • Mozilla Kraken 1.1: Depreciated but popular web test (same as 2017)

Legacy (same as 2017)

  • 3DPM v1: Older version of 3DPM, very naïve code
  • x264 HD 3.0: Older transcode benchmark
  • Cinebench R11.5 and R10: Representative of different coding methodologies

Linux (when feasible)

When in full swing, we wish to return to running LinuxBench 1.0. This was in our 2016 test, but was ditched in 2017 as it added an extra complication layer to our automation. By popular request, we are going to run it again.

Integrated and CPU Gaming

We have recently automated around a dozen games at four different performance levels. A good number of games will have frame time data, however due to automation complications, some will not. The idea is that we get a good overview of a number of different genres and engines for testing. So far we have the following games automated:

AnandTech CPU Gaming 2019 Game List
Game Genre Release Date API IGP Low Med High
World of Tanks enCore Driving / Action Feb
2018
DX11 768p
Minimum
1080p
Medium
1080p
Ultra
4K
Ultra
Final Fantasy XV JRPG Mar
2018
DX11 720p
Standard
1080p
Standard
4K
Standard
8K
Standard
Shadow of War Action / RPG Sep
2017
DX11 720p
Ultra
1080p
Ultra
4K
High
8K
High
F1 2018 Racing Aug
2018
DX11 720p
Low
1080p
Med
4K
High
4K
Ultra
Civilization VI RTS Oct
2016
DX12 1080p
Ultra
4K
Ultra
8K
Ultra
16K
Low
Ashes: Classic RTS Mar
2016
DX12 720p
Standard
1080p
Standard
1440p
Standard
4K
Standard
Strange Brigade* FPS Aug
2018
DX12
Vulkan
720p
Low
1080p
Medium
1440p
High
4K
Ultra
Shadow of the Tomb Raider Action Sep
2018
DX12 720p
Low
1080p
Medium
1440p
High
4K
Highest
Grand Theft Auto V Open World Apr
2015
DX11 720p
Low
1080p
High
1440p
Very High
4K
Ultra
Far Cry 5 FPS Mar
2018
DX11 720p
Low
1080p
Normal
1440p
High
4K
Ultra
*Strange Brigade is run in DX12 and Vulkan modes

For our CPU Gaming tests, we will be running on an NVIDIA GTX 1080. For the pure CPU benchmarks, we use an RX460 as we now have several units for concurrent testing.

In previous years we tested multiple GPUs on a small number of games – this time around, due to a Twitter poll I did which turned out exactly 50:50, we are doing it the other way around: more games, fewer GPUs.

Scale Up vs Scale Out: Benefits of Automation

One comment we get every now and again is that automation isn’t the best way of testing – there’s a higher barrier to entry, and it limits the tests that can be done. From our perspective, despite taking a little while to program properly (and get it right), automation means we can do several things:

  1. Guarantee consistent breaks between tests for cooldown to occur, rather than variable cooldown times based on ‘if I’m looking at the screen’
  2. It allows us to simultaneously test several systems at once. I currently run five systems in my office (limited by the number of 4K monitors, and space) which means we can process more hardware at the same time
  3. We can leave tests to run overnight, very useful for a deadline
  4. With a good enough script, tests can be added very easily

Our benchmark suite collates all the results and spits out data as the tests are running to a central storage platform, which I can probe mid-run to update data as it comes through. This also acts as a mental check in case any of the data might be abnormal.

We do have one major limitation, and that rests on the side of our gaming tests. We are running multiple tests through one Steam account, some of which (like GTA) are online only. As Steam only lets one system play on an account at once, our gaming script probes Steam’s own APIs to determine if we are ‘online’ or not, and to run offline tests until the account is free to be logged in on that system. Depending on the number of games we test that absolutely require online mode, it can be a bit of a bottleneck.

Benchmark Suite Updates

As always, we do take benchmark requests. It helps us understand the workloads that everyone is running and plan accordingly.

A side note on software packages: we have had requests for tests on software such as ANSYS, or other professional grade software. The downside of testing this software is licensing and scale. Most of these companies do not particularly care about us running tests, and state it’s not part of their goals. Others, like Agisoft, are more than willing to help. If you are involved in these software packages, the best way to see us benchmark them is to reach out. We have special versions of software for some of our tests, and if we can get something that works, and relevant to the audience, then we shouldn’t have too much difficulty adding it to the suite.

Test Bed and Setup CPU Performance: System Tests
Comments Locked

274 Comments

View All Comments

  • vext - Friday, October 19, 2018 - link

    Very good article, but here are my beefs.

    Why is there no mention of temperatures?

    According to Techspot the 9900k runs ridiculously hot under heavy loads. At stock clocks under a heavy Blender load it reaches 85C with a Corsair H100i Pro, or Noctua NH-D15. Pushed to 5Ghz, it hits 100C. At 5.1 Ghz it FAILS. I suggest that Anandtech has failed by not discussing this.

    Techspot says:

    "There’s simply no way you’re going to avoid thermal throttling without spending around $100 on the cooler, at least without your PC sounding like a jet about to take off. Throw in the Corsair H100i Pro and the 9900K now costs $700 and you still can’t overclock, at least not without running at dangerously high temperatures."

    Why the focus on single threaded benchmarks? For the most part they are irrelevant. Yet they are posted in their own graph, at the front of each testing section, as though they were the most important data point. Just include them as a separate bar with the multi-thread benchmarks. Good Grief!

    Why post MSRP prices in every single benchmark? You can't even buy them for MSRP. There should be a single chart at the front of the article with a rough retail estimate for each processor, and links to the retailers. If the MSRP is necessary, then just add a column to the chart. Sheesh.

    Why no in depth cost/benefit comparison? A Ryzen 2600 with included cooler at $160 costs only one quarter of a 9900k with an aio cooler at $700. The $540 difference would buy a new RTX 2070 video card. Or three more Ryzen 2600's. For crying out loud.

    I like the 9900k, it's a good processor. It's intended for hobbyists that can play with custom loop cooling. But it's not realistic for most people.
  • mapesdhs - Sunday, October 21, 2018 - link

    All good questions... the silence is deafening. Thankfully, there's plenty of commentary on the value equation to be found. A small channel atm, but I like this guy's vids:

    https://www.youtube.com/watch?v=EWO5A9VMcyY
  • abufrejoval - Friday, October 19, 2018 - link

    I needed something a little bigger for my lab two or three years ago and came across an E5-2696v3 on eBay from China, a Haswell generation 18-core at $700.

    That chips didn't officially exist, but after digging a little deeper I found it's basically an E5-2699v3 which clocks a little higher (3.8 instead of 3.6GHz) with 1-2 cores active. So it's basically a better chip for a fraction of the going price of the lesser one (E5-2699v3 is still listed at €4649 by my favorite e-tailer). And yes, it's a perfect chip, Prime95'd it for hours, POVrayd and Blendered for days until I was absolutely sure it was a prime quality chip.

    Officially it has 145Watts TDP, but I've only ever seen it go to 110Watts on HWiNFO with Prime95 in its meanest settings: It must be a perfect bin. With the particle pusher it's never more than 93Watts while no part of the CPU exceeds 54°C with a Noctua 140mm fan practically inaudible at 1000rpm cooling it: That because the 18 cores and 36 threads never run faster than 2.8GHz fully loaded. They also don't drop below it (except for idle, 1.855 Watts minimum btw.), so you can pretty much forget about the 2.3GHz 'nominal' speed.

    It gets 2968.245803 on that benchmark, slightly above the i9-9900k, somewhat below the ThreadRipper. That's 22nm Haswell against 14++/12nm current and 18 vs 8/12 cores.

    This is rather typical for highly-threaded workloads: It's either cores or clocks and when the power ceiling is fixed you get higher throughput and energy efficiency when you can throw cores instead of clocks at the problem.

    I think it's a data point worth highlighting in this crazy clock race somewhat reminiscent of Pentium 4 days, heat vs. efficiency, a four year old chip beating the newcomer in performance and almost 3:1 in efficiency at far too similar prices.

    Yet, this specific chip will clock pretty high for a server chip, easily doing 3.6 GHz with eight cores seeing action from your game engine, while the remaining ten are often ignored: Perhaps that's a Ryzen effect, it used to be 4:14 earlier.

    I've done BCLK overclock of 1.08 to have it reach the magic 4GHz at maximum turbo, but it's not noticeable in real-life neck-to-neck to an E3-1276v3 which also turbos to 4GHz on three cores out of four available, 3.9 at 4/4 with HT.
  • abufrejoval - Friday, October 19, 2018 - link

    2968.245803 on the particle pusher benchmark... need edit
  • icoreaudience - Friday, October 19, 2018 - link

    Move away from rar/lzma : the new darling of data compression is called Zstandard :
    https://www.zstd.net

    It comes with a nice integrated benchmark, which can easily ramp up with multithreading :
    zstd -b -1 -T8 fileToTest # benchmark level one on fileToTest using 8 threads

    Windows user can even download a pre-compiled binary directly in the release notice :
    https://github.com/facebook/zstd/releases/latest

    It would be great to see some numbers using this compressor on latest Intel cores !
  • Kaihekoa - Friday, October 19, 2018 - link

    Looks like all your gaming benchmarks are GPU bound and there pointless. Why not use a 2080 Ti to eliminate/reduce GPU bottleneck?
  • Kaihekoa - Friday, October 19, 2018 - link

    therefore*
  • palladium - Friday, October 19, 2018 - link

    Can you please run some SPEC2006 benchmarks and see if Apple's SOC really has caught on to Intel's performance (per core), as mentioned in Andrei in his iPhone XS review? Thanks
  • VirpZ - Friday, October 19, 2018 - link

    Apart from blender, your review is full Intel biased software for rendering.
  • Hifihedgehog - Friday, October 19, 2018 - link

    Hey Ian. I see your updated full load power consumptions results. Question: Why is it that the six-core i7-8086K is drawing so little power in comparison to everything else including the quad-cores? Is this due to its better binning or is this simply an error that crept in?

Log in

Don't have an account? Sign up now