Does it actually matter for hash uniformity, though?
cobbzilla 3 hours ago||
I must be missing something. Aren’t ~50% of 64-bit integers the product of the number 2 and another 32-bit integer?
slazaro 2 hours ago||
Going from 32 bits to 64 bits doesn't double the range (that would be adding 1 bit), it squares the range.
mplanchard 2 hours ago|||
I don’t think so, because that only gets you up to 2x2^32, which is nowhere near halfway to 2^64
jlarocco 2 hours ago||
No. 50% of them are the product of 2 and a 63-bit integer.
PunchyHamster 3 hours ago||
Well, that is entirely not surprising. Pretty sure people writing not terrible hash functions figured it decades ago
crest 4 hours ago||
So you're better of using a 8x8->16 widening multiplication SIMD instruction or even just a multi register TBL/TBX instruction?
MarkusQ 5 hours ago||
If this seems counterintuitive, consider that only about a third of the two-digit numbers ({0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 24, 25, 27, 28, 30, 32, 35, 36, 40, 42, 45, 48, 49, 54, 56, 63, 64, 72, 81}) can be written as the product of two one-digit numbers.
childintime 4 hours ago|
where is the graph and the theorem for integers of n bits, with n going to infinity?