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
Different GCs for OCaml
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2000-08-04 (17:59)
From: Xavier Leroy <Xavier.Leroy@i...>
Subject: Re: Different GCs for OCaml
> By the way, did anybody succesfully applied a different
> GC to OCaml?

I haven't heard of it, and that would be a major undertaking.  It's
like hand surgery: in principle, it is possible to reconnect a hand to
a wrist; in practice, there are so many tendons, nerves and vessels to

> I've tried to add parallelism -- more specifically, to collect
> major heap in a separate thread -- but failed to do so:
> as usually with parallel programs, I've got lots of bugs that
> were just nightmare to track down.

GC bugs are also quite a nightmare...

> So, after two weeks of trying, I just abandoned this, with hope
> to return to this some day. 

Damien Doligez's PhD thesis was precisely on a concurrent collector in
the style of OCaml's collector.  (Actually, this is backwards: the
concurrent collector was designed first, and the current OCaml
incremental GC was derived from it.)  The two POPL papers and the
dissertation available from http://pauillac.inria.fr/~doligez/caml-guts/
give a good idea of how difficult efficient concurrent collection is.

- Xavier Leroy