quinta-feira, 10 de julho de 2008

Benchmark por Comparação de resultado


É comum administradores de redes e servidores concluirem que é necessário fazer um upgrade de hardware de um determinado servidor. Mas poucos tem 100% de certeza o que realmente melhorou nesse possível upgrade, ou em casos extremos ter certeza que realmente algo mudou.

Para isso eu desenvolvi um sistema de Benchmark por Comparação o BRMABench. Esse benchmark faz diversas rotinas de teste em um determinado tempo, o tempo final gasto é sempre o mesmo e o que determina o score é a quantidade de interações nesse mesmo tempo.

O BRMABench tem 5 grupos de testes: (file_io, proc_l, process_i, shell_exec e socket_net).
  • file_io, esse grupo de teste realiza estresse de I/O na máquina, ele não é um teste de DISCO, até faz uma diferença esse teste ser realizado em mídias lentas e rápidas, mas não é totalmente determinante. O que ele faz é testar a performance de transferência de dados entre a memória/processador.
  • proc_l, realiza testes de carga de processador, com esse teste é possível perceber a diferença de processamento entre máquinas com clock diferente.
  • process_i, faz testes simples de aritimética básica.
  • shell_exec, em sistemas mistos, quero dizer em máquinas que possui diversas rotinas sendo executada ao mesmo tempo o score desse teste é bem relevante.
  • socket_net, faz testes de bind,conexão,transferência e unbind. Muito importante para serviços de rede.
O número que vem logo ao lado do teste (file_io10) é o números de processos simultâneo daquele teste. É importante observar se não existe uma queda drástica entre a simultaneidade.

Um detalhe MUITO importante a ser observado é que quando é feito um teste em máquinas monoprocessadas o score de I/O normalmente é mais alto que o score em máquinas DUAL. Isso é explicado porque quando se tem mais que um processador na máquina o sistema operacional precisa fazer o controle de fluxo desses dados entre os processadores, isso causa uma queda de performance natural. Em máquinas consideradas de boa qualidade e na linha server essa queda de score não é tão grande, mas em caso de máquinas desktop ou em máquinas de baixo custo essa queda pode ser muito grande. Fique sempre atento a esse teste quando for utilizar a máquina para banco de dados, servidor de e-mail e outros sistemas onde o I/O é mais importante que o poder de processamento em si.

O BRMABench pode ser testado de duas maneiras, uma sendo através de um LIVE CD e a outra através do proprio sistema de aquivo instalado.

Para testar em modelo LIVE CD basta baixar o ISO, gerar o CD, reiniciar a máquina com o CD no drive de CD e seguir os procediementos descritos no proprio boot.

ATENÇÃO: Existem duas opções de teste, uma FORMATA a máquina e faz os testes em disco e outra que faz os testes em LIVE CD mesmo.

A outra opção é baixar apenas o pacote do BRMABench clicando aqui. É um tgz que pode ser aberto em qualquer diretorio, entre no diretório criado BRMABench-0.0.4 e execute como root o comando $./brmabench.pl

Dica:
  1. Rode o teste sempre com a máquina fora de operação ( com os serviços derrubados ).
  2. Compare o score final entre as máquinas testadas.
  3. Compare os scores individualmente e analise todos os pontos de acordo com a função da máquina.
  4. Não é necessário realizar o teste mais que uma vez, o BRMABench já faz isso internamente 3 vezês e o score é baseado na média.
  5. Compare chuchu com chuchu, quero dizer, se for realizar o teste em CDROM em uma máquina a outra precisa ser testada da mesma maneira.

O BRMABench foi desenvolvido por mim dentro da BRconnection, mas é totalmente Free e pode ser usado, alterado e redistribuido sem a necessidade de acordos. Mas é necessário manter sempre o nome do Autor inicial e seus créditos.

[ ] 's

Edison Figueira Junior

Nenhum comentário: