Como testar a sua CPU no Linux
On Janeiro 25, 2022 by adminExistem muitas razões pelas quais você pode querer testar a CPU no seu sistema Linux. Você pode querer ver como seu sistema operacional e hardware funcionam quando você está em plena utilização da CPU, a fim de detectar bugs de software ou falhas de hardware. Alternativamente, você pode querer gerar muito calor rapidamente para resolver um problema relacionado à temperatura com sua máquina; maximizar a utilização da CPU fará isso. Seja qual for o motivo, há uma maneira rápida e fácil de atingir esse objetivo.
Neste tutorial, você aprenderá:
- Como fazer testes de stress na CPU usando o comando de stress
- Como fazer testes de stress na CPU usando o comando de stress
- Como fazer testes de stress na CPU usando o comando de stress
- Como fazer testes de stress na CPU usando o comando de stress
- Como fazer testes de stress na CPU usando o comando de stress
comando tui
Requisitos de software e convenções usadas
Sistema | Distribuição-independente | |
Software | yes, getconf, seq, bash, stress, s-tui | |
Outros | Não são necessários privilégios de raiz para o teste de stress do sim. O acesso privilegiado ao seu sistema Linux como root ou através do comando sudo pode ser necessário para instalar outros pacotes de teste de estresse. |
|
Convenções | # – requer que determinados comandos linux sejam executados com privilégios de root diretamente como usuário root ou através do comando sudo $ – requer que determinados comandos do linux sejam executados como um usuário regular não-privilegiado |
Cenário de utilização
O teste de stress do sim detalhado neste artigo pode ser muito útil para fins de resolução de problemas. Frequentemente, problemas intermitentes não se tornam reprodutíveis até que o sistema esteja sob carga pesada, às vezes por um período prolongado de tempo. Você pode encontrar-se numa situação em que a sua máquina, ou uma que esteja a manter para um utilizador, esteja a sofrer interrupções inesperadas, pânico do kernel ou outros problemas intermitentes. Nesta situação, você pode querer tentar reproduzir o problema. Nesse caso, você pode executar o seguinte comando para testar o processador, tornando o problema mais provável de ocorrer e, portanto, observável para você.
Após ter tomado medidas para remediar a situação como desinstalar o software, reinstalar o software incluindo o sistema operacional ou substituir componentes de hardware você poderia executar o comando novamente para determinar se o problema foi ou não resolvido.
Sim Teste de Estresse
Este one-liner irá criar um processo yes
para executar em cada núcleo do processador da máquina. yes
imprime a letra y
repetidamente até ser morto. Em um sistema ocioso, cada processo sim irá utilizar 100% do núcleo de uma CPU. Se o processador suportar hyper-threading e ele estiver habilitado, então ele irá criar o dobro dos processos, pois isso é necessário para maximizar totalmente a utilização da CPU.
O benefício desta abordagem é que ela requer apenas utilitários padrão que saem da caixa em sistemas GNU/Linux, portanto não é necessária a instalação de programas ou bibliotecas adicionais. Além disso, ele não requer privilégios de root para rodar. Para começar, insira o seguinte comando em seu terminal.
$ for i in $(seq $(getconf _NPROCESSORS_ONLN)); do yes > /dev/null & done
O UAF Geophysical Institute, está procurando por um Analista de Sistemas Linux experiente para se juntar à sua equipe de analistas e engenheiros de infra-estrutura cibernética de pesquisa. LOCALIZAÇÃO: Fairbanks, Alasca, EUA
APPLY NOW
Vamos decompor exactamente o que este one-liner está a fazer. getconf _NPROCESSORS_ONLN
Obtém o número de núcleos de CPU; incluindo os virtuais para processadores com hiper-rotação. Executando o comando dentro de $()
coloca sua saída como argumento para o comando seq
.
> imprime uma seqüência de números de 1 até a quantidade de núcleos de CPU virtuais presentes no sistema. Executando isso dentro de $()
permite que essa sequência de números seja usada na nossa bash para loop.
Finalmente, o próprio loop, for i in $(seq $(getconf _NPROCESSORS_ONLN)); do yes > /dev/null & done
leva a seqüência de números de 1 até a quantidade de núcleos virtuais e para cada um deles inicia um processo de sim e redireciona sua saída para /dev/null
.
Ao executar este comando é aconselhável usar top
, htop
ou algum outro programa para monitorar a utilização da CPU, a fim de verificar se ela está atingindo 100%. Nós publicamos anteriormente um artigo sobre como verificar e monitorar a utilização da CPU no linux.
Quando você quiser parar os processos yes
e retornar à utilização normal da CPU, simplesmente insira o seguinte no seu terminal.
$ killall yes
Outros métodos de teste de estresse da CPU
Stress
Stress é um simples gerador de carga de trabalho que impõe uma quantidade configurável de estresse no sistema. Além de ser capaz de testar o stress da CPU, ele também é capaz de executar stress de memória, I/O e disco em um sistema.
No Arch Linux e Manjaro ele pode ser instalado com o seguinte comando.
$ pacman -S stress
No Debian, Ubuntu e Mint ele pode ser instalado com o seguinte comando.
$ sudo apt install stress
Em distros baseados em RHEL ele pode ser instalado com o seguinte comando após habilitar o Repositório Extra Packages for Enterprise Linux (EPEL)
$ sudo yum install stress
Para executar um teste de stress com stress
, simplesmente digite o seguinte comando onde o número usado em --cpu
é a quantidade de threads para iniciar. Para stressar totalmente a CPU, este deve ser o número total de núcleos da CPU ou o dobro se a CPU suportar hyper-threading. Você pode obter o número apropriado para usar, digitando getconf _NPROCESSORS_ONLN
. Em nosso exemplo estamos realizando o teste de stress em um quad core i7 que suporta hyper-threading, então usamos 8.
$ stress --cpu 8
S-tui
s-tui
é um front-end de interface de usuário de texto para o comando stress
. Além de executar o teste de tensão realizado por stress
, s-tui
também monitoriza a temperatura, frequência, potência e utilização da CPU enquanto mostra os gráficos correspondentes a cada valor no terminal. s-tui
pode ser instalado em todas as distribuições usando pip. Para isso, digite o seguinte comando.
$ pip install s-tui --user
Para executar o teste de tensão digite o comando s-tui
no seu terminal, depois pressione a seta para baixo (ou a tecla j) e pressione enter para mudar do modo monitor
para o modo stress
. Você verá uma representação gráfica semelhante ao seguinte screenshot.
Conclusion
Neste artigo vimos como maximizar a utilização da CPU no seu sistema Linux usando o comando yes
dentro de um comando bash
para realizar um “teste de stress sim”. Nós então quebramos cada parte do comando para ver exatamente o que ele estava fazendo e como funcionava. Nós discutimos o monitoramento da utilização da CPU para verificar se ela está atingindo 100%, então vimos como instalar e usar stress
e s-tui
para executar um teste de estresse da CPU.
O benefício de usar s-tui
é que você é capaz de monitorar o desempenho sem usar nenhum software adicional. O benefício de usar o “teste de stress sim” é que você é capaz de executar o teste de stress sem ter que instalar qualquer software adicional. Se você está procurando executar testes de estresse mais extensivos e benchmarking no seu sistema Linux, então o nosso artigo sobre como fazer o benchmark do seu sistema linux tem você coberto.
Deixe uma resposta