From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 2FD92BC57 for ; Wed, 17 Nov 2010 14:41:08 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AnUCAHZq40zRVaC0k2dsb2JhbACUEYYoAYgCCBUBAQEBCQkKCREDH6Z7iWKCGIUKLohZAQEDBYVGBIpY X-IronPort-AV: E=Sophos;i="4.59,211,1288566000"; d="scan'208";a="78778192" Received: from mail-gy0-f180.google.com ([209.85.160.180]) by mail4-smtp-sop.national.inria.fr with ESMTP; 17 Nov 2010 14:41:07 +0100 Received: by gyg8 with SMTP id 8so1067601gyg.39 for ; Wed, 17 Nov 2010 05:41:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type; bh=hpb9hJEuXs6F/nUqCUN1XnEn8IBLIGBjmK3kd3s2RuM=; b=Su6vw8GfTzP88s0cf1ziXvJ6noNK/78VKVj9Pi0j9B/iP9mdAbBSzJEaP09y/SV3zi 2JlYZTAsNeCjeyGSegC53tpUdy0RSR6yALBvZ4fJcMA/vqJ5tmHCVIVGUNtnk3HDGFCC DKC4i3ZPmNh1kVfS0VyGiBADBRlgOtLpypFzY= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=vB2JajQ3GoyGNMxnwYJlE6Ig4WaQSOY5xLWJEna8f9A4nWeYU5QYy7wwHFwypv9xrd VyMv9Q5/ZO1Ti7CA+F0zI0t4NckCcaLW5rURbIktOsoZL2nURUp5rMF5IncaLG3aJW7Z RwOKkEhgJYqMpDt2v79AI7Ei57rBB8PvG6t2c= MIME-Version: 1.0 Received: by 10.91.7.15 with SMTP id k15mr11528691agi.167.1290001265426; Wed, 17 Nov 2010 05:41:05 -0800 (PST) Received: by 10.91.154.3 with HTTP; Wed, 17 Nov 2010 05:41:05 -0800 (PST) In-Reply-To: <20101117065011.GA2754@kerneis.info> References: <20101115182737.42b8dcae@loki.yggdrasil.draxit.de> <4CE228CA.3030503@gmail.com> <1289927042.16005.176.camel@thinkpad> <1289945605.16005.205.camel@thinkpad> <02be01cb860a$208f7aa0$61ae6fe0$@com> <20101117065011.GA2754@kerneis.info> Date: Wed, 17 Nov 2010 15:41:05 +0200 Message-ID: Subject: Re: [Caml-list] SMP multithreading From: Eray Ozkural To: Eray Ozkural , Jon Harrop , caml-list@yquem.inria.fr Content-Type: multipart/alternative; boundary=0016362841562f86c304953fd346 X-Spam: no; 0.00; eray:01 ozkural:01 0200,:01 eray:01 ozkural:01 doable:01 ocaml:01 compiler:01 pointer:01 compiler:01 gcc:01 ocaml:01 bilkent:01 0200,:01 doable:01 --0016362841562f86c304953fd346 Content-Type: text/plain; charset=ISO-8859-1 On Wed, Nov 17, 2010 at 8:50 AM, Gabriel Kerneis wrote: > On Wed, Nov 17, 2010 at 06:27:14AM +0200, Eray Ozkural wrote: > > As I said even in C good results can be achieved, I've seen that, so I > > know it's doable with ocaml, just a difficult kind of compiler. The > > functional features would expose more concurrency. > > Could you share a pointer to a paper describing this compiler? > > I can't reveal much, but just to point out that there are indeed more sophisticated compilers than gcc: http://www.research.ibm.com/vliw/compiler.html So, uh, there are compilers that turn loops into threads, and also parallelize independent blocks.... Both coarse-grain and fine-grain parallelization strategies in existing compiler research can be effectively applied to the multi-core architectures. In fact, some of the more advanced compilers (like that of the RAW architecture) must be able to target it already, but who knows. :) Just consider that most of the parallelization technology is language independent, they can be applied to any imperative language. So, would such a thing be able to work on ocaml generated binaries? Most definitely, I believe, it is in principle possible to start from the sequential binary and emit parallel code! Best, -- Eray Ozkural, PhD candidate. Comp. Sci. Dept., Bilkent University, Ankara http://groups.yahoo.com/group/ai-philosophy http://myspace.com/arizanesil http://myspace.com/malfunct --0016362841562f86c304953fd346 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Wed, Nov 17, 2010 at 8:50 AM, Gabriel Kerneis <kerneis@pps.jussieu.fr>= wrote:
On Wed, Nov 17, 2010 at 06:27:14AM +0200, Eray Ozkural wr= ote:
> As I said even in C good results can be achieved, I've seen that, = so I
> know it's doable with ocaml, just a difficult kind of compiler. Th= e
> functional features would expose more concurrency.

Could you share a pointer to a paper describing this compiler?


I can't reveal much, but just to point out th= at there are indeed more sophisticated compilers than gcc:
http://www.research.ibm.com/v= liw/compiler.html=A0

So, uh, there are compilers that turn loops into threads, and also para= llelize independent blocks.... Both coarse-grain and fine-grain paralleliza= tion strategies in existing compiler research can be effectively applied to= the multi-core architectures. In fact, some of the more advanced compilers= (like that of the RAW architecture) must be able to target it already, but= who knows. :) Just consider that most of the parallelization technology is= language independent, they can be applied to any imperative language. So, = would such a thing be able to work on ocaml generated binaries? Most defini= tely, I believe, it is in principle possible to start from the sequential b= inary and emit parallel code!

Best,


--
Eray Ozkural, PhD can= didate.=A0 Comp. Sci. Dept., Bilkent University, Ankara
http://groups.yahoo.com/group/ai-ph= ilosophy
http://myspace.com/arizanesil= http://myspace.com/malfunct
--0016362841562f86c304953fd346--