From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id p3DDAHup022834 for ; Wed, 13 Apr 2011 15:10:17 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AnkAAJqfpU2B1w3NkWdsb2JhbACETaFJFAEBAQEJCwsHFAUgshKRK4Epg014BA X-IronPort-AV: E=Sophos;i="4.64,204,1301868000"; d="scan'208";a="105558282" Received: from nougat.ucs.ed.ac.uk ([129.215.13.205]) by mail1-smtp-roc.national.inria.fr with ESMTP; 13 Apr 2011 15:10:11 +0200 Received: from lmtp1.ucs.ed.ac.uk (lmtp1.ucs.ed.ac.uk [129.215.149.64]) by nougat.ucs.ed.ac.uk (8.13.8/8.13.4) with ESMTP id p3DDA0r8019063; Wed, 13 Apr 2011 14:10:00 +0100 (BST) Received: from 207-237-107-105.c3-0.nyr-ubr1.nyr.ny.cable.rcn.com (207-237-107-105.c3-0.nyr-ubr1.nyr.ny.cable.rcn.com [207.237.107.105]) (authenticated user=ldixon mech=PLAIN bits=0) by lmtp1.ucs.ed.ac.uk (8.13.8/8.13.7) with ESMTP id p3DD9xmp007735 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT); Wed, 13 Apr 2011 14:10:00 +0100 (BST) Message-ID: <4DA5A0A7.407@inf.ed.ac.uk> Date: Wed, 13 Apr 2011 09:09:59 -0400 From: Lucas Dixon User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9 MIME-Version: 1.0 To: Gerd Stolpmann CC: caml-list@inria.fr References: <2054357367.219171.1300974318806.JavaMail.root@zmbs4.inria.fr> <4D8BD02D.1010505@inria.fr> <4DA51A28.1060709@inf.ed.ac.uk> <1302699676.8429.1216.camel@thinkpad> In-Reply-To: <1302699676.8429.1216.camel@thinkpad> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Edinburgh-Scanned: at nougat.ucs.ed.ac.uk with MIMEDefang 2.60, Sophie, Sophos Anti-Virus, Clam AntiVirus X-Scanned-By: MIMEDefang 2.60 on 129.215.13.205 X-Scanned-By: MIMEDefang 2.52 on 129.215.149.64 Content-Disposition: inline Subject: Re: [Caml-list] Efficient OCaml multicore -- roadmap? On 13/04/2011 09:01, Gerd Stolpmann wrote: > Am Dienstag, den 12.04.2011, 23:36 -0400 schrieb Lucas Dixon: >> On 24/03/2011 19:13, Fabrice Le Fessant wrote: >>> On 03/24/2011 02:45 PM, Alexy Khrabrov wrote: >>>>> Where does the OCaml team stand on the multicore issues? A year >>>>> or so ago, when there was a prototype parallel GC implementation, >>>>> IIRC, Xavier said it has to be done right. So what are the >>>>> official plans and the status of integrating what volunteers had >>>>> done? >>>>> >>>>> WIth Scala having a robust actors model and AKKA kernel, and >>>>> Clojure built around efficient shared memory concurrency with >>>>> agents and references and STM, and Haskell also really parallel, >>>>> OCaml is lacking behind. Furthermore, F# builds on strongly >>>>> parallel .NET, overcoming granddaddy. With multicores common >>>>> even in laptops and iPads, we need an efficient multicore OCaml! >>>>> Due to the model different from Haskell or Scala and Clojure, now >>>>> all on github, OCaml is both more stable and also is slower to >>>>> advance -- what do folks think about this situation? How do you >>>>> do shared memory parallelism now? >>>>> >>>>> Cheers, Alexy >>>>> >> >> The PolyML implementation of SML has had a multi-core runtime, without >> slowing down single-threaded programs for a few years now. > > How do you know that there are no slow-downs? Has it ever been tried to > get rid of all additional measures that are necessary to support > multicore? There might be e.g. architectural simplifications that would > lead to speed-ups for the single-threaded case. Before it was introduced, PolyML was single-threaded. We compared running on the single-thread version of PolyML against using a single thread in the multi-threaded version. It may be that some optimisations were also introduced that cancelled out a slowdown from the multi-threaded version, but I can't remember anyone mentioning this. best, lucas -- The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336.