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=AWL,HTML_MESSAGE 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 824C9BBAF for ; Sat, 26 Sep 2009 19:21:25 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AkUCANPqvUrRVllDlGdsb2JhbACCJi2FHpMRAQEBAQkLCAkTA7lThB4F X-IronPort-AV: E=Sophos;i="4.44,457,1249250400"; d="scan'208,217";a="35054406" Received: from elasmtp-scoter.atl.sa.earthlink.net ([209.86.89.67]) by mail3-smtp-sop.national.inria.fr with ESMTP; 26 Sep 2009 19:21:23 +0200 Received: from [69.254.201.214] (helo=[10.0.1.2]) by elasmtp-scoter.atl.sa.earthlink.net with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.67) (envelope-from ) id 1MraxW-00026a-DU for caml-list@inria.fr; Sat, 26 Sep 2009 13:21:22 -0400 Message-Id: From: David McClain To: caml-list@inria.fr Content-Type: multipart/alternative; boundary=Apple-Mail-1-800574344 Mime-Version: 1.0 (Apple Message framework v936) Subject: HLVM Date: Sat, 26 Sep 2009 10:21:21 -0700 X-Mailer: Apple Mail (2.936) X-ELNK-Trace: 7a0ab3eafc8cf994b22988ad1c62733440683398e744b8a4f211c2134465c054e40430acedf07db1350badd9bab72f9c350badd9bab72f9c350badd9bab72f9c X-Originating-IP: 69.254.201.214 X-Spam: no; 0.00; arrays:01 ocaml:01 arrays:01 ocaml:01 2009:98 04.:98 2009:98 04.:98 native:03 native:03 dbm:03 dbm:03 types:05 types:05 efficient:07 --Apple-Mail-1-800574344 Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Yes, I saw those references already. Still not enough information... What, in particular, sets HLVM apart. Surely not just the native machine types? Are you handling array references in some unusually efficient manner? Are you avoiding unnecessary copy-on-writes of large arrays by some form of whole-program analysis? I still don't have a handle on HLVM... > > http://www.ffconsultancy.com/ocaml/hlvm/ > http://flyingfrogblog.blogspot.com/2009/03/performance-ocaml-vs-hlvm-beta-04.html Dr. David McClain dbm@refined-audiometrics.com --Apple-Mail-1-800574344 Content-Type: text/html; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Yes, I saw those references = already. Still not enough information...

What, in particular, = sets HLVM apart. Surely not just the native machine types?

Are = you handling array references in some unusually efficient manner? Are = you avoiding unnecessary copy-on-writes of large arrays by some form of = whole-program analysis? I still don't have a handle on = HLVM...


http://www.ffconsultancy= .com/ocaml/hlvm/

http://flyingfrogblog.blogspot.com/2009/03/performance-oc= aml-vs-hlvm-beta-04.html


