From owner-freebsd-arch Sun Nov 28 14:38:53 1999 Delivered-To: freebsd-arch@freebsd.org Received: from ns1.yes.no (ns1.yes.no [195.204.136.10]) by hub.freebsd.org (Postfix) with ESMTP id E985F1535E for ; Sun, 28 Nov 1999 14:38:49 -0800 (PST) (envelope-from eivind@bitbox.follo.net) Received: from bitbox.follo.net (bitbox.follo.net [195.204.143.218]) by ns1.yes.no (8.9.3/8.9.3) with ESMTP id XAA28646 for ; Sun, 28 Nov 1999 23:38:48 +0100 (CET) Received: (from eivind@localhost) by bitbox.follo.net (8.8.8/8.8.6) id XAA59972 for freebsd-arch@freebsd.org; Sun, 28 Nov 1999 23:38:48 +0100 (MET) Received: from test.tar.com (test.tar.com [204.95.187.4]) by hub.freebsd.org (Postfix) with ESMTP id 7CEBD1535E for ; Sun, 28 Nov 1999 14:38:41 -0800 (PST) (envelope-from dick@test.tar.com) Received: (from dick@localhost) by test.tar.com (8.9.3/8.9.3) id QAA30084; Sun, 28 Nov 1999 16:38:38 -0600 (CST) (envelope-from dick) Date: Sun, 28 Nov 1999 16:38:38 -0600 From: "Richard Seaman, Jr." To: Julian Elischer Cc: "Richard Seaman, Jr." , arch@freebsd.org Subject: Re: syscall overhead. Message-ID: <19991128163838.A29767@tar.com> References: <19991128111949.O1408@tar.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0pre3i In-Reply-To: Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Sun, Nov 28, 1999 at 02:32:50PM -0800, Julian Elischer wrote: > > I don't have any threaded apps that come close to this, but perhaps > > they exist. And, unless you can fix the "user thread" scheduler so > > it doesn't make any syscalls, its hard to see much of an advantage > > for user thread context switches over kernel thread context switches, > > from a performance standpoint. (The current user thread scheduler > > can actually be slower at context switches that kernel threads, > > because of the nubmer of syscalls it makes). > > > > yes but have we catalogued those calls? Not me, but it's not hard. > I am guessing that we can probably get rid of a lot of them by appropriate > kernel support. For sure. Its interesting, but I think good "user threads" needs a lot more kernel support than pure "kernel threads". The real question, which might really make a difference, is can you get rid of *all* syscalls for at least some subset of the UTS context switches. I don't think you can get rid of at least one syscall in at least some cases. > For example threads blocking and unblocking signals for various reasons.. > I'm certain we could do the same lazy blocking that the kernel > presently does So that blocking a signal would be simply a case of > setting a bit. Or, as another example, is there a way to implement shared scheduling information between the kernel and the UTS without a syscall for every bit of shared information. -- Richard Seaman, Jr. email: dick@tar.com 5182 N. Maple Lane phone: 262-367-5450 Chenequa WI 53058 fax: 262-367-5852 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message