OpenRAND

Reproducible random number generation for parallel computations (by msu-sparta)

OpenRAND Alternatives

Similar projects and alternatives to OpenRAND

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better OpenRAND alternative or higher similarity.

OpenRAND reviews and mentions

Posts with mentions or reviews of OpenRAND. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-14.
  • Intel CEO: 'The entire industry is motivated to eliminate the CUDA market'
    13 projects | news.ycombinator.com | 14 Dec 2023
    > Generating random numbers is a bit complicated!

    I know! I just wrote a whole paper and published a library on this!

    But really, perhaps not as much as many from outside might think. The core of a Philox implementation can be around 50 lines of C++ [1], with all the bells and whistles maybe around 300-400. That implementation's performance equals CuRAND's , sometimes even surpasses it! (the API is designed to avoid maintaining any rng states on device memory, something curand forces you to do).

    > running the same PRNG with the same seed on all your cores will produce the same result

    You're right. Solution here is to utilize multiple generator objects, one per thread, ensuring each produces statistically independent random streams. Some good algorithms (Philox for example), allow you to use any set of unique values as seeds for your threads (e.g. thread id).

    [1] https://github.com/msu-sparta/OpenRAND/blob/main/include/ope...

Stats

Basic OpenRAND repo stats
1
24
7.3
about 2 months ago

msu-sparta/OpenRAND is an open source project licensed under MIT License which is an OSI approved license.

The primary programming language of OpenRAND is C++.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com