From 3782c3006266f3faea8c84aecc6a3585ab7e43b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20B=C3=BChler?= <david.buhler@cea.fr> Date: Thu, 5 Dec 2024 13:38:08 +0100 Subject: [PATCH] [Eva] Fine-tuning of the Ocaml GC, tested on several analyses from OSCS. --- src/plugins/eva/engine/analysis.ml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/plugins/eva/engine/analysis.ml b/src/plugins/eva/engine/analysis.ml index c0ea1e2ca83..3ba7dcb4234 100644 --- a/src/plugins/eva/engine/analysis.ml +++ b/src/plugins/eva/engine/analysis.ml @@ -177,9 +177,16 @@ let () = ~user_only:true (fun _ -> reset_analyzer ()); Project.register_after_global_load_hook reset_analyzer +let tune_gc () = + if Sys.ocaml_release.major >= 5 then + let minor_heap_size = 8192000 in + let space_overhead = 40 in + Gc.(set { (get ()) with minor_heap_size; space_overhead; }) + (* Builds the analyzer if needed, and run the analysis. *) let force_compute () = Ast.compute (); + tune_gc (); Parameters.configure_precision (); if not (Kernel.AuditCheck.is_empty ()) then Eva_audit.check_configuration (Kernel.AuditCheck.get ()); -- GitLab