We benchmark fast shuffling functions using batched random index generation. It is meant for research purposes. Though we have good benchmarks and tests, this code is not meant to be production-ready.
- Nevin Brackett-Rozinsky, Daniel Lemire, Batched Ranged Random Integer Generation, Software: Practice and Experience 55 (1), 2024.
- Recent LLVM clang and clang++ compilers
- Make
make
./benchmark
To get the C++ benchmarks, you can type ./benchmark --cpp
. They are disabled by default.
To run tests:
./basic
See src
directory for the main code.
We use LLVM/clang for benchmarking.
The code is portable and other compilers can be used. The performance of the C++ code might be sensitive to the C++ compiler used.