How does JAX PRNG improve on Mersenne Twister beyond splitting and explicit key? #8139
-
I have gone through the relevant docs, and although it does answer how JAX's PRNG address it by explicit PRNG and threefry counter to parallelize, I would also like to know how does JAX improve it on the other issues discussed here. Copied below for the ease: Mersenne Twister
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 4 replies
-
For a full discussion of the considerations that went into choosing the ThreeFry RNG, you can see the relevant design doc, as well as the paper that JAX's current PRNG implementation is based on: http://www.thesalmons.org/john/random123/papers/random123sc11.pdf A couple points on how it improves over the Mersenne Twister within the context that JAX is designed for:
Does that answer your question? |
Beta Was this translation helpful? Give feedback.
For a full discussion of the considerations that went into choosing the ThreeFry RNG, you can see the relevant design doc, as well as the paper that JAX's current PRNG implementation is based on: http://www.thesalmons.org/john/random123/papers/random123sc11.pdf
A couple points on how it improves over the Mersenne Twister within the context that JAX is designed for:
np.random.get_state()
)