From: Michael Hicks <mwh@dsl.cis.upenn.edu>
To: maxs@in.ot.com.au (Max Skaller)
Cc: caml-list@inria.fr
Subject: Re: Interpreter vs hardware threads
Date: Wed, 1 Mar 2000 13:55:08 -0500 (EST) [thread overview]
Message-ID: <200003011855.NAA29057@codex.cis.upenn.edu> (raw)
In-Reply-To: <38BC93FC.65E3ED43@in.ot.com.au> from "Max Skaller" at Mar 1, 2000 02:52:28 pm
> Does anyone know how fast the ocaml bytecode interpreter
> 'switches' between threads (that is, what is the scheduling overhead?)
> Assume most of the threads are waiting (say, on a condition variable).
> Asume LOTS of threads (thousands).
>
> [Hardware threads are not fast enough]
Remembering back to the thread scheduler in Ocaml 2.00 (I assume it's the
same one), I recall that the context switch directly relates to how many
threads are waiting. This is because at each CS point, every thread is
checked to see if its timeout has expired or has some I/O ready. As a
result, performance degrades sharply as you add more threads. With a small
number of threads (around 10) on a Pentium II 300 MHz machine, we measured
the context switch time to be about 100 microsecs. See our INFOCOM 99 paper
for more info on the system we were measuring this in (our active network,
PLANet): http://www.cis.upenn.edu/~switchware/papers/infocom99-plan.ps.
Mike
--
Michael Hicks
Ph.D. Candidate, the University of Pennsylvania
http://www.cis.upenn.edu/~mwh mailto://mwh@dsl.cis.upenn.edu
"The pessimist sees difficulty in every opportunity.
The optimist sees the opportunity in every difficulty." -- Winston Churchill
next prev parent reply other threads:[~2000-03-01 19:02 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-02-25 13:37 mixing Ocaml with another GC-ed language STARYNKEVITCH Basile
2000-02-29 10:24 ` Xavier Leroy
2000-03-01 3:48 ` Nice feature Max Skaller
2000-03-01 3:52 ` Interpreter vs hardware threads Max Skaller
2000-03-01 18:55 ` Michael Hicks [this message]
2000-03-01 20:02 ` Stefan Monnier
2000-03-02 18:18 ` William Chesters
2000-03-03 16:59 ` John Max Skaller
2000-03-06 17:35 ` Xavier Leroy
2000-03-06 23:11 ` John Max Skaller
2000-03-07 13:19 ` Julian Assange
2000-03-08 20:12 ` Xavier Leroy
2000-03-19 6:10 ` Julian Assange
2000-03-08 23:30 ` Max Skaller
2000-03-02 17:25 David Gurr
2000-03-03 9:10 Edwin Young
2000-03-06 13:42 ` William Chesters
2000-03-03 12:12 Juergen Pfitzenmaier
2000-03-07 8:30 Simon Peyton-Jones
2000-03-08 20:02 ` Xavier Leroy
2000-03-12 1:45 ` Julian Assange
2000-03-07 9:06 Simon Peyton-Jones
2000-03-10 18:01 Manuel Fahndrich
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=200003011855.NAA29057@codex.cis.upenn.edu \
--to=mwh@dsl.cis.upenn.edu \
--cc=caml-list@inria.fr \
--cc=maxs@in.ot.com.au \
/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