9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: erik quanstrom <quanstro@quanstro.net>
To: tlaronde@polynum.com, 9fans@9fans.net
Subject: Re: [9fans] current state of thread programming
Date: Wed, 30 Jul 2008 08:50:28 -0400	[thread overview]
Message-ID: <f5f3e6afec94e9687ad272959494da5f@quanstro.net> (raw)

>
> CSP is (for me) the best answer to problem involving blocking/waiting on
> input. But this is not parallelism.
>

i don't see how csp is *not* parallel processing.  as soon
as you have more than 1 work process per client, i would call
that parallel processing.

for example, the way ken's fs worked** with the worm is that
n readahead messages read from the rahqueue.  this meant
that they would block on input until there was something
to do.  since there were many cache drives and (i believe)
multiple optical drives, a request loop requesting n
blocks from the rah device could potentially get all the
physical drives going in parallel.

while ken's implementation might not fit the textbook
description of csp, it's pretty close in spirit.

one could argue that isn't *really* parallel because the
requests for the n blocks are made sequentially.
but since drives, operating on the timescale of tens of
milliseconds are competing with a processor working on
a nanosecond timescale.  that's effectively "all at once".

- erik

** the version in extra only starts one rah process and
uses an elevator algorithim on worm addresses.  this
works best on a single-disk system.



             reply	other threads:[~2008-07-30 12:50 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-30 12:50 erik quanstrom [this message]
  -- strict thread matches above, loose matches on Subject: below --
2008-08-05 10:34 Richard Maxwell Underwood
2008-08-05 15:28 ` Eris Discordia
     [not found] <9b1933b61c606e89a4cbbc93a4b5a204@quanstro.net>
2008-07-30 17:31 ` tlaronde
2008-07-30 18:58   ` Sape Mullender
2008-07-30 20:04     ` tlaronde
2008-07-28 17:11 andrey mirtchovski
2008-07-28 17:50 ` tlaronde
2008-07-28 19:52   ` Pietro Gagliardi
2008-07-28 21:07     ` Russ Cox
2008-07-28 21:33       ` Skip Tavakkolian
2008-07-29 18:40   ` Roman V. Shaposhnik
2008-07-29 19:12     ` Bakul Shah
2008-07-30 11:35       ` tlaronde
2008-07-30 11:50         ` Roman V. Shaposhnik
2008-07-30 13:50           ` Paweł Lasek
2008-07-30 17:42           ` tlaronde
2008-07-30 18:07           ` tlaronde
2008-07-30 18:17           ` andrey mirtchovski
2008-07-30 11:58         ` Robert Raschke
2008-07-30 13:53         ` David Leimbach
2008-07-30 14:00         ` andrey mirtchovski
2008-07-30 15:35           ` Roman V. Shaposhnik
2008-07-30 16:53           ` Bakul Shah

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=f5f3e6afec94e9687ad272959494da5f@quanstro.net \
    --to=quanstro@quanstro.net \
    --cc=9fans@9fans.net \
    --cc=tlaronde@polynum.com \
    /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).