Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

ubsec(4): AES and BCM586x support



If anyone happens to have a BCM5823 or BCM5825 available I'd appreciate
if they could test my changes to the ubsec(3) that add support for AES
acceleration.  Tests with older and the 586x cards are also welcome, of
course.

If anyone can do more substantial tests then "openssl speed", e.g. actual
IPsec, that'd be nice too.

Below are a bunch of results from throughput tests that I am posting
mainly so there is a publically documented baseline.

System:

HP ProLiant ML110 G6
cpu0 at mainbus0 apid 0: Intel(R) Xeon(R) CPU X3430  @ 2.40GHz, id 0x106e5
cpu1 at mainbus0 apid 2: Intel(R) Xeon(R) CPU X3430  @ 2.40GHz, id 0x106e5
cpu2 at mainbus0 apid 4: Intel(R) Xeon(R) CPU X3430  @ 2.40GHz, id 0x106e5
cpu3 at mainbus0 apid 6: Intel(R) Xeon(R) CPU X3430  @ 2.40GHz, id 0x106e5

6.1.4/amd64 userland, 6.99.40 kernel with sources updated 2014-04-18
before the ubsec(4) changes..

openssl speed -engine cryptodev -evp des-ede3-cbc -elapsed
OpenSSL 1.0.1g 7 Apr 2014
built on: NetBSD 6.1.4
options:bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,2,int) aes(partial) 
idea(int) blowfish(idx)
compiler: gcc version 4.5.3 (NetBSD nb2 20111202)
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
des-ede3-cbc       562.47k     2247.68k     7740.48k    24370.21k    76057.69k


openssl speed -engine cryptodev -evp aes-128-cbc -elapsed
OpenSSL 1.0.1g 7 Apr 2014
built on: NetBSD 6.1.4
options:bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,2,int) aes(partial) 
idea(int) blowfish(idx)
compiler: gcc version 4.5.3 (NetBSD nb2 20111202)
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-128-cbc        583.00k     2316.23k     7995.65k    25280.62k    80001.28

openssl speed -engine cryptodev -evp aes-192-cbc -elapsed
OpenSSL 1.0.1g 7 Apr 2014
built on: NetBSD 6.1.4
options:bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,2,int) aes(partial) 
idea(int) blowfish(idx) 
compiler: gcc version 4.5.3 (NetBSD nb2 20111202) 
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-192-cbc        583.69k     2304.12k     7840.50k    24367.24k    73216.34k

openssl speed -engine cryptodev -evp aes-256-cbc -elapsed
OpenSSL 1.0.1g 7 Apr 2014
built on: NetBSD 6.1.4
options:bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,2,int) aes(partial) 
idea(int) blowfish(idx) 
compiler: gcc version 4.5.3 (NetBSD nb2 20111202) 
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-256-cbc        586.60k     2223.53k     7567.24k    23016.65k    66662.74k


And with multiple processes doing requests in parallel:

openssl speed -engine cryptodev -evp aes-128-cbc -elapsed -multi 4
engine "cryptodev" set.
OpenSSL 1.0.1g 7 Apr 2014
built on: NetBSD 6.1.4
options:bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,2,int) aes(partial) 
idea(int) blowfish(idx)
compiler: gcc version 4.5.3 (NetBSD nb2 20111202)
evp               2128.38k     8704.95k    30407.37k    68008.22k   140479.50k

openssl speed -engine cryptodev -evp aes-128-cbc -elapsed -multi 8
engine "cryptodev" set.
OpenSSL 1.0.1g 7 Apr 2014
built on: NetBSD 6.1.4
options:bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,2,int) aes(partial) 
idea(int) blowfish(idx)
compiler: gcc version 4.5.3 (NetBSD nb2 20111202)
evp               3030.23k    12113.82k    40796.43k    66674.68k   140332.70k

openssl speed -engine cryptodev -evp aes-128-cbc -elapsed -multi 16
engine "cryptodev" set.
OpenSSL 1.0.1g 7 Apr 2014
built on: NetBSD 6.1.4
options:bn(64,64) md2(int) rc4(16x,int) des(idx,cisc,2,int) aes(partial) 
idea(int) blowfish(idx)
compiler: gcc version 4.5.3 (NetBSD nb2 20111202)
evp               3574.88k    14659.51k    44433.10k    81677.83k   138982.24k

--chris



Home | Main Index | Thread Index | Old Index