(Glenn’s Technical Insights… used to be part of our bi-weekly newsletter but we decided to make it a regular blog post instead so it can get more visibility. It covers interesting new hardware and software developments that are generally relevant for SQL Server).
Microarchitectural Data Sampling in Intel Processors
On May 14, 2019, news broke that a new series of speculative execution side-channel flaws are present in most existing Intel mobile, desktop, and server processors. These newly announced exploits are detailed in this advisory from Intel. Jon Masters from Red Hat has a pretty detailed explanation of these vulnerabilities here. Here are the four CVEs:
CVE-2018-12126 Microarchitectural Store Buffer Data Sampling (MSBDS)
CVE-2018-12127 Microarchitectural Load Port Data Sampling (MLPDS)
CVE-2018-12130 Microarchitectural Fill Buffer Data Sampling (MFBDS)
CVE-2019-11091 Microarchitectural Data Sampling Uncacheable Memory (MDSUM)
For affected Intel processors, you will need OS patches plus microcode updates (BIOS updates) from your hardware vendor. You may want to consider disabling hyper-threading on affected processors. Microsoft has updated their guidance on this subject here:
SQL Server guidance to protect against Spectre, Meltdown and Micro-architectural Data Sampling vulnerabilities
Intel has a deep dive on this subject here:
Deep Dive: Intel Analysis of Microarchitectural Data Sampling
Microsoft has already released an updated PowerShell script that you can use to check your current OS and hardware status regarding these exploits. This article walks you through how to download the PowerShell script and run it to check your patching status:
How to test MDS (Zombieload) patch status on Windows systems
Figure 1 shows the results on my AMD Threadripper 2950X system (which is intrinsically less vulnerable to these types of attacks). This is after I patched Windows 10 yesterday.
Figure 1: Get-SpeculationControlSettings Results
BTW, the SQL Server 2017 security update for SSAS that was released on May 14, 2019 is for a completely different issue.
AMD Ryzen 3000 Series Speculation
As Computex Taipei 2019 gets closer (May 27), there are an increasing number of leaks and rumors about the exact specifications and features of the upcoming AMD Ryzen 3000 series desktop processors. This family of 7nm mainstream desktop processors will supposedly have SKUs starting with 6C/12T, going up to 16C/32T. Ryzen 3000 series processors will also have PCIe Gen 4.0 support. These processors are supposed to work in most existing 300 and 400 series AM4 socket motherboards. There will also be new 500 series motherboards that will offer additional features.
Figure 2: 2019 AMD Client Lineup
The main unknowns at this point are the exact specifications in terms of base and max boost speeds and how much instructions per clock (IPC) improvement we will see compared to the existing AMD Ryzen 2000 series processors. Depending on what the answers to these are, we may see these processors actually having better single-threaded CPU performance compared to Intel. If that happens, it will further establish AMD as a viable competitor to Intel from nearly every perspective in this market segment. This would be great for the consumer.
Here are some videos that cover the latest rumors and leaks:
The Full Nerd ep. 93: AMD Ryzen 3000 and Radeon Navi rumors, Computex predictions, Q&A
AMD Ryzen 3000 16c specs LEAKED, RX 600 series, Nvidia SUED | Awesome Hardware #0187-A
HW News – Intel Shortage Ending, Ryzen 9 16-Core, & AMD Supercomputer
You might be thinking that this is interesting, but what does it have to do with SQL Server? If the Ryzen 3000 series performs as expected, and is successful in the marketplace, it will be a good precursor to the upcoming 7nm AMD EPYC “Rome” server processors. It will give us some hint about the IPC and clock speed increases that we can expect from the Zen 2 architecture. We should also get much more detail about the Rome processors at Computex.