LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Jakub Jelinek <jakub@redhat.com>
To: Bill Davidsen <davidsen@tmr.com>
Cc: Arjan van de Ven <arjan@infradead.org>, linux-kernel@vger.kernel.org
Subject: Re: [ANN] Userspace M-on-N threading model implementation. Alpha release.
Date: Sun, 4 Feb 2007 15:20:53 -0500	[thread overview]
Message-ID: <20070204202053.GC20307@devserv.devel.redhat.com> (raw)
In-Reply-To: <45C63E30.4010106@tmr.com>

On Sun, Feb 04, 2007 at 03:12:32PM -0500, Bill Davidsen wrote:
> Arjan van de Ven wrote:
> >>Because user threading can avoid context switches, there will always be 
> >>cases where it will outperform o/s threads for hardware reasons.
> >
> >actually.. switching from one "real" thread to another in Linux is not
> >an actual context switch in the hardware sense... at least this part of
> >your argument seems to be incorrect ;)
> >
> How does that work? Switching between kernel threads requires going into 
> the kernel, user level thread switches are all done in user mode.
> 
> Do you have some way to change o/s threads w/o going into the kernel?

But going into kernel is not very expensive on Linux.

On the other side, the overhead you need to add for every single syscall
that might block for the M:N threads and the associated complications
which make it far harder to conform to POSIX IMHO far outweight the costs
of going into the kernel for a context switch.

	Jakub

  reply	other threads:[~2007-02-04 20:21 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-30 21:16 Kaz Kylheku
2007-01-31  8:47 ` Evgeniy Polyakov
2007-02-02 16:12 ` Bill Davidsen
2007-02-03 15:26   ` Arjan van de Ven
2007-02-04 20:12     ` Bill Davidsen
2007-02-04 20:20       ` Jakub Jelinek [this message]
2007-02-04 21:42         ` Bill Davidsen
2007-02-05  6:14           ` Arjan van de Ven
2007-02-14 12:17           ` Pavel Machek
2007-02-04 22:52         ` Davide Libenzi
  -- strict thread matches above, loose matches on Subject: below --
2007-01-29 14:52 Evgeniy Polyakov
2007-01-29 14:57 ` Evgeniy Polyakov
2007-01-29 16:40 ` Chris Friesen
2007-01-30  9:46   ` Evgeniy Polyakov
     [not found] ` <40f323d00701290747y68c8e27ege824694bfa378f58@mail.gmail.com>
2007-01-30  1:18   ` Samuel Thibault
2007-01-30  9:53     ` Evgeniy Polyakov
2007-01-30 10:24       ` Samuel Thibault
2007-01-30 10:43         ` Evgeniy Polyakov
2007-02-01  4:28 ` Lee Revell
2007-02-01  7:09   ` Evgeniy Polyakov

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=20070204202053.GC20307@devserv.devel.redhat.com \
    --to=jakub@redhat.com \
    --cc=arjan@infradead.org \
    --cc=davidsen@tmr.com \
    --cc=linux-kernel@vger.kernel.org \
    --subject='Re: [ANN] Userspace M-on-N threading model implementation. Alpha release.' \
    /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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).