From: "George Spelvin" <linux@horizon.com>
To: ahferroin7@gmail.com, andi@firstfloor.org, jepler@unpythonic.net,
linux-kernel@vger.kernel.org, linux@horizon.com,
linux@rasmusvillemoes.dk, tytso@mit.edu
Subject: Re: Updated scalable urandom patchkit
Date: 13 Oct 2015 17:10:30 -0400 [thread overview]
Message-ID: <20151013211030.30325.qmail@ns.horizon.com> (raw)
In-Reply-To: <20151013162044.GD3533@two.firstfloor.org>
> Ted's patch peaks at 350K with four CPUs, but then quickly degrades to
> 50K ops/s at 20+ CPUs. At 144 CPUs it is slightly faster again at ~80K.
Good to know, thanks! With its race conditions, it's basically a "best
case" for that particular design, which tells me that more significant
changes are required.
Off hand, do you know how large a read each operation is? I want to
reduce mixback from once per 10 bytes to once per read, and the size
ratio will give me some idea of how large an improvement to expect.
> Spelvin's patch peaks at only 140K at 2 CPUs (so it's slower than base line),
> stays around 120K upto 20, then degrades quickly to 50K and then slowly
> improves again to ~80K.
Sorry to make you go to the trouble; I knew from discussions with Ted
that it wasn't going to work. It was mostly just in the form of a patch
for the sake of a more concrete discussion.
I'll have a patch that I hope will do some good for testing in a couple
of hours.
> The duplicated pool patch is ~200K upto 20 CPus, 400K upto 40, 600K at
> slightly below 60 CPUs, and then very slowly degrades to 520K at 144.
Shitty performance is practically a design goal of /dev/urandom. You
are NOT supposed to hit it more than once per minute per thread.
But since we have a real-world problem with it, Ted's "abusse mitigation
mode" idea (where the kernel does what the app should do: seed a private
CPRNG and use that) will provide good security at extremely high access
rates.
next prev parent reply other threads:[~2015-10-13 21:10 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-10 18:45 George Spelvin
2015-10-11 2:31 ` Theodore Ts'o
2015-10-11 2:53 ` Theodore Ts'o
2015-10-11 4:35 ` George Spelvin
2015-10-11 22:25 ` Theodore Ts'o
2015-10-12 0:16 ` George Spelvin
2015-10-12 4:05 ` Theodore Ts'o
2015-10-12 7:49 ` George Spelvin
2015-10-12 13:54 ` Theodore Ts'o
2015-10-12 20:30 ` George Spelvin
2015-10-12 20:34 ` George Spelvin
2015-10-13 2:46 ` Theodore Ts'o
2015-10-13 3:50 ` Raymond Jennings
2015-10-13 7:50 ` George Spelvin
2015-10-13 6:24 ` George Spelvin
2015-10-13 16:20 ` Andi Kleen
2015-10-13 21:10 ` George Spelvin [this message]
2015-10-14 2:15 ` Andi Kleen
2015-10-16 5:28 ` [RFC PATCH 0/4] Alternate sclable urandom patchset George Spelvin
2015-10-16 5:29 ` [RFC PATCH 1/4] random: Reduce stack usage in _xfer_secondary_pool George Spelvin
2015-10-16 5:30 ` [RFC PATCH 2/4] random: Remove two unused arguments from extract_entropy() George Spelvin
2015-10-16 5:33 ` [RFC PATCH 3/4] random: Only do mixback once per read George Spelvin
2015-10-16 6:12 ` kbuild test robot
2015-10-16 8:11 ` George Spelvin
2015-10-16 6:23 ` kbuild test robot
2015-10-16 5:34 ` [RFC PATCH 4/4] random: Make non-blocking mixback non-blocking George Spelvin
2015-10-21 8:27 ` Updated scalable urandom patchkit George Spelvin
2015-10-21 11:47 ` Andi Kleen
2015-10-21 18:10 ` George Spelvin
-- strict thread matches above, loose matches on Subject: below --
2015-09-24 17:19 Andi Kleen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151013211030.30325.qmail@ns.horizon.com \
--to=linux@horizon.com \
--cc=ahferroin7@gmail.com \
--cc=andi@firstfloor.org \
--cc=jepler@unpythonic.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@rasmusvillemoes.dk \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®