[ TOP | Recently ]

2007-07-02 HiFn 7955/vpn1401

ゲット。お決まりなのでベンチマーク。赤い部分がアクセラレーション。
NetBSD-current にて hifn を有効にして option crypto (swcrypto無し) で作ればok。
ちなみに NetBSD/i386 AMD-Geode NX 1500 1.0GHz なので CPU はそれほど速くない。

openssl speed -elapsed -engine cryptodev -evp des-cbc des-cbc
engine "cryptodev" set.
You have chosen to measure elapsed time instead of user CPU time.
To get the most accurate results, try to run this
program when this computer is idle.
Doing des cbc for 3s on 16 size blocks: 1736473 des cbc's in 3.01s
Doing des cbc for 3s on 64 size blocks: 455862 des cbc's in 3.01s
Doing des cbc for 3s on 256 size blocks: 115361 des cbc's in 3.01s
Doing des cbc for 3s on 1024 size blocks: 28939 des cbc's in 3.01s
Doing des cbc for 3s on 8192 size blocks: 3621 des cbc's in 3.01s
Doing des-cbc for 3s on 16 size blocks: 101509 des-cbc's in 3.01s
Doing des-cbc for 3s on 64 size blocks: 99510 des-cbc's in 3.01s
Doing des-cbc for 3s on 256 size blocks: 81711 des-cbc's in 3.01s
Doing des-cbc for 3s on 1024 size blocks: 51689 des-cbc's in 3.01s
Doing des-cbc for 3s on 8192 size blocks: 11372 des-cbc's in 3.01s
OpenSSL 0.9.8e 23 Feb 2007
built on: NetBSD 4.99.19
options:bn(32,32) md2(int) rc4(ptr,int) des(ptr,risc2,16,long) aes(partial) idea(int) blowfish(ptr2)
compiler: gcc version 4.1.2 20070110 (prerelease) (NetBSD nb1 20070110)
available timing options: USE_TOD HZ=100 [sysconf value]
timing function used: gettimeofday
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
des cbc           9244.76k     9693.87k     9812.78k     9845.96k     9856.04k
des-cbc            539.70k     2116.22k     6950.70k    17587.43k    30954.90k

# openssl speed -elapsed -engine cryptodev aes-128-cbc -evp aes-128-cbc
engine "cryptodev" set.
You have chosen to measure elapsed time instead of user CPU time.
To get the most accurate results, try to run this
program when this computer is idle.
Doing aes-128 cbc for 3s on 16 size blocks: 2718783 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 64 size blocks: 699137 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 256 size blocks: 177349 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 1024 size blocks: 43996 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 8192 size blocks: 5569 aes-128 cbc's in 3.01s
Doing aes-128-cbc for 3s on 16 size blocks: 101418 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 64 size blocks: 99435 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 256 size blocks: 77687 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 1024 size blocks: 51362 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 8192 size blocks: 11248 aes-128-cbc's in 3.01s
OpenSSL 0.9.8e 23 Feb 2007
built on: NetBSD 4.99.19
options:bn(32,32) md2(int) rc4(ptr,int) des(ptr,risc2,16,long) aes(partial) idea(int) blowfish(ptr2)
compiler: gcc version 4.1.2 20070110 (prerelease) (NetBSD nb1 20070110)
available timing options: USE_TOD HZ=100 [sysconf value]
timing function used: gettimeofday
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-128 cbc      14466.84k    14867.30k    15085.28k    14969.00k    15158.90k
aes-128-cbc        539.17k     2114.62k     6608.27k    17476.06k    30616.83k

sysctl の kern.usercrypto、kern.userasymcrypto、kern.cryptodevallowsoft あたりで
ユーザランドからは使えなくしたりと動作変更可能。基本的にデフォのままで問題なし。

しかしopensslのコマンドラインは使いにくいなぁ…


EOF