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=1.0 required=5.0 tests=DNS_FROM_RFC_ABUSE, NO_REAL_NAME autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id BFD3ABC54 for ; Thu, 24 Sep 2009 12:01:36 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av0FALTgukqGdRUV/2dsb2JhbACCIY03xhqEGwU X-IronPort-AV: E=Sophos;i="4.44,444,1249250400"; d="scan'208";a="34897239" Received: from pegasus.math.carleton.ca ([134.117.21.21]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 24 Sep 2009 12:01:00 +0200 Received: from pegasus.carleton.ca (pegasus.carleton.ca [127.0.0.1]) by pegasus.math.carleton.ca (Postfix) with ESMTP id 2B17E7FCB27 for ; Thu, 24 Sep 2009 06:00:57 -0400 (EDT) Received: from 70.26.45.183 (SquirrelMail authenticated user kcheung) by pegasus.carleton.ca with HTTP; Thu, 24 Sep 2009 06:00:57 -0400 (EDT) Message-ID: <60112.70.26.45.183.1253786457.squirrel@pegasus.carleton.ca> In-Reply-To: <200909240247.17560.jon@ffconsultancy.com> References: <200909240105.18288.jon@ffconsultancy.com> <4d1b2df20909231701l2248f7f7w841b1d5ece9aa62e@mail.gmail.com> <200909240247.17560.jon@ffconsultancy.com> Date: Thu, 24 Sep 2009 06:00:57 -0400 (EDT) Subject: Re: [Caml-list] OC4MC : OCaml for Multicore architectures From: kcheung@math.carleton.ca To: caml-list@yquem.inria.fr User-Agent: SquirrelMail/1.4.8-4.0.1.el4 MIME-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) Importance: Normal X-Spam: no; 0.00; ocaml:01 ocaml:01 jocaml:01 utime:01 utime:01 deques:01 beginner's:01 bug:01 carleton:98 2009:98 nursery:98 frog:98 beginners:01 wrote:01 caml-list:01 > 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? > > $ ./matmul.th 500 1 > Temp de calcul: utime 2.324145, stime 0.020001, rtime 2.325608 > $ ./matmul.th 500 2 > Temp de calcul: utime 1.780111, stime 0.000000, rtime 0.890797 > $ ./matmul.th 500 3 > Temp de calcul: utime 1.784111, stime 0.004000, rtime 0.608895 > $ ./matmul.th 500 4 > Temp de calcul: utime 1.764110, stime 0.004000, rtime 0.451214 > $ ./matmul.th 500 5 > Temp de calcul: utime 1.768111, stime 0.000000, rtime 0.393285 > $ ./matmul.th 500 6 > Temp de calcul: utime 1.924120, stime 0.004001, rtime 0.333215 > $ ./matmul.th 500 7 > Temp de calcul: utime 1.788112, stime 0.000000, rtime 0.302328 > $ ./matmul.th 500 8 > Temp de calcul: utime 1.992124, stime 0.000000, rtime 0.290383 > > Wow! 2.6x faster on 2 cores is good. ;-) > > That's a really fantastic piece of work. I'll do my best to study it and > write > literature about it. May I ask, can you give a rough overview of the > design? > For example, is there a separate nursery per thread so each thread can > allocate a certain amount before incurring a global pause? Do you have any > ideas for libraries built on top of this, such as a task parallel library > using work-stealing deques? > > Thanks very much!!! > > -- > Dr Jon Harrop, Flying Frog Consultancy Ltd. > http://www.ffconsultancy.com/?e > > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs >