On Wed, 9 Aug 2023 22:36:47 GMT, Claes Redestad <redes...@openjdk.org> wrote:

>> Pavel Rappo has updated the pull request with a new target base due to a 
>> merge or a rebase. The incremental webrev excludes the unrelated changes 
>> brought in by the merge/rebase. The pull request contains 13 additional 
>> commits since the last revision:
>> 
>>  - Fix bugs in Shared.createSingle
>>  - Merge branch 'master' into 8310813
>>  - Group params coarser (suggested by @cl4es)
>>    
>>    - Splits 20 params into 3 groups: (S)mall, (M)edium and (L)arge.
>>      Every testXYZ method invokes M operations, where M is the maximum
>>      number of elements in a group. Shorter groups are cyclically padded.
>>    - Uses the org.openjdk.jmh.infra.Blackhole API and increases
>>      benchmark time.
>>    - Fixes a bug in Shared that precluded 0 from being in a pair.
>>  - Use better overloads (suggested by @cl4es)
>>    
>>    - Uses simpler, more suitable overloads for the subrange
>>      starting from 0
>>  - Improve benchmarks
>>  - Merge branch 'master' into 8310813
>>  - Restore hash code values
>>    
>>    BigInteger is old and ubiquitous enough so that there might be
>>    inadvertent dependencies on its hash code.
>>    
>>    This commit also includes a test, to make sure hash code is
>>    unchanged.
>>  - Merge branch 'master' into 8310813
>>  - Add a benchmark
>>  - Merge branch 'master' into 8310813
>>  - ... and 3 more: https://git.openjdk.org/jdk/compare/3425a24d...6fa3f694
>
> test/micro/org/openjdk/bench/java/math/Shared.java line 82:
> 
>> 80:         }
>> 81:         int nBytes = (nBits + 7) / 8;
>> 82:         var r = new Random();
> 
> Some have a preference for providing a seed for `Random` instances in micros. 
> Either hard-coded or through a `@Param` (I find this a bit excessive). Doing 
> so might reduce run-to-run noise.

AFAIK, if you need reproducible randoms in tests, you should add the tags:

 * @key randomness
 * @library /test/lib

and initialize your random generator with

import jdk.test.lib.RandomFactory;
...
Random rnd = RandomFactory.getRandom();

This prints the seed to STDOUT.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/14630#discussion_r1289966641

Reply via email to