package hack_parallel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type config = {
  1. global_size : int;
  2. heap_size : int;
  3. dep_table_pow : int;
  4. hash_table_pow : int;
  5. shm_dirs : string list;
  6. shm_min_avail : int;
  7. log_level : int;
}
type handle = private {
  1. h_fd : Unix.file_descr;
  2. h_global_size : int;
  3. h_heap_size : int;
}
exception Out_of_shared_memory
exception Hash_table_full
exception Dep_table_full
exception Heap_full
exception Sql_assertion_failure of int
exception C_assertion_failure of string
val init : config -> handle
val connect : handle -> unit
val collect : [ `gentle | `aggressive | `always_TEST ] -> unit
val init_done : unit -> unit
val save_dep_table_sqlite : string -> string -> int
val load_dep_table_sqlite : string -> bool -> int
val save_table : string -> unit
val load_table : string -> unit
val save_table_sqlite : string -> int
val save_table_keys_sqlite : string -> string array -> int
val load_table_sqlite : string -> bool -> int
val cleanup_sqlite : unit -> unit
val heap_size : unit -> int
val wasted_heap_size : unit -> int
type table_stats = {
  1. nonempty_slots : int;
  2. used_slots : int;
  3. slots : int;
}
val dep_stats : unit -> table_stats
val hash_stats : unit -> table_stats
val is_heap_overflow : unit -> bool
val invalidate_caches : unit -> unit
val value_size : Obj.t -> int
module type NoCache = sig ... end
module type WithCache = sig ... end
module type UserKeyType = sig ... end
module type CacheType = sig ... end