User Activity

  • Posted a comment on discussion Open Discussion on Practically Random

    Hi Lorenzo, I agree with your assessments! The speed of Ranlux++ is acceptable. The real issue is a fairly complex code - to mitigate it, one can directly compare the output of Ranlux++ against the output of the original Ranlux generator. Here is reference implementation: https://github.com/sibidanov/ranluxpp/blob/master/tests/ranlux_test.cxx#L137 BTW, Vigna added on his page a couple of generators called GMWC128 and GMWC256 which should be of very good quality while being at the same time fairly...

  • Posted a comment on discussion Open Discussion on Practically Random

    Hello everybody! I have created binary packages of PractRand for Fedora and Red Hat Enterprise Linux distributions. Find here the list of available packages: https://src.fedoraproject.org/rpms/practrand You can install it with this command: dnf install practrand See man practrand-RNG_test for usage. Happy RNG testing:-) Jirka Example: testing Linux Kernel's /dev/random RNG: practrand-RNG_test stdin -tlmax 4G </dev/random practrand-RNG_test using PractRand version 0.95 RNG = RNG_stdin, seed = unknown...

  • Posted a comment on discussion Open Discussion on Practically Random

    Hi Lorenzo, I have created a standalone implementation of Ranlux++ written in C. It's based on code from ROOT project. I have directly compared the speed against xoshiro256** generator. The code is here. RESULT: xoshiro256** is faster by factor of 3x than Ranlux++ On Intel i7-8650U CPU, it takes 7.7 seconds to generate 1e9 64-bit numbers with Ranlux++ and only 2.6 seconds to generate 1e9 64-bit numbers with xoshiro256**. I hope this helps. Jirka

  • Posted a comment on discussion Open Discussion on Practically Random

    Hi Lorenzo, thanks for the notification! I have found the portable implementation: https://github.com/root-project/root/blob/ee0ba46eadb889c8a05274e1b7f5ea68c590b2ea/math/mathcore/src/ranluxpp/mulmod.h Function multiply9x9 to multiply two 576 bit numbers (stored as 9 numbers of 64 bits each) is rewritten from assembly to portable code. I will try to extract the code to create a standalone portable version of Ranlux++ and compare it to other RNGs. Jirka

  • Posted a comment on discussion Open Discussion on Practically Random

    Hi Lorenzo, thanks for sharing your opinion! I do agree with your criticisms, especially with the point about the assembly implementation and resulting portability problems. The code could be probably rewritten using AVX intrinsic functions to improve readability, but it will not help the portability of the code. I see this as a general issue with the AVX instructions - they are powerful, but not easy to use and creating portability issues. Recently, Linux Torvald has criticized the new Intel's AVX-512...

  • Posted a comment on discussion Open Discussion on Practically Random

    Hello, I would like to ask your opinion on the new version of the RANLUX generator, called RANLUXPP. There are two papers on it: A revision of the subtract-with-borrow random number generators https://arxiv.org/pdf/1705.03123.pdf Review of High-Quality Random Number Generators https://arxiv.org/pdf/1903.01247.pdf RANLUX is a well-established generator in particle physics for Monte Carlo simulations. It's theoretically backed up by the theory of dynamical systems. The original RANLUX's main drawback...

  • Posted a comment on discussion Open Discussion on Practically Random

    Hi Chris, I hope you are well! Any news on releasing a new version of PractRand? All the preparation for Fedora RPM are ready:-) Thanks Jirka

  • Posted a comment on discussion Open Discussion on Practically Random

    Thanks a lot for looking into it! I know there are many GCC warnings and most of them are not important. I would suggest enabling at least some of them - the ones you think are useful (like Wint-in-bool-context) Another approach would be to use -Wall and disable warnings in some files, like in candidate RNGs by using #pragma GCC diagnostic ignored "-W... -W...." https://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html In any case, it seems that the software is ready for Linux packaging. Could you...

View All

Personal Data

Username:
jhladky
Joined:
2013-07-15 13:15:00

Projects

  • No projects to display.

Personal Tools