SHA1 and SHA256 were updated to use Intel's SHA extensions when available.
The implementations are intrinsic based. The code was based on Intel's
https://software.intel.com/en-us/articles/intel-sha-extensions; and Sean
Gulley code available on GitHub. Gulley's code was very helpful since it
filled in a few missing pieces.
The commits of interest are:
* Feature detection:
There were other miscellaneous check-ins. They include adding all of NIST's
CAVP test vectors; supplementing the test script to verify code generation,
supplementing the test script to pair old hardware with a new compiler and
Throughput improved for both SHA1 and SHA256. I don't have a good
accounting of cycles per byte due to TurboBoost on the Celeron J3455 test
machine, but relative measurements look good:
* SHA1, CXX: 9.7 cpb
* SHA256, SSE2 ASM: 19.5 cpb
* SHA1, Clang: 2.7 cpb
* SHA1, GCC: 3.0 cpb
* SHA256, Clang: 3.9 cpb
* SHA256, GCC: 4.0 cpb
You will need GCC 5, Clang 3.7, or Visual Studio 2015. GCC and Clang tested
OK under Debian 8.6. I was able to test the compile under Visual Studio,
but I don't have a Windows test machine with a capable cpu, so its untested
You received this message because you are subscribed to the "Crypto++ Users"
To unsubscribe, send an email to cryptopp-users-unsubscr...@googlegroups.com.
More information about Crypto++ and this group is available at
You received this message because you are subscribed to the Google Groups
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
For more options, visit https://groups.google.com/d/optout.