From b8c7207a7819eb7f3162cd3748868a6230d21ba3 Mon Sep 17 00:00:00 2001 From: Unknown <petr.bainar@hotmail.com> Date: Wed, 24 Jan 2018 14:26:07 +0100 Subject: [PATCH] formatStatistics: moving constants into a special file; refactoring --- .../core/BenchmarkJobManager.java | 2 +- .../haas_spim_benchmark/core/Constants.java | 4 ++++ .../core/ResultFileJob.java | 1 - .../core/ResultFileTask.java | 19 +++++++------------ 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/BenchmarkJobManager.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/BenchmarkJobManager.java index ac88a8b9..f6b5f029 100644 --- a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/BenchmarkJobManager.java +++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/BenchmarkJobManager.java @@ -261,7 +261,7 @@ public class BenchmarkJobManager { for (int i = 1; i < columns.length; i++) { values.add(new ResultFileJob(columns[i])); } - } else if (!columns[0].equals("jobs #")){ + } else if (!columns[0].equals("jobs #")) { for (int i = 1; i < columns.length; i++) { ResultFileJob resultFileJob; resultFileJob = values.get(i - 1); diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/Constants.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/Constants.java index 0c722e14..65124a7c 100644 --- a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/Constants.java +++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/Constants.java @@ -11,4 +11,8 @@ public interface Constants { String SPIM_OUTPUT_FILENAME_PATTERN = "spim.outputFilenamePattern"; String CONFIG_YAML = "config.yaml"; String BENCHMARK_RESULT_FILE = "benchmark_result.csv"; + + String STATISTICS_RESOURCES_MEMORY_USAGE = "resources_used.mem"; + String STATISTICS_RESOURCES_WALL_TIME = "resources_used.walltime"; + String STATISTICS_RESOURCES_CPU_PERCENTAGE = "resources_used.cpupercent"; } diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/ResultFileJob.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/ResultFileJob.java index eb6f5c4e..f67fee23 100644 --- a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/ResultFileJob.java +++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/ResultFileJob.java @@ -9,7 +9,6 @@ public class ResultFileJob { public ResultFileJob(String id) { this.id = id; - } public String getValue(String key) { diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/ResultFileTask.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/ResultFileTask.java index 8ec16a0d..88767ed9 100644 --- a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/ResultFileTask.java +++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/ResultFileTask.java @@ -1,8 +1,6 @@ package cz.it4i.fiji.haas_spim_benchmark.core; import java.util.LinkedList; -import java.util.function.Function; -import java.util.stream.Collector; import java.util.stream.Collectors; public class ResultFileTask { @@ -19,23 +17,20 @@ public class ResultFileTask { } public double getAverageMemoryUsage() { - return getAverage(str->Double.parseDouble(str), Collectors.averagingDouble(d->d),"resources_used.mem").doubleValue(); + return getAverage(Constants.STATISTICS_RESOURCES_MEMORY_USAGE); } public double getAverageWallTime() { - return getAverage("resources_used.walltime"); + return getAverage(Constants.STATISTICS_RESOURCES_WALL_TIME); } public double getAverageCpuPercentage() { - return getAverage("resources_used.cpupercent"); - } - - private double getAverage(String propertyName) { - return getAverage(str->Integer.parseInt(str), Collectors.averagingInt(i->i),propertyName).doubleValue(); + return getAverage(Constants.STATISTICS_RESOURCES_CPU_PERCENTAGE); } - private<T> Double getAverage(Function<String, T> valueProvider,Collector<T,?,Double> collector,String propertyName) { - return jobs.stream().map(job -> job.getValue(propertyName)).map(memStr -> valueProvider.apply(memStr)) - .collect(collector); + private Double getAverage(String propertyName) { + return jobs.stream().map(job -> job.getValue(propertyName)) + .map(memStr -> Double.parseDouble(memStr)) + .collect(Collectors.averagingDouble(d->d)).doubleValue(); } } \ No newline at end of file -- GitLab