caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Basile STARYNKEVITCH <basile@starynkevitch.net>
To: Chris Hecker <checker@d6.com>
Cc: Sven Luther <luther@dpt-info.u-strasbg.fr>,
	Lauri Alanko <la@iki.fi>,
	caml-list@inria.fr
Subject: Re: [Caml-list] Why systhreads?
Date: Sun, 24 Nov 2002 19:12:57 +0100	[thread overview]
Message-ID: <15841.5801.232036.876630@hector.lesours> (raw)
In-Reply-To: <4.3.2.7.2.20021124093204.039731b8@localhost>

>>>>> "Chris" == Chris Hecker <checker@d6.com> writes:


    Chris> On a related note, now that the first CPUs with
    Chris> HyperThreading are shipping, is there any plan to
    Chris> multithread the GC so caml programs can take advantage of
    Chris> HT?  I can understand why it was not a high priority to
    Chris> support real threads for multiprocessor machines when that
    Chris> was the only way to get parallelism with threads, but once
    Chris> HT is ubiquitous, it has the potential to make it worth the
    Chris> trouble to thread a regular application to increase
    Chris> performance.  I don't think this is a high priority now,
    Chris> because there's 0% penetration of HT right now, but
    Chris> hopefully there's some plan for the future.

I would suppose that HyperThreading chips can already successfully
being used on Linux (I was told, IIRC, that such chips gives 2 cpu
when asked thru /proc/cpuinfo). So, I would suppose that they can take
advantage of native threads on Ocaml already.

    Chris> I guess the question is, is a multithreaded GC an open
    Chris> research problem, or is there a known good solution and it
    Chris> just hasn't gotten to the top of the priority list yet?

I have a question to the Ocaml team : Could they explain what is the
current (and perhaps near future) status of multithreading in Ocaml,
notably with respect to garbage collection?

I thought that the current GC in Ocaml (3.06) is already
multithread-capable, at least because each thread has his own birth
region and can do minor garbage collections independently of other
threads, so threads have to synchronize only on major (ie full)
garbage collections. Is my assumption correct? I just had a glance
into ocaml/byterun/minor_gc.c and did not found any thread-local
variables there... Also, ocaml/otherlibs/systhreads/posix.c mentions
/* The global mutex used to ensure that at most one thread is running
Caml code */

What is (with ocamlopt -thread on x86/linux) the use of multithreading
in Ocaml? I really thought that it was really (in practical terms)
biprocessor support, not only some limited kind of (throwable once
only) continuations?

Regards.
-- 

Basile STARYNKEVITCH         http://starynkevitch.net/Basile/ 
email: basile<at>starynkevitch<dot>net 
alias: basile<at>tunes<dot>org 
8, rue de la Faïencerie, 92340 Bourg La Reine, France
-------------------
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


  reply	other threads:[~2002-11-24 18:13 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 [this message]
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
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=15841.5801.232036.876630@hector.lesours \
    --to=basile@starynkevitch.net \
    --cc=caml-list@inria.fr \
    --cc=checker@d6.com \
    --cc=la@iki.fi \
    --cc=luther@dpt-info.u-strasbg.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).