Random/LFSR on P2

1707172737476»

Comments

  • TonyB_TonyB_ Posts: 1,208
    edited 2019-06-10 - 09:17:05
    TonyB_ wrote: »
    evanh wrote: »
    TonyB_ wrote: »
    At some point, increasing e will decrease quality as fewer bits of s0 are used twice (in different positions) in the s0 * e addition. Is e = 5 best, or is it 3 or 7 or 9?
    Chris recommended x5. I just followed instructions.

    s0 * 5 is an extra 14-bit adder for each iteration compared to just s0, therefore the double iteration in XORO32 would use 92 add/subtract bits instead of 64 now. No extra routing resources should be needed for s0 + s0 * 4 as both operands are the same.

    I notice: s0 + s0 * 4, from a hardware implementation standpoint, would likely be nearly the same as s0 + rotl(s0, 2).

    The worth of those two (normally discarded) bits might be high, with the right constants, but equidistribution would have to be verified.

    I have not tested this idea yet in my own code (which uses two * 5s), but from a software implementation standpoint, I suspect it would likely overburden an already saturated CPU pipeline.

    s0 + rotl(s0, 2) would use a 16-bit adder, but would not take any more time than s0 + s1.

    I'd be interested to know PractRand score for xoroshiro[12,4,15,7,5]-+- and whether s0 + s0 * 8 is better or worse than s0 * 5. Summing pchi (and zchi & nzchi) for top 20 would give a measure of quality. Re PractRand, only the top candidate really needs testing.
    Formerly known as TonyB
  • evanhevanh Posts: 7,092
    edited 2019-06-11 - 10:18:37
    TonyB_ wrote: »
    I'd be interested to know PractRand score for xoroshiro[12,4,15,7,5]-+- and whether s0 + s0 * 8 is better or worse than s0 * 5. Summing pchi (and zchi & nzchi) for top 20 would give a measure of quality. Re PractRand, only the top candidate really needs testing.
    Here's the first part of that. I'm just finishing off the x5 runs now. Decided to add a few extra candidates.
    EDIT: Bugger! xom11(-+-) isn't finished. Oh well, you can see that [12 4 15 7] is a ways from the top of the best scoring. 18th position for xom02(+-+).
    "... peers into the actual workings of a quantum jump for the first time. The results
    reveal a surprising finding that contradicts Danish physicist Niels Bohr's established view
    —the jumps are neither abrupt nor as random as previously thought."
  • All done now. Highest grid score (ExpAvg 30.937), from selection of best distributions, comes from candidate [3 2 6 8] using scrambler xom01(++-).
    "... peers into the actual workings of a quantum jump for the first time. The results
    reveal a surprising finding that contradicts Danish physicist Niels Bohr's established view
    —the jumps are neither abrupt nor as random as previously thought."
  • Here's the rerun, in Practrand v0.94, xo (XORO32) scrambler grid scores. The best of this selection is 29.895, candidate [6 2 3 9]. That's a whole magnitude lower.
    "... peers into the actual workings of a quantum jump for the first time. The results
    reveal a surprising finding that contradicts Danish physicist Niels Bohr's established view
    —the jumps are neither abrupt nor as random as previously thought."
  • base2 :D
    "... peers into the actual workings of a quantum jump for the first time. The results
    reveal a surprising finding that contradicts Danish physicist Niels Bohr's established view
    —the jumps are neither abrupt nor as random as previously thought."
  • xoroshironotxoroshironot Posts: 91
    edited 2019-06-13 - 22:34:07
    evanh wrote: »
    That's a whole magnitude lower.
    More improvement than the ~70% that I projected.

    I am impressed enough that I have halted Big Crush testing on the 2x * 5 (i.e., rotl((s0 + s1) * 5, D ) + s0 * 5) 128-bit state variant, and switched to the +++ xom (with E as a stream selector).
    Preliminary results are better than those with 2x, and also marginally faster since the CPU pipeline has some slack now. It could be months before I have any conclusive results.

    Thanks for all of your effort on this... I hope you find some use for it.
  • I'm already imagining a Prop3.
    "... peers into the actual workings of a quantum jump for the first time. The results
    reveal a surprising finding that contradicts Danish physicist Niels Bohr's established view
    —the jumps are neither abrupt nor as random as previously thought."
  • Could the overall PractRand grid scores be appended to the sorted distribution results (with equal pchi/zchi/nzchi weighting of 1)?
    Formerly known as TonyB
  • got an example of what that would look like?
    "... peers into the actual workings of a quantum jump for the first time. The results
    reveal a surprising finding that contradicts Danish physicist Niels Bohr's established view
    —the jumps are neither abrupt nor as random as previously thought."
  • Ah, you mean the weightings on the three ranks in the dist score files. So sort the distribution rankings with sumRank=pRank+zRank+nzRank and attach the relevant grid score to each, right?

    You do realise there is 1344 ranked distributions in each file and only about 50 of each with a grid score average done.

    "... peers into the actual workings of a quantum jump for the first time. The results
    reveal a surprising finding that contradicts Danish physicist Niels Bohr's established view
    —the jumps are neither abrupt nor as random as previously thought."
Sign In or Register to comment.