Version française
Home     About     Download     Resources     Contact us    
Browse thread
Faking concurrency using Unix forks and pipes
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Richard Jones <rich@a...>
Subject: Re: [Caml-list] Faking concurrency using Unix forks and pipes
On Wed, May 30, 2007 at 09:50:35AM +0100, Jon Harrop wrote:
> F# is ~30% slower than OCaml but can be made almost twice as fast on my dual 
> core machine by tracing concurrently. However, Java is also a concurrent 
> static language and it is much slower. Maybe this reflects more effort having 
> gone into the .NET GC.

Jon,

We've had this discussion before.  Summary: yes, SMP is suddenly
popular.  If we keep doubling the number of cores available every 18
months though, then soon we'll have dozens-hundreds of cores, and
there's no chance at all that these will have uniform memory access.
Once you have NUMA, threads and concurrent GC don't help.

Intel 80 core processor:
http://www.reghardware.co.uk/2006/09/26/intel_teraflop_processor/ ,
and it's very very NUMA - each core has 20 MB of RAM strapped to it.
>From the article: "[The chip] also features a network processing unit
on each core to control core-to-core communication. [...] Once Intel
boffins have worked out the best way to interconnect cores, memory [...]"

Rich.


-- 
Richard Jones
Red Hat