Netflix/RxJava — pull request #993 by benjchristensen (2014-03-27 05:43:20+00:00)
Title: JMH Perf Tests

1) Migrate all previous tests into `rx.archive` until we have matured with JMH
2) JMH config in gradle
3) Start of benchmarking with JMH for `baseline`, `map` and `serialize`

**To Run**

Inside ./rxjava-core/ invoke `../gradlew benchmarks`

Or from base invoke `./gradlew benchmarks` and it will scan each sub-module for benchmarks and then only find them in rxjava-core.

**Output**

```
Result : 72.204 ±(99.9%) 7.524 ns/op
Statistics: (min, avg, max) = (69.221, 72.204, 74.048), stdev = 1.954
Confidence interval (99.9%): [64.680, 79.729]

Benchmark (size) Mode Samples Mean Mean error Units
r.jmh.Baseline.forLoopInvokingFunction 1024 avgt 5 3230.689 486.080 ns/op
r.jmh.Baseline.forLoopInvokingFunction 1048576 avgt 5 3394679.521 148858.373 ns/op
r.operators.OperatorMapPerf.mapIdentityFunction 1 avgt 5 91.338 8.504 ns/op
r.operators.OperatorMapPerf.mapIdentityFunction 1024 avgt 5 5626.727 1209.108 ns/op
r.operators.OperatorMapPerf.mapIdentityFunction 1048576 avgt 5 6268747.085 258008.983 ns/op
r.operators.OperatorSerializePerf.noSerializationSingleThreaded 1024 avgt 5 42.198 0.791 ns/op
r.operators.OperatorSerializePerf.noSerializationSingleThreaded 1048576 avgt 5 45.935 0.911 ns/op
r.operators.OperatorSerializePerf.serializedSingleStream 1024 avgt 5 69.410 10.499 ns/op
r.operators.OperatorSerializePerf.serializedSingleStream 1048576 avgt 5 72.305 11.450 ns/op
r.operators.OperatorSerializePerf.synchronizedSingleStream 1024 avgt 5 72.238 7.233 ns/op
r.operators.OperatorSerializePerf.synchronizedSingleStream 1048576 avgt 5 72.204 7.524 ns/op

```