Still Failing: openssl/openssl#30630 (master - 2ff16af)
Travis CI
builds at travis-ci.org
Wed Dec 11 19:00:24 UTC 2019
Build Update for openssl/openssl
-------------------------------------
Build: #30630
Status: Still Failing
Duration: 47 mins and 41 secs
Commit: 2ff16af (master)
Author: XiaokangQian
Message: Optimize AES-ECB mode in OpenSSL for both aarch64 and aarch32
Aes-ecb mode can be optimized by inverleaving cipher operation on
several blocks and loop unrolling. Interleaving needs one ideal
unrolling factor, here we adopt the same factor with aes-cbc,
which is described as below:
If blocks number > 5, select 5 blocks as one iteration,every
loop, decrease the blocks number by 5.
If 3 < left blocks < 5 select 3 blocks as one iteration, every
loop, decrease the block number by 3.
If left blocks < 3, treat them as tail blocks.
Detailed implementation will have a little adjustment for squeezing
code space.
With this way, for small size such as 16 bytes, the performance is
similar as before, but for big size such as 16k bytes, the performance
improves a lot, even reaches to 100%, for some arches such as A57,
the improvement even exceeds 100%. The following table will list the
encryption performance data on aarch64, take a72 and a57 as examples.
Performance value takes the unit of cycles per byte, takes the format
as comparision of values. List them as below:
A72:
Before optimization After optimization Improve
evp-aes-128-ecb at 16 17.26538237 16.82663866 2.61%
evp-aes-128-ecb at 64 5.50528499 5.222637557 5.41%
evp-aes-128-ecb at 256 2.632700213 1.908442892 37.95%
evp-aes-128-ecb at 1024 1.876102047 1.078018868 74.03%
evp-aes-128-ecb at 8192 1.6550392 0.853982929 93.80%
evp-aes-128-ecb at 16384 1.636871283 0.847623957 93.11%
evp-aes-192-ecb at 16 17.73104961 17.09692468 3.71%
evp-aes-192-ecb at 64 5.78984398 5.418545192 6.85%
evp-aes-192-ecb at 256 2.872005308 2.081815274 37.96%
evp-aes-192-ecb at 1024 2.083226672 1.25095642 66.53%
evp-aes-192-ecb at 8192 1.831992057 0.995916251 83.95%
evp-aes-192-ecb at 16384 1.821590009 0.993820525 83.29%
evp-aes-256-ecb at 16 18.0606306 17.96963317 0.51%
evp-aes-256-ecb at 64 6.19651997 5.762465812 7.53%
evp-aes-256-ecb at 256 3.176991394 2.24642538 41.42%
evp-aes-256-ecb at 1024 2.385991919 1.396018192 70.91%
evp-aes-256-ecb at 8192 2.147862636 1.142222597 88.04%
evp-aes-256-ecb at 16384 2.131361787 1.135944617 87.63%
A57:
Before optimization After optimization Improve
evp-aes-128-ecb at 16 18.61045121 18.36456218 1.34%
evp-aes-128-ecb at 64 6.438628994 5.467959461 17.75%
evp-aes-128-ecb at 256 2.957452881 1.97238604 49.94%
evp-aes-128-ecb at 1024 2.117096219 1.099665054 92.52%
evp-aes-128-ecb at 8192 1.868385973 0.837440804 123.11%
evp-aes-128-ecb at 16384 1.853078526 0.822420027 125.32%
evp-aes-192-ecb at 16 19.07021756 18.50018552 3.08%
evp-aes-192-ecb at 64 6.672351486 5.696088921 17.14%
evp-aes-192-ecb at 256 3.260427769 2.131449916 52.97%
evp-aes-192-ecb at 1024 2.410522832 1.250529718 92.76%
evp-aes-192-ecb at 8192 2.17921605 0.973225504 123.92%
evp-aes-192-ecb at 16384 2.162250997 0.95919871 125.42%
evp-aes-256-ecb at 16 19.3008384 19.12743654 0.91%
evp-aes-256-ecb at 64 6.992950658 5.92149541 18.09%
evp-aes-256-ecb at 256 3.576361743 2.287619504 56.34%
evp-aes-256-ecb at 1024 2.726671027 1.381267599 97.40%
evp-aes-256-ecb at 8192 2.493583657 1.110959913 124.45%
evp-aes-256-ecb at 16384 2.473916816 1.099967073 124.91%
Change-Id: Iccd23d972e0d52d22dc093f4c208f69c9d5a0ca7
Reviewed-by: Shane Lontis <shane.lontis at oracle.com>
Reviewed-by: Richard Levitte <levitte at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10518)
View the changeset: https://github.com/openssl/openssl/compare/ef1e59ed833e...2ff16afc17af
View the full build log and details: https://travis-ci.org/openssl/openssl/builds/623789425?utm_medium=notification&utm_source=email
--
You can unsubscribe from build emails from the openssl/openssl repository going to https://travis-ci.org/account/preferences/unsubscribe?repository=5849220&utm_medium=notification&utm_source=email.
Or unsubscribe from *all* email updating your settings at https://travis-ci.org/account/preferences/unsubscribe?utm_medium=notification&utm_source=email.
Or configure specific recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mta.openssl.org/pipermail/openssl-commits/attachments/20191211/0cd233a6/attachment-0001.html>
More information about the openssl-commits
mailing list