T Jake Luciani created CASSANDRA-8151: -----------------------------------------
Summary: Add build support for JMH microbenchmarks Key: CASSANDRA-8151 URL: https://issues.apache.org/jira/browse/CASSANDRA-8151 Project: Cassandra Issue Type: Improvement Reporter: T Jake Luciani Assignee: T Jake Luciani Priority: Minor Fix For: 3.0 Making performance changes to C* often requires verification by stress or cstar.datastax.com. Other changes can be verified with a microbenchmark tool like JMH. As a developer, maintaining a separate project to run these is a pain. This patch adds support to run microbenchmarks as a separate ant target. Also adds a sample showing some of the benchmark annotation options. {code} ant microbench -Dbenchmark.name=Sample ... [java] Benchmark (duplicateLookback) (pageSize) (randomRatio) (randomRunLength) (uniquePages) Mode Samples Score Error Units [java] o.a.c.t.m.Sample.lz4 4..128 65536 0.1 4..16 1024 thrpt 5 27.215 ± 0.717 ops/ms [java] o.a.c.t.m.Sample.snappy 4..128 65536 0.1 4..16 1024 thrpt 5 15.306 ± 0.779 ops/ms {code} If you skip the benchmark.name property it will run all microbenchmarks (under the microbenchmark package namespace) One annoying thing about this patch is it now adds this error on build which is an annoying but harmless warning {code} [javac] warning: Supported source version 'RELEASE_6' from annotation processor 'org.openjdk.jmh.generators.BenchmarkProcessor' less than -source '1.7' {code} https://bugs.openjdk.java.net/browse/JDK-8037955 -- This message was sent by Atlassian JIRA (v6.3.4#6332)