type stat = {
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;
forced_major_collections : int;
}
type control = {
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;
window_size : int;
custom_major_ratio : int;
custom_minor_ratio : int;
custom_minor_max_size : int;
}
val quick_stat : unit -> stat
val counters : unit -> float * float * float
val minor_words : unit -> float
val major_slice : int -> int
val full_major : unit -> unit
val compact : unit -> unit
val allocated_bytes : unit -> float
val get_minor_free : unit -> int
val get_bucket : int -> int
val get_credit : unit -> int
val huge_fallback_count : unit -> int
val finalise : ('a -> unit) -> 'a -> unit
val finalise_last : (unit -> unit) -> 'a -> unit
val finalise_release : unit -> unit
val create_alarm : (unit -> unit) -> alarm
val delete_alarm : alarm -> unit
val eventlog_pause : unit -> unit
val eventlog_resume : unit -> unit