aboutsummaryrefslogtreecommitdiff
path: root/benchmarks/src
diff options
context:
space:
mode:
authorBogdan Drutu <bdrutu@google.com>2018-09-11 00:08:18 -0700
committerGitHub <noreply@github.com>2018-09-11 00:08:18 -0700
commitc0e0b225a5230036b3dc09134f94eece81d3f96d (patch)
tree180169458a7c7a7ac9cdeb6f5196e51abaa92852 /benchmarks/src
parentdfc9d00706a16387346e2567ef23139da29fba2f (diff)
downloadopencensus-java-c0e0b225a5230036b3dc09134f94eece81d3f96d.tar.gz
Make jmh available for all subprojects. (#1425)
Diffstat (limited to 'benchmarks/src')
-rw-r--r--benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/B3FormatImplBenchmark.java100
-rw-r--r--benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/BinaryFormatImplBenchmark.java91
-rw-r--r--benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/TextFormatBenchmarkBase.java59
3 files changed, 0 insertions, 250 deletions
diff --git a/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/B3FormatImplBenchmark.java b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/B3FormatImplBenchmark.java
deleted file mode 100644
index eb20ec2c..00000000
--- a/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/B3FormatImplBenchmark.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Copyright 2018, OpenCensus Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.opencensus.benchmarks.trace.propagation;
-
-import io.opencensus.trace.SpanContext;
-import io.opencensus.trace.SpanId;
-import io.opencensus.trace.TraceId;
-import io.opencensus.trace.TraceOptions;
-import io.opencensus.trace.Tracestate;
-import io.opencensus.trace.Tracing;
-import io.opencensus.trace.propagation.SpanContextParseException;
-import io.opencensus.trace.propagation.TextFormat;
-import io.opencensus.trace.propagation.TextFormat.Getter;
-import io.opencensus.trace.propagation.TextFormat.Setter;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Random;
-import java.util.concurrent.TimeUnit;
-import org.openjdk.jmh.annotations.Benchmark;
-import org.openjdk.jmh.annotations.BenchmarkMode;
-import org.openjdk.jmh.annotations.Mode;
-import org.openjdk.jmh.annotations.OutputTimeUnit;
-import org.openjdk.jmh.annotations.Scope;
-import org.openjdk.jmh.annotations.Setup;
-import org.openjdk.jmh.annotations.State;
-
-/** Benchmarks for {@link io.opencensus.implcore.trace.propagation.B3Format}. */
-@State(Scope.Benchmark)
-public class B3FormatImplBenchmark {
- @State(Scope.Thread)
- public static class Data {
- private TextFormatBenchmarkBase textFormatBase;
- private SpanContext spanContext;
- private Map<String, String> spanContextHeaders;
-
- @Setup
- public void setup() {
- textFormatBase = new TextFormatBenchmarkBase(Tracing.getPropagationComponent().getB3Format());
- Random random = new Random(1234);
- spanContext =
- SpanContext.create(
- TraceId.generateRandomId(random),
- SpanId.generateRandomId(random),
- TraceOptions.builder().setIsSampled(random.nextBoolean()).build(),
- Tracestate.builder().build());
- spanContextHeaders = new HashMap<String, String>();
- textFormatBase.inject(spanContext, spanContextHeaders);
- }
- }
-
- /**
- * This benchmark attempts to measure performance of {@link TextFormat#inject(SpanContext, Object,
- * Setter)}.
- */
- @Benchmark
- @BenchmarkMode(Mode.SampleTime)
- @OutputTimeUnit(TimeUnit.NANOSECONDS)
- public Map<String, String> inject(Data data) {
- Map<String, String> carrier = new HashMap<String, String>();
- data.textFormatBase.inject(data.spanContext, carrier);
- return carrier;
- }
-
- /**
- * This benchmark attempts to measure performance of {@link TextFormat#extract(Object, Getter)}.
- */
- @Benchmark
- @BenchmarkMode(Mode.SampleTime)
- @OutputTimeUnit(TimeUnit.NANOSECONDS)
- public SpanContext extract(Data data) throws SpanContextParseException {
- return data.textFormatBase.extract(data.spanContextHeaders);
- }
-
- /**
- * This benchmark attempts to measure performance of {@link TextFormat#inject(SpanContext, Object,
- * Setter)} then {@link TextFormat#extract(Object, Getter)}.
- */
- @Benchmark
- @BenchmarkMode(Mode.SampleTime)
- @OutputTimeUnit(TimeUnit.NANOSECONDS)
- public SpanContext injectExtract(Data data) throws SpanContextParseException {
- Map<String, String> carrier = new HashMap<String, String>();
- data.textFormatBase.inject(data.spanContext, carrier);
- return data.textFormatBase.extract(carrier);
- }
-}
diff --git a/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/BinaryFormatImplBenchmark.java b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/BinaryFormatImplBenchmark.java
deleted file mode 100644
index 391ca906..00000000
--- a/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/BinaryFormatImplBenchmark.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Copyright 2017, OpenCensus Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.opencensus.benchmarks.trace.propagation;
-
-import io.opencensus.trace.SpanContext;
-import io.opencensus.trace.SpanId;
-import io.opencensus.trace.TraceId;
-import io.opencensus.trace.TraceOptions;
-import io.opencensus.trace.Tracestate;
-import io.opencensus.trace.Tracing;
-import io.opencensus.trace.propagation.BinaryFormat;
-import io.opencensus.trace.propagation.SpanContextParseException;
-import java.util.Random;
-import java.util.concurrent.TimeUnit;
-import org.openjdk.jmh.annotations.Benchmark;
-import org.openjdk.jmh.annotations.BenchmarkMode;
-import org.openjdk.jmh.annotations.Mode;
-import org.openjdk.jmh.annotations.OutputTimeUnit;
-import org.openjdk.jmh.annotations.Scope;
-import org.openjdk.jmh.annotations.Setup;
-import org.openjdk.jmh.annotations.State;
-
-/** Benchmarks for {@link BinaryFormat}. */
-@State(Scope.Benchmark)
-public class BinaryFormatImplBenchmark {
- @State(Scope.Thread)
- public static class Data {
- private BinaryFormat binaryFormat;
- private SpanContext spanContext;
- private byte[] spanContextBinary;
-
- @Setup
- public void setup() {
- binaryFormat = Tracing.getPropagationComponent().getBinaryFormat();
- Random random = new Random(1234);
- spanContext =
- SpanContext.create(
- TraceId.generateRandomId(random),
- SpanId.generateRandomId(random),
- TraceOptions.builder().setIsSampled(random.nextBoolean()).build(),
- Tracestate.builder().build());
- spanContextBinary = binaryFormat.toByteArray(spanContext);
- }
- }
-
- /**
- * This benchmark attempts to measure performance of {@link
- * BinaryFormat#toBinaryValue(SpanContext)}.
- */
- @Benchmark
- @BenchmarkMode(Mode.SampleTime)
- @OutputTimeUnit(TimeUnit.NANOSECONDS)
- public byte[] toBinarySpanContext(Data data) {
- return data.binaryFormat.toByteArray(data.spanContext);
- }
-
- /**
- * This benchmark attempts to measure performance of {@link BinaryFormat#fromBinaryValue(byte[])}.
- */
- @Benchmark
- @BenchmarkMode(Mode.SampleTime)
- @OutputTimeUnit(TimeUnit.NANOSECONDS)
- public SpanContext fromBinarySpanContext(Data data) throws SpanContextParseException {
- return data.binaryFormat.fromByteArray(data.spanContextBinary);
- }
-
- /**
- * This benchmark attempts to measure performance of {@link
- * BinaryFormat#toBinaryValue(SpanContext)} then {@link BinaryFormat#fromBinaryValue(byte[])}.
- */
- @Benchmark
- @BenchmarkMode(Mode.SampleTime)
- @OutputTimeUnit(TimeUnit.NANOSECONDS)
- public SpanContext toFromBinarySpanContext(Data data) throws SpanContextParseException {
- return data.binaryFormat.fromByteArray(data.binaryFormat.toByteArray(data.spanContext));
- }
-}
diff --git a/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/TextFormatBenchmarkBase.java b/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/TextFormatBenchmarkBase.java
deleted file mode 100644
index 902b0a3a..00000000
--- a/benchmarks/src/jmh/java/io/opencensus/benchmarks/trace/propagation/TextFormatBenchmarkBase.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright 2018, OpenCensus Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.opencensus.benchmarks.trace.propagation;
-
-import io.opencensus.trace.SpanContext;
-import io.opencensus.trace.propagation.SpanContextParseException;
-import io.opencensus.trace.propagation.TextFormat;
-import io.opencensus.trace.propagation.TextFormat.Getter;
-import io.opencensus.trace.propagation.TextFormat.Setter;
-import java.util.Map;
-import javax.annotation.Nullable;
-
-/** Generic benchmarks for {@link io.opencensus.trace.propagation.TextFormat}. */
-final class TextFormatBenchmarkBase {
- private static final Setter<Map<String, String>> setter =
- new Setter<Map<String, String>>() {
- @Override
- public void put(Map<String, String> carrier, String key, String value) {
- carrier.put(key, value);
- }
- };
-
- private static final Getter<Map<String, String>> getter =
- new Getter<Map<String, String>>() {
- @Nullable
- @Override
- public String get(Map<String, String> carrier, String key) {
- return carrier.get(key);
- }
- };
-
- private final TextFormat textFormat;
-
- TextFormatBenchmarkBase(TextFormat textFormat) {
- this.textFormat = textFormat;
- }
-
- void inject(SpanContext spanContext, Map<String, String> carrier) {
- textFormat.inject(spanContext, carrier, setter);
- }
-
- SpanContext extract(Map<String, String> carrier) throws SpanContextParseException {
- return textFormat.extract(carrier, getter);
- }
-}