def rng_mix

bend-ml-tensor-gpu@0.1.5.1 · main.bend:604

import bend-ml-tensor-gpu@0.1.5.1/main.bend as BendMlTensorGpu
import Base

604# mlbend-generative's mix32: xor-shift 16, multiply, xor-shift 13, multiply, xor-shift 16, over U32 that wraps
605def rng_mix(+z: U32) -> U32:
606  +a = U32.xor(z, U32.shrn(z, 16n))
607  +b = (a * 2246822519 : U32)
608  +c = U32.xor(b, U32.shrn(b, 13n))
609  +e = (c * 3266489917 : U32)
610  U32.xor(e, U32.shrn(e, 16n))

Uses (4)

Used by (1)