京都大学 / 学術情報メディアセンター 連携研究部門 情報セキュリティ分野 教授
SFMT Pseudo Random Number Generator for Erlang | Erlang'11: Proceedings of the 2011 ACM SIGPLAN Erlang Workshop
The stock implementation of Erlang/OTP pseudo random number generator (PRNG),random module, is based on an algorithm developed in 1980s called AS183, and has known statistic deficiencies for large-scale applications. Using modern PRNG algorithms with longer generation periods reduces the deficiencies. This paper is a case study of sfmt-erlang module, an implementation of SIMD-oriented Fast Mersenne Twister (SFMT) PRNG with the native interface functions (NIFs) of Erlang. The test results show the execution speed of the implementation is approximately three times faster than the random module on the x86 and x86_64 architecture computers, and the execution own time for generating single random number sequences is proportional to the internal state table length. DOI:https://dl.acm.org/doi/10.1145/2034654.2034669 Slide:https://78462f86-a-ead0782a-s-sites.googlegroups.com/a/k2r.org/www/kenji/papers/file-archive/erlang2011-rikitake-sfmt-20110919.pdf?attachauth=ANoY7cpBYIc2EbAXpmJDPn8pHlBSoGhrGTcnKhgzN7fy6i73iBmRDVdVyz-98vAo_DqGZ_brfA-1ShlItavtTP7o-vZz865m1vbLxy2A43EkdCmF7DIiUY3AaEnTHjdczJJGxbthCPhZGVvUxPQo-OWvrlfTjRYBKh6ePTZEHkqei_-hq27q5r08-bOIDaav5d_SpTMLSJgiiBvE-nWwTIMa5qw5wneP8qpMJwUiTtY1RXYKgUtVB-lx5lrem_MXb_QuZcqG2qZtlm0wW6jDQmA_Rnmlz7ogNQ%3D%3D&attredirects=0