• Mathias Krause's avatar
    crypto: aesni-intel - Ported implementation to x86-32 · 0d258efb
    Mathias Krause authored
    The AES-NI instructions are also available in legacy mode so the 32-bit
    architecture may profit from those, too.
    
    To illustrate the performance gain here's a short summary of a dm-crypt
    speed test on a Core i7 M620 running at 2.67GHz comparing both assembler
    implementations:
    
    x86:                   i568       aes-ni    delta
    ECB, 256 bit:     93.8 MB/s   123.3 MB/s   +31.4%
    CBC, 256 bit:     84.8 MB/s   262.3 MB/s  +209.3%
    LRW, 256 bit:    108.6 MB/s   222.1 MB/s  +104.5%
    XTS, 256 bit:    105.0 MB/s   205.5 MB/s   +95.7%
    
    Additionally, due to some minor optimizations, the 64-bit version also
    got a minor performance gain as seen below:
    
    x86-64:           old impl.    new impl.    delta
    ECB, 256 bit:    121.1 MB/s   123.0 MB/s    +1.5%
    CBC, 256 bit:    285.3 MB/s   290.8 MB/s    +1.9%
    LRW, 256 bit:    263.7 MB/s   265.3 MB/s    +0.6%
    XTS, 256 bit:    251.1 MB/s   255.3 MB/s    +1.7%
    Signed-off-by: default avatarMathias Krause <minipli@googlemail.com>
    Reviewed-by: default avatarHuang Ying <ying.huang@intel.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    0d258efb
Kconfig 24.2 KB