sig
module Stat :
sig
type t =
Core.Core_gc.Stat.t = {
minor_words : float;
promoted_words : float;
major_words : float;
minor_collections : int;
major_collections : int;
heap_words : int;
heap_chunks : int;
live_words : int;
live_blocks : int;
free_words : int;
free_blocks : int;
largest_free : int;
fragments : int;
compactions : int;
top_heap_words : int;
stack_size : int;
}
val bin_size_t : t Bin_prot.Size.sizer
val bin_write_t : t Bin_prot.Map_to_safe.writer
val bin_write_t_ : t Bin_prot.Unsafe_write_c.writer
val bin_read_t : t Bin_prot.Read_ml.reader
val bin_read_t_ : t Bin_prot.Unsafe_read_c.reader
val bin_read_t__ : (int -> t) Bin_prot.Unsafe_read_c.reader
val bin_writer_t : t Bin_prot.Type_class.writer
val bin_reader_t : t Bin_prot.Type_class.reader
val bin_t : t Bin_prot.Type_class.t
val sexp_of_t : t -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> t
end
type stat = Stat.t
module Control :
sig
type t =
Core.Core_gc.Control.t = {
mutable minor_heap_size : int;
mutable major_heap_increment : int;
mutable space_overhead : int;
mutable verbose : int;
mutable max_overhead : int;
mutable stack_limit : int;
mutable allocation_policy : int;
}
val bin_size_t : t Bin_prot.Size.sizer
val bin_write_t : t Bin_prot.Map_to_safe.writer
val bin_write_t_ : t Bin_prot.Unsafe_write_c.writer
val bin_read_t : t Bin_prot.Read_ml.reader
val bin_read_t_ : t Bin_prot.Unsafe_read_c.reader
val bin_read_t__ : (int -> t) Bin_prot.Unsafe_read_c.reader
val bin_writer_t : t Bin_prot.Type_class.writer
val bin_reader_t : t Bin_prot.Type_class.reader
val bin_t : t Bin_prot.Type_class.t
val sexp_of_t : t -> Sexplib.Sexp.t
val t_of_sexp : Sexplib.Sexp.t -> t
end
type control = Control.t
external stat : unit -> stat = "caml_gc_stat"
external quick_stat : unit -> stat = "caml_gc_quick_stat"
external counters : unit -> float * float * float = "caml_gc_counters"
external get : unit -> control = "caml_gc_get"
external set : control -> unit = "caml_gc_set"
external minor : unit -> unit = "caml_gc_minor"
external major_slice : int -> int = "caml_gc_major_slice"
external major : unit -> unit = "caml_gc_major"
external full_major : unit -> unit = "caml_gc_full_major"
external compact : unit -> unit = "caml_gc_compaction"
val print_stat : out_channel -> unit
val allocated_bytes : unit -> float
val finalise : ('a -> unit) -> 'a -> unit
val finalise_release : unit -> unit
type alarm = Core.Core_gc.alarm
val create_alarm : (unit -> unit) -> alarm
val delete_alarm : alarm -> unit
val tune :
?logger:(string -> unit) ->
?minor_heap_size:int ->
?major_heap_increment:int ->
?space_overhead:int ->
?verbose:int ->
?max_overhead:int ->
?stack_limit:int -> ?allocation_policy:int -> unit -> unit
val ounit_tests : unit -> OUnit.test
val without_compactions :
?logger:(string -> unit) -> f:('a -> 'b) -> 'a -> 'b
val ounit_tests : unit -> OUnit.test
end