Greetings, again.

I went ahead and subscribed to the list, so you can ignore the "cc"
request in my previous mail.  :)

I have some questions about the performance I'm seeing on my platform
(a 266MHz MPC8315E):

AES-128-CBC -- using cryptodev + evp gives 5x performance (with larger
block sizes), so that's a great win, and that's exactly what I wanted
to see.

SHA1 -- about 2.5x slower using cryptodev than native CPU
instructions.  Is that expected?

RSA -- signing seems to be exactly the same, while verifying is about
10% faster in native.  That seems odd, since cryptodev advertises RSA
capabilities, and the SEC v3.3 engine of the MPC8315E supports RSA
operations.

Finally, why does specifying the EVP result in such a huge difference?
 E.g, with aes-128-cbc and 8KiB blocks:

no cryptodev, no evp -- 6MiB/s
no cryptodev, with evp -- 6MiB/s
with cryptodev, no evp -- 6MiB/s
with cryptodev, with evp -- 33MiB/s (!)

Apologies if these questions are simple.  I've tried going through the
OpenSSL code, but it's... painful.

Again, thanks in advance if you have the time to reply.

Best regards,
Anthony Foiani

--------------------------------------------------------------------------

All times below are with "-elapsed" and "-evp" where applicable.

=== With cryptodev module loaded: ===

/ # openssl engine cryptodev -t -c
(cryptodev) BSD cryptodev engine
 [RSA, DSA, DH, DES-CBC, DES-EDE3-CBC, AES-128-CBC, AES-192-CBC,
AES-256-CBC, BF-CBC, hmacWithMD5, hmacWithSHA1, MD5, SHA1]
     [ available ]

/ # openssl speed -engine cryptodev -elapsed -evp AES-128-CBC
engine "cryptodev" set.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-128-cbc        136.56k      539.35k     2106.79k     7275.52k    33822.04k

/ # openssl speed -engine cryptodev -elapsed -evp SHA1
engine "cryptodev" set.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
sha1                41.40k      165.01k      535.72k     2068.48k    13475.84k

/ # openssl speed -engine cryptodev -elapsed rsa2048
engine "cryptodev" set.
                  sign    verify    sign/s verify/s
rsa 2048 bits 0.166230s 0.005128s      6.0    195.0

=== Without cryptodev loaded: ===

/ # openssl speed -elapsed -evp AES-128-CBC
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-128-cbc       4895.94k     5716.93k     6005.42k     6028.97k     6023.85k

/ # openssl speed -elapsed -evp SHA1
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
sha1               798.14k     3209.90k     9863.34k    20525.06k    30086.49k

/ # openssl speed -elapsed rsa2048
                  sign    verify    sign/s verify/s
rsa 2048 bits 0.165574s 0.004564s      6.0    219.1

_______________________________________________
Cryptodev-linux-devel mailing list
Cryptodev-linux-devel@gna.org
https://mail.gna.org/listinfo/cryptodev-linux-devel

Reply via email to