lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 8 Feb 2009 21:27:48 -0800
From:	Arjan van de Ven <arjan@...radead.org>
To:	Frederic Weisbecker <fweisbec@...il.com>
Cc:	Cornelia Huck <cornelia.huck@...ibm.com>,
	lkml <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] fastboot: keep at least one thread per cpu during boot

On Mon, 9 Feb 2009 04:48:27 +0100
Frederic Weisbecker <fweisbec@...il.com> wrote:

> Async threads are created and destroyed depending on the number of
> jobs in queue. It means that several async threads can be created for
> a specific batch of work, then the threads will die after the
> completion of this batch, but they could be needed just after this
> completion for another batch of work. During the boot, such
> repetitive thread creations can be wasteful, that's why this patch
> proposes to keep at least one thread per cpu (if they already have
> been created once). Such a threshold of threads kept alive will
> prevent from a part of the thread creation overhead. This threshold
> will be dropped one the system_state switches from SYSTEM_BOOTING to
> SYSTEM_RUNNING.

I'm not very fond of this to be honest;
at least during boot there's enough activity, and the time is so short
(that's the point of the parallel stuff!) that this will not kick in to
make a difference; specifically, every boot I've seen the number of
threads is highest near the end, and also the total kernel boot time is
below 1.5 seconds or so, not long enough for the threads to die.

Creating a thread is *CHEAP*. Really really cheap. You can do 100
thousands/second on even a modest CPU. If you have a high frequency of
events, you don't want this, sure, and that is why there is a one
second delay to give opportunity for reuse... but really....


Now, if async function calls get used more, I can see the point of
always keeping one thread alive, just for both performance and VM low
memory issues; but that's not what your patch is doing.

-- 
Arjan van de Ven 	Intel Open Source Technology Centre
For development, discussion and tips for power savings, 
visit http://www.lesswatts.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists