You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by GitBox <gi...@apache.org> on 2019/07/21 18:24:32 UTC

[GitHub] [commons-rng] AbhishekSinghDhadwal opened a new pull request #56: RNG: 84 - Added members of the PCG suite of generators.

AbhishekSinghDhadwal opened a new pull request #56: RNG: 84 - Added members of the PCG suite of generators.
URL: https://github.com/apache/commons-rng/pull/56
 
 
   As per the requirements of [RNG-84](https://issues.apache.org/jira/browse/RNG-84) , this commit contains the following members of the [PCG](http://www.pcg-random.org/) family of generators developed as part of my [Google Summer of Code '19 project proposal](https://summerofcode.withgoogle.com/projects/#4725410993012736) under the guidance of my mentors Alex Herbert and Gilles Sadowski. : 
   1. PcgXshRr32 (State : 64 bit, Output : 32 bit, Period : 2^64) - An xorshift mixes some high-order bits down, then bits 63–59 select a rotate amount to be applied to bits 27–58.
   2. PcgXshRs32 (State : 64 bit, Output : 32 bit, Period : 2^64) - A high xorshift is followed by a random shift, trading statistically performance for greater speed.
   3. PcgRxsMXs64 (State : 64 bit, Output : 64 bit, Period : 2^64) - Stands for random xorshift, mcg multiply, fixed xorshift. It can pass BigCrush with only 36 bits of state.
   The 32 bit classes inherit AbstractPcg6432, an abstract class with various provisions common to both children classes mentioned above. 
   -The classes are accompanied with their tests, and their enums have been added in order to aid integration into the current framework, and ease of testing with respect to benchmarks like NextIntGenerationPerformance. 
   For more details on the performance of the aforementioned generators, kindly click [here](http://www.pcg-random.org/pdf/hmc-cs-2014-0905.pdf).

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services