caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Chris Hecker <checker@d6.com>
To: Xavier Leroy <xavier.leroy@inria.fr>, Blair Zajac <blair@orcaware.com>
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] Why systhreads?
Date: Tue, 26 Nov 2002 10:42:37 -0800	[thread overview]
Message-ID: <4.3.2.7.2.20021126102033.01c42008@localhost> (raw)
In-Reply-To: <20021126100254.A19708@pauillac.inria.fr>


>Factors of 10 are always nice :-)  Just kidding.  What I meant is the
>following: assume making the Caml runtime system thread-safe entails a
>25% slowdown on program execution.  (This can easily happen if e.g. we
>have to lock a mutex at each heap allocation.)  Further assume that by
>doing so, you get a 1.5 speedup from hyperthreading.  In the end, your
>program will run 1.5 * 0.75 = 1.12 times faster than its equivalent
>running on the standard, single-processor Caml runtime.  It's not
>worth the effort.

Sure, that's kinda obvious.  My original question was whether there was a 
known way to do a multithreaded gc that doesn't suck (costing 25% on 
nonthreaded applications does not count as not sucking) that ocaml could 
use if it became worth it (ie. in the event HT was widely adopted and 
actually worked well in practice).  If you're saying the above is the state 
of the art in multithreaded gc, then yes, it's not worth it.  If there was 
a multithreaded gc technique that cost 3% for single threaded apps, and all 
processors in existence were HT-enabled, then the equation starts to look 
different.  I never said this was the case now, or somebody should start 
typing this new gc in, I just wondered if the technology existed in case it 
became interesting.

I find it slightly ironic that I'm the "HyperThread guy" in this thread, 
since I'm pretty anti-hype myself.  Oh well.  Another slightly frustrating 
thing is that 90% of this thread was taken up by stuff that's documented 
(poorly, but still) on the net (whether SMP is supported now, whether async 
io works, whether non-systhreads work in native code, how the global mutex 
works, etc.).  It would be so nice if the FAQ was better formatted and we 
had a way of quickly updating it, but no, I don't have any time for that 
and I'm sure nobody else does either.  And, of course, nobody reads the FAQ 
before posting anyway.  :)

Chris


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  parent reply	other threads:[~2002-11-26 18:43 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-23  9:08 Lauri Alanko
2002-11-24  7:36 ` Sven Luther
2002-11-24 17:41   ` Chris Hecker
2002-11-24 18:12     ` Basile STARYNKEVITCH
2002-11-24 21:10       ` Christopher Quinn
2002-11-24 17:14 ` Vitaly Lugovsky
2002-11-24 17:18   ` Lauri Alanko
2002-11-24 18:27   ` Dmitry Bely
2002-11-24 23:14     ` Vitaly Lugovsky
2002-11-27 14:33       ` Tim Freeman
2002-11-29 13:25         ` Vitaly Lugovsky
2002-11-25 10:01 ` Xavier Leroy
2002-11-25 14:20   ` Markus Mottl
2002-11-25 19:01   ` Blair Zajac
2002-11-25 21:06     ` james woodyatt
2002-11-25 22:20       ` Chris Hecker
2002-11-26  6:49         ` Sven Luther
2002-11-27 13:12         ` Damien Doligez
2002-11-27 18:04           ` Chris Hecker
2002-11-27 21:04             ` Gerd Stolpmann
2002-11-27 21:45               ` [Caml-list] Calling ocaml from external threads Quetzalcoatl Bradley
2002-11-26  9:02     ` [Caml-list] Why systhreads? Xavier Leroy
2002-11-26  9:29       ` Sven Luther
2002-11-26  9:34         ` Xavier Leroy
2002-11-26  9:39           ` Sven Luther
2002-11-26 18:42       ` Chris Hecker [this message]
2002-11-26 19:04   ` Dave Berry
2002-11-27  0:07   ` Lauri Alanko
2002-11-26 19:23 Gregory Morrisett

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=4.3.2.7.2.20021126102033.01c42008@localhost \
    --to=checker@d6.com \
    --cc=blair@orcaware.com \
    --cc=caml-list@inria.fr \
    --cc=xavier.leroy@inria.fr \
    /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).