Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Are there plans or is it possible for the 32bit and 64bit versions of 128 murmur3 to produce the same values? #76

Open
CheyenneForbes opened this issue Sep 21, 2019 · 3 comments

Comments

@CheyenneForbes
Copy link

No description provided.

@sebres
Copy link

sebres commented Sep 23, 2019

This is possible from scratch for MM3:

  • you can build MM3-x86-128 and MM3-x64-128 targeting 32-bit and 64-bit systems (or even under certain circumstances even 16-bit systems);
  • MM3-x86-128 built for x86 and x64 remains the same calculated value, and it'd have almost same performance on both (or may be marginally faster on some 32-bit systems, also related optimization/compile flags);
  • MM3-x64-128 built for x86 and x64 remains the same calculated value, but it is very likely faster on x64 (and slower on x86);
  • both algorithms are basically not equal, so values of MM3-x86-128 and MM3-x64-128 calculated over same strings are also not equal, regardless for which system it was built;

@CheyenneForbes
Copy link
Author

So it would be best to build MM3-x86-128 for x86 and x64 if I am looking to have both 32bit and 64bit versions of my application having equal values?

@sebres
Copy link

sebres commented Sep 24, 2019

to have both 32bit and 64bit versions of my application having equal values?

Or even MM3-x64-128 - if it is compile-able for you on x86 and you can live with certain performance loss on x86, you'd have also equal values.
The emphasis was - use same algorithm on both systems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants