aboutsummaryrefslogtreecommitdiff
path: root/benchmarks
diff options
context:
space:
mode:
authorBogdan Drutu <bdrutu@google.com>2017-11-16 11:00:50 +1100
committerGitHub <noreply@github.com>2017-11-16 11:00:50 +1100
commit2117c214175ec118fc71dc8549007ea03ec6c273 (patch)
tree37a3f7919ee1798cf211f2f78fb89b2a978dff4e /benchmarks
parentd3bc9979d1d69473680fa840f3c7ead43f6ec7c8 (diff)
downloadopencensus-java-2117c214175ec118fc71dc8549007ea03ec6c273.tar.gz
Clean benchmarks and move in different package. (#805)
* Clean benchmarks and move in different package. * Format files. * Revert the number of tries.
Diffstat (limited to 'benchmarks')
-rw-r--r--benchmarks/build.gradle15
-rw-r--r--benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/RecordTraceEventsNonSampledSpanBenchmark.java (renamed from benchmarks/src/jmh/java/io/opencensus/trace/RecordTraceEventsNonSampledSpanBenchmark.java)11
-rw-r--r--benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/RecordTraceEventsSampledSpanBenchmark.java (renamed from benchmarks/src/jmh/java/io/opencensus/trace/RecordTraceEventsSampledSpanBenchmark.java)11
-rw-r--r--benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/StartEndSpanBenchmark.java (renamed from benchmarks/src/jmh/java/io/opencensus/trace/StartEndSpanBenchmark.java)8
-rw-r--r--benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/BinaryPropagationImplBenchmark.java (renamed from benchmarks/src/jmh/java/io/opencensus/trace/propagation/BinaryPropagationImplBenchmark.java)27
5 files changed, 47 insertions, 25 deletions
diff --git a/benchmarks/build.gradle b/benchmarks/build.gradle
index 00f3f737..0c232951 100644
--- a/benchmarks/build.gradle
+++ b/benchmarks/build.gradle
@@ -9,22 +9,25 @@ buildscript {
}
dependencies {
classpath "me.champeau.gradle:jmh-gradle-plugin:0.4.4"
+ classpath "gradle.plugin.io.morethan.jmhreport:gradle-jmh-report:0.7.0"
}
}
apply plugin: "me.champeau.gradle.jmh"
+apply plugin: "io.morethan.jmhreport"
jmh {
jmhVersion = '1.19'
warmupIterations = 10
iterations = 10
fork = 1
- jvmArgs = "-server -Xms2g -Xmx2g"
+ failOnError = true
+ resultFormat = 'JSON'
}
dependencies {
compile project(':opencensus-api'),
- project(':opencensus-impl-core')
+ project(':opencensus-impl-core'),
project(':opencensus-impl')
}
@@ -32,7 +35,6 @@ compileJmhJava {
options.compilerArgs = compileJava.options.compilerArgs
}
-
// Generate html report for findbugsJmh.
findbugsJmh {
reports {
@@ -41,5 +43,12 @@ findbugsJmh {
}
}
+jmhReport {
+ jmhResultPath = project.file("${project.buildDir}/reports/jmh/results.json")
+ jmhReportOutput = project.file("${project.buildDir}/reports/jmh")
+}
+
+tasks.jmh.finalizedBy tasks.jmhReport
+
// Disable checkstyle if not java8.
checkstyleJmh.enabled = JavaVersion.current().isJava8Compatible() \ No newline at end of file
diff --git a/benchmarks/src/jmh/java/io/opencensus/trace/RecordTraceEventsNonSampledSpanBenchmark.java b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/RecordTraceEventsNonSampledSpanBenchmark.java
index 3819124d..8eff5a26 100644
--- a/benchmarks/src/jmh/java/io/opencensus/trace/RecordTraceEventsNonSampledSpanBenchmark.java
+++ b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/RecordTraceEventsNonSampledSpanBenchmark.java
@@ -14,9 +14,14 @@
* limitations under the License.
*/
-package io.opencensus.trace;
+package io.opencensus.benchmarks.trace;
-import io.opencensus.implcore.trace.SpanImpl;
+import io.opencensus.trace.AttributeValue;
+import io.opencensus.trace.Link;
+import io.opencensus.trace.NetworkEvent;
+import io.opencensus.trace.Span;
+import io.opencensus.trace.Tracer;
+import io.opencensus.trace.Tracing;
import io.opencensus.trace.samplers.Samplers;
import java.util.concurrent.TimeUnit;
import org.openjdk.jmh.annotations.Benchmark;
@@ -27,7 +32,7 @@ import org.openjdk.jmh.annotations.Scope;
import org.openjdk.jmh.annotations.State;
import org.openjdk.jmh.annotations.TearDown;
-/** Benchmarks for {@link SpanImpl} to record trace events. */
+/** Benchmarks for {@link Span} to record trace events. */
@State(Scope.Benchmark)
public class RecordTraceEventsNonSampledSpanBenchmark {
private static final Tracer tracer = Tracing.getTracer();
diff --git a/benchmarks/src/jmh/java/io/opencensus/trace/RecordTraceEventsSampledSpanBenchmark.java b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/RecordTraceEventsSampledSpanBenchmark.java
index 05ab2e43..cf4bf2dd 100644
--- a/benchmarks/src/jmh/java/io/opencensus/trace/RecordTraceEventsSampledSpanBenchmark.java
+++ b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/RecordTraceEventsSampledSpanBenchmark.java
@@ -14,9 +14,14 @@
* limitations under the License.
*/
-package io.opencensus.trace;
+package io.opencensus.benchmarks.trace;
-import io.opencensus.implcore.trace.SpanImpl;
+import io.opencensus.trace.AttributeValue;
+import io.opencensus.trace.Link;
+import io.opencensus.trace.NetworkEvent;
+import io.opencensus.trace.Span;
+import io.opencensus.trace.Tracer;
+import io.opencensus.trace.Tracing;
import io.opencensus.trace.samplers.Samplers;
import java.util.concurrent.TimeUnit;
import org.openjdk.jmh.annotations.Benchmark;
@@ -27,7 +32,7 @@ import org.openjdk.jmh.annotations.Scope;
import org.openjdk.jmh.annotations.State;
import org.openjdk.jmh.annotations.TearDown;
-/** Benchmarks for {@link SpanImpl} to record trace events. */
+/** Benchmarks for {@link Span} to record trace events. */
@State(Scope.Benchmark)
public class RecordTraceEventsSampledSpanBenchmark {
private static final Tracer tracer = Tracing.getTracer();
diff --git a/benchmarks/src/jmh/java/io/opencensus/trace/StartEndSpanBenchmark.java b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/StartEndSpanBenchmark.java
index 9aaa1c5b..cd677228 100644
--- a/benchmarks/src/jmh/java/io/opencensus/trace/StartEndSpanBenchmark.java
+++ b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/StartEndSpanBenchmark.java
@@ -14,9 +14,11 @@
* limitations under the License.
*/
-package io.opencensus.trace;
+package io.opencensus.benchmarks.trace;
-import io.opencensus.implcore.trace.SpanImpl;
+import io.opencensus.trace.Span;
+import io.opencensus.trace.Tracer;
+import io.opencensus.trace.Tracing;
import io.opencensus.trace.samplers.Samplers;
import java.util.concurrent.TimeUnit;
import org.openjdk.jmh.annotations.Benchmark;
@@ -27,7 +29,7 @@ import org.openjdk.jmh.annotations.Scope;
import org.openjdk.jmh.annotations.State;
import org.openjdk.jmh.annotations.TearDown;
-/** Benchmarks for {@link SpanBuilderImpl} and {@link SpanImpl}. */
+/** Benchmarks for {@link io.opencensus.trace.SpanBuilder} and {@link Span}. */
@State(Scope.Benchmark)
public class StartEndSpanBenchmark {
private static final Tracer tracer = Tracing.getTracer();
diff --git a/benchmarks/src/jmh/java/io/opencensus/trace/propagation/BinaryPropagationImplBenchmark.java b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/BinaryPropagationImplBenchmark.java
index e3f4cf75..c9c6abb6 100644
--- a/benchmarks/src/jmh/java/io/opencensus/trace/propagation/BinaryPropagationImplBenchmark.java
+++ b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/BinaryPropagationImplBenchmark.java
@@ -14,13 +14,15 @@
* limitations under the License.
*/
-package io.opencensus.trace.propagation;
+package io.opencensus.benchmarks.trace.propagation;
-import io.opencensus.implcore.trace.propagation.BinaryFormatImpl;
import io.opencensus.trace.SpanContext;
import io.opencensus.trace.SpanId;
import io.opencensus.trace.TraceId;
import io.opencensus.trace.TraceOptions;
+import io.opencensus.trace.Tracing;
+import io.opencensus.trace.propagation.BinaryFormat;
+import io.opencensus.trace.propagation.SpanContextParseException;
import java.util.concurrent.TimeUnit;
import org.openjdk.jmh.annotations.Benchmark;
import org.openjdk.jmh.annotations.BenchmarkMode;
@@ -29,7 +31,7 @@ import org.openjdk.jmh.annotations.OutputTimeUnit;
import org.openjdk.jmh.annotations.Scope;
import org.openjdk.jmh.annotations.State;
-/** Benchmarks for {@link BinaryFormatImpl}. */
+/** Benchmarks for {@link BinaryFormat}. */
@State(Scope.Benchmark)
public class BinaryPropagationImplBenchmark {
private static final byte[] traceIdBytes =
@@ -40,40 +42,39 @@ public class BinaryPropagationImplBenchmark {
private static final byte[] traceOptionsBytes = new byte[] {1};
private static final TraceOptions traceOptions = TraceOptions.fromBytes(traceOptionsBytes);
private static final SpanContext spanContext = SpanContext.create(traceId, spanId, traceOptions);
- private static final BinaryFormat BINARY_PROPAGATION = new BinaryFormatImpl();
- private static final byte[] spanContextBinary = BINARY_PROPAGATION.toByteArray(spanContext);
+ private static final BinaryFormat binaryFormat =
+ Tracing.getPropagationComponent().getBinaryFormat();
+ private static final byte[] spanContextBinary = binaryFormat.toByteArray(spanContext);
/**
* This benchmark attempts to measure performance of {@link
- * BinaryFormatImpl#toBinaryValue(SpanContext)}.
+ * BinaryFormat#toBinaryValue(SpanContext)}.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public byte[] toBinarySpanContext() {
- return BINARY_PROPAGATION.toByteArray(spanContext);
+ return binaryFormat.toByteArray(spanContext);
}
/**
- * This benchmark attempts to measure performance of {@link
- * BinaryFormatImpl#fromBinaryValue(byte[])}.
+ * This benchmark attempts to measure performance of {@link BinaryFormat#fromBinaryValue(byte[])}.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public SpanContext fromBinarySpanContext() throws SpanContextParseException {
- return BINARY_PROPAGATION.fromByteArray(spanContextBinary);
+ return binaryFormat.fromByteArray(spanContextBinary);
}
/**
* This benchmark attempts to measure performance of {@link
- * BinaryFormatImpl#toBinaryValue(SpanContext)} then {@link
- * BinaryFormatImpl#fromBinaryValue(byte[])}.
+ * BinaryFormat#toBinaryValue(SpanContext)} then {@link BinaryFormat#fromBinaryValue(byte[])}.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public SpanContext toFromBinarySpanContext() throws SpanContextParseException {
- return BINARY_PROPAGATION.fromByteArray(BINARY_PROPAGATION.toByteArray(spanContext));
+ return binaryFormat.fromByteArray(binaryFormat.toByteArray(spanContext));
}
}