Hello! I was pretty excited to see the alpha release because of all the hype regarding Canon's method but either I did something wrong or, ..., well 🤷
The first bench is from dba696e on Feb 15 and then the alpha release.
The command used was
rustup run nightly cargo criterion --bench uniform --features small_rng
samplei32
| Alpha |
Rng |
single |
distr |
|
SmallRng |
3.30 ns (✅ 1.00x) |
2.01 ns (✅ 1.00x) |
| => |
SmallRng |
3.31 ns (✅ 1.00x) |
2.07 ns (✅ 1.00x) |
|
ChaCha8Rng |
3.59 ns (✅ 1.09x slower) |
2.48 ns (❌ 1.23x slower) |
| => |
ChaCha8Rng |
3.62 ns (✅ 1.09x slower) |
2.66 ns (❌ 1.29x slower) |
|
Pcg32 |
2.85 ns (✅ 1.16x faster) |
2.25 ns (❌ 1.12x slower) |
| => |
Pcg32 |
2.93 ns (✅ 1.13x faster) |
2.28 ns (✅ 1.10x slower) |
|
Pcg64 |
3.88 ns (❌ 1.18x slower) |
2.66 ns (❌ 1.32x slower) |
| => |
Pcg64 |
3.86 ns (❌ 1.17x slower) |
2.72 ns (❌ 1.32x slower) |
samplei64
| Alpha |
Rng |
single |
distr |
|
SmallRng |
4.63 ns (✅ 1.00x) |
1.90 ns (✅ 1.00x) |
| => |
SmallRng |
4.58 ns (✅ 1.00x) |
1.91 ns (✅ 1.00x) |
|
ChaCha8Rng |
5.97 ns (❌ 1.29x slower) |
3.60 ns (❌ 1.89x slower) |
| => |
ChaCha8Rng |
5.90 ns (❌ 1.29x slower) |
3.63 ns (❌ 1.90x slower) |
|
Pcg32 |
5.29 ns (❌ 1.14x slower) |
3.12 ns (❌ 1.64x slower) |
| => |
Pcg32 |
5.25 ns (❌ 1.15x slower) |
3.12 ns (❌ 1.63x slower) |
|
Pcg64 |
5.00 ns (✅ 1.08x slower) |
2.68 ns (❌ 1.40x slower) |
| => |
Pcg64 |
5.05 ns (✅ 1.10x slower) |
2.70 ns (❌ 1.41x slower) |
As you can see, no gains. At least things didn't get worse. I also tested with feature unbiased and I didn't see anything change but if I understand correctly that shouldn't alter single samples.
So did I miss something?
Hello! I was pretty excited to see the alpha release because of all the hype regarding Canon's method but either I did something wrong or, ..., well 🤷
The first bench is from dba696e on Feb 15 and then the alpha release.
The command used was
samplei32
singledistrSmallRng3.30 ns(✅ 1.00x)2.01 ns(✅ 1.00x)SmallRng3.31 ns(✅ 1.00x)2.07 ns(✅ 1.00x)ChaCha8Rng3.59 ns(✅ 1.09x slower)2.48 ns(❌ 1.23x slower)ChaCha8Rng3.62 ns(✅ 1.09x slower)2.66 ns(❌ 1.29x slower)Pcg322.85 ns(✅ 1.16x faster)2.25 ns(❌ 1.12x slower)Pcg322.93 ns(✅ 1.13x faster)2.28 ns(✅ 1.10x slower)Pcg643.88 ns(❌ 1.18x slower)2.66 ns(❌ 1.32x slower)Pcg643.86 ns(❌ 1.17x slower)2.72 ns(❌ 1.32x slower)samplei64
singledistrSmallRng4.63 ns(✅ 1.00x)1.90 ns(✅ 1.00x)SmallRng4.58 ns(✅ 1.00x)1.91 ns(✅ 1.00x)ChaCha8Rng5.97 ns(❌ 1.29x slower)3.60 ns(❌ 1.89x slower)ChaCha8Rng5.90 ns(❌ 1.29x slower)3.63 ns(❌ 1.90x slower)Pcg325.29 ns(❌ 1.14x slower)3.12 ns(❌ 1.64x slower)Pcg325.25 ns(❌ 1.15x slower)3.12 ns(❌ 1.63x slower)Pcg645.00 ns(✅ 1.08x slower)2.68 ns(❌ 1.40x slower)Pcg645.05 ns(✅ 1.10x slower)2.70 ns(❌ 1.41x slower)As you can see, no gains. At least things didn't get worse. I also tested with feature unbiased and I didn't see anything change but if I understand correctly that shouldn't alter single samples.
So did I miss something?