From owner-freebsd-stable@FreeBSD.ORG Tue Nov 16 22:08:44 2010 Return-Path: Delivered-To: stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B6014106564A for ; Tue, 16 Nov 2010 22:08:44 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id 6867D8FC14 for ; Tue, 16 Nov 2010 22:08:44 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:808a:bf97:8eb:f23b] ([IPv6:2607:f3e0:0:4:808a:bf97:8eb:f23b]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id oAGM8a9Q060436 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 16 Nov 2010 17:08:36 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4CE300DE.8010304@sentex.net> Date: Tue, 16 Nov 2010 17:08:30 -0500 From: Mike Tancsa User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.12) Gecko/20101027 Thunderbird/3.1.6 MIME-Version: 1.0 To: Kostik Belousov References: <20101115211350.GE2392@deviant.kiev.zoral.com.ua> <4CE1FDBA.9030403@sentex.net> <20101116094330.GH2392@deviant.kiev.zoral.com.ua> In-Reply-To: <20101116094330.GH2392@deviant.kiev.zoral.com.ua> X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: stable@freebsd.org Subject: Re: Call for testers: FPU changes X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Nov 2010 22:08:44 -0000 On 11/16/2010 4:43 AM, Kostik Belousov wrote: > On Mon, Nov 15, 2010 at 10:42:50PM -0500, Mike Tancsa wrote: >> On 11/15/2010 4:13 PM, Kostik Belousov wrote: >>> >>> Patch is at >>> http://people.freebsd.org/~kib/misc/releng_8_fpu.1.patch >> >> >> Hi, >> One small failure on the patch >> >> The text leading up to this was: >> -------------------------- >> |Index: pc98/include/npx.h >> |=================================================================== >> |--- pc98/include/npx.h (revision 215253) >> |+++ pc98/include/npx.h (working copy) >> -------------------------- >> Patching file pc98/include/npx.h using Plan A... >> Hunk #1 failed at 1. >> 1 out of 1 hunks failed--saving rejects to pc98/include/npx.h.rej > This is because our patch(1) in base is somewhat old, I believe. > The diff was generated by svn diff from the up to date stable/8 > checkout, and the reason for failure is expanded $FreeBSD$ tags. > > Newer gnu patch, available in ports, handless this correctly, > reporting about patches applied with "fuzz". > >> >> >> I tested with openssl and openvpn and all seems to work great on the via >> board and my i5 board!! Simple test details at >> >> http://www.tancsa.com/fpu.html >> >> I will try out geli and some more extensive tests tomorrow >> >> Thanks for porting this back to RELENG_8 ! > This is actually somewhat puzzling. Does openssl in base automatically > use crypto(4) ? I force it it via ssl.cnf 0(achinetboot)% tail -11 /etc/ssl/openssl.cnf openssl_conf = openssl_def [openssl_def] engines = openssl_engines [openssl_engines] padlock = cryptodev_engine [cryptodev_engine] default_algorithms = ALL 0(achinetboot)% The limiting factor here for ssh seems to be the 100Mb link my i5 box is on. Here is with and without aesni loaded 0(achinetboot)% /usr/bin/time scp -c aes128-cbc test.bin mdtancsa@10.255.255.1:/dev/null test.bin 100% 88MB 11.0MB/s 00:08 8.14 real 0.44 user 0.57 sys 0(achinetboot)% /usr/bin/time scp -c aes128-cbc test.bin mdtancsa@10.255.255.1:/dev/null test.bin 100% 88MB 11.0MB/s 00:08 8.15 real 1.46 user 0.36 sys 0(achinetboot)% I will move it to gigabit to get a better test shortly. > > Also, could you, please redo the speed tests for aesni(4) with the > following patch applied over the driver sources ? > > Thank you ! > > diff --git a/sys/crypto/aesni/aesni_wrap.c b/sys/crypto/aesni/aesni_wrap.c > index 36c66ea..3fd397c 100644 > --- a/sys/crypto/aesni/aesni_wrap.c > +++ b/sys/crypto/aesni/aesni_wrap.c > @@ -246,14 +246,21 @@ int patch -p2 < a Hmm... Looks like a unified diff to me... The text leading up to this was: -------------------------- |diff --git a/sys/crypto/aesni/aesni_wrap.c b/sys/crypto/aesni/aesni_wrap.c |index 36c66ea..3fd397c 100644 |--- a/sys/crypto/aesni/aesni_wrap.c |+++ b/sys/crypto/aesni/aesni_wrap.c -------------------------- Patching file crypto/aesni/aesni_wrap.c using Plan A... Hunk #1 succeeded at 246. Hunk #2 succeeded at 271. Hunk #3 succeeded at 324. Hmm... Ignoring the trailing garbage. done Seems to work ok 0(achinetboot)# kldload aesni 0(achinetboot)# openssl speed -evp aes-128-cbc 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: 2587085 aes-128-cbc's in 0.39s Doing aes-128-cbc for 3s on 64 size blocks: 2425301 aes-128-cbc's in 0.38s Doing aes-128-cbc for 3s on 256 size blocks: 1925353 aes-128-cbc's in 0.19s Doing aes-128-cbc for 3s on 1024 size blocks: 1098255 aes-128-cbc's in 0.11s Doing aes-128-cbc for 3s on 8192 size blocks: 152631 aes-128-cbc's in 0.05s OpenSSL 0.9.8n 24 Mar 2010 built on: date not available 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 105979.48k 404781.84k 2632455.13k 9955323.90k 27619906.16k 0(achinetboot)# But there is a LOT of variation between runs for some reason. I added to http://www.tancsa.com/fpu.html the different runs