[gnutls-devel] GnuTLS | accelerated: use AES-NI for AES-XTS when available (!1244)

Development of GNU's TLS library gnutls-devel at lists.gnutls.org
Wed May 6 14:10:39 CEST 2020

Anderson Sasaki created a merge request: https://gitlab.com/gnutls/gnutls/-/merge_requests/1244

Project:Branches: ansasaki/gnutls:aesni-xts to gnutls/gnutls:master
Author:    Anderson Sasaki

Add a wrapper for the optimized CRYPTOGAMS AES-XTS implementation already present in the generated assembly code. It also enables AES-XTS in `gnutls-cli --benchmark-ciphers`.

Running the benchmark locally (Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz) before the changes, these are the results:

$ ./src/gnutls-cli --benchmark-ciphers | grep AES-.*-XTS
             AES-128-XTS 0.79 GB/sec
             AES-256-XTS 0.66 GB/sec

And after applying the changes:

$ ./src/gnutls-cli --benchmark-ciphers | grep AES-.*-XTS
             AES-128-XTS 5.69 GB/sec
             AES-256-XTS 4.14 GB/sec

Which gives approximately 7 times increased performance.

## Checklist
 * [x] Commits have `Signed-off-by:` with name/author being identical to the commit author
 * [x] Code modified for feature
 * [ ] Test suite updated with functionality tests
 * [ ] Test suite updated with negative tests
 * [ ] Documentation updated / NEWS entry present (for non-trivial changes)
 * [ ] CI timeout is 2h or higher (see Settings/CICD/General pipelines/Timeout)

## Reviewer's checklist:
 * [ ] Any issues marked for closing are addressed
 * [ ] There is a test suite reasonably covering new functionality or modifications
 * [ ] Function naming, parameters, return values, types, etc., are consistent and according to `CONTRIBUTION.md`
 * [ ] This feature/change has adequate documentation added
 * [ ] No obvious mistakes in the code

Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/gnutls/-/merge_requests/1244
You're receiving this email because of your account on gitlab.com.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gnupg.org/pipermail/gnutls-devel/attachments/20200506/4777c230/attachment.html>

More information about the Gnutls-devel mailing list