OpenSSL port ASM removal
Franco Fichtner
franco at lastsummer.de
Mon Sep 19 10:01:18 UTC 2016
> On 19 Sep 2016, at 11:35 AM, Franco Fichtner <franco at lastsummer.de> wrote:
>
> 3. Is AESNI support considered a must-have feature for the
> OpenSSL port in FreeBSD or not? How about base OpenSSL? And
> how does this affect the plans to switch to OpenSSL from ports
> by default that would potentially strip AESNI support from all
> ports relying on it at the moment?
Some data off a FreeBSD 10.3 with base and ports OpenSSL/LibreSSL.
Base OpenSSL and ports LibreSSL are both four times faster than
ports OpenSSL in the default configuration for the particular
envelope mode. The only fix here was the ASM option.
Segfaults in non-OpenSSL code that is OpenSSL-related hints to
improper linking/building between OpenSSL from ports and base.
I've done parallel builds for OpenSSL and LibreSSL from ports for
over a year and this doesn't happen unless there is something
stuck in the build system.
Please bring it back for the FreeBSD users that rely on AESNI and
do not have these problems.
Cheers,
Franco
--
+ uname -a
FreeBSD sensey64 10.3-RELEASE-p7 FreeBSD 10.3-RELEASE-p7 #0: Thu Aug 11 18:38:15 UTC 2016 root at amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
+ /usr/bin/openssl version
OpenSSL 1.0.1s-freebsd 1 Mar 2016
+ /usr/bin/openssl speed -evp aes-128-cbc
Doing aes-128-cbc for 3s on 16 size blocks: 130910375 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 64 size blocks: 35016412 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 8989961 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 1024 size blocks: 2255832 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 8192 size blocks: 281046 aes-128-cbc's in 3.00s
OpenSSL 1.0.1s-freebsd 1 Mar 2016
built on: date not available
options:bn(64,64) rc4(16x,int) des(idx,cisc,16,int) aes(partial) idea(int) blowfish(idx)
compiler: clang
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-128-cbc 696375.19k 747016.79k 767143.34k 769990.66k 767442.94k
+ pkg query %n-%v openssl
openssl-1.0.2_15,1
+ /usr/local/bin/openssl version
WARNING: can't open config file: /usr/local/openssl/openssl.cnf
OpenSSL 1.0.2h 3 May 2016
+ /usr/local/bin/openssl speed -evp aes-128-cbc
WARNING: can't open config file: /usr/local/openssl/openssl.cnf
Doing aes-128-cbc for 3s on 16 size blocks: 31667033 aes-128-cbc's in 3.01s
Doing aes-128-cbc for 3s on 64 size blocks: 8481827 aes-128-cbc's in 3.04s
Doing aes-128-cbc for 3s on 256 size blocks: 2177621 aes-128-cbc's in 3.09s
Doing aes-128-cbc for 3s on 1024 size blocks: 535092 aes-128-cbc's in 3.03s
Doing aes-128-cbc for 3s on 8192 size blocks: 66121 aes-128-cbc's in 3.02s
OpenSSL 1.0.2h 3 May 2016
built on: reproducible build, date unspecified
options:bn(64,64) md2(int) rc4(ptr,int) des(idx,cisc,16,int) aes(partial) idea(int) blowfish(idx)
compiler: cc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -pthread -D_THREAD_SAFE -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -O3 -Wall -O2 -pipe -fstack-protector -fno-strict-aliasing
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-128-cbc 168452.17k 178619.86k 180192.64k 180761.80k 179618.90k
+ pkg query %n-%v libressl
libressl-2.4.2
+ /usr/local/bin/openssl version
LibreSSL 2.4.2
+ /usr/local/bin/openssl speed -evp aes-128-cbc
Doing aes-128-cbc for 3s on 16 size blocks: 131903200 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 64 size blocks: 35044060 aes-128-cbc's in 2.99s
Doing aes-128-cbc for 3s on 256 size blocks: 8969315 aes-128-cbc's in 3.02s
Doing aes-128-cbc for 3s on 1024 size blocks: 2291514 aes-128-cbc's in 3.09s
Doing aes-128-cbc for 3s on 8192 size blocks: 281113 aes-128-cbc's in 3.01s
LibreSSL 2.4.2
built on: date not available
options:bn(64,64) rc4(16x,int) des(idx,cisc,16,int) aes(partial) idea(int) blowfish(idx)
compiler: information not available
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-128-cbc 703483.73k 749558.59k 759448.36k 760388.16k 765632.07k
More information about the freebsd-ports
mailing list