From owner-freebsd-current@freebsd.org Mon Sep 17 20:52:24 2018 Return-Path: <owner-freebsd-current@freebsd.org> Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 107C210A74C3 for <freebsd-current@mailman.ysv.freebsd.org>; Mon, 17 Sep 2018 20:52:24 +0000 (UTC) (envelope-from lev@FreeBSD.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 8D6658CD06 for <freebsd-current@freebsd.org>; Mon, 17 Sep 2018 20:52:23 +0000 (UTC) (envelope-from lev@FreeBSD.org) Received: by mailman.ysv.freebsd.org (Postfix) id 5141510A74C2; Mon, 17 Sep 2018 20:52:23 +0000 (UTC) Delivered-To: current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FF3510A74C1 for <current@mailman.ysv.freebsd.org>; Mon, 17 Sep 2018 20:52:23 +0000 (UTC) (envelope-from lev@FreeBSD.org) Received: from onlyone.not-for.work (onlyone.not-for.work [IPv6:2a01:4f8:201:6350::2]) by mx1.freebsd.org (Postfix) with ESMTP id D28FB8CD00; Mon, 17 Sep 2018 20:52:22 +0000 (UTC) (envelope-from lev@FreeBSD.org) Received: from lion.home.serebryakov.spb.ru (unknown [IPv6:2001:470:923f:1:dcf4:3d3c:7e78:129b]) (Authenticated sender: lev@serebryakov.spb.ru) by onlyone.not-for.work (Postfix) with ESMTPSA id 23601CE8; Mon, 17 Sep 2018 23:52:21 +0300 (MSK) Date: Mon, 17 Sep 2018 23:52:20 +0300 From: Lev Serebryakov <lev@FreeBSD.org> Reply-To: lev@FreeBSD.org Organization: FreeBSD Message-ID: <468346531.20180917235220@serebryakov.spb.ru> To: current@FreeBSD.org CC: brnrd@FreeBSD.org, jkim@FreeBSD.org Subject: Re: Speed problems with both system openssl and security/openssl-devel In-Reply-To: <43892083.20180913024646@serebryakov.spb.ru> References: <43892083.20180913024646@serebryakov.spb.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: Discussions about the use of FreeBSD-current <freebsd-current.freebsd.org> List-Unsubscribe: <https://lists.freebsd.org/mailman/options/freebsd-current>, <mailto:freebsd-current-request@freebsd.org?subject=unsubscribe> List-Archive: <http://lists.freebsd.org/pipermail/freebsd-current/> List-Post: <mailto:freebsd-current@freebsd.org> List-Help: <mailto:freebsd-current-request@freebsd.org?subject=help> List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/freebsd-current>, <mailto:freebsd-current-request@freebsd.org?subject=subscribe> X-List-Received-Date: Mon, 17 Sep 2018 20:52:24 -0000 Hello Lev, Thursday, September 13, 2018, 2:46:46 AM, you wrote: > Linux have openssl 1.1.0f, and I've tried both system /usr/bin/openssl (1.0.2p) > and /usr/local/bin/openssl from security/openssl-devel port (1.1.0i), results are > virtually the same. I have "ASM" and "SSE2" options enabled in port. > What happens here? Why does FreeBSD's build of openssl use AES-NI so > inefficient? More datapoints. (1) aes-256-cbc behaves really wired. Time output is completely bogus without "-elapsed" and speed is unbelievably low with "-elapsed". aes-256-gcm doesn't have this anomaly without "-elapsed" (please note "in 0.xxs" here): Doing aes-256-cbc for 3s on 16 size blocks: 503555 aes-256-cbc's in 0.60s Doing aes-256-cbc for 3s on 64 size blocks: 520386 aes-256-cbc's in 0.54s Doing aes-256-cbc for 3s on 256 size blocks: 435106 aes-256-cbc's in 0.44s Doing aes-256-cbc for 3s on 1024 size blocks: 242832 aes-256-cbc's in 0.38s Doing aes-256-cbc for 3s on 8192 size blocks: 49087 aes-256-cbc's in 0.09s ... aes-256-cbc 13393.26k 61782.64k 254599.17k 663093.25k 4289287.51k Doing aes-256-gcm for 3s on 16 size blocks: 12051311 aes-256-gcm's in 3.03s Doing aes-256-gcm for 3s on 64 size blocks: 6428598 aes-256-gcm's in 3.04s Doing aes-256-gcm for 3s on 256 size blocks: 2122316 aes-256-gcm's in 3.00s Doing aes-256-gcm for 3s on 1024 size blocks: 610443 aes-256-gcm's in 3.13s Doing aes-256-gcm for 3s on 8192 size blocks: 75836 aes-256-gcm's in 3.03s ... aes-256-gcm 63611.04k 135380.66k 181104.30k 199531.13k 204947.96k with "-elapsed": Doing aes-256-cbc for 3s on 16 size blocks: 493829 aes-256-cbc's in 3.01s Doing aes-256-cbc for 3s on 64 size blocks: 530550 aes-256-cbc's in 3.06s Doing aes-256-cbc for 3s on 256 size blocks: 426699 aes-256-cbc's in 3.01s Doing aes-256-cbc for 3s on 1024 size blocks: 243305 aes-256-cbc's in 3.03s Doing aes-256-cbc for 3s on 8192 size blocks: 48069 aes-256-cbc's in 3.01s ... aes-256-cbc 2626.91k 11087.41k 36317.07k 82191.94k 130919.48k Doing aes-256-gcm for 3s on 16 size blocks: 12041385 aes-256-gcm's in 3.08s Doing aes-256-gcm for 3s on 64 size blocks: 6445757 aes-256-gcm's in 3.05s Doing aes-256-gcm for 3s on 256 size blocks: 2129499 aes-256-gcm's in 3.01s Doing aes-256-gcm for 3s on 1024 size blocks: 587396 aes-256-gcm's in 3.01s Doing aes-256-gcm for 3s on 8192 size blocks: 75806 aes-256-gcm's in 3.03s ... aes-256-gcm 62590.75k 135047.68k 181245.26k 199977.06k 204866.89k (2) I've added debug output to 'crypto/evp/e_aes.c' and it shows, that AES-NIU should be used. (3) openssl111 from ports doesn't show these problems. -- Best regards, Lev mailto:lev@FreeBSD.org