Re: VIA C3 AES code ?

From: Will Andrews <will_at_csociety.org>
Date: Mon, 9 Aug 2004 13:57:38 -0500
On Mon, Aug 09, 2004 at 07:14:45PM +0100, Mark Murray wrote:
> Yup. It means that if you ask OpenSSL for AES encryptionon a C3 Nehemiah,
> you get the full HW speed.

I must be doing something wrong.

will_at_crypt% uname -a;dmesg|grep ^CPU;openssl speed aes
FreeBSD crypt.rcs.purdue.edu 4.10-STABLE FreeBSD 4.10-STABLE #1: Sun Aug  8 12:27:52 EST 2004 will_at_crypt.rcs.purdue.edu:/usr/obj/usr/src/sys/CRYPT  i386
CPU: Intel Pentium III (930.32-MHz 686-class CPU)
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: 2368526 aes-128 cbc's in 2.19s
Doing aes-128 cbc for 3s on 64 size blocks: 577357 aes-128 cbc's in 2.09s
Doing aes-128 cbc for 3s on 256 size blocks: 145718 aes-128 cbc's in 2.09s
Doing aes-128 cbc for 3s on 1024 size blocks: 37833 aes-128 cbc's in 2.16s
Doing aes-128 cbc for 3s on 8192 size blocks: 4742 aes-128 cbc's in 2.17s
Doing aes-192 cbc for 3s on 16 size blocks: 2018530 aes-192 cbc's in 2.16s
Doing aes-192 cbc for 3s on 64 size blocks: 507482 aes-192 cbc's in 2.13s
Doing aes-192 cbc for 3s on 256 size blocks: 121887 aes-192 cbc's in 2.03s
Doing aes-192 cbc for 3s on 1024 size blocks: 32369 aes-192 cbc's in 2.14s
Doing aes-192 cbc for 3s on 8192 size blocks: 4169 aes-192 cbc's in 2.22s
Doing aes-256 cbc for 3s on 16 size blocks: 1791005 aes-256 cbc's in 2.13s
Doing aes-256 cbc for 3s on 64 size blocks: 460331 aes-256 cbc's in 2.15s
Doing aes-256 cbc for 3s on 256 size blocks: 110531 aes-256 cbc's in 2.06s
Doing aes-256 cbc for 3s on 1024 size blocks: 26678 aes-256 cbc's in 1.99s
Doing aes-256 cbc for 3s on 8192 size blocks: 3653 aes-256 cbc's in 2.18s
OpenSSL 0.9.7d 17 Mar 2004
built on: Sun Aug  8 10:58:31 EST 2004
options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long)
aes(partial) blowfish(idx) 
compiler: cc
available timing options: USE_TOD HZ=128 [sysconf value]
timing function used: getrusage
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes 8192 bytes
aes-128 cbc      17267.78k    17673.48k    17851.45k    17906.22k 17864.76k
aes-192 cbc      14964.41k    15266.56k    15358.12k    15501.56k 15411.18k
aes-256 cbc      13444.28k    13680.17k    13761.54k    13739.98k 13703.48k

vs.

will_at_puck% uname -a;dmesg|grep ^CPU;openssl speed aes
FreeBSD puck.firepipe.net 5.2-CURRENT FreeBSD 5.2-CURRENT #1: Sat Aug  7 13:19:23 EST 2004 root_at_puck.firepipe.net:/usr/obj/mnt/current/src/sys/PUCK  i386
CPU: VIA C3 Nehemiah+RNG+ACE (1208.87-MHz 686-class CPU)
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: 1884024 aes-128 cbc's in 3.00s
Doing aes-128 cbc for 3s on 64 size blocks: 483936 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 256 size blocks: 122298 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 1024 size blocks: 30653 aes-128 cbc's in 2.99s
Doing aes-128 cbc for 3s on 8192 size blocks: 3804 aes-128 cbc's in 2.98s
Doing aes-192 cbc for 3s on 16 size blocks: 1656066 aes-192 cbc's in 3.01s
Doing aes-192 cbc for 3s on 64 size blocks: 392134 aes-192 cbc's in 2.79s
Doing aes-192 cbc for 3s on 256 size blocks: 106642 aes-192 cbc's in 3.00s
Doing aes-192 cbc for 3s on 1024 size blocks: 26609 aes-192 cbc's in 2.99s
Doing aes-192 cbc for 3s on 8192 size blocks: 3329 aes-192 cbc's in 2.98s
Doing aes-256 cbc for 3s on 16 size blocks: 1474497 aes-256 cbc's in 3.01s
Doing aes-256 cbc for 3s on 64 size blocks: 375919 aes-256 cbc's in 3.01s
Doing aes-256 cbc for 3s on 256 size blocks: 94770 aes-256 cbc's in 3.01s
Doing aes-256 cbc for 3s on 1024 size blocks: 23745 aes-256 cbc's in 3.01s
Doing aes-256 cbc for 3s on 8192 size blocks: 2946 aes-256 cbc's in 2.98s
OpenSSL 0.9.7d 17 Mar 2004
built on: Sat Aug  7 11:06:04 EST 2004
options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long)
aes(partial) blowfish(idx) 
compiler: cc
available timing options: USE_TOD HZ=128 [sysconf value]
timing function used: getrusage
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes 8192 bytes
aes-128 cbc      10049.22k    10301.48k    10414.26k    10495.10k 10450.72k
aes-192 cbc       8814.47k     8999.87k     9093.22k     9115.31k 9145.70k
aes-256 cbc       7846.55k     8002.02k     8070.34k     8087.53k 8092.58k

Regards,
-- 
wca

Received on Mon Aug 09 2004 - 16:57:39 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:05 UTC