Na última vez, falamos sobre ferramentas de código aberto para avaliar o desempenho do processador e da memória. Hoje estamos falando de benchmarks para sistemas de arquivos e sistemas de armazenamento de dados no Linux - Interbench, Fio, Hdparm, S e Bonnie.
 Foto - Daniele Levis Pelusi - Unsplash
 Foto - Daniele Levis Pelusi - Unsplash
Fio (sigla para Flexible I / O Tester) cria fluxos de E / S de disco para avaliar o desempenho do sistema de arquivos Linux. O utilitário também pode ser executado no Windows - você precisa instalar a interface da linha de comandos do 
Cygwin . O guia de configuração está no 
repositório fio no GitHub .
O autor do fio é Jens Axboe, 
responsável pelo subsistema Linux IO e desenvolvedor do utilitário 
blktrace para rastrear E / 
S. Ele criou o fio 
porque estava cansado de escrever programas para testar manualmente uma carga específica.
O utilitário calculará o IOPS e a largura de banda do sistema e também permitirá avaliar a profundidade da fila de E / S. O utilitário trabalha com arquivos especiais (extensão .fio), nos quais são gravadas configurações e condições de teste. Existem várias opções de teste, por exemplo, há escrita, leitura e reescrita arbitrárias. Aqui está 
um exemplo do conteúdo do arquivo para o primeiro caso:
[global] name=fio-rand-read filename=fio-rand-read rw=randread bs=4K direct=0 numjobs=1 time_based=1 runtime=900 
Hoje, o fio é usado por grandes empresas - elas trabalham com o utilitário 
SUSE , 
Nutanix e 
IBM .
O utilitário foi escrito pelo desenvolvedor canadense Mark Lord em 2005. Ainda é 
suportado pelo autor e faz parte de muitas distribuições populares. O principal objetivo do hdparm é definir as configurações da unidade. Mas a ferramenta 
pode ser usada para realizar benchmarks simples, como medir a velocidade de leitura. Para fazer isso, escreva o comando no console:
 $ sudo hdparm -t /dev/sdb 
O sistema irá gerar uma resposta semelhante:
 Timing buffered disk reads: 242 MB in 3.01 seconds = 80.30 MB/sec 
Quanto às configurações da unidade, o hdparm permite alterar o tamanho do cache, modificar o modo de suspensão e as configurações de energia, além de apagar dados com segurança no SSD. Mas, como os especialistas do ArchLinux 
alertam , uma alteração descuidada nos parâmetros do sistema pode tornar os dados no disco inacessíveis e até danificar a unidade. Antes de trabalhar com o hdparm, é melhor se familiarizar com o manual - basta escrever o comando man hdparm no console.
Este é um conjunto de parâmetros de referência para avaliar o desempenho dos sistemas de E / S. Os autores do utilitário foram 
uma equipe de desenvolvimento do grupo AlgoDev, que inclui funcionários da 
Universidade Italiana 
de Modena e Reggio Emilia .
Todos os benchmarks são scripts de bash que 
avaliam o desempenho do sistema de armazenamento - largura de banda, latência, o trabalho dos agendadores. Por exemplo, o benchmark throughput-sync.sh “bombardeia” os sistemas de armazenamento com solicitações de leitura ou gravação (nesse caso, o utilitário fio já mencionado é usado). Aqui está o 
código para este script .
Outro script - comm_startup_lat.sh - mede o atraso na leitura de dados do disco durante o "cache frio" (quando ele não possui os dados necessários). O código também 
pode ser encontrado no repositório .
 Fotos - Agê Barros - Unsplash
Fotos - Agê Barros - Unsplash
Um utilitário para avaliar o desempenho do sistema de arquivos desenvolvido em 1989. Seu autor foi o engenheiro Tim Bray (Tim Bray). Com a ajuda de Bonnie, ele planejou 
otimizar os sistemas de computação envolvidos no projeto 
New Oxford English Dictionary da University of Waterloo.
Bonnie lê e grava dados aleatoriamente no disco. Depois, o utilitário mostra parâmetros como o número de bytes processados por 
segundo de CPU , bem como a porcentagem de utilização do processador. O código fonte da referência pode ser 
encontrado no Google Code .
Com base no Bonnie, outro conjunto de ferramentas para testar um disco rígido é construído - 
Bonnie ++ (escrito em C ++, em vez de C). Ele fornece ferramentas adicionais de benchmark. Por exemplo, zcav para avaliar o desempenho de várias zonas do disco rígido. O Bonnie ++ também 
é adequado para testar servidores de correio e servidores de banco de dados.
O utilitário foi desenvolvido por 
Con Kolivas , um anestesista australiano conhecido por suas contribuições ao kernel do Linux e trabalha em um " 
programador de processador justo " 
. O Interbench ajuda a definir o agendador de E / S e as configurações do sistema de arquivos.
O Interbench emula o comportamento do agendador da CPU ao executar tarefas interativas. Essas tarefas interativas podem incluir trabalhar com som e vídeo, iniciar jogos de computador ou simplesmente arrastar e soltar uma caixa de diálogo no sistema operacional.
O código fonte, exemplos e recomendações para configurar a ferramenta podem ser encontrados no 
repositório oficial no GitHub .
Sobre o que escrevemos em nossos blogs: 
 Benchmarks para servidores Linux: 5 ferramentas abertas
 Benchmarks para servidores Linux: 5 ferramentas abertas 
 Backup de arquivo: como se proteger contra perda de dados
 Backup de arquivo: como se proteger contra perda de dados 
 Como transferir um disco rígido do sistema para uma máquina virtual?
 Como transferir um disco rígido do sistema para uma máquina virtual? 
 Suporte de treinamento para administradores: como a nuvem ajudará
 Suporte de treinamento para administradores: como a nuvem ajudará 
 Aparelhos de triagem na fronteira: como agir para não perder dados confidenciais?
 Aparelhos de triagem na fronteira: como agir para não perder dados confidenciais? 
 Instantâneos: por que precisamos de "instantâneos"
 Instantâneos: por que precisamos de "instantâneos"