boringssl/crypto/modes
Brian Smith a26d4c3f43 Enable stitched x86-64 AES-NI AES-GCM implementation.
Measured on a SkyLake processor:

Before:

Did 11373750 AES-128-GCM (16 bytes) seal operations in 1016000us (11194635.8 ops/sec): 179.1 MB/s
Did 2253000 AES-128-GCM (1350 bytes) seal operations in 1016000us (2217519.7 ops/sec): 2993.7 MB/s
Did 453750 AES-128-GCM (8192 bytes) seal operations in 1015000us (447044.3 ops/sec): 3662.2 MB/s
Did 10753500 AES-256-GCM (16 bytes) seal operations in 1016000us (10584153.5 ops/sec): 169.3 MB/s
Did 1898750 AES-256-GCM (1350 bytes) seal operations in 1015000us (1870689.7 ops/sec): 2525.4 MB/s
Did 374000 AES-256-GCM (8192 bytes) seal operations in 1016000us (368110.2 ops/sec): 3015.6 MB/s

After:

Did 11074000 AES-128-GCM (16 bytes) seal operations in 1015000us (10910344.8 ops/sec): 174.6 MB/s
Did 3178250 AES-128-GCM (1350 bytes) seal operations in 1016000us (3128198.8 ops/sec): 4223.1 MB/s
Did 734500 AES-128-GCM (8192 bytes) seal operations in 1016000us (722933.1 ops/sec): 5922.3 MB/s
Did 10394750 AES-256-GCM (16 bytes) seal operations in 1015000us (10241133.0 ops/sec): 163.9 MB/s
Did 2502250 AES-256-GCM (1350 bytes) seal operations in 1016000us (2462844.5 ops/sec): 3324.8 MB/s
Did 544500 AES-256-GCM (8192 bytes) seal operations in 1015000us (536453.2 ops/sec): 4394.6 MB/s

Change-Id: If058935796441ed4e577b9a72d3aa43422edba58
Reviewed-on: https://boringssl-review.googlesource.com/7273
Reviewed-by: Adam Langley <alangley@gmail.com>
2017-01-16 16:54:13 +00:00
..
asm Enable stitched x86-64 AES-NI AES-GCM implementation. 2017-01-16 16:54:13 +00:00
cbc.c Work around language and compiler bug in memcpy, etc. 2016-12-21 20:34:47 +00:00
cfb.c Work around language and compiler bug in memcpy, etc. 2016-12-21 20:34:47 +00:00
CMakeLists.txt Add generic AES-GCM-SIV support. 2016-12-07 00:13:50 +00:00
ctr.c Work around language and compiler bug in memcpy, etc. 2016-12-21 20:34:47 +00:00
gcm_test.cc Work around language and compiler bug in memcpy, etc. 2016-12-21 20:34:47 +00:00
gcm.c Restore H (the key) in the GHASH context. 2017-01-16 16:53:32 +00:00
internal.h Restore H (the key) in the GHASH context. 2017-01-16 16:53:32 +00:00
ofb.c Work around language and compiler bug in memcpy, etc. 2016-12-21 20:34:47 +00:00
polyval.c Restore H (the key) in the GHASH context. 2017-01-16 16:53:32 +00:00