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:	Wed, 21 Feb 2007 23:57:11 +0100
From:	Ingo Molnar <mingo@...e.hu>
To:	"Michael K. Edwards" <medwards.linux@...il.com>
Cc:	linux-kernel@...r.kernel.org,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	Arjan van de Ven <arjan@...radead.org>,
	Christoph Hellwig <hch@...radead.org>,
	Andrew Morton <akpm@....com.au>,
	Alan Cox <alan@...rguk.ukuu.org.uk>,
	Ulrich Drepper <drepper@...hat.com>,
	Zach Brown <zach.brown@...cle.com>,
	Evgeniy Polyakov <johnpol@....mipt.ru>,
	"David S. Miller" <davem@...emloft.net>,
	Suparna Bhattacharya <suparna@...ibm.com>,
	Davide Libenzi <davidel@...ilserver.org>,
	Jens Axboe <jens.axboe@...cle.com>,
	Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [patch 00/13] Syslets, "Threadlets", generic AIO support, v3


* Michael K. Edwards <medwards.linux@...il.com> wrote:

> 3) Reworked threadlet scheduling to allow tens of thousands of blocked 
> threadlets to be dispatched efficiently in a controlled, throttled, 
> non-cache-and-MMU-thrashing manner, immediately following the softirq 
> that unblocks the I/O they're waiting on; and

threadlets, when they dont block, are just regular user-space function 
calls - so no need to schedule or throttle them. [*]

threadlets, when they block, are regular kernel threads, so the regular 
O(1) scheduler takes care of them. If MMU trashing is of any concern 
then syslets should be used to implement the most performance-critical 
events: under Linux a kernel thread that does not exit out to user-space 
does not do any TLB switching at all. (even if there are multiple 
processes active and their syslets intermix)

throttling of outstanding async contexts is most easily done by 
user-space - you can see an example in threadlet-test.c, but there's 
also fio/engines/syslet-rw.c. v2 had a kernel-space throttling mechanism 
as well, i'll probably reintroduce that in later versions.

	Ingo

[*] although certain more advanced scheduling tactics like the detection 
    of frequently executed threadlet functions and their pushing out to 
    separate contexts is possible too - but this is an optional add-on 
    and for later.

-
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