Desligando as correções das falhas de CPU

Desligar as correções da Intel referentes às falhas Meltdown, Spectre e todas as demais podem melhorar o desempenho do computador em até 20%!


| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. 
Mais detalhes clicando aqui.


1. Introdução

Desde os tempos em que as falhas da Intel foram descobertas, já li muitas reclamações de quem infelizmente atualizou o sistema, seja ele Linux, Windows, FreeBSD e macOS, e essa atualização deixou o sistema mais lento. Por fim, vi computadores com Intel Core i3, Core i5 e até Core i7 ficando de 5 a até 20% mais lentos nos testes de benchmark.

E AMD não está 100% livre do problema. Alguns processadores mais antigos como os da linha A10 também possuem as falhas que devem ser corrigidas – Ou podem ser desabilitadas, você quem definirá isso.

1.1 Por que essas falhas existem?

As falhas reportadas são a nivel de hardware, são erros de desenvolvimento dos núcleos dos processadores, é algo físico, que não tem “remédio” a não ser trocar o hardware comprando um novo computador!

A Intel, pra compensar seus usuários, criou correções a nível de software que ajuda a burlar os problemas dessas falhas de hardware, porém isso não vai melhorar o desempenho, ao preço da segurança maior.

Portanto, desativando tais correções pode melhorar o desempenho do computador.

1.2 Segurança

A segurança é importante e ninguém deveria remover as correções; Mas temos toda sorte de usuários no mundo – não vou mentir, sou um deles – do tipo que não quer ver seu precioso computador ficando lento em prol de corrigir uma falha como essa, falha que não é tão fácil de contornar remotamente.

Principalmente quando você se garante na segurança com firewall habilitado, não utiliza PPA’s desconhecidos, não baixa pacotes de sites não confiáveis – por exemplo, inventar a ideia de baixar um jogo .deb do Pirate Bay – entre outras inúmeras situações. – Se quiser saber mais sobre malwares em sistemas Linux, tenho uma publicação especial sobre isso aqui!

Ou seja, é uma situação recomendada para servidores dedicados, mesmo os domésticos, onde você não vai ter muito acesso e já naturalmente mantém uma segurança maior neles. – APPArmor, SELinux, etc…

Inclusive fizemos uma publicação especial com 40 dicas de segurança para seu sistema doméstico ou servidor. Assim você compensa o desligamento das mitigações do Meltdown e Spectre buscando melhorar o desempenho, reforçando a segurança em outras áreas do sistema. A publicação pode ser vista clicando aqui!

2. Desativando as Correções

Usuários do Windows e do macOS que quiserem melhorar o desempenho retirando o patch devem simplesmente não atualizar seus sistemas.

O pessoal do Windows ainda tem a possibilidade de usar o InSpecter para remover parte dessas correções, porém nem todas estão á disposição e uma perda de desempenho notável se faz permanente até que novas correções via software, mais otimizadas, sejam lançadas – e eu não estou otimista quanto a isso.

No caso do Linux, os comandos valem para qualquer distro que utilize o GRUB como gerenciador de boot.

Verifique a versão do seu kernel:

$ uname -a

2.1 Para sistemas com Kernel 5.1.x ou Anteriores!

Primeiro, abra seu arquivo /etc/default/grub como SUDO com seu editor de textos favorito:

E verifique a seguinte linha:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Basta adicionar os seguintes parâmetros na frente de quiet splash, dando um espaço entre eles:

noibrs noibpb pti=off spectre_v1=off spectre_v2=off l1tf=off 
no_stf_barrier nospec_store_bypass_disable 
pr_spec_disable_noexec mds=off

A linha ficará assim:

GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash noibrs noibpb pti=off spectre_v2=off l1tf=off no_stf_barrier nospec_store_bypass_disable mds=off”

Salve e Feche.

Recarregue seu grub:

$ sudo update-grub2

E reinicie o computador.

2.2 Para sistemas com Kernel 5.2 ou Posteriores!

Primeiro, abra seu arquivo /etc/default/grub como SUDO com seu editor de textos favorito:

$ sudo nano /etc/default/grub

E verifique a seguinte linha:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Basta adicionar o seguinte parâmetro na frente de quiet splash, dando um espaço:

mitigations=off

A linha ficará assim:

GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash mitigations=off

Salve e Feche.

Recarregue seu grub:

$ sudo update-grub2

E reinicie o computador.

2.3 Verificando

Pra saber se após aplicar os parâmetros as correções foram desligadas, ou seja, se seu sistema está vulnerável e melhorar o desempenho, apenas digite o seguinte comando…

