[ocaml-platform] [Caml-list] Package compilation and debug mode
whitequark
whitequark at whitequark.org
Mon Mar 14 07:53:20 GMT 2016
On 2016-03-14 10:19, Mark Shinwell wrote:
> There is a performance penalty with -g: it makes the raising of
> exceptions slower (due to recording of backtraces). I think that may
> be the only difference at present, though I'm not completely sure.
This penalty is only present with OCAMLRUNPARAM=b, which is now on by
default. This is a good thing, because lack of backtraces is something
100% of newcomers trip over; and anyone who dislikes the penalty
can trivially turn it off.
However, -g also inhibits some optimizations along with adding debug
info.
So it is still not free.
IMO there should be another option, something like -debug-info, that is
equivalent to -g but does not inhibit any optimizations. Then it would
be enabled by default.
>
> Mark
>
> On 13 March 2016 at 19:16, Ivan Gotovchits <ivg at ieee.org> wrote:
>> It looks like, that currently the `-g` option has no performance cost
>> at all (correct me if I’m wrong). Presumably, there is some increase
>> in the package size, but who cares. With these premises, I think it
>> would be a good policy to distribute packages with `-g` flag enabled.
>>
>>> On Mar 12, 2016, at 4:35 PM, Daniel Bünzli
>>> <daniel.buenzli at erratique.ch> wrote:
>>>
>>> Hello,
>>>
>>> I'd like to know what the consensus is about distributing packages
>>> that always compile in debug mode. It seems that some persons do want
>>> to have debug always enabled [1,2], but the discussion is not clear
>>> cut [1].
>>>
>>> By default all my packages are released with -g disabled. It seems
>>> easy enough to have an opam switch (even the official one) that
>>> automatically enables the flag.
>>>
>>> So I think OCaml's opam repository should have a policy here. The
>>> answer should also take system package managers into account since
>>> those pull directly from the tarballs (if this document [3] is still
>>> in use for debian it seems they do require compilation with debug
>>> mode).
>>>
>>> Personally I don't have an opinion about it, I'm rather seeking an
>>> answer here.
>>>
>>> Best,
>>>
>>> Daniel
>>>
>>> [1] http://caml.inria.fr/mantis/view.php?id=6728
>>> [2] http://rgrinberg.com/blog/2016/02/26/opam-package-checklist/
>>> [3]
>>> http://pkg-ocaml-maint.alioth.debian.org/ocaml_packaging_policy.html/c305.html#AEN307
>>>
>>>
>>>
>>> --
>>> Caml-list mailing list. Subscription management and archives:
>>> https://sympa.inria.fr/sympa/arc/caml-list
>>> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>>> Bug reports: http://caml.inria.fr/bin/caml-bugs
>>
>>
>> --
>> Caml-list mailing list. Subscription management and archives:
>> https://sympa.inria.fr/sympa/arc/caml-list
>> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>> Bug reports: http://caml.inria.fr/bin/caml-bugs
--
whitequark
More information about the Platform
mailing list