On Sun, Mar 18, 2012 at 07:16:27PM +0100, Andy Polyakov wrote:
> Hi,
> 
> > 1.0.1:
> > $ openssl speed aes-128-cbc:
> > type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 
> > bytes
> > aes-128 cbc     110450.10k   120831.36k   122216.11k   123465.05k   
> > 123909.46k
> > 
> > $ openssl speed -evp aes-128-cbc:
> > type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 
> > bytes
> > aes-128-cbc     669703.39k   709092.05k   721489.25k   714057.39k   
> > 724320.26k
> > 
> > So if you directly use the AES API you used to have a little better 
> > performance,
> > but now you don't get the AES-NI support and so are a factor slower when 
> > using it.
> 
> ??? AES-NI was *never* available through "AES API", always through EVP,
> either through ["3rd party"] engine or starting with 1.0.1 integrated
> directly at EVP level. Well, it is possible to slightly modify AES-NI
> assembler and compile it as drop-in *replacement* for vanilla AES
> module, but it was never "offered" as supported option nor "advertised".
> Somebody might have done it, but in such case it's something to settle
> between you and that vendor. It should be noted that such drop-in won't
> provide adequate performance for parallelizable modes other than CBC
> decrypt.
> 
> Or did I misunderstand the question?

I guess my question is basicly why the selection between the
different assembler implementations happens at the EVP level
and not some lower level.  I was expecting the lower level
to also use AES NI when it was available.


Kurt

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to