Github user franz1981 commented on the issue:
https://github.com/apache/activemq-artemis/pull/1605
@clebertsuconic
Good points! I've addressed all these things (with few other fixes), but I
need feedbacks on the result.
I see 2 options here:
1) preallocate and cache the IO callbacks (but could be a large number
too) in order to be garbage free again
2) let the IO callbacks to size the (young) GC regions in the first
tests but uses a better way (ie more reliable) to be sure GC won't affect the
measurements
I've pushed the second solution right now, using a method to perform
reliable GCs (+ await them to happen) used in the official microbenchmark tool
of the OpenJDK JMH too
(http://hg.openjdk.java.net/code-tools/jmh/file/e96cad1fc480/jmh-core/src/main/java/org/openjdk/jmh/runner/BaseRunner.java#l309).
Feel free to give me feedbacks on it and if we need something similar in
other parts (a more reliable way to perform/await GCs to happen) I can put it
in our utlity classes too.
@michaelandrepearce @lulf I know you're pretty skilled in benchmarking too
so please share your thoughts/opinions: are super wellcome!!!!
---