• Christopher Ferris's avatar
    Refactor the benchmark code. · df4942c0
    Christopher Ferris authored
    Changes:
    - Modify the benchmarks to derive from a single Benchmark object.
    - Rewrite the main iteration code. This includes changing the iteration
      code to use the actual total time calculated by the benchmark as a basis
      for determining whether there are enough iterations instead of using
      the time it takes to run the benchmark.
    - Allow benchmarks to take no argument, int, or double.
    - Fix the PrettyInt printer for negative integers.
    - Modify the max column width name to include the whole name including
      the arg part.
    - Reformat property_benchmark.cpp in line with the rest of the code.
    - Modify a few of the math benchmarks to take an argument instead of
      separate benchmarks for the same function with different args.
    - Create a vector of regex_t structs to represent the args all at
      once instead of when running each benchmark.
    
    This change is in preparation for adding new math based benchmarks.
    
    Tested by running on a nexus flo running at max using the new code
    and the o...
    df4942c0
stdio_benchmark.cpp 2.84 KB