Or as simple as using the hardware accelerated CRC32 that we have in our x86 CPUs.
Last time I checked, CRC32 worked surprisingly well as a hash.
Last time I checked, CRC32 worked surprisingly well as a hash.
The 'weird' instructions can often be 3-4 orders of magnitude slower than arithmetic instructions, though I doubt that matters here.
If you Google the words "CRC32 is slow", you can see hundreds of people complaining about this.