Subject: Re: [boost] [random] status on discard(), PRF, and SOC2010 quasi-random
From: Thijs (M.A.) van den Berg (thijs_at_[hidden])
Date: 2012-03-18 16:13:38
> On 03/18/2012 11:11 AM, thijs_at_[hidden] wrote:
>> I was wondering what the status is on implementing the discard() functionality in random engines?
> linear_congruential_engine has an optimized discard.
> I think most of the rest are implemented as
> as simple for loop.
Good to hear that it's implemented. I went through the code and found it indeed (1.48 linear_congruential.hpp). There is however no mention I could find in the online manuals of 1.49 about "engines" concepts. Is it implemented but not ready as a full implementation of the C++11engine concept? is that reason that it's not publicly documented yet?
>> Eg for MT these is a constant time algorithm, is there work being done on that?
> Really? Do you have a link?
I'll get back on this, I've asked someone who has an implementation to help out.
>> Another thing I found in the sandbox is a Sobol and Fauré quasi-random sequence random engine. Is that planned for inclusion? Those too have constant time discard() algorithms.
> I believe the implementation is solid, but I'd
> prefer to have them go through the review
> process before being included.
Good to hear! That makes sense. If I can help, then I can compare results with e.g. reference implementations I have, and feedback in general.
>> A fast discard() is something we need for parallel random number generation, it will allow us to have independent random streams via discarding.
>> Finally I've also used an trial PRF engine posted here, and I liked it a lot. What is the status of that random engine?
> In Christ,
> Steven Watanabe
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk