Artigos > Testando a performance dos discos com HDPARM e DD

1596 Views
Read in 2.47 mintues

Em qualquer distribuição Linux encontra-se os utilitários hdparm e dd que podem ser utilizados no testes de performance de disco.

A seguir, veremos como testar o tempo de leitura o tempo de gravação utilizando esses 2 utilitários nativos do Linux.

Para que o resultado do teste seja adequado, sugiro que o sistema não esteja em uso por qualquer coisa que consuma seus recursos.

Testando performance de leitura com HDParm

O hdparm é um super utilitário para discos IDE/SATA. Ele serve para determinar comportamento e performance de discos, o que permite testar a performance de leitura.

A sintaxe do comando é bem simples. No comando abaixo vamos testar a performance de leitura de cache (-t) e a velocidade de leitura do disco (-T):

comentario
comentario
Observações: Aqui estou assumindo que o seu disco seja sda. Na dúvida, execute o comando “df -h” e observe a sua saída.
hdparm -tT /dev/sda

A saída será similar a esta:

Teste de Performance de Disco usando HDParm

Como resultado, temos:

Cache

Leitura do Disco

Dados

23.45GB

816MB

Tempo de Execução

Tempo: 1.99 segundos

3 segundos

Throughput

11.79GB por segundo

271.58MB por segundo

Testando a performance de gravação com Data Definition (DD)

Agora, falando de gravação, vamos usar o comando dd.

Para isso, pode-se utilizar o comando como está descrito a seguir. Vamos criar um arquivo de 500MB.

cuidado
cuidado
Cuidado ao testar em servidores de produção. Além de consumir disco útil, também pode gerar concorrência em processos e degradação de performance.
dd if=/dev/zero of=$path_para_o_arquivo/ArquivoDe500MB bs=1k count=500000
atencao
atencao
Ajuste o $path_para_o_arquivo para um path seguro que tenha mais de 500MB livre.

Teremos uma saída de tela como esta:

Teste de Performance de Disco usando o comando DD

Aqui criamos um arquivo vazio de 500MB. O arquivo fica com 500MB devido a quantidade de blocks que setamos (500000).

O processo levou 0.9 segundos com 540MB/s. Muito alinhado com o que o fabricante indica.

Parâmetro

Valor

Quantidade de Dados

512MB (decimal) ou 488MiB(binário)

Tempo

0.9 segundos

Throughput

540MB/s

Teste DD via NFS

O comando dd serve muito bem para testes de discos montados via NFS. Porém, ele sofrerá interferências nos tempos por conta da comunicação via rede.

Vejamos o teste a seguir. Ele foi feito em um client-nfs, ou seja, um host que monta via NFS o disco do servidor onde o primeiro teste DD foi executado.

Teste de Performance de Gravação de dados via NFS usando o comando DD

Mesmo disco, porém, levou 51.3 segundos a 9.51MB/s. Então, leve isso em consideração.

Resumo

Esses são testes práticos que podem ser feitos com ferramentas nativas dos sistemas operacionais Linux e que são encontrados em qualquer servidor, dos mais antigos aos mais atuais.

O HDParm é mais sofisticado. Já o DD é mais raiz. Ambos nos atendem muito bem e podem ser utilizados em diversos cenários. O DD, por exemplo, pode ser utilizado para diagnosticar se um ponto de montagem NFS está lento porque a rede está lenta ou porque o storage é que está.

comentario
comentario
Material atualizado. Post original: junho de 2013.
1 - 0

Thank You For Your Vote!

Sorry You have Already Voted!