You missed the main point, i.e. performance (my point 1).What are your compiler settings? 64bit?
Do they generate the same sequence when given the same seed? What you are saying with "less accurate" is that it is biased and you are the first to observe that. That in turn means that it's deviating from the documented MT with has been extensively tested for it's statistical properties. That is all a bit unlikely. How did you measure "accuracy" of the boost MT? Is it eg an observed statistical significant deviation from expected sample noise?
variate_generator is an old interface, you can be C++11 compliant by not using it. When the C++11 <random> standard came out it was based in boost, but with differences. Boost implemented the new standard interface and definitions to be compatible with the C++11 standard, and also left things in for backward compatibility.
These are valid questions but are not the point just yet. You need to realise that many applications are not C++11 compliant and will remain so for some time.
The point of the post is in the difference in performance in performance and accuracy (when we used MC).
That in turn means that it's deviating from the documented MT with has been extensively tested for it's statistical properties.
MT in C++11 and MT in Boost. I have not seen a comparison, Where should I look then?
variate_generator is an old interface,
Well, Boost uses it. And it looks like it is much faster than C++11. The code I posted can be put in a loop and run it. You can easily compare the relative speeds for yourself. 3 choices: Maybe there a 'better' way to use C++11 Rng?? Maybe the RNG experts can shed some light on this.
C++ > Boost
C++ < Boost
C++ ~ Boost
I think it is an attention area.