= --Apple-Mail-1-800574344-- 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=AWL autolearn=disabled version=3.1.3 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 2493FBC37 for ; Sun, 27 Sep 2009 18:57:52 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Au8CALM2v0rRVllGgmdsb2JhbACbAgEBCwsIBxUDtyaEHgU X-IronPort-AV: E=Sophos;i="4.44,461,1249250400"; d="scan'208";a="47381242" Received: from elasmtp-banded.atl.sa.earthlink.net ([209.86.89.70]) by mail4-smtp-sop.national.inria.fr with ESMTP; 27 Sep 2009 18:57:51 +0200 Received: from [69.254.201.214] (helo=[10.0.1.2]) by elasmtp-banded.atl.sa.earthlink.net with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.67) (envelope-from ) id 1Mrx4I-0002TG-HP for caml-list@inria.fr; Sun, 27 Sep 2009 12:57:50 -0400 Message-Id: <3A5DD7BA-C2C1-4775-9566-70EE25AE74B9@refined-audiometrics.com> From: David McClain To: caml-list@inria.fr Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v936) Subject: HLVM Date: Sun, 27 Sep 2009 09:57:49 -0700 X-Mailer: Apple Mail (2.936) X-ELNK-Trace: 7a0ab3eafc8cf994b22988ad1c62733440683398e744b8a42832553d458d69a4ff861def3ad38214350badd9bab72f9c350badd9bab72f9c350badd9bab72f9c X-Originating-IP: 69.254.201.214 X-Spam: no; 0.00; speedups:01 statically:01 ocaml:01 compiler:01 dbm:03 dbm:03 compiled:04 intimately:04 seem:08 target:91 obvious:10 end:12 question:13 mcclain:13 mcclain:13 Wow! Thanks for that much more substantive feedback on HLVM. I am not intimately familiar with LLVM. I am surprised that JIT can offer speedups over statically compiled code. And forgive me for asking what may seem a question with an obvious answer... but now don't you also have to change the OCaml compiler back end to target the HLVM? Dr. David McClain dbm@refined-audiometrics.com 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.1 required=5.0 tests=AWL,HTML_MESSAGE autolearn=disabled version=3.1.3 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 03957BC37 for ; Sun, 27 Sep 2009 20:06:58 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvACABtHv0rRVllEgmdsb2JhbACCVJgvAQELCwgHFQO3D4QeBQ X-IronPort-AV: E=Sophos;i="4.44,461,1249250400"; d="scan'208,217";a="47384199" Received: from elasmtp-masked.atl.sa.earthlink.net ([209.86.89.68]) by mail4-smtp-sop.national.inria.fr with ESMTP; 27 Sep 2009 20:06:46 +0200 Received: from [69.254.201.214] (helo=[10.0.1.2]) by elasmtp-masked.atl.sa.earthlink.net with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.67) (envelope-from ) id 1Mry8z-0007uU-3f for caml-list@inria.fr; Sun, 27 Sep 2009 14:06:45 -0400 Message-Id: From: David McClain To: caml-list@inria.fr Content-Type: multipart/alternative; boundary=Apple-Mail-2-889698011 Mime-Version: 1.0 (Apple Message framework v936) Subject: HLVM... Date: Sun, 27 Sep 2009 11:06:44 -0700 X-Mailer: Apple Mail (2.936) X-ELNK-Trace: 7a0ab3eafc8cf994b22988ad1c62733440683398e744b8a4a82d358d32af07e41e34797ed1fe4c2b350badd9bab72f9c350badd9bab72f9c350badd9bab72f9c X-Originating-IP: 69.254.201.214 X-Spam: no; 0.00; wikipedia:01 runtime:01 statically:01 wikipedia:01 runtime:01 statically:01 wiki:01 sans-serif:98 sans-serif:98 dynamically:01 dynamically:01 compile:01 compile:01 functions:01 functions:01 --Apple-Mail-2-889698011 Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Interesting quote from a Wikipedia article on JIT compiling... "...For instance, most Common Lisp systems have a compile function which can compile new functions created during the run. This provides many of the advantages of JIT, but the programmer, rather than the runtime, is in control of what parts of the code are compiled. This can also compile dynamically generated code, which can, in many scenarios, provide substantial performance advantages over statically compiled code, as well as over most JIT systems." Dr. David McClain dbm@refined-audiometrics.com --Apple-Mail-2-889698011 Content-Type: text/html; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Interesting quote from a = Wikipedia article on JIT compiling...

"...For instance, most Common Lisp systems = have a compile function which can compile new = functions created during the run. This provides many of the advantages = of JIT, but the programmer, rather than the runtime, is in control of = what parts of the code are compiled. This can also compile dynamically = generated code, which can, in many scenarios, provide substantial = performance advantages over statically compiled code, as well as over = most JIT systems."


= --Apple-Mail-2-889698011-- 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.1 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 8ED9EBC57 for ; Mon, 28 Sep 2009 00:09:05 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArwBAOJ+v0rRVllAgGdsb2JhbACbAgEBCwsKBRUDtmSEHgU X-IronPort-AV: E=Sophos;i="4.44,461,1249250400"; d="scan'208";a="33648151" Received: from elasmtp-curtail.atl.sa.earthlink.net ([209.86.89.64]) by mail2-smtp-roc.national.inria.fr with ESMTP; 28 Sep 2009 00:09:05 +0200 Received: from [69.254.201.214] (helo=[10.0.1.2]) by elasmtp-curtail.atl.sa.earthlink.net with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.67) (envelope-from ) id 1Ms1vT-0002Zj-Vy for caml-list@inria.fr; Sun, 27 Sep 2009 18:09:04 -0400 Message-Id: <2084D077-4ACC-4054-9DFF-A4B23F76BA31@refined-audiometrics.com> From: David McClain To: caml-list@inria.fr Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v936) Subject: HLVM... Date: Sun, 27 Sep 2009 15:09:02 -0700 X-Mailer: Apple Mail (2.936) X-ELNK-Trace: 7a0ab3eafc8cf994b22988ad1c62733440683398e744b8a499e31bf311a7608fd7967c5043cf9d19350badd9bab72f9c350badd9bab72f9c350badd9bab72f9c X-Originating-IP: 69.254.201.214 X-Spam: no; 0.00; integers:01 transitions:01 arithmetic:01 explicitly:02 native:03 dbm:03 dbm:03 overflow:03 implicitly:05 converting:05 modulo:07 rather:08 machine:09 addressing:10 mcclain:13 ... remember too, in signal and image processing applications, converting to raw machine integers and plowing ahead is often counterproductive. Rather we need saturating arithmetic to avoid abrupt transitions on overflow conditions, or modulo addressing. Neither of these is native to SSM, and have to be synthesized. DSP chips on the other hand almost always offer these variations implicitly or explicitly. Dr. David McClain dbm@refined-audiometrics.com