in harness/src/main/java/org/apache/geode/perftest/analysis/BenchmarkRunAnalyzer.java [59:94]
public BenchmarkRunResult analyzeTestRun(File baselineResultDir, File testResultDir)
throws IOException {
List<File> benchmarkDirs = Arrays.asList(testResultDir.listFiles());
benchmarkDirs.sort(File::compareTo);
BenchmarkRunResult result = new BenchmarkRunResult();
for (File testDir : benchmarkDirs) {
final List<File> testYardstickDirs = getYardstickOutputForBenchmarkDir(testDir);
if (testYardstickDirs.isEmpty()) {
continue;
}
File baselineDir = new File(baselineResultDir, testDir.getName());
final List<File> baselineYardstickDirs = getYardstickOutputForBenchmarkDir(baselineDir);
final BenchmarkRunResult.BenchmarkResult benchmarkResult =
result.addBenchmark(testDir.getName());
for (ProbeResultParser probe : probes) {
List<ProbeResultParser.ResultData> testResults = getTestResult(testYardstickDirs, probe);
List<ProbeResultParser.ResultData> baselineResults =
getTestResult(baselineYardstickDirs, probe);
Iterator<ProbeResultParser.ResultData> testResultIter = testResults.iterator();
Iterator<ProbeResultParser.ResultData> baselineResultIter = baselineResults.iterator();
while (testResultIter.hasNext()) {
ProbeResultParser.ResultData testResult = testResultIter.next();
ProbeResultParser.ResultData baselineResult = baselineResultIter.next();
benchmarkResult.addProbeResult(testResult.description, baselineResult.value,
testResult.value);
}
}
}
return result;
}