Como encontrar o MAX I/O que um disco físico pode suportar?
Meu aplicativo está executando E/S e posso encontrar orealrendimento (Blk_wrtn/s) usando comandos do Linux. Mas como posso descobrir qual é o limite máximo que posso alcançar? Quero saber se pode ser carregado ainda mais.
Responder1
Obviamente, usar ferramentas Unix é a maneira mais fácil de fazer isso. Você pode medir a operação máxima criando um caso de teste e usando ferramentas apropriadas para medir seu desempenho. Um bom recurso pode ser encontrado aqui:LINUX - Teste a velocidade de LEITURA e ESCRITA do armazenamento
sudo hdparm -tT /dev/sdX
por exemplo, como teste de leitura.
E para medir escreva:
dd if=/dev/random of=<some file on the hd> bs=8k count=10000; sync;
# Hit CONTROL-C after 5 seconds to get results
# 65994752 bytes (66 MB) copied, 21.8919 s, 3.0 MB/s
flag
Observação
Conforme apontado nos comentários o dd
comando também mede o desempenho do sistema de arquivos e até mesmo do /dev/random
. Ele mede o desempenho de gravação de um ambiente, que depende muito do desempenho dos discos rígidos.
Responder2
Blk_wrtn/s realmente depende do tipo de carga de trabalho. A gravação linear é muito mais rápida, a gravação aleatória pode ser muito lenta. Portanto, você não será capaz de dizer um número, mas existem muitas ferramentas para simular e avaliar diferentes cargas de trabalho, por exemplo, iozone, dbench.
Agora, para monitorar a carga de trabalho atual, normalmente uso o iostat. Por exemplo:
iostat -x 10
A última coluna é% util, se estiver abaixo de 100, você ainda pode colocar alguma carga de IO lá. Claro, você sempre quer ter alguma reserva, então 60-90% é uma meta realista com base na estabilidade da carga de trabalho e na capacidade de resposta necessária.
Responder3
Você pode usar uma ferramenta de benchmarking comoBonnie++
Da página de manual
Bonnie++ é um programa para testar discos rígidos e sistemas de arquivos quanto ao desempenho ou à falta dele. Existem muitos tipos diferentes de operações do sistema de arquivos que diferentes aplicativos usam em graus diferentes. Bonnie++ testa alguns deles e para cada teste dá um resultado da quantidade de trabalho realizado por segundo e a porcentagem de tempo de CPU necessário. Para resultados de desempenho, números mais altos são melhores, para uso de CPU mais baixo são melhores (Observe que uma configuração com pontuação de desempenho de 2.000 e um resultado de CPU de 90% é melhor em termos de uso de CPU do que uma configuração que fornece desempenho de 1.000 e uso de CPU de 60 %).