public static void main(String[] args) throws IOException { CaliperRunner runner = new CaliperRunner(BufferedReaderBenchmark.class); runner.addParameterDefault("parser", "null", "gson", "jackson", "minimal-json"); runner.addParameterDefault("input", "rap", "caliper", "long-string", "numbers-array"); runner.exec(args); }
private static void copyHtmlResources(File parent) throws IOException { copyResource("Benchmarks.html", parent); copyResource("benchmarks.js", parent); copyResource("benchmarks.css", parent); copyResource("parser.css", parent); }
public static void main(String[] args) throws IOException { CaliperRunner runner = new CaliperRunner(BufferedStringWriterBenchmark.class); runner.exec(args); }
private void createJsonFile() throws IOException { JsonObject caliperJson = Json.parse(readFromFile(resultsFile)).asObject(); String resultsJson = new CaliperResultsPreprocessor(caliperJson).getResults().toString(); writeToFile(resultsJson, resultsFile); }
public void exec(String[] args) throws IOException { int exitCode = safeRun(args); if (exitCode == 0 && resultsFile != null) { createJsonFile(); copyHtmlResources(resultsFile.getParentFile()); } System.exit(exitCode); // cleanup non-daemon threads from user code, see caliper.Runner }
private static JsonObject transformResults(JsonObject caliperResults) { return new JsonObject().add("name", extractSimpleName(caliperResults)) .add("details", extractEnvironment(caliperResults)) .add("measurements", extractMeasurements(caliperResults)); }
private static JsonValue extractEnvironment(JsonObject caliperResults) { JsonObject details = caliperResults.get("environment").asObject().get("propertyMap").asObject(); details.add("benchmark.classname", extractBenchmarkName(caliperResults)); details.add("benchmark.executionTime", extractTimestamp(caliperResults)); return details; }
public CaliperRunner(Class<? extends Benchmark> benchmark) { this.benchmark = benchmark; this.resultsFile = getResultsFile(); }
CaliperResultsPreprocessor(JsonObject results) { this.results = transformResults(results); }
private static String readFromFile(File file) throws IOException { FileInputStream inputStream = new FileInputStream(file); try { return readContent(inputStream, "UTF-8"); } finally { inputStream.close(); } }
private static void copyResource(String name, File parent) throws IOException { File file = new File(parent, name); if (!file.exists()) { writeToFile(readResource("charts/" + name), file); } }
private static JsonObject extractMeasurement(JsonObject measurement) { JsonObject times = measurement.get("v").asObject() .get("measurementSetMap").asObject() .get("TIME").asObject(); return new JsonObject().add("variables", measurement.get("k").asObject().get("variables")) .add("units", times.get("unitNames")) .add("values", extractTimes(times.get("measurements").asArray())); }
public static void main(String[] args) throws IOException { CaliperRunner runner = new CaliperRunner(BufferedWriterBenchmark.class); runner.addParameterDefault("parser", "null", "gson", "jackson", "minimal-json"); runner.addParameterDefault("input", "rap", "caliper", "long-string", "numbers-array"); runner.exec(args); }
public static void main(String[] args) throws IOException { new CaliperRunner(IntVsLongBenchmark.class).exec(args); }
public static void main(String[] args) throws IOException { CaliperRunner runner = new CaliperRunner(ReadWriteMicroBenchmark.class); runner.addParameterDefault("parser", "org-json", "gson", "jackson", "json-simple", "minimal-json"); runner.addParameterDefault("input", "long-string", "numbers-array"); runner.exec(args); }
public static void main(String[] args) throws IOException { CaliperRunner runner = new CaliperRunner(ListVsHashLookupBenchmark.class); runner.addParameterDefault("size", "4", "16", "64", "256"); runner.exec(args); }
public static void main(String[] args) throws IOException { CaliperRunner runner = new CaliperRunner(ReadWriteBenchmark.class); runner.addParameterDefault("parser", "org-json", "gson", "jackson", "json-simple", "json-smart", "minimal-json"); runner.addParameterDefault("input", "rap", "caliper"); runner.exec(args); }
public static void main(String[] rgs) throws IOException { CaliperRunner runner = new CaliperRunner(DoubleBufferingBenchmark.class); runner.addParameterDefault("n", "100", "1000", "10000"); runner.exec(rgs); }
public static void main(String[] args) throws IOException { CaliperRunner runner = new CaliperRunner(JsonObjectIterationBenchmark.class); runner.addParameterDefault("size", "4", "16", "64"); runner.exec(args); }