English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis à jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l'adresse ocaml.org.

Browse thread
[Caml-list] Stopping a value from getting GC'd
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2005-08-18 (17:13)
From: skaller <skaller@u...>
Subject: Re: [Caml-list] Cost of register_global_root (was: Stopping a value from getting GC'd)
On Wed, 2005-08-17 at 23:57 -0400, Markus Mottl wrote:
> On 8/17/05, Nathaniel Gray <n8gray@gmail.com> wrote:
> > One thing that the FM doesn't mention is how expensive it is to
> > register a global root.  Can I register thousands of them or will
> > there be performance problems?
> There is a severe performance penalty for registering many thousands
> of roots as I have seen in one of our applications.  AFAIK, they are
> scanned at each minor collection.  This will drive up CPU-usage even
> if your program doesn't do much otherwise.  Maybe the GC could be
> improved in that area.

Why not just put the pointers into a (reachable) hashtable?

John Skaller <skaller at users dot sourceforge dot net>