Saiba como realizar testes simples de desempenho de hardware em sistemas Linux usando ferramentas de linha de comando

TESTES-SIMPLES-DE-DESEMPENHO-DE-HARDWARE-EM-SISTEMAS-LINUX

Benchmarking, técnica para medir o desempenho de algum objeto computacional através de diversos testes, e testes de estresse são algumas vezes necessárias para verificar o desempenho do sistema e remover “gargalos” causados pelo hardware. Em um sistema Linux, isso pode ser feito facilmente com algumas ferramentas básicas de linha de comando.

AUMENTE SUA PRODUTIVIDADE!
Crie e administre aplicações entre ambientes diferentes. Tenha agilidade e padronização na entrega dos serviços de TI. E, assim, ganhe tempo e seja eficiente na entrega desses serviços. Saiba como

Por quê realizar testes de desempenho?

Benchmarking (informática) e testes de estresse são amplamente usados em ambientes onde a precisão computacional é obrigatória. Ter noção de quanto um determinado hardware, executado sobre determinado sistema, suporta é importante para decidir quais ferramentas usar ou quanto você precisa melhorar, computacionalmente falando, para atingir determinado objetivo.

testes

No cotidiano, é interessante para quem possui um computador disponível para usar diversos sistemas computacionais e comparar o desempenho deles no mesmo hardware (objeto de pesquisa). Ou, apenas, verificar quanto seu sistema, computador e/ou dispositivo de hardware (HD, CPU, GPU ou placa de rede) são capazes de “aguentar” 😉

Testes simples de desempenho de hardware em sistemas Linux

Concentrando-se em ferramentas de linha de comando iremos testar os seguintes itens listados:

– 1. CPU;
– 2. Teste de leitura/escrita do HD;
– 3. Performance de rede e velocidade de tráfego;
– 4. Testes de velocidade de escritas na RAM;

1. CPU Benchmark

Basicamente, a CPU (unidade central de processamento) é o processador do computador 😉 Então, para saber quanto ele “suporta” é preciso realizar uma carga sobre ela para ver em quanto tempo ela responde.

1.1 Teste de cálculo do número primo dentro de um determinado intervalo

Para realizar esse teste, que calculará todos os números primos dentro do intervalo de 0 a 9999 (altere esse valor como desejar), recomendo usar a ferramenta sysbench – suíte de benchmark que permite obter rapidamente uma impressão sobre o desempenho do sistema.

Instale-a normalmente pelo repositório da sua distro Linux. Depois, execute:

sysbench –test=cpu –num-threads=4 –cpu-max-prime=9999 run

1.2 Teste de desempenho do cálculo de inteiros

time $(i=0; while (( i

Isto retorna o tempo necessário para encontrar números inteiros entre 0 a 9999999:

1.3 Teste de stress de CPU (Multi threaded)

stress –cpu 4 –timeout 300s

Este comando é para colocar uma carga Multi threaded sobre a CPU durante 5 minutos (300s). De acordo com seu computador, altere o parâmetro –cpu. Por exemplo, se você tiver um processador de 8 núcleos, use –cpu 8 😉

2. Teste de leitura/escrita do HD

O desempenho de leitura/escrita do disco rígido (HD) tem um grande impacto no desempenho do sistema Linux e na experiência do usuário. Simplesmente, quanto mais rápido for o HD melhor desempenho terá o sistema.

2.1 Velocidade de escrita usando o dd

dd bs=16k count=102400 oflag=direct if=/dev/zero of=arquivo_teste

O comando acima criou um arquivo de 1,6 GB contendo apenas zeros, no diretório atual e deu uma visão geral de velocidade de gravação no HD.

2.2 Velocidade de leitura usando o dd

dd bs=16K count=102400 iflag=direct if=arquivo_teste of=/dev/null

Por fim, você poderá remover o arquivo arquivo_teste 😉

2.3 Verificar o desempenho do HD

A ferramenta hdparm está presente nativamente na maioria das distros Linux e pode ser usado, dentre outras coisas, para determinar as taxas de transferência de dados que o seu disco consegue alcançar:

sudo hdparm -t /dev/sda

Este teste retorna a velocidade de leitura do disco temporizado e este resultado pode ser assumido como a velocidade mais rápida de leitura do disco.

3. Performance de rede e velocidade de tráfego

A medição do throughput (“taxa de transferência”) de uma interface de rede é muito comum ser feito em dispositivos de rede, como computadores, roteadores, switches e outros. Assim, para saber quanto de tráfego a placa de rede pode suportar é preciso realizar alguns testes:

3.1 Medição da taxa de transferência usando o iperf

Neste teste, para melhor realizar o teste, você precisará ter duas máquinas – um para ser o “servidor” ou o “cliente”; e vice-versa. Caso contrário, inicie o modo servidor e cliente na mesma máquina. Agora, instale o iperf conforme sua distribuição Linux e execute:

+ Servidor

iperf -s

+ Cliente

iperf -c 192.168.72.1

Esse ambiente , permite verificar a capacidade transferência das placas de rede de ambas as máquinas (servidor e cliente).

Testes de velocidade de escritas na RAM

Geralmente, a velocidade da RAM indica a velocidade de clock dela. Então, para verificar a velocidade com qual a RAM é capaz de escrever informações, vamos usar o tmpfs (Temporary File System) – uma área na memória RAM que simula uma partição do disco. Assim, fazendo um teste de leitura e escrita de velocidade em uma pasta tmpfs montada dará uma ideia, aproximada, sobre a velocidade da RAM:

+ Montar partição tmpfs

mkdir RAM_teste
sudo mount tmpfs -t tmpfs RAM_teste/
cd RAM_teste

+ Realizar os testes na partição montada na RAM usando o dd

dd if=/dev/zero of=arquivo_tmp bs=1M count=512

Foi criado um arquivo de 521 MB na memória RAM. Conforme resultado, a velocidade de escrita foi de 2,6 GB/s num módulo de memória RAM de 1600 MHz DDR3 16GB 😉

dd if=arquivo_tmp of=/dev/null bs=1M count=512

Por fim, o arquivo criado foi lido em memória RAM com velocidade de leitura de foi de 3,3 GB/s 😉


Via | FixMyNix

Ricardo Ferreira

Ricardo Ferreira

Fundador do Linux Descomplicado - LD.

Sempre em busca de novos conhecimentos, preza por conteúdo de qualidade e auto-explicativo. Por isso, persiste em criar um site com artigos relevantes para todos os leitores do Linux Descomplicado!
Ricardo Ferreira

Comentários

comentários


VOCÊ TAMBÉM PODERÁ LER...