caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Alain Frisch <alain@frisch.fr>
To: caml-list <caml-list@inria.fr>
Subject: Help needed for benchmarking OCaml on AMD64
Date: Mon, 21 Apr 2008 16:40:40 +0200	[thread overview]
Message-ID: <480CA768.702@frisch.fr> (raw)

Hello,

The new native dynamic linking feature requires some changes in the code
generator for (non-Windows) AMD64 targets. Currently, this change is 
enabled by passing the -dlcode option to ocamlopt. A module which has 
not been compiled with this option cannot be dynlinked.

Because -dlcode is only needed for AMD64 and it didn't exist before, 
most 3rd party libraries will likely not include this flag in their 
build system any time soon and they will thus be impossible to dynlink. 
This is not very satisfactory.

A question to be answered before the release of OCaml 3.11 is whether 
this option should be enabled by default (and maybe provide another 
option to disable the new behavior). The only reason not to do so would 
be a degradation of performance. I haven't observed any difference on 
small benchmarks I did some months ago, but I'd like to collect more 
benchmarking data before enabling -dlcode by default.

It would be great if some people could checkout the current CVS tree and
try to compile and run their time-consuming programs with or without 
-dlcode on AMD64 systems, and report what they found out. I expect 
potential differences to appear only for functionally intensive code (a 
lot of inter or intra module function calls). To help benchmarking, the 
current CVS includes the following hack: if the environment variable 
OCAML_DLCODE is set to a non-empty value, ocamlopt behaves as if -dlcode 
were enabled. It is thus trivial to recompile (e.g. via GODI) any 3rd 
party library which your code may depend on.


Any help will be appreciated!

Alain


                 reply	other threads:[~2008-04-21 14:40 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=480CA768.702@frisch.fr \
    --to=alain@frisch.fr \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).