Hi, folks
During work on Flink, I found several micro benchmarks which come from 
different modules, these benchmarks measure on manual, annotated with Junit 
annotations, so they got executed during unit test as well. There are some 
shortage on current implementation:

1.       Benchmark test performance instead of feature, and normally, it takes 
much more time than unit test. Mixed benchmark with unit test would expand the 
CI check time.

2.       With mixed with other tests, no warm up, no standalone process... 
these benchmarks result may not very accurate.
Although looks easy, there are actually many pitfalls about benchmark, so I 
suggest we create a new sub module for all benchmark test, and import 
JMH(http://openjdk.java.net/projects/code-tools/jmh/) as the benchmark 
framework. With the help of JMH, we should get:

1.       More available metrics.

2.       More accurate result.

3.       Focus on benchmark logic only, no need to worry about measure logic.

Thanks
Chengxiang

Reply via email to