Skip to content

lambda-snail/random-adventures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Random Adventures

This repo contains a few smaller experiments with a random generator.

It contains a few benchmarks that measure how many random numbers can be generated per unit of time. Currently there are three implementations:

  • Non-vectorized xoroshiro128 (see the Attribution section)
  • A multithreaded variant (but the code is messy, and perhaps meaningless)
  • A vectorized variant xoroshiro128, that generates 16 random numbers per call

This project is just for fun, and does not aim to have any production value.

TODO

  • CUDA implementation

Requirements

  • GCC (may work with Clang, but not tested)
  • CPU with AVX512 instructions

Attribution

This project contains a copy of the source code for xoroshiro128 written by David Blackman and Sebastiano Vigna. All credits for the original (non-vectorized) algorithm go to them.

See: https://prng.di.unimi.it/xoshiro128plusplus.c

About

A project for playing with quickly generating as many random numbers as possible

Resources

License

Stars

Watchers

Forks