Meltdown & Spectre: Analyzing Performance Impacts on Intel's NUC7i7BNH
by Ganesh T S on March 23, 2018 4:15 PM EST- Posted in
- Systems
- Spectre
- Benchmarks
- Meltdown
One of the consequences of the Meltdown and Spectre vulnerabilities, besides the immediate security concerns, is what it has meant for our ongoing testing and benchmarking operations. Along with accounting for the immediate performance changes from the required patches, we've also needed to look at how we present data and how we can (or can't) compare new patched systems to older unpatched systems. From an editorial perspective we need to ensure the continuity of our data as well as providing meaningful benchmark collections.
What we've found so far is that the impact of the Meltdown and Spectre patches varies with the workload and the type of test. Nate's GPU testing shrugs it off almost entirely, while Billy's SSD testing especially feels the pinch. In the middle of course are consumer system reviews, where workloads are more varied but also much more realistic and often more relevant as well. Of course, this is also the type hardware that we most often have to return when we're done, making it the most challenging to correct.
As everyone at AnandTech has been integrating the patches and updating their datasets in their own way, I wanted to offer some insight into what's going on for system testing. With several important systems set to launch in the first half of this year – particularly Intel's Hades Canyon – I've been going back and collecting updated results for use in those future reviews. In the process, I also wanted to document how performance has been impacted by these security patches and which benchmarks in particular have been affected.
Evaluation Setup
The Intel Kaby Lake NUC (NUC7i7BNH) was used for all the benchmarks presented in this article. It was chosen for two reasons. Being a relatively new system that consumers can still purchase in the market, evaluating it presents data of particular relevance to readers. Intel was prompt in providing BIOS updates to resolve the Meltdown and Spectre issues compared to other OEMs whose systems I had in hand for evaluation. The NUC was configured with the following specifications:
Intel NUC7i7BNH (Unpatched) Specifications | |
Processor | Intel Core i7-7567U Kaby Lake-U, 2C/4T, 3.5 - 4.0 GHz, 14nm+, 4 MB L2, 28W TDP |
Memory | Crucial Ballistix Sport LT BLS16G4S240FSD.16FAD DDR4 15-15-15-35 @ 2133 MHz 2x16 GB |
Graphics | Intel Iris Plus Graphics 650 |
Disk Drive(s) | ADATA SX8000NP (128 GB; M.2 Type 2280 PCIe 3.0 x4 NVMe; Micron 32L 3D MLC) |
Networking | Intel Dual Band Wireless-AC 8260 (2x2 802.11ac - 866 Mbps) 1x Intel 10/100/1000 RJ-45 GbE |
Audio | 3.5mm Headphone Jack Capable of 5.1/7.1 digital output with HD audio bitstreaming (HDMI) |
Miscellaneous I/O Ports | 4x USB 3.0 Type-A 1x Thunderbolt 3 USB-C 1x micro-SDXC |
Operating System | Retail unit is barebones, but we installed Windows 10 Enterprise x64 |
Pricing (Barebones) | USD 445 |
Full Specifications | Intel NUC7i7BNH Specifications |
Three different patch configurations were benchmarked:
- Completely unpatched
- Only OS patches activated (Graph entry : Patch OS)
- Completely patched with updates to both the OS and the CPU microcode (Graph entry : Patch OS + uCode)
While it will (eventually) be an uncommon configuration, right now a lot of systems are still only running OS patches without their associated microcode updates, as the latter is still being distributed. At the same time, because the microcode patches are primarily for Spectre – Meltdown fixes are implemented at an OS level – this allows us to see just how much of an impact the Spectre fixes have on top of the existing Meltdown fixes.
The completely unpatched system used Windows 10 version 16299.125 with BIOS v0054. As evident from the screenshot below, the system is susceptible to both Spectre and Meltdown.
The second configuration was processed with Windows 10 version 16299.309 with BIOS v0060. The screenshot below shows that the system is protected against Meltdown, but, not Spectre.
The final fully patched configuration was process with Windows 10 version 16299.214 and BIOS v0061. The current BIOS is v0062 (the one we used was available briefly before it was pulled to undergo additional QA for possible random restarts). This configuration shows full protection against both Meltdown and Spectre.
We used our standard test suite for low power desktops / industrial PCs in order to evaluate the impact of the patching on the performance of the system.
83 Comments
View All Comments
Klimax - Sunday, March 25, 2018 - link
Just well chosen set of likely badly written projects to get wanted conclusion...ZolaIII - Sunday, March 25, 2018 - link
What isn't correct there? Why don't you write better one's as source is there? The general tests as SQL, web serving or Github init create & compile times are among many real use & not synthetic benchmarks. You may not find those crucial on standard desktop, on workstation and small server they are & OS choose dictated upon them & system purpose on large server space you won't find anything called Windows there even M$ embraced Linux there (Azure platform).Now try to explain what is your so called "wanted conclusion"? While Linux makes his small talks how he still isn't satisfied with fixes person mostly struck with the regressions & solely most responsible one for the getting Linux to performance leading platform & on much more architectures than any other OS ever supported is Peter Zijlstra.
Now buzz off!
ZolaIII - Sunday, March 25, 2018 - link
Linus*nismotigerwvu - Friday, March 23, 2018 - link
Wow, it looks like this puts Intel behind AMD on IPC for the first time since 2006, at least until new SKUs come to market.mkaibear - Saturday, March 24, 2018 - link
Nah, Zen was about 7% behind on IPC on average, this gets AMD closer but not quite there yet.Means picking a system based on use case has got more interesting though.
Klimax - Sunday, March 25, 2018 - link
Since AMD doesn't have patch for Specters ready, such conclusion is not warranted yet.phoenix_rizzen - Friday, March 23, 2018 - link
Are the OS patch levels listed correct?.125 is unpatched.
.309 is Meltdown-only patched.
.214 is both patched.
Should that last one be .314?
ganeshts - Saturday, March 24, 2018 - link
Initially, I wanted to present only the unpatched and fully patched results.Unfortunately, I have a number of PCs pending review that don't seem to be receiving BIOS updates anytime soon (despite Intel having released the final microcode for its patching). Hence, I had to add the OS-patch only scenario at the last minute after rolling back the BIOS.
So, the order of testing was :
1. Unpatched
2. Both Patched
3. Only OS patched
Drazick - Saturday, March 24, 2018 - link
How did you make your system unpatched?Ryan Smith - Saturday, March 24, 2018 - link
There are registry settings available in Windows to turn off the OS patches. Steve Gibson's InSpectre can twiddle the necessary bits rather easily: https://www.grc.com/inspectre.htm