From: Chris Hecker <checker@d6.com>
To: james woodyatt <jhw@wetware.com>, Blair Zajac <blair@orcaware.com>
Cc: The Trade <caml-list@inria.fr>
Subject: Re: [Caml-list] Why systhreads?
Date: Mon, 25 Nov 2002 14:20:11 -0800 [thread overview]
Message-ID: <4.3.2.7.2.20021125134858.037b4ef8@localhost> (raw)
In-Reply-To: <B39CC849-00B9-11D7-AC61-000393BA7EBA@wetware.com>
>If you want your application to parallelize well, the winning design
>pattern seems to be message passing between distributed memory processes.
I was going to let it drop after the "lecture" (which should be put in a
faq or something), but come on, this is a silly generalization. I have
colleagues who have gotten very large speedups from hyperthreading on
commercial applications, not demos. The point is, it's "free" for Intel to
put it in, and your app is waiting on cache misses and pipeline stalls
anyway, so you might as well do something with those cycles. Now you can
get extra work done during those times in C, but you won't be able to in
caml, and that's a bummer. It's not a showstopper, since you can always
call out to C, but it is yet another thing in the list of features that
aren't natively exploitable in caml. Of course there's a cost to enabling
this in caml, and it may be that there's no good way to do it or that it's
not worth it cost/benefit-wise, but saying "you don't want to do it anyway"
is just apologist.
Xavier saying 1.5x is not worth it is really strange to me; most
performance sensitive programmers I know would kill their mother to get
1.5x. I wonder what factor would be worth it for Xavier?
I think the overriding point here is that in the past SMP has not taken off
on the desktop, so it wasn't worth worrying about for end-user
applications. That will no longer be true, simply because it was so cheap
for Intel to add HT. From now on, almost all chips they ship will be
"logically" SMP (barring some unforseen thing where HT isn't used at all
and becomes expensive to keep in the chip...I assume this is what Xavier
meant by "last gasp", but I doubt it based on Intel's historic behavior
with other CPU features). For commercial application developers, that
changes the landscape a bit.
It's very similar to MMX and SSE. Neither technology revolutionized to
world (like the hype suggested), but once all viable end user machines have
it, it becomes cost effective to use. HT is even easier, because unlike
MMX and SSE, it involves no compiler changes (for C compilers) and is
backwards compatible.
I am not a big fan of threading; in fact, I think it's almost always a
cost/benefit lose (except when used to simulate async io) for my kinds of
applications (games). However, HT changes the cost/benefit equation. How
much remains to be seen, of course.
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
next prev parent reply other threads:[~2002-11-25 22:22 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 [this message]
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=4.3.2.7.2.20021125134858.037b4ef8@localhost \
--to=checker@d6.com \
--cc=blair@orcaware.com \
--cc=caml-list@inria.fr \
--cc=jhw@wetware.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