package hack_parallel

  1. Overview
  2. Docs
Parallel and shared memory library

Install

Dune Dependency

Authors

Maintainers

Sources

1.0.1.tar.gz
md5=ba7c72bc207e326b72e294fc76f6ad2c
sha512=5020d47f97bea2f88e2a40411894d03232a7f2282606926c93c7d4c96d72e94a966be852897a9b16f7e0893ba376512045abb9d93020a7c03c3def4f3d918f8e

doc/hack_parallel.interface/Hack_parallel_intf/Std/SharedMem/index.html

Module Std.SharedMem

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
OCaml

Innovation. Community. Security.