Skip to content

Commit

Permalink
PLANNER-401: Renamed methods in BenchmarkResult
Browse files Browse the repository at this point in the history
  • Loading branch information
oskopek committed Sep 23, 2015
1 parent 691d510 commit 98655f4
Show file tree
Hide file tree
Showing 20 changed files with 70 additions and 80 deletions.
Expand Up @@ -265,7 +265,7 @@ protected void runSingleBenchmarks() {
// Explicitly returning it in the Callable guarantees memory visibility // Explicitly returning it in the Callable guarantees memory visibility
subSingleBenchmarkRunner = future.get(); subSingleBenchmarkRunner = future.get();
// TODO WORKAROUND Remove when PLANNER-46 is fixed. // TODO WORKAROUND Remove when PLANNER-46 is fixed.
if (subSingleBenchmarkRunner.getSubSingleBenchmarkResult().getScore() == null) { if (subSingleBenchmarkRunner.getSubSingleBenchmarkResult().getAverageScore() == null) {
throw new IllegalStateException("Score is null. TODO fix PLANNER-46."); throw new IllegalStateException("Score is null. TODO fix PLANNER-46.");
} }
} catch (InterruptedException e) { } catch (InterruptedException e) {
Expand Down
Expand Up @@ -74,7 +74,7 @@ public SubSingleBenchmarkRunner call() {


// Intentionally create a fresh solver for every SingleBenchmarkResult to reset Random, tabu lists, ... // Intentionally create a fresh solver for every SingleBenchmarkResult to reset Random, tabu lists, ...
// TODO PLANNER-440 Use a classLoader argument buildSolver() // TODO PLANNER-440 Use a classLoader argument buildSolver()
Solver solver = subSingleBenchmarkResult.getSolverBenchmarkResult().getSolverConfig().buildSolver(); Solver solver = subSingleBenchmarkResult.getSingleBenchmarkResult().getSolverBenchmarkResult().getSolverConfig().buildSolver();


for (SubSingleStatistic subSingleStatistic : subSingleBenchmarkResult.getEffectiveSubSingleStatisticMap().values()) { for (SubSingleStatistic subSingleStatistic : subSingleBenchmarkResult.getEffectiveSubSingleStatisticMap().values()) {
subSingleStatistic.open(solver); subSingleStatistic.open(solver);
Expand Down
Expand Up @@ -30,7 +30,7 @@ public class SingleBenchmarkRankingComparator implements Comparator<SingleBenchm
@Override @Override
public int compare(SingleBenchmarkResult a, SingleBenchmarkResult b) { public int compare(SingleBenchmarkResult a, SingleBenchmarkResult b) {
return new CompareToBuilder() return new CompareToBuilder()
.append(b.isFailure(), a.isFailure()) // Reverse, less is better (redundant: failed benchmarks don't get ranked at all) .append(b.hasAnyFailure(), a.hasAnyFailure()) // Reverse, less is better (redundant: failed benchmarks don't get ranked at all)
.append(b.getAverageUninitializedVariableCount(), a.getAverageUninitializedVariableCount()) // Reverse, less is better .append(b.getAverageUninitializedVariableCount(), a.getAverageUninitializedVariableCount()) // Reverse, less is better
.append(a.getAverageScore(), b.getAverageScore(), resilientScoreComparator) .append(a.getAverageScore(), b.getAverageScore(), resilientScoreComparator)
.toComparison(); .toComparison();
Expand Down
Expand Up @@ -20,7 +20,6 @@
import java.util.Comparator; import java.util.Comparator;


import org.apache.commons.lang3.builder.CompareToBuilder; import org.apache.commons.lang3.builder.CompareToBuilder;
import org.optaplanner.benchmark.impl.result.SingleBenchmarkResult;
import org.optaplanner.benchmark.impl.result.SubSingleBenchmarkResult; import org.optaplanner.benchmark.impl.result.SubSingleBenchmarkResult;
import org.optaplanner.core.api.score.Score; import org.optaplanner.core.api.score.Score;


Expand All @@ -31,9 +30,9 @@ public class SubSingleBenchmarkRankingComparator implements Comparator<SubSingle
@Override @Override
public int compare(SubSingleBenchmarkResult a, SubSingleBenchmarkResult b) { public int compare(SubSingleBenchmarkResult a, SubSingleBenchmarkResult b) {
return new CompareToBuilder() return new CompareToBuilder()
.append(b.isFailure(), a.isFailure()) // Reverse, less is better (redundant: failed benchmarks don't get ranked at all) .append(b.hasAnyFailure(), a.hasAnyFailure()) // Reverse, less is better (redundant: failed benchmarks don't get ranked at all)
.append(b.getUninitializedVariableCount(), a.getUninitializedVariableCount()) // Reverse, less is better .append(b.getUninitializedVariableCount(), a.getUninitializedVariableCount()) // Reverse, less is better
.append(a.getScore(), b.getScore(), resilientScoreComparator) .append(a.getAverageScore(), b.getAverageScore(), resilientScoreComparator)
.toComparison(); .toComparison();
} }


Expand Down
Expand Up @@ -266,7 +266,7 @@ public void writeReport() {
problemStatistic.writeGraphFiles(this); problemStatistic.writeGraphFiles(this);
} }
for (SingleBenchmarkResult singleBenchmarkResult : problemBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : problemBenchmarkResult.getSingleBenchmarkResultList()) {
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
for (PureSubSingleStatistic pureSubSingleStatistic : singleBenchmarkResult.getMedian().getPureSubSingleStatisticList()) { for (PureSubSingleStatistic pureSubSingleStatistic : singleBenchmarkResult.getMedian().getPureSubSingleStatisticList()) {
pureSubSingleStatistic.writeGraphFiles(this); pureSubSingleStatistic.writeGraphFiles(this);
} }
Expand Down Expand Up @@ -314,7 +314,7 @@ private void writeBestScoreSummaryCharts() {
String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix(); String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix();
for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) {
String planningProblemLabel = singleBenchmarkResult.getProblemBenchmarkResult().getName(); String planningProblemLabel = singleBenchmarkResult.getProblemBenchmarkResult().getName();
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
double[] levelValues = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getAverageScore()); double[] levelValues = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getAverageScore());
for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) { for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) {
if (i >= datasetList.size()) { if (i >= datasetList.size()) {
Expand Down Expand Up @@ -345,7 +345,7 @@ private void writeBestScoreScalabilitySummaryChart() {
for (SolverBenchmarkResult solverBenchmarkResult : plannerBenchmarkResult.getSolverBenchmarkResultList()) { for (SolverBenchmarkResult solverBenchmarkResult : plannerBenchmarkResult.getSolverBenchmarkResultList()) {
String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix(); String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix();
for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) {
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
long problemScale = singleBenchmarkResult.getProblemBenchmarkResult().getProblemScale(); long problemScale = singleBenchmarkResult.getProblemBenchmarkResult().getProblemScale();
double[] levelValues = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getAverageScore()); double[] levelValues = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getAverageScore());
for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) { for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) {
Expand Down Expand Up @@ -385,7 +385,7 @@ private void writeWinningScoreDifferenceSummaryChart() {
String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix(); String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix();
for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) {
String planningProblemLabel = singleBenchmarkResult.getProblemBenchmarkResult().getName(); String planningProblemLabel = singleBenchmarkResult.getProblemBenchmarkResult().getName();
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
double[] levelValues = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getWinningScoreDifference()); double[] levelValues = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getWinningScoreDifference());
for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) { for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) {
if (i >= datasetList.size()) { if (i >= datasetList.size()) {
Expand Down Expand Up @@ -417,7 +417,7 @@ private void writeWorstScoreDifferencePercentageSummaryChart() {
String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix(); String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix();
for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) {
String planningProblemLabel = singleBenchmarkResult.getProblemBenchmarkResult().getName(); String planningProblemLabel = singleBenchmarkResult.getProblemBenchmarkResult().getName();
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
double[] levelValues = singleBenchmarkResult.getWorstScoreDifferencePercentage().getPercentageLevels(); double[] levelValues = singleBenchmarkResult.getWorstScoreDifferencePercentage().getPercentageLevels();
for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) { for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) {
if (i >= datasetList.size()) { if (i >= datasetList.size()) {
Expand Down Expand Up @@ -449,7 +449,7 @@ private void writeAverageCalculateCountPerSecondSummaryChart() {
String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix(); String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix();
XYSeries series = new XYSeries(solverLabel); XYSeries series = new XYSeries(solverLabel);
for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) {
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
long problemScale = singleBenchmarkResult.getProblemBenchmarkResult().getProblemScale(); long problemScale = singleBenchmarkResult.getProblemBenchmarkResult().getProblemScale();
long averageCalculateCountPerSecond = singleBenchmarkResult.getAverageCalculateCountPerSecond(); long averageCalculateCountPerSecond = singleBenchmarkResult.getAverageCalculateCountPerSecond();
series.add((Long) problemScale, (Long) averageCalculateCountPerSecond); series.add((Long) problemScale, (Long) averageCalculateCountPerSecond);
Expand All @@ -471,7 +471,7 @@ private void writeTimeSpentSummaryChart() {
String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix(); String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix();
for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) {
String planningProblemLabel = singleBenchmarkResult.getProblemBenchmarkResult().getName(); String planningProblemLabel = singleBenchmarkResult.getProblemBenchmarkResult().getName();
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
long timeMillisSpent = singleBenchmarkResult.getTimeMillisSpent(); long timeMillisSpent = singleBenchmarkResult.getTimeMillisSpent();
dataset.addValue(timeMillisSpent, solverLabel, planningProblemLabel); dataset.addValue(timeMillisSpent, solverLabel, planningProblemLabel);
} }
Expand All @@ -489,7 +489,7 @@ private void writeTimeSpentScalabilitySummaryChart() {
String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix(); String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix();
XYSeries series = new XYSeries(solverLabel); XYSeries series = new XYSeries(solverLabel);
for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) {
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
long problemScale = singleBenchmarkResult.getProblemBenchmarkResult().getProblemScale(); long problemScale = singleBenchmarkResult.getProblemBenchmarkResult().getProblemScale();
long timeMillisSpent = singleBenchmarkResult.getTimeMillisSpent(); long timeMillisSpent = singleBenchmarkResult.getTimeMillisSpent();
series.add((Long) problemScale, (Long) timeMillisSpent); series.add((Long) problemScale, (Long) timeMillisSpent);
Expand All @@ -513,7 +513,7 @@ private void writeBestScorePerTimeSpentSummaryChart() {
for (SolverBenchmarkResult solverBenchmarkResult : plannerBenchmarkResult.getSolverBenchmarkResultList()) { for (SolverBenchmarkResult solverBenchmarkResult : plannerBenchmarkResult.getSolverBenchmarkResultList()) {
String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix(); String solverLabel = solverBenchmarkResult.getNameWithFavoriteSuffix();
for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : solverBenchmarkResult.getSingleBenchmarkResultList()) {
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
long timeMillisSpent = singleBenchmarkResult.getTimeMillisSpent(); long timeMillisSpent = singleBenchmarkResult.getTimeMillisSpent();
double[] levelValues = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getAverageScore()); double[] levelValues = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getAverageScore());
for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) { for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) {
Expand Down Expand Up @@ -583,8 +583,8 @@ private List<? extends BoxAndWhiskerCategoryDataset> generateSubSingleBenchmarkS
for (SingleBenchmarkResult singleBenchmarkResult : problemBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : problemBenchmarkResult.getSingleBenchmarkResultList()) {
List<List<Double>> valueListList = new ArrayList<List<Double>>(CHARTED_SCORE_LEVEL_SIZE); List<List<Double>> valueListList = new ArrayList<List<Double>>(CHARTED_SCORE_LEVEL_SIZE);
for (SubSingleBenchmarkResult subSingleBenchmarkResult : singleBenchmarkResult.getSubSingleBenchmarkResultList()) { for (SubSingleBenchmarkResult subSingleBenchmarkResult : singleBenchmarkResult.getSubSingleBenchmarkResultList()) {
if (subSingleBenchmarkResult.isSuccess() && subSingleBenchmarkResult.isInitialized()) { if (subSingleBenchmarkResult.hasAnySuccess() && subSingleBenchmarkResult.isInitialized()) {
double[] levelValues = ScoreUtils.extractLevelDoubles(subSingleBenchmarkResult.getScore()); double[] levelValues = ScoreUtils.extractLevelDoubles(subSingleBenchmarkResult.getAverageScore());
for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) { for (int i = 0; i < levelValues.length && i < CHARTED_SCORE_LEVEL_SIZE; i++) {
if (i >= valueListList.size()) { if (i >= valueListList.size()) {
valueListList.add(new ArrayList<Double>(singleBenchmarkResult.getSuccessCount())); valueListList.add(new ArrayList<Double>(singleBenchmarkResult.getSuccessCount()));
Expand Down Expand Up @@ -715,7 +715,7 @@ private void determineDefaultShownScoreLevelIndex() {
differenceCount[i] = 0; differenceCount[i] = 0;
} }
for (SingleBenchmarkResult singleBenchmarkResult : problemBenchmarkResult.getSingleBenchmarkResultList()) { for (SingleBenchmarkResult singleBenchmarkResult : problemBenchmarkResult.getSingleBenchmarkResultList()) {
if (singleBenchmarkResult.isSuccess()) { if (singleBenchmarkResult.hasAnySuccess()) {
double[] scoreLevels = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getAverageScore()); double[] scoreLevels = ScoreUtils.extractLevelDoubles(singleBenchmarkResult.getAverageScore());
for (int i = 0; i < scoreLevels.length; i++) { for (int i = 0; i < scoreLevels.length; i++) {
if (scoreLevels[i] != winningScoreLevels[i]) { if (scoreLevels[i] != winningScoreLevels[i]) {
Expand Down
Expand Up @@ -23,20 +23,18 @@


public interface BenchmarkResult { public interface BenchmarkResult {


public SolverBenchmarkResult getSolverBenchmarkResult(); public String getResultDirectoryPath();


public ProblemBenchmarkResult getProblemBenchmarkResult(); public File getResultDirectory();


public String getReportDirectoryPath(); public boolean hasAnyFailure();


public File getReportDirectory(); public boolean hasAnySuccess();

public boolean isFailure();

public boolean isSuccess();


public String getName(); public String getName();


public Score getScore(); public Integer getAverageUninitializedVariableCount();

public Score getAverageScore();


} }
Expand Up @@ -282,7 +282,7 @@ public void writeOutputSolution(SubSingleBenchmarkResult subSingleBenchmarkResul
return; return;
} }
String filename = getName() + "." + solutionFileIO.getOutputFileExtension(); String filename = getName() + "." + solutionFileIO.getOutputFileExtension();
File outputSolutionFile = new File(subSingleBenchmarkResult.getReportDirectory(), filename); File outputSolutionFile = new File(subSingleBenchmarkResult.getResultDirectory(), filename);
solutionFileIO.write(outputSolution, outputSolutionFile); solutionFileIO.write(outputSolution, outputSolutionFile);
} }


Expand Down Expand Up @@ -310,7 +310,7 @@ private void determineTotalsAndAveragesAndRanking() {
// Do not rank a SingleBenchmarkResult that has a failure // Do not rank a SingleBenchmarkResult that has a failure
for (Iterator<SingleBenchmarkResult> it = successResultList.iterator(); it.hasNext(); ) { for (Iterator<SingleBenchmarkResult> it = successResultList.iterator(); it.hasNext(); ) {
SingleBenchmarkResult singleBenchmarkResult = it.next(); SingleBenchmarkResult singleBenchmarkResult = it.next();
if (singleBenchmarkResult.isFailure()) { if (singleBenchmarkResult.hasAnyFailure()) {
failureCount++; failureCount++;
it.remove(); it.remove();
} else { } else {
Expand Down Expand Up @@ -354,7 +354,7 @@ private void determineRanking(List<SingleBenchmarkResult> rankedSingleBenchmarkR


private void determineWinningScoreDifference() { private void determineWinningScoreDifference() {
for (SingleBenchmarkResult singleBenchmarkResult : singleBenchmarkResultList) { for (SingleBenchmarkResult singleBenchmarkResult : singleBenchmarkResultList) {
if (singleBenchmarkResult.isFailure()) { if (singleBenchmarkResult.hasAnyFailure()) {
continue; continue;
} }
singleBenchmarkResult.setWinningScoreDifference( singleBenchmarkResult.setWinningScoreDifference(
Expand Down
Expand Up @@ -98,7 +98,6 @@ public void initSubSingleStatisticMap() {
} }
} }


@Override
public SolverBenchmarkResult getSolverBenchmarkResult() { public SolverBenchmarkResult getSolverBenchmarkResult() {
return solverBenchmarkResult; return solverBenchmarkResult;
} }
Expand All @@ -107,7 +106,6 @@ public void setSolverBenchmarkResult(SolverBenchmarkResult solverBenchmarkResult
this.solverBenchmarkResult = solverBenchmarkResult; this.solverBenchmarkResult = solverBenchmarkResult;
} }


@Override
public ProblemBenchmarkResult getProblemBenchmarkResult() { public ProblemBenchmarkResult getProblemBenchmarkResult() {
return problemBenchmarkResult; return problemBenchmarkResult;
} }
Expand Down Expand Up @@ -183,6 +181,7 @@ public void setRanking(Integer ranking) {
this.ranking = ranking; this.ranking = ranking;
} }


@Override
public Score getAverageScore() { public Score getAverageScore() {
return averageScore; return averageScore;
} }
Expand All @@ -207,6 +206,7 @@ public double[] getStandardDeviationDoubles() {
return standardDeviationDoubles; return standardDeviationDoubles;
} }


@Override
public Integer getAverageUninitializedVariableCount() { public Integer getAverageUninitializedVariableCount() {
return averageUninitializedVariableCount; return averageUninitializedVariableCount;
} }
Expand Down Expand Up @@ -247,7 +247,7 @@ public File getBenchmarkReportDirectory() {
} }


@Override @Override
public boolean isSuccess() { public boolean hasAnySuccess() {
return failureCount != null && failureCount == 0; return failureCount != null && failureCount == 0;
} }


Expand All @@ -256,7 +256,7 @@ public boolean isInitialized() {
} }


@Override @Override
public boolean isFailure() { public boolean hasAnyFailure() {
return failureCount != null && failureCount != 0; return failureCount != null && failureCount != 0;
} }


Expand Down Expand Up @@ -299,25 +299,20 @@ public String getStandardDeviationString() {
return StatisticUtils.getStandardDeviationString(standardDeviationDoubles); return StatisticUtils.getStandardDeviationString(standardDeviationDoubles);
} }


@Override
public Score getScore() {
return getAverageScore();
}

// ************************************************************************ // ************************************************************************
// Accumulate methods // Accumulate methods
// ************************************************************************ // ************************************************************************


public String getReportDirectoryPath() { public String getResultDirectoryPath() {
return solverBenchmarkResult.getName(); return solverBenchmarkResult.getName();
} }


public File getReportDirectory() { public File getResultDirectory() {
return new File(problemBenchmarkResult.getProblemReportDirectory(), getReportDirectoryPath()); return new File(problemBenchmarkResult.getProblemReportDirectory(), getResultDirectoryPath());
} }


public void makeDirs() { public void makeDirs() {
File singleReportDirectory = getReportDirectory(); File singleReportDirectory = getResultDirectory();
singleReportDirectory.mkdirs(); singleReportDirectory.mkdirs();
for (SubSingleBenchmarkResult subSingleBenchmarkResult : subSingleBenchmarkResultList) { for (SubSingleBenchmarkResult subSingleBenchmarkResult : subSingleBenchmarkResultList) {
subSingleBenchmarkResult.makeDirs(); subSingleBenchmarkResult.makeDirs();
Expand All @@ -343,7 +338,7 @@ private void determineRepresentativeSubSingleBenchmarkResult() {
@Override @Override
public int compare(SubSingleBenchmarkResult o1, SubSingleBenchmarkResult o2) { public int compare(SubSingleBenchmarkResult o1, SubSingleBenchmarkResult o2) {
return new CompareToBuilder() return new CompareToBuilder()
.append(o1.isFailure(), o2.isFailure()) .append(o1.hasAnyFailure(), o2.hasAnyFailure())
.append(o1.getRanking(), o2.getRanking()) .append(o1.getRanking(), o2.getRanking())
.toComparison(); .toComparison();
} }
Expand All @@ -369,7 +364,7 @@ private void determineTotalsAndAveragesAndRanking() {
// Do not rank a SubSingleBenchmarkResult that has a failure // Do not rank a SubSingleBenchmarkResult that has a failure
for (Iterator<SubSingleBenchmarkResult> it = successResultList.iterator(); it.hasNext(); ) { for (Iterator<SubSingleBenchmarkResult> it = successResultList.iterator(); it.hasNext(); ) {
SubSingleBenchmarkResult subSingleBenchmarkResult = it.next(); SubSingleBenchmarkResult subSingleBenchmarkResult = it.next();
if (subSingleBenchmarkResult.isFailure()) { if (subSingleBenchmarkResult.hasAnyFailure()) {
failureCount++; failureCount++;
it.remove(); it.remove();
} else { } else {
Expand All @@ -380,10 +375,10 @@ private void determineTotalsAndAveragesAndRanking() {
infeasibleScoreCount++; infeasibleScoreCount++;
} }
if (firstNonFailure) { if (firstNonFailure) {
totalScore = subSingleBenchmarkResult.getScore(); totalScore = subSingleBenchmarkResult.getAverageScore();
firstNonFailure = false; firstNonFailure = false;
} else { } else {
totalScore = totalScore.add(subSingleBenchmarkResult.getScore()); totalScore = totalScore.add(subSingleBenchmarkResult.getAverageScore());
} }
} }
} }
Expand Down
Expand Up @@ -298,7 +298,7 @@ protected void determineTotalsAndAverages() {
totalUninitializedVariableCount = 0; totalUninitializedVariableCount = 0;
infeasibleScoreCount = 0; infeasibleScoreCount = 0;
for (SingleBenchmarkResult singleBenchmarkResult : singleBenchmarkResultList) { for (SingleBenchmarkResult singleBenchmarkResult : singleBenchmarkResultList) {
if (singleBenchmarkResult.isFailure()) { if (singleBenchmarkResult.hasAnyFailure()) {
failureCount++; failureCount++;
} else { } else {
if (!singleBenchmarkResult.isInitialized()) { if (!singleBenchmarkResult.isInitialized()) {
Expand Down

0 comments on commit 98655f4

Please sign in to comment.