Issue with c++11 header random.h

Nolen, Steven D
Mon Dec 3 15:54:00 GMT 2012

In the c++11 headers for the random number generation (random.h), the function "discard" for the linear_congruential has been implemented in a very inefficient manner.  Many modern Monte Carlo codes require this function to work efficiently across large strides through the random number stream.  A direct approach is available through the Boost headers and has been documented in the literature.  I would request that this function be reimplemented before more users discover it on accident as they transition from the boost headers to the c++11 ones you provide.

Thanks for listening and great job on a great toolset!


Steve Nolen
Los Alamos National Laboratory

More information about the Gcc mailing list