diff options
Diffstat (limited to 'doc/examples/bench.cpp')
-rw-r--r-- | doc/examples/bench.cpp | 43 |
1 files changed, 16 insertions, 27 deletions
diff --git a/doc/examples/bench.cpp b/doc/examples/bench.cpp index cc43fade0..7d53e0557 100644 --- a/doc/examples/bench.cpp +++ b/doc/examples/bench.cpp @@ -60,40 +60,29 @@ const std::string algos[] = { "", }; -void benchmark_algo(const std::string& algo, - RandomNumberGenerator& rng) +int main() { - u32bit milliseconds = 3000; - Default_Benchmark_Timer timer; - Algorithm_Factory& af = global_state().algorithm_factory(); + LibraryInitializer init; - std::map<std::string, double> speeds = - algorithm_benchmark(algo, milliseconds, timer, rng, af); + u32bit milliseconds = 1000; + AutoSeeded_RNG rng; - std::cout << algo << ":"; + Algorithm_Factory& af = global_state().algorithm_factory(); - for(std::map<std::string, double>::const_iterator i = speeds.begin(); - i != speeds.end(); ++i) + for(u32bit i = 0; algos[i] != ""; ++i) { - std::cout << " " << i->second << " [" << i->first << "]"; - } - std::cout << "\n"; - } + std::string algo = algos[i]; -int main(int argc, char* argv[]) - { - LibraryInitializer init; + std::map<std::string, double> speeds = + algorithm_benchmark(algos[i], milliseconds, rng, af); - AutoSeeded_RNG rng; + std::cout << algo << ":"; - if(argc == 1) // no args, benchmark everything - { - for(u32bit i = 0; algos[i] != ""; ++i) - benchmark_algo(algos[i], rng); - } - else - { - for(int i = 1; argv[i]; ++i) - benchmark_algo(argv[i], rng); + for(std::map<std::string, double>::const_iterator i = speeds.begin(); + i != speeds.end(); ++i) + { + std::cout << " " << i->second << " [" << i->first << "]"; + } + std::cout << "\n"; } } |