下面列出了怎么用org.openjdk.jmh.annotations.OutputTimeUnit的API类实例代码及写法,或者点击链接到github查看源代码。
@Benchmark
@Fork(1)
@Warmup(iterations = 5, time = 1)
@Measurement(iterations = 10, time = 1)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
@Threads(value = 10)
public void aggregate_10Threads() {
aggregator.recordDouble(100.0056);
}
/** Perform the read operation. */
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public void testContextLookup(ContextState state, Blackhole bh) {
for (Context.Key<?> key : state.keys) {
for (Context ctx : state.contexts) {
bh.consume(key.get(ctx));
}
}
}
/**
* Checkstyle.
*/
@Benchmark
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public void defaultHeaders_serverHandler(Blackhole bh) {
serverHandler(bh, new DefaultHttp2Headers(true, 9));
}
/** Benchmark just the scope lifecycle. */
@Benchmark
@BenchmarkMode({Mode.AverageTime})
@Fork(1)
@Measurement(iterations = 15, time = 1)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@Warmup(iterations = 5, time = 1)
public void measureScopeLifecycle() {
try (io.opentelemetry.context.Scope ignored = tracer.withSpan(span)) {
// no-op
}
}
/**
* Checkstyle.
*/
@Benchmark
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public void defaultHeaders_clientHandler(Blackhole bh) {
clientHandler(bh, new DefaultHttp2Headers(true, 2));
}
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public Http2Headers convertClientHeaders() {
return Utils.convertClientHeaders(metadata, scheme, defaultPath, authority, Utils.HTTP_METHOD,
userAgent);
}
/** Foo bar. */
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public AsciiString old() {
return new AsciiString("/" + method.getFullMethodName());
}
/** Foo bar. */
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public AsciiString direct() {
return new AsciiString(directBytes, false);
}
/**
* Javadoc comment.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public byte[][] marshalOld() {
Metadata m = new Metadata();
m.put(
GrpcUtil.MESSAGE_ACCEPT_ENCODING_KEY,
InternalDecompressorRegistry.getRawAdvertisedMessageEncodings(reg));
return TransportFrameUtil.toHttp2Headers(m);
}
/**
* Adding custom call options, overwritting existing keys.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public CallOptions withOptionDuplicates() {
CallOptions opts = allOpts;
for (int i = 1; i < shuffledCustomOptions.size(); i++) {
opts = opts.withOption(shuffledCustomOptions.get(i), "value2");
}
return opts;
}
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public void oneRunnableLatency() throws Exception {
executor.execute(phaserRunnable);
phaser.arriveAndAwaitAdvance();
}
/**
* Javadoc comment.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public StatsTraceContext newClientContext() {
return StatsTraceContext.newClientContext(CallOptions.DEFAULT, emptyMetadata);
}
/**
* Javadoc comment.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public StatsTraceContext newServerContext_empty() {
return StatsTraceContext.newServerContext(
serverStreamTracerFactories, methodName, emptyMetadata);
}
/**
* Javadoc comment.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public byte[] messageEncodePlain() {
return Status.MESSAGE_KEY.toBytes("Unexpected RST in stream");
}
/**
* Javadoc comment.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public byte[] messageEncodeEscape() {
return Status.MESSAGE_KEY.toBytes("Some Error\nWasabi and Horseradish are the same");
}
/**
* Javadoc comment.
*/
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public String messageDecodePlain() {
return Status.MESSAGE_KEY.parseBytes(
"Unexpected RST in stream".getBytes(Charset.forName("US-ASCII")));
}
@Benchmark
@Threads(value = 2)
@Fork(1)
@Warmup(iterations = 5, time = 1)
@Measurement(iterations = 10, time = 1)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
public void addAttributesEventsStatusEnd_02Threads() {
doSpanWork(span);
}
@Benchmark
@Fork(1)
@Warmup(iterations = 5, time = 1)
@Measurement(iterations = 10, time = 1)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
@Threads(value = 10)
public void aggregate_10Threads() {
aggregator.recordLong(100);
}
@Benchmark
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
@Measurement(iterations = 1)
public void searchBenchmark() throws SpellCheckException {
for (String query : queries) {
totalMatches += spellChecker.lookup(query, Verbosity.valueOf(verbosity), maxEditDistance)
.size();
}
}
@Benchmark
@Measurement(iterations = 15, time = 1)
@Warmup(iterations = 5, time = 1)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@BenchmarkMode(Mode.AverageTime)
@Fork(1)
public Span measureExtract() {
return TracingContextUtils.getSpan(doExtract());
}
@Benchmark
@BenchmarkMode(Mode.All)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
public void get() {
ThreadLocalRandom random = ThreadLocalRandom.current();
byte[] key = BytesUtil.writeUtf8("benchmark_" + random.nextInt(KEY_COUNT));
this.kvStore.get(key, false, null);
}
@Benchmark
@BenchmarkMode(Mode.All)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
public void put() {
ThreadLocalRandom random = ThreadLocalRandom.current();
byte[] key = BytesUtil.writeUtf8("benchmark_" + random.nextInt(KEY_COUNT));
super.kvStore.put(key, VALUE_BYTES, null);
}
@Benchmark
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public long getAndSetAndGetGeneration() {
long oldGeneration = generator.getGeneration();
generator.setGeneration(oldGeneration + 1);
return generator.getGeneration();
}
@Benchmark
@Threads(value = 5)
@Fork(1)
@Warmup(iterations = 5, time = 1)
@Measurement(iterations = 10, time = 1)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
public void addAttributesEventsStatusEnd_05Threads() {
doSpanWork(span);
}
@Benchmark
@BenchmarkMode(Mode.All)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
public void getReadOnlySafe() {
ThreadLocalRandom random = ThreadLocalRandom.current();
byte[] key = BytesUtil.writeUtf8("benchmark_" + random.nextInt(KEY_COUNT));
this.kvStore.get(key, true);
}
@Benchmark
@BenchmarkMode(Mode.SampleTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public boolean retainReleaseUncontended() {
buf.retain();
Blackhole.consumeCPU(delay);
return buf.release();
}
@Benchmark
@BenchmarkMode(Mode.All)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public void varInt64() {
byte[] bytes = VarInts.writeVarInt64(SMALL_VAL);
VarInts.readVarInt64(bytes);
}
@Benchmark
@BenchmarkMode(Mode.All)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public void int64() {
byte[] bytes = new byte[8];
putLong(bytes, 0, SMALL_VAL);
getLong(bytes, 0);
}
@Benchmark
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
public long getAndSetAndGetGeneration() {
long oldGeneration = generator.getGeneration();
generator.setGeneration(oldGeneration + 1);
return generator.getGeneration();
}
@Benchmark
@Fork(1)
@Warmup(iterations = 5, time = 1)
@Measurement(iterations = 10, time = 1)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
@Threads(value = 5)
public void aggregate_5Threads() {
aggregator.recordDouble(100.0056);
}