I need a stable 128-bit hash function which is extremely fast since it will be used for generating unique IDs for billions of objects.
It doesn't need to be a cryptographic hash function, nor does it have to act as a PRF.
The only requirements are amazing collision resistance and speed (along with a stable 128-bit output).
IDs are generated in two ways, either by hashing another (128-bit) ID or by hashing 2 IDs (which would be concatenated together or something).
This means the hash function would only have to be fast for 128 and 256-bit inputs.
The IDs for the initial objects which are not derived from other objects are just generated randomly (perhaps by hashing numbers 0 to N, where N is at most in the order of hundreds).
I came across XXH128, but I wonder if anyone knows if there are any better alternatives for my use case.