[Python-ideas] Should our default random number generator be secure?

M.-A. Lemburg mal at egenix.com
Tue Sep 15 19:56:14 CEST 2015


On 15.09.2015 16:54, Sturla Molden wrote:
> On 15/09/15 16:20, M.-A. Lemburg wrote:
> 
>> http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/M062821.pdf
>> (which again refers to this paper:
>> http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/ARTICLES/HONGKONG/hong-fin4.pdf)
> 
> You seem to be confusing the DCMT with the SFMT which is a fast SIMD friendly Mersenne Twister.

I was talking about the SFMT, which is a variant of the MT for
processors with SIMD instruction sets (most CPUs have these nowadays)
and which has 32-, 64-bit or floating point output:

http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/index.html

But what I really wanted to reference was the discussion in the
SFMT paper about the practical effects of the 623-dim equidistribution
(see the end of the first paper I quoted; the discussion references
the second paper).

> The DCMT is intended for using the Mersenne Twister in parallel computing (i.e. one Mersenne Twister
> per processor). It is not a Mersenne Twister accelerated with parallel hardware. That would be the
> SFMT.
> 
> http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/DC/dc.html
> http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/DC/dgene.pdf
> 
> The period for the DC Mersenne Twisters they report are long enough, e.g. 2^127-1 or 2^521-1, but
> much shorter than the period of MT19937 (2^19937-1). This does not matter because the period of
> MT19937 is excessive. In scientific computing, the sequence is long enough for most practical
> purposes if it is larger than 2^64. 2^127-1 is more than enough, and this is the shortest period
> DCMT reported in the paper. So do we care? Probably not.

Thanks for the pointers. I wasn't aware of a special MT variant
for parallel computing.

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Experts (#1, Sep 15 2015)
>>> Python Projects, Coaching and Consulting ...  http://www.egenix.com/
>>> Python Database Interfaces ...           http://products.egenix.com/
>>> Plone/Zope Database Interfaces ...           http://zope.egenix.com/
________________________________________________________________________
2015-09-14: Released mxODBC Plone/Zope DA 2.2.3   http://egenix.com/go84
2015-09-18: PyCon UK 2015 ...                               3 days to go
2015-09-26: Python Meeting Duesseldorf Sprint 2015         11 days to go

   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
    D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
           Registered at Amtsgericht Duesseldorf: HRB 46611
               http://www.egenix.com/company/contact/


More information about the Python-ideas mailing list