commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Herbert (Jira)" <>
Subject [jira] [Updated] (RNG-88) Update the GenerationPerformance benchmark
Date Tue, 05 Nov 2019 12:33:00 GMT


Alex Herbert updated RNG-88:
    Fix Version/s: 1.3

> Update the GenerationPerformance benchmark
> ------------------------------------------
>                 Key: RNG-88
>                 URL:
>             Project: Commons RNG
>          Issue Type: Improvement
>          Components: examples
>    Affects Versions: 1.3
>            Reporter: Alex Herbert
>            Assignee: Alex Herbert
>            Priority: Minor
>             Fix For: 1.3
>         Attachments: baseline.jpg, next.png
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
> The current GenerationPerformance benchmark runs all the generators to collect timing
data. However the act of running the test within JMH takes some time (test overhead). This
overhead should be measured and subtracted from the timing data to create a time attributed
only to the method exercised in the RNG.
> This can be done by creating a dummy RNG that returns a fixed value. The implementation
must be done in a manner where the JIT compiler is not able to remove the dummy method from
the execution path. This is achieved by returning state variables from the dummy RNG (not
final variables).
> Testing can be done using a variable number of iterations and the run-times assessed
for linearity. If the run time scale with the number of iterations then the JIT compiler has
not removed it from execution. The dummy RNG then serves as a baseline for comparison of true
> This idea with examples is shown in [RNG-87|]
which tested a variant of the MWC_256 algorithm.

This message was sent by Atlassian Jira

View raw message