Search in sources :

Example 1 with Run

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

the class CaliperRunner method newRun.

/**
     * Provide new named run instance.
     */
public static Run newRun(final String benchmarkName) {
    final Map<Scenario, ScenarioResult> measurements = new HashMap<Scenario, ScenarioResult>();
    final Date executedTimestamp = new Date();
    return new Run(measurements, benchmarkName, executedTimestamp);
}
Also used : ScenarioResult(com.google.caliper.ScenarioResult) HashMap(java.util.HashMap) Run(com.google.caliper.Run) Date(java.util.Date) Scenario(com.google.caliper.Scenario)

Example 2 with Run

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

the class CaliperRunner method execute.

/**
     * Execute full cycle: warm up, execute and publish benchmark.
     */
public static void execute(final Class<? extends CaliperBench> klaz) throws Exception {
    execute("WARMUP", klaz);
    Run run = execute("REPORT", klaz);
    publish(newResult(run));
}
Also used : Run(com.google.caliper.Run)

Example 3 with Run

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

the class CaliperRunner method main.

/**
     * Verify measure publication manually.
     */
public static void main(final String[] args) throws Exception {
    final Run run = newRun("test-main");
    for (int param = 0; param < 5; param++) {
        final CaliperMeasure measure = new CaliperMeasure();
        measure.variables().put("param", String.valueOf(param));
        for (int step = 0; step < 5; step++) {
            measure.rate().mark(50 + step);
            final TimerContext time = measure.time().time();
            Thread.sleep(15);
            time.stop();
            measure.size().value(50 + step);
            measure.mark();
        }
        measure.appendTo(run);
    }
    final Result result = newResult(run);
    publish(result);
    System.out.println(json(result));
}
Also used : TimerContext(com.yammer.metrics.core.TimerContext) Run(com.google.caliper.Run) ScenarioResult(com.google.caliper.ScenarioResult) Result(com.google.caliper.Result)

Example 4 with Run

use of com.google.caliper.Run 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

Run (com.google.caliper.Run)4 ScenarioResult (com.google.caliper.ScenarioResult)2 HashMap (java.util.HashMap)2 ConfiguredBenchmark (com.google.caliper.ConfiguredBenchmark)1 Result (com.google.caliper.Result)1 Scenario (com.google.caliper.Scenario)1 TimerContext (com.yammer.metrics.core.TimerContext)1 Date (java.util.Date)1 Map (java.util.Map)1 TreeMap (java.util.TreeMap)1