Teste :: Benchmark.

Test :: Benchmark Module está aqui para garantir que algo realmente seja mais rápido.
Baixe Agora

Teste :: Benchmark. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Fergal Daly
  • Site do editor:
  • http://search.cpan.org/~fdaly/Test-NoWarnings-0.084/lib/Test/NoWarnings.pm

Teste :: Benchmark. Tag


Teste :: Benchmark. Descrição

Teste :: Módulo Benchmark está aqui para garantir que algo realmente seja mais rápido. Teste :: Módulo Benchmark está aqui para garantir que algo realmente é mais rápido.Synopsis Use teste :: Mais teste => 17; Use o teste :: Benchmark; is_faster (-10, sub}, sub {...}, "isto é mais rápido que isso") is_faster (5, -10, sub}, sub {...}, "este é 5 vezes mais rápido que isso ") is_n_times_faster (5, -10, sub}, sub {...}," isto é 5 vezes mais rápido que isso ") IS_FASTER (-10, $ bench1, $ bench2, "Res1 foi mais rápido que o res2"); is_fastest ("c", -1, {a => sub {...}, b => sub {...}, c => sub {...},} às vezes você quer ter certeza de que o seu Algoritmo "mais rápido" é realmente mais rápido que o caminho antigo. Isso permite que você verifique. Também pode ser útil verificar se sua versão super whizzo ou inline :: C é realmente mais rápida.Este módulo é baseado no módulo de benchmark padrão. Se você tem muitos horários para comparar e não quer continuar executando os mesmos benchmarks o tempo todo, você pode passar em um objeto de resultado do benchmark :: timethis () em vez de referência de sub rotina.Usegethere são 3 funções exportadas: is_faster (), is_n_times_faster () e is_fastest (). Na verdade, IS_FASter () é redundante porque is_n_times_faster () pode fazer a mesma coisa apenas definindo n para 1.Andia que você pode passar uma referência de sub-rotina, você também pode passar em um objeto de referência. # chamar como # is_faster ($ vezes, $ sub1, $ sub2, $ nome) # is_faster ($ mais rápido, $ vezes, $ sub1, $ sub2, $ nome) Se você deixar o número de iterações em branco, então ele usará o padrão de referência .is_faster () is_faster ($ vezes, $ Sub1, $ Sub2, $ Nome) IS_FASter ($ fator, $ times, $ sub1, $ sub2, $ nome) Isso executa cada referência de sub-rotina $ vezes e, em seguida, compara os resultados. Em vez de qualquer referência de sub-rotina, você pode passar em um objeto de referência. Se você passar em 2 objetos de benchmark, $ vezes é irrelevante.Se $ vezes é negativo, que especifica uma duração mínima para o benchmark em vez de um número de iterações (consulte a referência para mais detalhes). Eu recomendo fortemente que você use esse recurso se quiser que seus módulos ainda passem de testes de forma confiável em máquinas que são muito mais rápidas que as suas. 10000 iterações podem ser suficientes para um benchmark confiável no seu PC em casa, mas ser apenas um twinkling no olho do super computador de outra pessoa. Se o teste falhar, você receberá uma saída de diagnóstico mostrando os resultados de referência no formato de benchmark padrão.is_n_times_faster. () is_n_times_faster (fator $, $ times, $ sub1, $ sub2, $ nome) Isto é exatamente o mesmo que a segunda forma de is_faster, mas é apenas explícito sobre o "n vezes" part.is_fastest () is_fastest ($ bname, $ times, $ bhash, $ nome) Isso leva uma referência de hash contendo sub-rotinas de referência como valores e seus nomes como chaves. Times vezes cada sub-rotina e verifica se o nomeado em $ BNAME foi o mais rápido. Se o teste falhar, ele imprimirá uma lista classificada dos horários de todas as sub-rotinas. Requisitos: · Perl.


Teste :: Benchmark. Software Relacionado

SYS :: Runalone.

SYS :: Runalone pode ter certeza de que apenas uma invocação de um script está ativa de cada vez. ...

170

Download