como executar uniformemente benchmarks no linux

1

Estou fazendo um projeto de adaptação do Linux para arquitetura multi-core escalável. Estou testando o desempenho do Linux com benchmarks. Quando estou executando os benchmarks no sistema, outros programas como processos em segundo plano estavam sendo executados no sistema. Eu acho que a carga do sistema devido a processos em segundo plano não é fixa, como resultado, o tempo de execução dos benchmarks pode variar devido à carga variável do sistema. Então, como executar benchmarks uniformemente. Eu já procurei na net e perguntei aos pesquisadores sobre isso, mas ainda não consegui encontrar uma solução para esse problema. Se possível por favor tente me ajudar.

    
por user1592989 08.04.2013 / 17:03

2 respostas

1

Dê uma olhada no lmbench código-fonte. Sim, eu sei que é bem antigo. No entanto, os benchmarks da lmbench tiveram muito esforço para eliminar os efeitos de carga do sistema. Alguns dos benchmarks faziam um cálculo várias vezes e faziam algo como escolher o menor valor de tempo. Isso levaria esses benchmarks a um valor máximo de desempenho. Outros benchmarks "avisam o cache" antes de fazer qualquer momento. Tenho certeza que você pode aprender muito com o lmbench.

    
por 08.04.2013 / 18:33
0

Contanto que você aplique um pouco de bom senso (por exemplo, desative cron e não navegue na Web enquanto faz o teste) e o que você está fazendo no tempo não é totalmente inconseqüente, os benchmarks vão sair uniformemente - tente.

Se você executar um teste 50 ou 100 vezes e perceber muitas discrepâncias inexplicáveis, terá um problema que precisa de uma solução. Se não, então você não. Um sistema normal de desktop de usuário único do Linux não faz muito além do que você diz.

    
por 08.04.2013 / 17:20