1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/sys/random
Benjamin Valentin 39b8cdf760 sys/random: default to musl LCG
In [0] the paper concludes with

> The Knuth LCG is the most efficient general purpose generator that
> provides decent statistical quality.
> It is simple and lean enough to run on very constrained devices.

So let's select `prng_musl_lcg` to be the default PRNG instead of
`prng_tinymt32`.

This gives a good chunk of memory on e.g. `samr21-xpro`:

prng_tinymt32
-------------

   text	   data	    bss	    dec	    hex	filename
  26452	    136	   2824	  29412	   72e4	tests/rng/bin/samr21-xpro/tests_rng.elf

prng_musl_lcg
-------------

   text	   data	    bss	    dec	    hex	filename
  26208	    136	   2808	  29152	   71e0	tests/rng/bin/samr21-xpro/tests_rng.elf

[0] https://sci-hub.se/10.1145/3453159
2021-11-11 19:59:26 +01:00
..
fortuna sys/fortuna: remove need for now64 2021-09-27 17:30:05 +02:00
tinymt32 sys/random: add modules to Kconfig 2021-01-26 17:40:53 +01:00
doc.txt
fortuna.c sys/fortuna: remove need for now64 2021-09-27 17:30:05 +02:00
hwrng.c
Kconfig sys/random: default to musl LCG 2021-11-11 19:59:26 +01:00
Makefile
Makefile.include
mersenne.c treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
minstd.c
musl_lcg.c
random.c
shaxprng.c
tinymt32.c
xorshift.c