Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] Garbage collector and memory fragmentation
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Martin Jambon <m.jambon@i...>
Subject: Re: [Caml-list] Garbage collector and memory fragmentation
At 12:22 24/05/02 +0200, Markus Mottl wrote:
>On Fri, 24 May 2002, francois bereux wrote:
> > My question is : does a garbage collector (for instance the one in
> > OCaml) deal with this kind of issues ( defragmentation of the memory )
> > in a situation similar to mine : many small lists of elements ?
>
>The GC employed by OCaml is able to compact the heap, which means
>it essentially defragments memory. You can parameterize it with the
>frequency of such compactions (they are very expensive), turn them off
>completely or force them manually. Take a look at the interface of the
>Gc-module in the distribution for more details.

Il y a 2 options :
  - compaction automatique dès que l'espace de mémoire inutilisé dépasse x 
% (en utilisant Gc.set et en spécifiant le champ max_overhead : Gc.set { 
(Gc.get ()) with Gc.max_overhead = 200 };;)
  - compaction explicite par appel à Gc.compact de temps en temps.

La première solution est la plus élégante, mais il y a un bug (cf. bug 
report numero 1111) qui apparaît dans certains cas de figure non 
déterminés. Je tenais juste à vous l'indiquer au cas où vous tomberiez 
dessus...

Martin

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners