[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250306175422.GH1796@sol.localdomain>
Date: Thu, 6 Mar 2025 09:54:22 -0800
From: Eric Biggers <ebiggers@...nel.org>
To: linux-kernel@...r.kernel.org
Cc: linux-tip-commits@...r.kernel.org, Ingo Molnar <mingo@...nel.org>,
Andy Lutomirski <luto@...nel.org>, "H. Peter Anvin" <hpa@...or.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Oleg Nesterov <oleg@...hat.com>, Uros Bizjak <ubizjak@...il.com>,
x86@...nel.org
Subject: Re: [tip: x86/fpu] x86/fpu: Improve crypto performance by making
kernel-mode FPU reliably usable in softirqs
On Thu, Mar 06, 2025 at 12:00:16PM -0000, tip-bot2 for Eric Biggers wrote:
> Performance results:
> ====================
>
> I did some benchmarks with AES-XTS encryption of 16-byte messages (which is
> unrealistically small, but this makes it easier to see the overhead of
> kernel-mode FPU...). The baseline was 384 MB/s. Removing the use of
> crypto/simd.c, which this work makes possible, increases it to 487 MB/s,
> a +27% improvement in throughput.
>
> CPU was AMD Ryzen 9 9950X (Zen 5). No debugging options were enabled.
>
> [ mingo: Prettified the changelog and added performance results. ]
>
> Signed-off-by: Eric Biggers <ebiggers@...gle.com>
> Signed-off-by: Ingo Molnar <mingo@...nel.org>
> Cc: Andy Lutomirski <luto@...nel.org>
> Cc: H. Peter Anvin <hpa@...or.com>
> Cc: Linus Torvalds <torvalds@...ux-foundation.org>
> Cc: Oleg Nesterov <oleg@...hat.com>
> Cc: Uros Bizjak <ubizjak@...il.com>
> Link: https://lore.kernel.org/r/20250304204954.3901-1-ebiggers@kernel.org
Thanks! To clarify, the removal of the use of crypto/simd.c from
arch/x86/crypto/, which is what gives the measured performance improvement,
happens in a separate patch
https://lore.kernel.org/r/20250220051325.340691-3-ebiggers@kernel.org/ which
depends on this one. I'll try to get applied to the crypto tree in 6.16
(probably split into multiple patches).
As I've mentioned, there can also be a much larger performance improvement in
certain cases where the slow fallback path was being taken, or when users were
requesting a synchronous algorithm and therefore couldn't use the AES-NI code.
- Eric
Powered by blists - more mailing lists