On Tue, 2 Feb 2021 01:40:09 GMT, Martin Buchholz <mar...@openjdk.org> wrote:

>> @cl4es I agree pruning is a good idea. I settled on 3 data points with 16x 
>> separations as good enough to clearly show the difference between O(1) O(N) 
>> O(N^2) and O(2^N) (although O(2^N) would "run forever").
>> 
>> (although ... please tell me you're not actually running these benchmarks in 
>> an automated fashion ... too expensive, and needs a human to interpret the 
>> results)
>
>> A manual exploration of a new set of micros would naturally start with
>> the default config, so if such a config runs forever, that would be poor
>> ergonomics IMHO. I don't think such configurations should be checked in
>> in an active state.
> 
> We're actually in agreement.  There's no actual O(2^N) operation here, and 
> jmh is similar to jtreg in having timeouts indicating failure.
> 
> Although I've been using shell loops as included in the class comments, I'll 
> make sure running the tests using all the defaults gives sensible results.
> 
> I'm surprised to see jmh use the same number (5) of warmup and measurement 
> iterations.  Unless you're looking for very small effects, one warmup run 
> should be sufficient.

I added annotations for sensible (faster) default, including @Warmup(iterations 
= 1)

-------------

PR: https://git.openjdk.java.net/jdk/pull/1940

Reply via email to