in harness/src/main/java/org/apache/geode/perftest/yardstick/YardstickTask.java [55:111]
public void run(TestContext context) throws Exception {
BenchmarkConfiguration cfg = new BenchmarkConfiguration() {
@Override
public List<String> driverNames() {
return Arrays.asList(benchmark.getClass().getName());
}
@Override
public long duration() {
return workloadConfig.getDurationSeconds();
}
@Override
public long warmup() {
return workloadConfig.getWarmupSeconds();
}
@Override
public int threads() {
return workloadConfig.getThreads();
}
@Override
public String outputFolder() {
return context.getOutputDir().getAbsolutePath();
}
@Override
public String defaultDescription() {
return YARDSTICK_OUTPUT;
}
};
cfg.output(System.out);
BenchmarkDriver[] drivers = new BenchmarkDriver[] {benchmark};
benchmark.setUp(cfg);
TestDoneProbe testDoneProbe = new TestDoneProbe();
Collection<BenchmarkProbe> probes =
Arrays.asList(new HdrHistogramProbe(new HdrHistogramWriter(context.getOutputDir())),
new ThroughputLatencyProbe(),
new PercentileProbe(), new VmStatProbe(),
testDoneProbe);
BenchmarkLoader loader = new BenchmarkLoader();
loader.initialize(cfg);
BenchmarkProbeSet probeSet = new BenchmarkProbeSet(benchmark, cfg, probes, loader);
BenchmarkProbeSet[] probeSets = new BenchmarkProbeSet[] {probeSet};
int[] weights = new int[] {1};
BenchmarkRunner runner = new BenchmarkRunner(cfg, drivers, probeSets, weights);
runner.runBenchmark();
testDoneProbe.await();
}