Message from discussion
How Many Processor Cores Are Enough?
Path: g2news2.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local01.nntp.dca.giganews.com!nntp.comcast.com!news.comcast.com.POSTED!not-for-mail
NNTP-Posting-Date: Tue, 21 Nov 2006 00:36:02 -0600
From: "Chris Thomasson" <cris...@comcast.net>
Newsgroups: comp.arch
References: <efep6h$vbl$1@agate.berkeley.edu> <p4USg.7370$UG4.3919@newsread2.news.pas.earthlink.net> <1159509972.594672@nnrp1.phx1.gblx.net> <4o5e09Fd0nhjU1@individual.net> <1159651057.947913.170960@k70g2000cwa.googlegroups.com> <1159676702.403901@nnrp1.phx1.gblx.net> <1159831043.671750.277450@i3g2000cwc.googlegroups.com> <pan.2006.10.02.23.58.47.886220@areilly.bpc-users.org> <eftaoa$rgs$1@gemini.csx.cam.ac.uk> <e0t8h.7975$lq.2268@newsread1.mlpsca01.us.to.verio.net>
Subject: Re: How Many Processor Cores Are Enough?
Date: Mon, 20 Nov 2006 22:49:35 -0800
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2869
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2962
X-RFC2646: Format=Flowed; Original
Message-ID: <-MydnSaP7YPPA__YnZ2dnUVZ_o2dnZ2d@comcast.com>
Lines: 67
NNTP-Posting-Host: 76.21.29.207
X-Trace: sv3-5uWqeltDEKW64UDVREgjZqiifXCf/DwmEBESOWTLoKqd72GJhN8HzwtQqnp5inKFVYWGWYTdzWIGTF0!UDd60c+cc66horSKt6fUgj/lnyJ5NyIpTOyJISQ8cH3/Q5N47hHntNCfUIHgodGSrFx6M2U3/20c!q8eNZSpTx7Y=
X-Complaints-To: abuse@comcast.net
X-DMCA-Complaints-To: d...@comcast.net
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.32
"Brian Hurt" <bh...@spnz.org> wrote in message
news:e0t8h.7975$lq.2268@newsread1.mlpsca01.us.to.verio.net...
> n...@cus.cam.ac.uk (Nick Maclaren) writes:
>
>
>>That experience debunked the claims of the
>>functional programming brigade that such methodology gave automatic
>>parallelisation.
>
> Automatic parallelization, no. You're looking for a silver bullet that
> probably doesn't exist. On the other hand, functional programming makes
> writting parallel code much easier to do.
>
> The biggest problem with parallelized code is the race condition- which
> arise from mutable data. Every peice of mutable data is a race condition
> waiting to happen. Mutable data needs to be kept to an absolute minimum,
> and then handled in such a way that it's correct in the presence of
> threads.
>
> I've come to the conclusion that functional programming is necessary-
> just not sufficient.
http://groups.google.com/group/comp.programming.threads/browse_frm/thread/b192c5ffe9b47926
Your conclusion is wrong. No need to be afraid of mutable data... Just stick
it all in the writer side of a lock-free reader pattern.
> There are two languages I know of in which it may
> be possible to write non-trivial parallel programs correctly and
> maintainably- concurrent haskell with STM and erlang- and both are, at
> their core, purely functional languages.
STM is a no go. Way too much overhead... Here are some of the reasons why:
http://groups.google.com/group/comp.arch/msg/e1e391055c7acecb
http://groups.google.com/group/comp.programming.threads/browse_frm/thread/9c572b709248ae64
http://groups.google.com/group/comp.programming.threads/browse_frm/thread/f6399b3b837b0a40
http://groups.google.com/group/comp.arch/msg/1b9e405080e93149
http://groups.google.com/group/comp.arch/msg/bbbc035cf1a8502c
http://groups.google.com/group/comp.arch/msg/11b14c4bda2d5d82
http://groups.google.com/group/comp.arch/msg/9b00fda2752966f9
http://groups.google.com/group/comp.arch/msg/335aeb22fd6fe526
http://groups.google.com/group/comp.arch/msg/1ace9400b1b16cd4
http://groups.google.com/group/comp.arch/msg/995379a16beb3b69
(simply excellent Wheeler post)
...
Any thoughts?
;^)