Skip to content

Instantly share code, notes, and snippets.

@andresilva
Last active January 12, 2016 21:06
Show Gist options
  • Save andresilva/4ab695dcb098c5ceac1f to your computer and use it in GitHub Desktop.
Save andresilva/4ab695dcb098c5ceac1f to your computer and use it in GitHub Desktop.
Spire Xorshift Benchmarks
[info]                   benchmark     ms linear runtime
[info]                 NextIntJava  13.08 ===
[info]                NextIntScala  13.07 ===
[info]                NextIntLcg32   1.35 =
[info]                NextIntLcg64   1.32 =
[info]           NextIntBurtleRot2   1.37 =
[info]           NextIntBurtleRot3   1.46 =
[info]                NextIntCmwc5   1.35 =
[info]             NextIntWell512a   4.48 =
[info]            NextIntWell1024a   4.92 =
[info]           NextIntWell19937a   6.50 =
[info]           NextIntWell19937c   6.55 =
[info]           NextIntWell44497a   7.20 =
[info]           NextIntWell44497b  14.11 ===
[info]       NextIntXorShift64Star   2.21 =
[info]     NextIntXorShift1024Star   1.75 =
[info]      NextIntXorShift128Plus   1.39 =
[info]             NextIntSyncJava  12.89 ===
[info]            NextIntSyncScala  12.92 ===
[info]            NextIntSyncLcg32   2.20 =
[info]            NextIntSyncLcg64   2.24 =
[info]       NextIntSyncBurtleRot2   3.79 =
[info]       NextIntSyncBurtleRot3   3.67 =
[info]            NextIntSyncCmwc5   3.70 =
[info]         NextIntSyncWell512a   6.61 =
[info]        NextIntSyncWell1024a   8.02 ==
[info]       NextIntSyncWell19937a  11.15 ===
[info]       NextIntSyncWell19937c  11.30 ===
[info]       NextIntSyncWell44497a  11.85 ===
[info]       NextIntSyncWell44497b  15.81 ====
[info]   NextIntSyncXorShift64Star   3.07 =
[info] NextIntSyncXorShift1024Star   4.19 =
[info]  NextIntSyncXorShift128Plus   2.68 =
[info]                NextLongJava  26.12 =======
[info]               NextLongScala  26.64 =======
[info]               NextLongLcg32   2.69 =
[info]               NextLongLcg64   1.34 =
[info]          NextLongBurtleRot2   2.87 =
[info]          NextLongBurtleRot3   3.02 =
[info]               NextLongCmwc5   1.29 =
[info]            NextLongWell512a   9.37 ==
[info]           NextLongWell1024a  10.00 ==
[info]          NextLongWell19937a  25.72 =======
[info]          NextLongWell19937c  27.19 =======
[info]          NextLongWell44497a  25.25 ======
[info]          NextLongWell44497b  28.35 =======
[info]      NextLongXorShift64Star   2.20 =
[info]    NextLongXorShift1024Star   1.75 =
[info]     NextLongXorShift128Plus   1.42 =
[info]              NextDoubleJava  26.09 =======
[info]             NextDoubleScala  26.16 =======
[info]             NextDoubleLcg32   2.64 =
[info]             NextDoubleLcg64   1.33 =
[info]        NextDoubleBurtleRot2   2.93 =
[info]        NextDoubleBurtleRot3   3.05 =
[info]             NextDoubleCmwc5   1.37 =
[info]          NextDoubleWell512a   9.27 ==
[info]         NextDoubleWell1024a  10.03 ==
[info]        NextDoubleWell19937a  25.46 ======
[info]        NextDoubleWell19937c  27.66 =======
[info]        NextDoubleWell44497a  26.12 =======
[info]        NextDoubleWell44497b  27.89 =======
[info]    NextDoubleXorShift64Star   2.19 =
[info]  NextDoubleXorShift1024Star   1.76 =
[info]   NextDoubleXorShift128Plus   1.40 =
[info]              NextInt100Java  13.12 ===
[info]             NextInt100Scala  13.12 ===
[info]             NextInt100Lcg32   3.08 =
[info]             NextInt100Lcg64   3.22 =
[info]        NextInt100BurtleRot2   3.30 =
[info]        NextInt100BurtleRot3   3.47 =
[info]             NextInt100Cmwc5   3.89 =
[info]          NextInt100Well512a   6.98 =
[info]         NextInt100Well1024a   7.26 =
[info]        NextInt100Well19937a  11.28 ===
[info]        NextInt100Well19937c  12.26 ===
[info]        NextInt100Well44497a  11.69 ===
[info]        NextInt100Well44497b  15.46 ====
[info]    NextInt100XorShift64Star   4.25 =
[info]  NextInt100XorShift1024Star   4.10 =
[info]   NextInt100XorShift128Plus   3.53 =
[info]               FillBytesJava  42.17 ===========
[info]              FillBytesScala  41.87 ===========
[info]              FillBytesLcg32   4.88 =
[info]              FillBytesLcg64   5.99 =
[info]         FillBytesBurtleRot2   8.60 ==
[info]         FillBytesBurtleRot3   9.11 ==
[info]              FillBytesCmwc5  11.54 ===
[info]           FillBytesWell512a  26.75 =======
[info]          FillBytesWell1024a  26.20 =======
[info]         FillBytesWell19937a  32.75 ========
[info]         FillBytesWell19937c  37.34 ==========
[info]         FillBytesWell44497a  32.86 =========
[info]         FillBytesWell44497b  51.13 ==============
[info]     FillBytesXorShift64Star  88.34 ========================
[info]   FillBytesXorShift1024Star 109.51 ==============================
[info]    FillBytesXorShift128Plus  87.07 =======================
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment