2

I have a question about Meltdown and Spectre.

As far as I understood, the Windows patches are just workarounds and what really needs to be done are microcode updates

Microsoft says that the computers will get slower due to the windows patch.

My first question is:  If I get a microcode update (so that the Windows patch is not necessary anymore?), will the computer still be slower or will the microcode update fix the issues without performance loss?

My second question: I plan to buy a new notebook and I wonder if it is okay to do so at the current time or if I should wait a few months till Intel releases new CPU models. In other words: will the CPUs of the future be better than the current patched CPUs in regards to the performance loss because of Spectre and Meltdown?

Daniel Marschall
  • 317
  • 2
  • 5
  • 17
  • Wish people would do proper research, only a single Spectre, mitigation comes with a potential performance degradation. All Intel products on the market currently come with some form of degradation. Intel has not announced their 9th generation Core products at this time. The other vulnerabilities effect ALL processors, there isn’t a single processor, that isn’t vulnerable. AMD design makes Meltdown a non-issue but the other Spectre vulnerabilities are applicable – Ramhound Jan 13 '18 at 17:18

3 Answers3

2

As far as I understood, the Windows patches are just workarounds and what really needs to be done are microcode updates

IMHO we need to wait for new processor generations.

Meltdown and Spectre attack vulnerabilities in mechanisms which enhance the performance of the vulnerable processors. This hits practically anything modern, with a few exceptions (Raspberry Pi models, Apple watch).

Also the vendor information has to be treated with care, e.g. AMD has now acknowledged their vulnerability after first denying it (link). We have to wait and see.

Impacted is the isolation of different users on a machine.

Microcode updates are a part where the vendors can change the CPU, but it is not clear if this will fix the security holes fully or only reduce the risk somewhat and how this impacts performance.

The operating system updates and web browser updates will only reduce the risk.

Microsoft says that the computers will get slower due to the windows patch. My first question is: If I get a microcode update (so that the Windows patch is not necessary anymore?), will the computer still be slower or will the microcode update fix the issues without performance loss?

AFAIK the microcode patch is needed as a prerequisite to the MS patches. It shows also in one of half a dozen points to check in a MS power shell check script recently. (PowerShell Verification using the PowerShell Gallery)

MS VP Myerson in his blog claims:

Here is the summary of what we have found so far:

  • With Windows 10 on newer silicon (2016-era PCs with Skylake, Kabylake or newer CPU), benchmarks show single-digit slowdowns, but we don’t expect most users to notice a change because these percentages are reflected in milliseconds.
  • With Windows 10 on older silicon (2015-era PCs with Haswell or older CPU), some benchmarks show more significant slowdowns, and we expect that some users will notice a decrease in system performance.
  • With Windows 8 and Windows 7 on older silicon (2015-era PCs with Haswell or older CPU), we expect most users to notice a decrease in system performance.
  • Windows Server on any silicon, especially in any IO-intensive application, shows a more significant performance impact when you enable the mitigations to isolate untrusted code within a Windows Server instance. This is why you want to be careful to evaluate the risk of untrusted code for each Windows Server instance, and balance the security versus performance tradeoff for your environment.

So there will be a more or less noticeable hit.

My second question: I plan to buy a new notebook and I wonder if it is okay to do so at the current time or if I should wait a few months till Intel releases new CPU models. In other words: will the CPUs of the future be better than the current patched CPUs in regards to the performance loss because of Spectre and Meltdown?

I can only speculate. It seems like security has played no big concern for the performance optimization techniques so far. Security hardened performance optimization techniques have to be developed and tested. Might take a year or two.

For a notebook I would not worry too much. You are unlikely to host other users there (unlike VPS or cloud service providers), so you are only exposed to malware and evil JavaScript, as you were before. Against these help:

  • stay current regarding OS and web browser updates
  • use a good anti-malware software
  • backups
  • encryption
mvw
  • 851
  • 5
  • 12
1

Microcode patching can't fix the CPUs with respect of meltdown (I'm not talking about spectre. The only way to handle this problem is to replace the CPU or use workarounds to make sure the code path can't be executed unsafely - which requires patches to the OS and will slow down the computer.

davidgo
  • 68,623
  • 13
  • 106
  • 163
  • that's what I thought. I couldn't understand how AMD and Intel claimed to fix it with microcode updates because v2 can only be fixed with a) recompiling kernel APIs with retpolines or b) manufacturing CPU to have PCIDs in the BTB. Meltdown can only be fixed by modifying TLB hardware to squash an underprivileged load (perhaps by returning a zeroed value) (which no microcode update can do). V1 can only be fixed by serialising the instruction stream and V4 can only be fixed by preventing StoreLoad reordering. Again, none of this can be achieved by updating MSROM routines AFAIK. – Lewis Kelsey Mar 15 '19 at 22:31
  • store/load instructions don't use the microsequencer anyway, they're normal operations that hard-decode into 2 uops in the case of store. I'm not sure what the following microcode update entails at all : https://www.zdnet.com/article/new-spectre-variant-4-our-patches-cause-up-to-8-performance-hit-warns-intel/ – Lewis Kelsey Mar 15 '19 at 22:31
0

In case any of you use Linux, try setting mitigations=off in your boot parameters in /etc/defaults/grub, run update-grub, reboot and then run a sysbench of your CPU:

[user@system ~]$ sysbench cpu run --threads=2

The performance on my light-powered Pentium Silver doubled.

I set mitigations=on on again and ran the bench again... to find that I wasn't mistaken. Performance is basically halved in the benchmark.

Also the perceived performance improvement was noticeable as well; things were much snappier after disabling.

Still not 100% what the real risk is to some random website on the internet affecting my PC, but my laptop is almost always only at home, and I leave the firewall turned on.

Senturion
  • 109
  • 5