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.3 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 mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id 1F257BBAF for ; Thu, 24 Sep 2009 13:41:11 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgMCACP4ukrUnwdji2dsb2JhbACCIZhgAQEBCgsKBxEGumGEGwU X-IronPort-AV: E=Sophos;i="4.44,445,1249250400"; d="scan'208";a="33430600" Received: from relay.pcl-ipout01.plus.net ([212.159.7.99]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 24 Sep 2009 13:41:10 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvgFAPb3ukrUnw6U/2dsb2JhbACCIdN+hBsF Received: from fhw-relay07.plus.net ([212.159.14.148]) by relay.pcl-ipout01.plus.net with ESMTP; 24 Sep 2009 12:41:10 +0100 Received: from [87.114.87.187] (helo=leper.local) by fhw-relay07.plus.net with esmtp (Exim) id 1MqmhC-0005x4-1f for caml-list@yquem.inria.fr; Thu, 24 Sep 2009 12:41:10 +0100 From: Jon Harrop Organization: Flying Frog Consultancy Ltd. To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] OC4MC : OCaml for Multicore architectures Date: Thu, 24 Sep 2009 12:52:24 +0100 User-Agent: KMail/1.9.9 References: <200909240247.17560.jon@ffconsultancy.com> <60112.70.26.45.183.1253786457.squirrel@pegasus.carleton.ca> In-Reply-To: <60112.70.26.45.183.1253786457.squirrel@pegasus.carleton.ca> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200909241252.24209.jon@ffconsultancy.com> X-Plusnet-Relay: e219e584e80cae28ce8895b3b8a4c199 X-Spam: no; 0.00; ocaml:01 ocaml:01 jocaml:01 jocaml:01 parallelism:01 parallelism:01 2009:98 carleton:98 2009:98 frog:98 threads:01 wrote:01 wrote:01 caml-list:01 latency:01 On Thursday 24 September 2009 11:00:57 kcheung@math.carleton.ca wrote: > > On Thursday 24 September 2009 01:01:58 you wrote: > > > > No problem. I'll be happy to get anything working! > > > > Following your advice, it seems to work perfectly now: > > I'm not too familiar with concurrency in ocaml. > How does OC4MC compare with JoCaml? JoCaml is all about concurrency: minimizing latency. Oc4mc is all about parallelism: maximizing throughput. Until now, OCaml sucked at parallelism. You can sometimes obtain some parallelism by forking threads but it is asymptotically slower than using shared memory. Consequently, oc4mc is a hugely-important development in the OCaml world because it means that OCaml programmers can write OCaml programs that use multicore machines efficiently for the first time. The next steps are to get oc4mc into the apt repositories and build some libraries that make parallelism easier (like Microsoft's Task Parallel Library). -- Dr Jon Harrop, Flying Frog Consultancy Ltd. http://www.ffconsultancy.com/?e