Hoje falaremos sobre ferramentas abertas para avaliar o desempenho de processadores, memória, sistemas de arquivos e sistemas de armazenamento.
A lista inclui utilitários oferecidos por residentes do GitHub e membros de tópicos temáticos no Reddit - Sysbench, UnixBench, Phoronix Test Suite, Vdbench e IOzone.
 / Unsplash / Veri Ivanova
 / Unsplash / Veri IvanovaEste é um utilitário para teste de carga de servidores MySQL, com base no projeto LuaJIT, que desenvolve uma máquina virtual para a linguagem Lua. O autor da ferramenta é programador e especialista em MySQL Alexey Kopytov. O projeto começou como um hobby, mas com o tempo ganhou reconhecimento da comunidade. Hoje, o sysbench usa grandes universidades e organizações de TI 
como o IEEE em seus trabalhos.
Durante a conferência SECR-2017 (há uma gravação do discurso 
no YouTube ), Alexey disse que o sysbench permite avaliar o desempenho do banco de dados ao mudar para um novo equipamento, atualizar a versão do DBMS ou alterar drasticamente o número de consultas. Em geral, a sintaxe de comando para o teste é a seguinte:
sysbench [options]... [testname] [command] 
Este comando determina o tipo (CPU, memória, arquivo) e os parâmetros de teste de carga (número de threads, número de solicitações, velocidade de processamento da transação). Em geral, a ferramenta é capaz de processar milhões de eventos por segundo. Alexey Kopytov falou com mais detalhes sobre a arquitetura e a estrutura interna do sysbench em um dos 
problemas do podcast de desenvolvimento de software do podcast .
Um conjunto de ferramentas para avaliar o desempenho dos sistemas Unix. Ele foi apresentado por engenheiros da Universidade Monash em 1983. Desde então, muitas pessoas têm apoiado a ferramenta, por exemplo, a 
Byte Magazine , autor da 
revista de tecnologia de microcomputadores 
, e David Niemi, membro da LKML. 
Anthony Voellm, da Microsoft, é responsável pelo lançamento da próxima versão da ferramenta.
O UnixBench é uma coleção de testes individuais. Eles comparam a velocidade de execução do código em uma máquina executando o Unix com o desempenho do sistema de referência, que é o 
SPARCstation 20-61. Com base nessa comparação, uma pontuação de desempenho é gerada.
Entre os testes disponíveis estão: Whetstone, que descreve a eficácia das operações de ponto flutuante, File Copy, que estima a velocidade da cópia de dados, e vários benchmarks 2D e 3D. Uma lista completa de testes pode ser encontrada no repositório no GitHub . Muitos deles usam máquinas virtuais na nuvem para avaliar o desempenho de máquinas virtuais.
Este conjunto de testes foi desenvolvido pelos autores do recurso da web Phoronix, que publica notícias sobre as distribuições GNU / Linux. O primeiro Conjunto de Testes foi lançado em 2008 - e incluiu 23 testes diferentes. Mais tarde, os desenvolvedores lançaram o serviço de nuvem 
OpenBenchmarking.org , onde os usuários podiam publicar seus próprios scripts de teste. Hoje, 
apresenta cerca de 60 kits de referência, incluindo aqueles relacionados ao aprendizado de máquina e à tecnologia de rastreamento de raios.
Conjuntos de scripts especializados permitem testar componentes individuais do sistema. Com a ajuda deles, você pode avaliar o tempo de compilação do kernel e a codificação dos arquivos de vídeo, a velocidade de compactação dos arquivadores, etc. Para executar os testes, basta escrever o comando apropriado no console. Por exemplo, este comando inicia uma avaliação do desempenho da CPU:
 phoronix-test-suite benchmark smallpt 
Durante o teste, o Test Suite monitora independentemente as condições do equipamento (temperatura da CPU e velocidade do cooler), protegendo o sistema contra superaquecimento.
 / Unsplash / Jason Chen
/ Unsplash / Jason Chen
Uma ferramenta para gerar carga de E / S em sistemas de disco desenvolvida pela Oracle. Ajuda a avaliar o desempenho e a integridade dos sistemas de armazenamento (preparamos uma 
breve ajuda sobre como calcular o desempenho teórico de um sistema de disco).
A solução funciona da seguinte maneira: em um sistema real, é iniciado o programa SWAT (Sun StorageTek Workload Analysis Tool), que cria um dump com todos os acessos ao disco por um determinado período. O registro de data e hora, tipo de operação, endereço e tamanho do bloco de dados são registrados. Em seguida, usando o arquivo de despejo, o vdbench emula a carga em qualquer outro sistema.
A lista de parâmetros para gerenciar o utilitário está no 
documento oficial do 
Oracle . O código fonte do utilitário pode ser encontrado 
no site da empresa .
Utilitário do console para avaliar o desempenho do sistema de arquivos. Determina a velocidade de leitura, gravação e substituição de arquivos. Dezenas de programadores participaram do desenvolvimento da ferramenta, mas o engenheiro de sua primeira versão 
é considerado o engenheiro William Norcott. O desenvolvimento foi apoiado por empresas como Apple, NetApp e iXsystems.
Para controlar encadeamentos e sincronizá-los durante o teste, a ferramenta usa o padrão de encadeamentos 
POSIX . Após a conclusão do trabalho, o IOzone emite um relatório com os resultados em formato de texto ou na forma de uma planilha (Excel). A ferramenta também inclui o script gengnuplot.sh, que constrói um gráfico tridimensional a partir dos dados nas tabelas. Exemplos de tais gráficos podem ser encontrados na documentação do instrumento ( 
p. 11-17 ).
O IOzone está disponível como perfil de teste no já mencionado Phoronix Test Suite.
Leitura adicional de nossos blogs e redes sociais: 
 Um bug no Linux 5.1 levou à perda de dados - um patch de correção já foi lançado
 Um bug no Linux 5.1 levou à perda de dados - um patch de correção já foi lançado 
 Alguns dizem que a tecnologia DANE para navegadores falhou
 Alguns dizem que a tecnologia DANE para navegadores falhou 
 Por que o monitoramento é necessário?
 Por que o monitoramento é necessário? 
 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? 
 Todo mundo fala sobre vazamentos de PD - como o provedor de IaaS ajudará
 Todo mundo fala sobre vazamentos de PD - como o provedor de IaaS ajudará 
 Programa educacional curto: como a assinatura eletrônica é organizada
 Programa educacional curto: como a assinatura eletrônica é organizada 
 Histórico: como funciona a lei de dados pessoais
 Histórico: como funciona a lei de dados pessoais