Function cmb_random_fmix64

Function Documentation

uint64_t cmb_random_fmix64(uint64_t seed, uint64_t nonce)

MurmurHash3 finalizer function, used for bootstrapping statistically independent thread seeds from a master seed. Use some deterministic trial counter as the nonce argument to get reproducible results. Using random nonce values like time or OS thread ID works, but it will not be reproducible, and then you would probably be better off calling cmb_random_hwseed() instead for proper machine-generated entropy.

Parameters:
  • seed – The master seed

  • nonce – The hash key to be mixed into the seed

Returns:

A new 64-bit seed, apparently uncorrelated with the original.