From owner-freebsd-current@freebsd.org Mon Jan 7 19:49:41 2019 Return-Path: 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 8BCC0149D9E1 for ; Mon, 7 Jan 2019 19:49:41 +0000 (UTC) (envelope-from rozhuk.im@gmail.com) Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com [IPv6:2a00:1450:4864:20::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 72C92761DA for ; Mon, 7 Jan 2019 19:49:40 +0000 (UTC) (envelope-from rozhuk.im@gmail.com) Received: by mail-lj1-x22c.google.com with SMTP id u89-v6so1414424lje.1 for ; Mon, 07 Jan 2019 11:49:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:date:to:cc:subject:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=fflckVog2H0O+eG3pivuZDTA2qqS8N9uTsFsa34Ydyg=; b=tAisgR88sZ6UZ8caTUPFRWDQ+DE7TSxGVIB7lS45b8L37VDzl6Jwp+rN/QtC99JnDZ aHbl78v9gdd9sdfYQzaJlRl6Os81ZY17S5u8FhHC75oWpBO9o2kDkLoAxEh+J2g7VKjj 5GkNvgEKEy++mL0AmzxroKcuUrBpvb4aYsYuYz+ck2lMOVMXvl8Qv3j+FZ6RW6X9Uvev yiM+8dD6xPbRzLQMMfIGFxzBG9zZrHePWdfzfPRgK1fY7aw2uK0CgvLGRQTu0D0o9Z7R DBZaror9Zc5Y52WUUTl+ePNQQ2++L4TH8olZ9I/pcpsukcA84xavYHa4tXdlIPkQwJZ+ qabg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:date:to:cc:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=fflckVog2H0O+eG3pivuZDTA2qqS8N9uTsFsa34Ydyg=; b=F5/pvpS+rNZEZI3wbrvAYY6gy7ey0TYc/+r7AtfjQEmzJ5NYqTudpxRg8oGIbgtexu A7FmIO5sp0PurOiGaHS6mdPW8EcUYJqMHaRhdkqH4DgSFFH/7/7YUt4JmpgXMobb0HMH TDMqRkYsJ40EEBe+NF6QvkbygBwq8JgS4F3/1S1BFapSsABitnHdrXyt6VSqTGNQb2Qx ZogWuGP7yPxu+VZHWKeaUlK2K89VDqK1wLH59esdb93vUbKZr0u0KrtYn+J1SJyTXlTH nb+WvTOy5zBEBK0Cyx9HFMlVDns43bbe9umZ6GUQyyqZ8tXX1Hk+HVatQ62WWzH2cREf AQbg== X-Gm-Message-State: AA+aEWa8/V0s2r/+TaEEJp0aTmEihRP2BAqm/5NPhqVhTQAvOuBIuv3t UoXBfQ92lzlBrenZFjcJYM2AWETUBV8= X-Google-Smtp-Source: AFSGD/UAmguMk/oaIKT9/Xf7arjjmuzLi8vCAzojVDW3d4fxV2Mv57wme1bmAY+nF9Aj7DhXgAberw== X-Received: by 2002:a2e:21a9:: with SMTP id h41-v6mr35016991lji.103.1546890578880; Mon, 07 Jan 2019 11:49:38 -0800 (PST) Received: from rimwks ([2001:470:1f15:3d8:2939:4aa4:9bb8:37d3]) by smtp.gmail.com with ESMTPSA id c19sm12578697lfg.86.2019.01.07.11.49.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 07 Jan 2019 11:49:37 -0800 (PST) From: Rozhuk Ivan X-Google-Original-From: Rozhuk Ivan Date: Mon, 7 Jan 2019 22:49:35 +0300 To: Stefan Ehmann Cc: freebsd-current@freebsd.org Subject: Re: sha256 speed Message-ID: <20190107224935.5f9e2b9f@rimwks> In-Reply-To: <1d3be715-acc7-4879-02a2-4fddea802027@gmx.net> References: <1d3be715-acc7-4879-02a2-4fddea802027@gmx.net> X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; amd64-portbld-freebsd12.0) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 72C92761DA X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=tAisgR88; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of rozhukim@gmail.com designates 2a00:1450:4864:20::22c as permitted sender) smtp.mailfrom=rozhukim@gmail.com X-Spamd-Result: default: False [-6.06 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[gmail.com:+]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; FREEMAIL_TO(0.00)[gmx.net]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; TAGGED_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_SHORT(-0.89)[-0.887,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-current@freebsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[c.2.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org : 127.0.5.0]; IP_SCORE(-2.66)[ip: (-9.64), ipnet: 2a00:1450::/32(-1.90), asn: 15169(-1.68), country: US(-0.08)]; MID_RHS_NOT_FQDN(0.50)[] X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Jan 2019 19:49:41 -0000 On Mon, 7 Jan 2019 01:17:45 +0100 Stefan Ehmann wrote: > Hello, > > On my Ryzen the sha256 command is much slower than openssl dgst > -sha256. For large files, openssl is more than 7 times faster in > practice. > > You can also test it with the builtin benchmarks: > sha256 -t > openssl speed sha256 > > I think the reason is that openssl supports the SHA CPU extensions > whereas libmd (used by sha256) does not. > > Any chance we can make the base sha256 faster? > I guess there is some reason why we use libmd instead of openssl. > > https://reviews.freebsd.org/D2651 looks related but not sure it's > still relevant. Do not look into FreeBSD code ) You can take mine code: https://github.com/rozhuk-im/liblcb/blob/master/include/crypto/hash/sha2.h there is Plain C and SHA versions. I see SSE version in internet but do not implement it in mine sha2 code, only for sha1 now.