From: Damien Doligez <damien.doligez@inria.fr>
To: MATTHEW HAMMER <hammer@cs.uchicago.edu>
Cc: caml users <caml-list@inria.fr>
Subject: Re: [Caml-list] GC question.
Date: Thu, 27 Oct 2005 16:25:00 +0200 [thread overview]
Message-ID: <7A88FB83-06B5-41FE-96BA-44718161C24A@inria.fr> (raw)
In-Reply-To: <20051025192045.GB31792@fast-mail.cs.uchicago.edu>
On Oct 25, 2005, at 21:20, MATTHEW HAMMER wrote:
> I'm not certain what style of garbage collection is done in the ocaml
> runtime environment,
Generational with two generations, and incremental for the old
generation.
> but if its generational for example, I'd like to
> move certain values into the 'oldest' generation, so that the garbage
> collector doesn't waste time on them.
The only way to do that is to call Gc.minor, but it won't save any time.
> The running program in question has a large datastructure that is very
> persistent which takes a lot of GC time if it is transversed too
> often.
If it's large, it's going to be in the major heap anyway. If you
don't want the GC to traverse it, you'll have to put it outside the
heap, but it might will require a lot of work. For example, bigarrays
are outside the heap. Or you could write some C code to build your
structure out of malloc blocks, but I'd count that as a desperate
measure.
> So I suppose what I'm asking is: is there a way to give the GC'er
> 'hints' through the Obj module, or any other method?
You can control some parameters with the Gc module, but there's
no way to give hints about a specific piece of data.
-- Damien
next prev parent reply other threads:[~2005-10-27 14:24 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-24 17:53 MATTHEW HAMMER
2005-10-25 18:41 ` [Caml-list] " Damien Doligez
2005-10-25 19:20 ` MATTHEW HAMMER
2005-10-27 14:25 ` Damien Doligez [this message]
-- strict thread matches above, loose matches on Subject: below --
2005-07-05 7:59 dmitry grebeniuk
2005-07-06 7:29 ` [Caml-list] " Jean-Christophe Filliatre
2003-09-08 9:52 [Caml-list] Native compiler support for m68k? Damien Doligez
2003-09-08 20:36 ` [Caml-list] GC Question Christophe Raffalli
2003-09-09 9:32 ` Pierre Weis
2003-09-09 10:40 ` Christophe Raffalli
2003-09-11 15:04 ` Xavier Leroy
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=7A88FB83-06B5-41FE-96BA-44718161C24A@inria.fr \
--to=damien.doligez@inria.fr \
--cc=caml-list@inria.fr \
--cc=hammer@cs.uchicago.edu \
/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).