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=4.8 required=5.0 tests=DNS_FROM_RFC_POST, DNS_FROM_SECURITYSAGE,SPF_NEUTRAL 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 A4EB0BBAF for ; Mon, 20 Oct 2008 10:15:31 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AooFALra+0jB/BYdY2dsb2JhbACMHYdGFwsICBAFpQuBKIVfg2w X-IronPort-AV: E=Sophos;i="4.33,450,1220220000"; d="scan'208";a="18285942" Received: from discorde.inria.fr ([192.93.2.38]) by mail3-smtp-sop.national.inria.fr with ESMTP; 20 Oct 2008 10:15:31 +0200 Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id m9K8FSlW031504 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Mon, 20 Oct 2008 10:15:31 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AooFALra+0jB/BYdY2dsb2JhbACMHYdGFwsICBAFpQuBKIVfg2w X-IronPort-AV: E=Sophos;i="4.33,450,1220220000"; d="scan'208";a="18285941" Received: from smtp20.orange.fr ([193.252.22.29]) by mail3-smtp-sop.national.inria.fr with ESMTP; 20 Oct 2008 10:15:30 +0200 Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf2014.orange.fr (SMTP Server) with ESMTP id 7A3421C000A9; Mon, 20 Oct 2008 10:15:30 +0200 (CEST) Received: from [192.168.1.66] (APuteaux-154-1-52-164.w81-249.abo.wanadoo.fr [81.249.3.164]) by mwinf2014.orange.fr (SMTP Server) with ESMTP id 4201C1C000A8; Mon, 20 Oct 2008 10:15:30 +0200 (CEST) X-ME-UUID: 20081020081530270.4201C1C000A8@mwinf2014.orange.fr Message-ID: <48FC3E20.2090206@gmail.com> Date: Mon, 20 Oct 2008 10:15:28 +0200 From: Alain User-Agent: Thunderbird 2.0.0.17 (Windows/20080914) MIME-Version: 1.0 To: David Allsopp Cc: "'Andres Varon'" , "'OCaml Mailing List'" Subject: Re: [Caml-list] ocamlopt performance in 3.11 References: <57EBE30ABB324436B98173D41A9473CA@countertenor> <273232B4-E482-4B0A-A4D1-B9B5876FDD60@gmail.com> <30A4D55DA6F848278426563E47BE9A43@countertenor> In-Reply-To: <30A4D55DA6F848278426563E47BE9A43@countertenor> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at discorde with ID 48FC3E20.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; ocamlopt:01 ocamlopt:01 makefiles:01 dynlink:01 cmx:01 -shared:01 dynlink:01 makefiles:01 wrote:01 compile:01 compile:01 caml-list:01 alain:01 alain:01 binary:02 David Allsopp wrote: > OK, so I've tried using the -nodynlink option with all calls to ocamlopt and > spotted *no* timing difference. A quick binary comparison of the EXE > produced reveals that ocamlopt -nodynlink is making ABSOLUTELY NO difference > in the resulting code. -nodynlink only makes a difference for the AMD64 backend. It is accepted by ocamlopt for all ports in order to simplify Makefiles. > While I can see a benefit to having native code compile for use with dynlink > by default, given the performance hit I'm seeing, wouldn't it be better in > terms of backwards compatibility if you had to specify, say, -fordynlink in > order to compile a .cmx (and, presumably more importantly, .o file) for use > with ocamlopt -shared? There were reasonable arguments for turning the "ready for dynlink" behavior on by default, namely that nobody would do it otherwise in the Makefiles of their distributed libraries since it is required only on one port. Also, according to a few benchmarks, the impact on performance is very limited. -- Alain