9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: "David Leimbach" <leimy2k@gmail.com>
To: "Fans of the OS Plan 9 from Bell Labs" <9fans@9fans.net>
Subject: Re: [9fans] Plan 9 on Blue Gene
Date: Thu, 31 Jul 2008 06:35:55 -0700	[thread overview]
Message-ID: <3e1162e60807310635s564a250eq3a492e6706592404@mail.gmail.com> (raw)
In-Reply-To: <C1FA1A9AE6594EA48477A5ABABA4A398@T3400>

[-- Attachment #1: Type: text/plain, Size: 2147 bytes --]

On Thu, Jul 31, 2008 at 5:53 AM, Philippe Anel <xigh@bouyapop.org> wrote:

> Can you tell us why some things are impossible to scale with 5000 posix
> threads (and easy to scale with 5000 plan 9 style threads) ?
> Is this specific to posix or linux ? Or maybe you will write a paper on
> this ?
>
> Phil;


I think it's because plan 9 style threads are more like coroutines, and
don't initiate a new kernel-schedulable process.

If you use libthread from plan 9 port on a unix deployed system the
threadcreate function doesn't make a pthread.  proccreate, on the other
hand, does. (on the platforms I've used).

As a result you get no chance at parallelism with threadcreate, which uses
more compute resources to schedule, and proccreate "might" cause two threads
to run in parallel, if the code is arranged such that the two libthread
processes can run independently or at least overlapping.

This duality is one of the reasons I find libthread interesting in general,
even outside of Plan 9.

I've been writing a lot of Erlang code lately, and I keep thinking about,
but not having too much time to do much about, wanting to have a runtime for
the libthread "threads" that could auto-schedule them to libthread "procs",
in much the same way Haskell "sparks" may end up real threads, or Erlang
processes, might run in parallel.

Dave


>
>
> ----- Original Message ----- From: "ron minnich" <rminnich@gmail.com>
> To: "Fans of the OS Plan 9 from Bell Labs" <9fans@9fans.net>
> Sent: Thursday, July 31, 2008 4:23 AM
> Subject: Re: [9fans] Plan 9 on Blue Gene
>
>
>
>  On Wed, Jul 30, 2008 at 6:48 PM, David Leimbach <leimy2k@gmail.com>
>> wrote:
>>
>>  Does Plan 9 Port help?  I mean, libthread on Plan 9 Port alone could be
>>> worth a ton to me in some situations.
>>> Concurrent programming for the win?
>>>
>>
>> probably not for this community. When we had plan9port in xcpu we got
>> nothing but complaints. This in spite of the fact that some things are
>> impossible to scale with 5000 posix threads, and easy to scale with
>> 5000 plan 9 style threads.
>>
>> ron
>>
>>
>>
>
>

[-- Attachment #2: Type: text/html, Size: 3241 bytes --]

  reply	other threads:[~2008-07-31 13:35 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-26 18:37 Steven Vormwald
2008-07-26 18:47 ` Eric Van Hensbergen
2008-07-30 12:32   ` Roman V. Shaposhnik
2008-07-30 14:07     ` Eric Van Hensbergen
2008-07-30 15:10       ` ron minnich
2008-07-30 15:21         ` Steven D. Vormwald
2008-07-30 15:38           ` Eric Van Hensbergen
2008-07-30 15:41           ` ron minnich
2008-07-30 16:10             ` Steven D. Vormwald
2008-07-30 17:42               ` ron minnich
2008-07-30 17:52                 ` Steven D. Vormwald
2008-07-31 21:32               ` Charles Forsyth
2008-07-30 16:34             ` Joel C. Salomon
2008-07-30 15:25         ` gdiaz
2008-07-30 15:36           ` Eric Van Hensbergen
2008-07-30 23:36             ` David Leimbach
2008-07-31  0:02               ` ron minnich
2008-07-31  0:45                 ` erik quanstrom
2008-07-31  1:48                 ` David Leimbach
2008-07-31  2:23                   ` ron minnich
2008-07-31 12:53                     ` Philippe Anel
2008-07-31 13:35                       ` David Leimbach [this message]
2008-07-31 14:11                         ` Philippe Anel
2008-07-31 14:32                           ` David Leimbach
2008-07-31 16:04                       ` ron minnich
2008-08-04 23:19                     ` Uriel
2008-07-31 13:24             ` gdiaz
2008-07-31 13:24             ` gdiaz
2008-07-30 15:40           ` ron minnich
2008-07-30 17:36             ` don bailey
2008-07-30 17:39               ` Benjamin Huntsman
2008-07-30 17:47                 ` ron minnich
2008-07-30 18:03               ` don bailey
2008-07-30 18:08                 ` Eric Van Hensbergen
2008-07-30 18:18                 ` ron minnich
2008-07-30 18:21                 ` erik quanstrom
2008-07-30 18:32                   ` ron minnich
2008-07-31 22:03                   ` Charles Forsyth
2008-07-31 22:06                     ` ron minnich
2008-07-31 21:27           ` Charles Forsyth
2008-07-30 15:43         ` Jack Johnson
2008-07-31 14:01 erik quanstrom
     [not found] <2049e07e918215a675b00f15ee549436@quanstro.net>
2008-07-31 14:28 ` David Leimbach
2008-07-31 15:20   ` erik quanstrom

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=3e1162e60807310635s564a250eq3a492e6706592404@mail.gmail.com \
    --to=leimy2k@gmail.com \
    --cc=9fans@9fans.net \
    /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;
as well as URLs for NNTP newsgroup(s).