$ grep . /sys/devices/system/cpu/vulnerabilities/*

A saída será semelhante a isso:

Todas as linhas que contiverem Vulnerable, quer dizer que as correções foram removidas, seu PC está vulnerável porém mais rápido!

2.3.1 AMD

Se você usa AMD, deve estar perguntando:

Devo me preocupar?

Sim. Existem falhas que existem também para AMD. Mas não todas.
Verifique com o comando acima em 2.3 como verificar a presença e/ou mitigação deles!

3. Resultados

Os testes de benchmark de CPU foram realizados com o HardInfo.
Placas de vídeo não são influenciadas por falhas como essas!

No momento fiz os testes em 4 computadores distintos entre desktop e notebook.
Os resultados foram unânimes: Desligar as correções pode sim melhorar o desempenho do computador!

Abra as imagens em uma nova aba para ve-las em tamanho maior.

3.1 Benchmark 1

Na época dos primeiros testes, só haviam divulgado o parâmetro pti=off e eu possuia um Intel CUBI com um processador Core i7 5500U @ 3Ghz, que apresentou perda de desempenho com as atualizações e correções. Então fiz um teste de benchmark completo de CPU com o programa hardinfo para confirmar.

A tabela mostra como foi o desempenho de benchmark para o kernel 4.14.10 (não patcheado); 4.14.11 com patch (e sem parâmetro pti=off no GRUB); e o 4.14.11 com patch (e com parâmetro pti=off no GRUB). Para cada teste, repeti-o 3x com a máquina sem uso e destaquei em vermelho aqueles que tiveram os melhores resultados. Em amarelo, o vencedor.

Note que, nos testes com o kernel 4.14.10, tivemos uma média geral melhor, esta que diminuiu em desempenho com o patch, mas melhorou após a aplicação do parâmetro especial que desliga as correções.

Observação para o teste extra, no topo, Blender 1, 2 e 3, que foi uma renderização no Blender e o tempo que levou para concluir. Ponto para desativar as mitigações!

3.1.2 Benchmark 2

Esse benchmark fiz a pouco tempo num notebook Samsung Odyssey. Especificações:

  • Processador Intel Core i5 7300 HQ @ 3 Ghz
  • Intel HD Graphics 630
  • 8 GB de RAM
  • GeForce GTX 1050 Mobile, porém esta não participou dos testes.

Os testes foram mais simples: Todos com o kernel Linux 4.19.33 porém alternando entre com e sem as mitigações ligadas.

Ou seja:

  • Mitigações Ligadas = Kernel padrão, com as correções ativas e, portanto, teoricamente, menor desempenho.
  • Mitigações desligadas = com os parâmetros especiais, correções desligadas, teoricamente, melhor desempenho.

Vamos aos resultados:

Os testes, também realizados com o HardInfo foram feitos 3x para termos uma melhor margem de análise. Os melhores resultados de cada um estão em verde, enquanto deixei em amarelo os resultados medianos e/ou iguais. Em vermelho os piores.

Explicando a tabela:

  • Mitigações Ligadas = Kernel padrão, com as correções ativas e, portanto, teoricamente, menor desempenho.
  • Mitigações desligadas = com os parâmetros especiais, correções desligadas, teoricamente, melhor desempenho.

Fique á vontade para tirar sua própria análise sobre os dados numéricos da tabela.

3.1.3 Conclusão

O que mais importa em nossos testes é o seguinte: A quantidade de valores “verdes” no lado sem mitigações é bem maior que o do lado com mitigações. Ou seja, desligar as correções da Intel melhora o desempenho!

E o resultado fica ainda mais dramático quando você analisa o ultimo teste: Aceleração de GPU.
A diferença é gritante, de +500 pontos para o lado sem mitigações.

Ou seja, quem possui Intel HD Graphics e está com as correções ligadas, perderá muito desempenho em games, tanto no Linux quanto no Windows. A diferença é ainda mais sensível quando se considera que, tanto em qualquer hardware sob Windows, quanto em Linux executando em notebooks híbridos, o sistema usa parte da placa da Intel para complementar o processamento das GPU’s dedicadas da NVIDIA e da AMD nessas máquinas.

De todo modo uma bela parcela de gamers perderão desempenho, seja por jogarem apenas na Intel HD Graphics, seja por jogarem na NVIDIA/AMD com parte do processamento distribuído no processador gráfico da Intel.

3.2 Benchmark 3

Nem AMD escapou. Os testes que fiz foram no seguinte hardware:

  • AMD A10-9600P RADEON R5 10 COMPUTE CORES 4C+6G
  • iGPU R7 M445 de 2Gb
  • dGPU R7 M340
  • 8 Gb de RAM

Para quem não acredita, tirei print das especificações ao lado das flags de CPU:

Esse notebook em questão possui as seguintes falhas reportadas:

bugs : fxsave_leak sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass

Os testes foram igualmente simples: Todos com o kernel Linux 4.19.33 porém alternando entre com e sem as mitigações ligadas.

Vamos aos resultados:

Os testes, também realizados com o HardInfo foram feitos 3x para termos uma melhor margem de análise. Os melhores resultados de cada um estão em verde, enquanto deixei em amarelo os resultados medianos e/ou iguais. Em vermelho os piores.

Explicando a tabela:

  • Mitigações Ligadas = Kernel padrão, com as correções ativas e, portanto, teoricamente, menor desempenho.
  • Mitigações desligadas = com os parâmetros especiais, correções desligadas, teoricamente, melhor desempenho.
  • Mitigação Parcial = somente com os parâmetros “pti=off spectre_v1=off spectre_v2=off” no GRUB

3.2.1 Conclusão

A AMD me surpreendeu e exigiu maior atenção.

Eu primeiro executei os testes com todas as vulnerabilidades corrigidas do kernel 4.19, ou seja, padrão.
E o desempenho geral ficou ruim. Então, fiz um teste com todas as vulnerabilidades ativas – ou seja, com as mitigações desligadas, adicionando os parâmetros ao GRUB!

O resultado foi péssimo: A grande quantidade de dados “vermelhos” (os piores) ficaram no centro, quando eu desativei todas as correções da AMD. Somente a GPU se sobressaiu no ganho de desempenho.

Agora, quando eu desativei parcialmente as correções, os resultados foram os melhores: Ganhei desempenho na CPU e mantive o ganho de desempenho na GPU.

Porém, como já era esperado, os testes de GPU melhoraram consideravelmente, onde as médias para as correções das falhas desativadas foram bem maiores do que com as falhas corrigidas. Portanto quem joga em AMD no Linux, se torna interessante aplicar a desativação das correções da “Intel” para AMD.

3.3 Benchmark 4

Esse foi feito num Lenovo ThinkPad x240. As especificações são as seguintes:

  • Processador Intel Core i5 4300U vPro @ 2.9 Ghz
  • Intel HD Graphics 4400
  • 8 Gb de RAM

Os testes foram igualmente simples: Todos com o kernel Linux 4.19.65 porém alternando entre com e sem as mitigações ligadas.

Os resultados foram os seguintes:

Os testes, também realizados com o HardInfo foram feitos 3x para termos uma melhor margem de análise. Os melhores resultados de cada um estão em verde, enquanto deixei em amarelo os resultados medianos e/ou iguais. Em vermelho os piores.

Explicando a tabela:

  • Mitigações Ligadas = Kernel padrão, com as correções ativas e, portanto, teoricamente, menor desempenho.
  • Mitigações desligadas = com os parâmetros especiais, correções desligadas, teoricamente, melhor desempenho.

3.3.1 Conclusão

No caso específico deste notebook, o desempenho geral quase não sofreu perdas. Talvez por conta da CPU “especial” modelo vPro, talvez por otimizações da propria Intel/Lenovo para tal…

O caso é que desativar as correções nele dá uma grande melhora na hora de renderizar imagens, gráficos e até games: O salto de desempenho da GPU integrada é absurdo!

4. Análise Opinativa

Se você pensar no aspecto das vulnerabilidades, quase todos que usam Intel tem elas.
É algo da arquitetura principal da Intel que vai melhorar o desempenho se for desativado.

Mas quem desativar as proteções, pode ser que você seja afetado se:

  • Possuir portas abertas no seu modem; e
  • Seu acesso externo aponte para seu computador com as proteções desativadas.

Se por ventura você estiver numa rede LAN e a máquina acessada externamente tiver protegida, não vai afetar as demais, pois ela é a porta de entrada da sua rede.

O perigo reside se você for um usuário comum com um modem comum, com portas desnecessariamente abertas!

Se você mantém seu modem fechado a acessos externos, não precisa se preocupar com as vulnerabilidades: Só são exploradas localmente, por alguém com acesso ao seu computador de maneira presencial ou que, utilizou de outras vulnerabilidades para chegar a estas – Como o DirtyCow, ShellShock, etc – Ou ainda que você deixou o sistema com firewall desabilitado e o sistema desatualizado.

#UrbanCompassPony

Fonte:
linuxreviews.org

7 comentários em “Desligando as correções das falhas de CPU”

  1. Na minha AMD usando o comando
    cat /proc/cpuinfo

    Apareceu os sequiantes
    sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass

    Ficaria assim a desativação?

    sysret_ss_attrs=off null_seg=off spectre_v1=off spectre_v2=off spec_store_bypass=off

    Responder
  2. baixei o inspectre, abri como adm e desativei. mas quando eu fecho e abro o programa, aparece como se eu nunca tivesse desativado. é assim mesmo? desativou ou não?

    Responder

Deixe um comentário