-
Notifications
You must be signed in to change notification settings - Fork 36
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
Package does not use hardware acceleration #90
Comments
Python is currently migrating some of the hash algorithms to use the HACL* project, and the rest of the algorithms use the OpensSSL implementation.
HACL* is released in pure C, so we can wrap it and test the performance. I'd prefer to keep the pure julia implementation and then have the fast impl. as a separate package, maybe called The main concern is that introducing a third-party dependency may increase the maintenance burden. |
Would it not be best of both worlds to use hardware acceleration in pure Julia? |
Python's
hashlib.sha256(data).hexdigest()
is 10x faster than SHA.jl'ssha256(data)
on my computer:This is presumably (haven't checked though) because Python's underlying C library uses SHA-specific CPU instructions, where as this package does not.
This might not be possible to fix in current versions of Julia, but given that we see a 10x performance difference, this is something Julia needs to support eventually (and probably will). When that time comes, this package should be updated.
This issue was discovered by @jonalm
The text was updated successfully, but these errors were encountered: