From: "Jean-Christophe Filliâtre" <Jean-Christophe.Filliatre@lri.fr>
To: forum@x9c.fr
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] Questions on replacing finalizers and memory footprints
Date: Fri, 07 Dec 2007 20:54:41 +0100 [thread overview]
Message-ID: <4759A501.7070809@lri.fr> (raw)
In-Reply-To: <1197026328.47592c1859829@imp.ovh.net>
forum@x9c.fr a écrit :
>> Indeed. However, note that it uses internally a hash table to store
>> blocks already considered (in order to correctly account for sharing),
>> and thus it is potentially incorrect if the GC moves some blocks during
>> the count, for instance during a resizing of the hash table (which
>> triggers the GC). I don't know how to avoid this issue; any help is welcome.
>
> Sorry for the noise but doesn't this mean that the "size" function may not
> terminate ?
No, simply that it may count a same block several times, because it was
moved by the GC during a resizing of the hash table, between the first
time it was seen and the next time it is reached from another block.
So you may only overestimate the size of the data. It should not fail,
and should terminate, even on cyclic values.
Jon is reporting segfaults, though, so there must be a bug somewhere in
my code (which uses Obj for obvious reasons). I'll have a look at it if
Jon is able to send some faulty application.
--
Jean-Christophe Filliâtre
http://www.lri.fr/~filliatr/
next prev parent reply other threads:[~2007-12-07 19:54 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-06 11:12 Thomas Fischbacher
2007-12-06 12:51 ` [Caml-list] " dmitry grebeniuk
2007-12-06 14:26 ` Richard Jones
2007-12-06 14:57 ` Thomas Fischbacher
2007-12-06 16:50 ` Jon Harrop
2007-12-06 21:33 ` forum
2007-12-07 8:52 ` Xavier Leroy
2007-12-07 10:44 ` Jean-Christophe Filliâtre
2007-12-07 10:35 ` Jon Harrop
2007-12-07 11:18 ` forum
2007-12-07 19:54 ` Jean-Christophe Filliâtre [this message]
2007-12-07 21:01 ` forum
2007-12-08 9:57 ` Alexandre Pilkiewicz
2007-12-08 14:20 ` Benjamin Canou
2007-12-07 20:31 ` Christophe Raffalli
2008-01-23 12:08 ` Hendrik Tews
2007-12-07 11:31 ` Berke Durak
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=4759A501.7070809@lri.fr \
--to=jean-christophe.filliatre@lri.fr \
--cc=caml-list@inria.fr \
--cc=forum@x9c.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