• Michael Munday's avatar
    crypto/aes: use s390x KMA instruction for AES-GCM if available · 9f399171
    Michael Munday authored
    Adds support for the cipher message with authentication (KMA)
    instruction added in message-security-assist extension 8. This
    instruction encapsulates most of the operations required for
    AES-GCM and is faster than executing the operations independently.
    
    name          old speed      new speed       delta
    AESGCMSeal1K  1.96GB/s ± 0%   6.79GB/s ± 0%  +246.47%  (p=0.000 n=8+10)
    AESGCMOpen1K  1.85GB/s ± 0%   5.76GB/s ± 0%  +211.18%  (p=0.000 n=10+10)
    AESGCMSign8K  12.0GB/s ± 0%   14.5GB/s ± 0%   +20.43%  (p=0.000 n=10+8)
    AESGCMSeal8K  3.75GB/s ± 0%  14.16GB/s ± 0%  +277.57%  (p=0.000 n=9+10)
    AESGCMOpen8K  3.70GB/s ± 0%  13.57GB/s ± 0%  +266.50%  (p=0.000 n=10+9)
    
    Change-Id: I57c46573fc5a0bd63c32ce5cba6e37cab85e3de6
    Reviewed-on: https://go-review.googlesource.com/73550
    Run-TryBot: Michael Munday <mike.munday@ibm.com>
    Reviewed-by: 's avatarBill O'Farrell <billotosyr@gmail.com>
    Reviewed-by: 's avatarVolodymyr Paprotski <paprots@gmail.com>
    Reviewed-by: 's avatarAdam Langley <agl@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    9f399171
asm_s390x.s 4.85 KB