From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=AWL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by yquem.inria.fr (Postfix) with ESMTP id 6AB95BBC1 for ; Mon, 21 Apr 2008 13:24:41 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AjkBAHsVDEjUnw7Vb2dsb2JhbACCL48rAQwFAgUHGJgJ X-IronPort-AV: E=Sophos;i="4.25,689,1199660400"; d="scan'208";a="11191217" Received: from ptb-relay02.plus.net ([212.159.14.213]) by mail1-smtp-roc.national.inria.fr with ESMTP; 21 Apr 2008 13:24:41 +0200 Received: from [80.229.56.224] (helo=beast.local) by ptb-relay02.plus.net with esmtp (Exim) id 1Jnu8V-0001Zj-KH for caml-list@yquem.inria.fr; Mon, 21 Apr 2008 12:24:39 +0100 From: Jon Harrop Organization: Flying Frog Consultancy Ltd. To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] OCaml Summer Project decisions are in Date: Mon, 21 Apr 2008 12:17:34 +0100 User-Agent: KMail/1.9.9 References: <865618.45090.qm@web54601.mail.re2.yahoo.com> <480B6B89.2070403@inria.fr> <480C5D45.7020903@exalead.com> In-Reply-To: <480C5D45.7020903@exalead.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Message-Id: <200804211217.35063.jon@ffconsultancy.com> X-Plusnet-Relay: 3cd25a022cac2d413ec4c2fd0a8abe78 X-Spam: no; 0.00; ocaml:01 berke:01 durak:01 ocaml:01 runtimes:01 fine-grained:01 parallelism:01 mutexes:01 higher-order:01 tpl:01 parallelism:01 frog:98 threads:01 threads:01 wrote:01 On Monday 21 April 2008 10:24:21 Berke Durak wrote: > Many people already have dual cores under their desks, The dual core Athlon64 X2 CPUs used in our machines were released three yea= rs=20 ago. > so quad cores should be the norm in a year or two. Quad cores are already the norm. An *eight* core Dell Precision T7400 now costs only =C2=A31,171. Our deskto= p=20 machines will be replaced with these eight core machines before the end of= =20 this year. > I'd hate to see Ocaml become one of the slower languages. =46or many applications, that already happened. > That way one could embed multiple Ocaml libraries in programs written in > other languages (which could allow easier monetization of Ocaml software > ;). There are many other issues that prevent the commercialization of OCaml=20 libraries. > Also, we could explore alternate paths to paralellism, such as running > multiple Ocaml interpreters/runtimes in different threads with disjoint > heaps. Those threads would run truly in parallel on different CPUs. Communication is too slow for that to be useful outside a few niche=20 applications. > I personally don't believe much in fine-grained parallelism using threads > and locks because it makes the GC difficult, This is certainly a difficult problem but you cannot compete without a=20 concurrent GC now. > relies on the notoriously difficult to use and non-composable > synchronization mechanisms such as locks and mutexes,=20 Locks are actually very usable in F# thanks to the ubiquity of immutable da= ta=20 structures and the availability of higher-order functions. Microsoft's Task Parallel Library (TPL) for .NET makes data parallelism=20 without explicit locks even easier. > doesn't scale to distributed computing, Irrelevant. The vast majority of people have multicore machines and not=20 distributed clusters. Distributed computing may become importantant in=20 desktop machines when we exceed 256 cores but that will not happen in the=20 next decade. > and doesn't run as fast as most people think it would because of bus/cache > contention.=20 With the latest version of .NET, F# now beats OCaml on most benchmarks. > I certainly don't want to discourage anyone from writing a parallel GC! Indeed, a concurrent GC is essential for the survival of the OCaml language= ,=20 whether that culminates from this project or is "borrowed" by OCamlJava. =2D-=20 Dr Jon D Harrop, Flying Frog Consultancy Ltd. http://www.ffconsultancy.com/products/?e