Search in sources :

Example 1 with ConfiguredBenchmark

use of com.google.caliper.ConfiguredBenchmark in project netty by netty.

the class CaliperRunner method execute.

/**
     * Execute benchmark for all parameter combinations.
     */
public static Run execute(final String name, final Class<? extends CaliperBench> klaz) throws Exception {
    final CaliperBench booter = klaz.newInstance();
    final List<Map<String, String>> varsSet = product(booter);
    final Run run = newRun(klaz.getName());
    int index = 0;
    for (final Map<String, String> vars : varsSet) {
        final int done = 100 * index++ / varsSet.size();
        log.info("{} {}% {}", name, done, vars);
        /** call setUp() */
        final ConfiguredBenchmark runner = booter.createBenchmark(vars);
        final CaliperBench bench = (CaliperBench) runner.getBenchmark();
        final CaliperMeasure measure = bench.measure();
        measure.variables().putAll(vars);
        /** call timeXXX() */
        runner.run(0);
        /** call tearDown() */
        runner.close();
        measure.appendTo(run);
    }
    return run;
}
Also used : ConfiguredBenchmark(com.google.caliper.ConfiguredBenchmark) Run(com.google.caliper.Run) HashMap(java.util.HashMap) Map(java.util.Map) TreeMap(java.util.TreeMap)

Aggregations

ConfiguredBenchmark (com.google.caliper.ConfiguredBenchmark)1 Run (com.google.caliper.Run)1 HashMap (java.util.HashMap)1 Map (java.util.Map)1 TreeMap (java.util.TreeMap)1