For these reasons, I often prefer the Marsaglia's KISS 2015-10-22 17:57 GMT+02:00 Henrik Johansen <henrik.s.johansen@veloxit.no>:
On 22 Oct 2015, at 2:49 , Tobias Pape <Das.Linux@gmx.de> wrote:
On 22.10.2015, at 14:37, David T. Lewis <lewis@mail.msen.com> wrote:
On Thu, Oct 22, 2015 at 06:28:09AM +0000, commits@source.squeak.org wrote:
Tobias Pape uploaded a new version of Network to project The Trunk: http://source.squeak.org/trunk/Network-topa.166.mcz
==================== Summary ====================
Name: Network-topa.166 Author: topa Time: 21 October 2015, 8:26:14.656 pm UUID: d6d9910f-fa67-4c69-9a89-030c81233e90 Ancestors: Network-topa.165
UUIDGenerator - Use new Random>>#nextBytes:into:startingAt: (needs Kernel-ul.960) for even more speed - Fix UUIDGenerator class>>#initialize to correctly register at startup - Do not reset default on startup but rather reseed TheRandom
Timings improved: '1,190,000 per second. 842 nanoseconds per run.' (0.25 times slower than primitive version)
This is outstanding. The UUID plugin has long been a source of problems in the VM, partly due to issues in various Linux distributions.
http://bugs.squeak.org/view.php?id=7358
Making the plugin unnecessary is a big improvement.
Thats what I thought. Probably we want to present this (Mersenne PRNG + new UUID gen) to the Pharo core developers (cc) so that we can just remove the UUID plugin from the VMs (cc vm-dev)?
Best regards -Tobias
In the release version of Squeak 5.0, the Mersenne Twister is initialized using a single seed restricted to 32bit. Has this been changed since to use a wider ranged value? Otherwise, you run into problems with potential collisions from separate image starts rather too fast for UUID uses... (IMHO)
Cheers, Henry