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=none 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 2ACE2BC37 for ; Mon, 28 Sep 2009 14:20:29 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AsMBAEdHwErU4xEIkWdsb2JhbACBUY4LiygBAQEBCQsKBxMDuTYChBwF X-IronPort-AV: E=Sophos;i="4.44,466,1249250400"; d="scan'208";a="36995568" Received: from moutng.kundenserver.de ([212.227.17.8]) by mail1-smtp-roc.national.inria.fr with ESMTP; 28 Sep 2009 14:20:29 +0200 Received: from office1.lan.sumadev.de (dslb-084-059-076-050.pools.arcor-ip.net [84.59.76.50]) by mrelayeu.kundenserver.de (node=mrbap1) with ESMTP (Nemesis) id 0MLA1p-1MsWKX0gt7-0005W6; Mon, 28 Sep 2009 14:20:24 +0200 Received: from [192.168.5.104] (dslb-084-059-076-050.pools.arcor-ip.net [84.59.76.50]) by office1.lan.sumadev.de (Postfix) with ESMTPSA id B50ACC0EFF; Mon, 28 Sep 2009 14:20:23 +0200 (CEST) Subject: Re: [Caml-list] JIT & HLVM, LLVM From: Gerd Stolpmann To: Edgar Friendly Cc: Vincent Aravantinos , caml-list@yquem.inria.fr In-Reply-To: <4ABFA264.7060903@gmail.com> References: <4E6F3027-5745-462D-AF10-30C868285D28@refined-audiometrics.com> <4ABFA264.7060903@gmail.com> Content-Type: text/plain Date: Mon, 28 Sep 2009 14:25:03 +0200 Message-Id: <1254140703.26770.8.camel@flake.lan.gerd-stolpmann.de> Mime-Version: 1.0 X-Mailer: Evolution 2.12.1 Content-Transfer-Encoding: 7bit X-Provags-ID: V01U2FsdGVkX19R8svS0l3IAMzpGESEkRqOvcJU6IcC42f00Gc +DK/N6b3HI4XQrpRCFraBA7MSULUzJM2eYiKIAwO+w0RMOnV5i cvBOpS4BpQCE12RRDhj+A== X-Spam: no; 0.00; gerd:01 stolpmann:01 gerd:01 run-time:01 ocaml:01 compiler:01 runtime:01 compilation:01 ocaml:01 compilation:01 compiler:01 cmx:01 inlining:01 recompiled:01 kloc:01 Am Sonntag, den 27.09.2009, 13:35 -0400 schrieb Edgar Friendly: > Vincent Aravantinos wrote: > > Hi, > > > > I think what Jon means is that, with JIT, polymorphic functions can be > > specialized at run-time > > and allow optimizations that are not currently achieved by the Ocaml > > native code compiler. > > > > V. > > The alternative to specializing at runtime using JIT is to do it at > compile time (/ link time) using a form of whole-program analysis. How > expensive would this be, and how hard would it be to still support > separate compilation? > > And how much would the OCaml world cry if we didn't have fully-separate > compilation? We don't have fully separate compilation anyway (in native mode). The compiler can already dump an intermediate representation of functions into .cmx files, and can use that for cross-module inlining. This feature is optional for the user. Of course, it increases the number of modules that need to be recompiled when something is changed. If we keep that spirit of giving the user a choice: Of course the "Ocaml world" would appreciate when the actual code generation can be delayed in order to gain performance improvements by whole-program analysis. However, for projects with several 100KLOC the compile time could be drastically increased, and I don't think users with such large programs would actually use that feature. Gerd > At the moment, and for the foreseeable future, anything > binary is bound tightly to the compiler version, and binary distribution > of modules seems pretty much impossible due to this and unknown other > factors. How much easier would the above be given the source code / > some intermediate representation to generate specialized code with? > > 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 > -- ------------------------------------------------------------ Gerd Stolpmann, Bad Nauheimer Str.3, 64289 Darmstadt,Germany gerd@gerd-stolpmann.de http://www.gerd-stolpmann.de Phone: +49-6151-153855 Fax: +49-6151-997714 ------------------------------------------------------------