[openssl/openssl] cc82b0: Optimize AES-CTR for ARM Neoverse V1 and V2.

Fisher Yu noreply at github.com
Wed Nov 29 17:13:13 UTC 2023


  Branch: refs/heads/master
  Home:   https://github.com/openssl/openssl
  Commit: cc82b09cbde0b809d37c23cb1ef9f1f41fc7f959
      https://github.com/openssl/openssl/commit/cc82b09cbde0b809d37c23cb1ef9f1f41fc7f959
  Author: fisher.yu <fisher.yu at arm.com>
  Date:   2023-11-29 (Wed, 29 Nov 2023)

  Changed paths:
    M crypto/aes/asm/aesv8-armx.pl
    M crypto/arm_arch.h
    M crypto/armcap.c
    M include/crypto/aes_platform.h
    M providers/implementations/ciphers/cipher_aes_gcm_hw_armv8.inc
    M providers/implementations/ciphers/cipher_aes_hw.c
    A providers/implementations/ciphers/cipher_aes_hw_armv8.inc

  Log Message:
  -----------
  Optimize AES-CTR for ARM Neoverse V1 and V2.

    Unroll AES-CTR loops to a maximum 12 blocks for ARM Neoverse V1 and
    V2, to fully utilize their AES pipeline resources.

    Improvement on ARM Neoverse V1.

    Package Size(Bytes)	16	32	64	128	256	1024
    Improvement(%)	3.93	-0.45	11.30	4.31	12.48	37.66
    Package Size(Bytes)	1500	8192	16384	61440	65536
    Improvement(%)	37.16	38.90	39.89	40.55	40.41

Change-Id: Ifb8fad9af22476259b9ba75132bc3d8010a7fdbd

Reviewed-by: Tom Cosgrove <tom.cosgrove at arm.com>
Reviewed-by: Tomas Mraz <tomas at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22733)




More information about the openssl-commits mailing list