]> matita.cs.unibo.it Git - helm.git/commitdiff
CicEnvironment is emptied when a size treshold is reached.
authorClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Tue, 11 Apr 2006 10:02:32 +0000 (10:02 +0000)
committerClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Tue, 11 Apr 2006 10:02:32 +0000 (10:02 +0000)
components/binaries/utilities/test_library.ml

index 5cfb7c3487276e2d38f85229e5da13dacd86a7be..635b6bbd4d40533834b15d03ca789e28740bc32d 100644 (file)
@@ -87,6 +87,15 @@ let _ =
         ignore (Unix.alarm deadline);
         ignore (CicTypeChecker.typecheck uri);
         ignore (Unix.alarm 0);
+        let memusage = (Gc.stat ()).Gc.live_words * 4 / 1024 / 1024 in
+        if memusage > 500 then
+         begin
+          prerr_endline ("MEMORIA ALLOCATA: " ^ string_of_int memusage ^ "Mb");
+          CicEnvironment.empty ();
+          Gc.compact ();
+          let memusage = (Gc.stat ()).Gc.live_words * 4 / 1024 / 1024 in
+            prerr_endline ("DOPO CicEnvironment.empty: " ^ string_of_int memusage ^ "Mb");
+         end;
         let after = Unix.gettimeofday () in
         let diff = after -. before in
         new_total := !new_total +. diff;