package arrayjit
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
md5=5beaaa0b377bec3badffffbf9f4dec4a
    
    
  sha512=a37a67452746143f0f5ba2e81f98d6fed31fb4397e0a85f4a35aedc805b4e0405ea89d465c6f80941c465fb61d5d6119806cb73b5c5ead925797eb80d19c5ade
    
    
  doc/arrayjit.utils/Utils/index.html
Module UtilsSource
val map_merge : 
  ('a, 'b, 'c) Base.Map.t ->
  ('a, 'b, 'c) Base.Map.t ->
  f:('b -> 'b -> 'b) ->
  ('a, 'b, 'c) Base.Map.tval mref_add : 
  ('a, 'b, 'c) Base.Map.t Base.ref ->
  key:'a ->
  data:'b ->
  or_:('b -> Base.unit) ->
  Base.unittype settings = {mutable log_level : Base.int;mutable debug_log_from_routines : Base.bool;(*If the
*)debug_log_from_routinesflag is true _and_ the flaglog_level > 1, backends should generate code (e.g. fprintf statements) to log the execution, and arrange for the logs to be emitted via ppx_minidebug.mutable output_debug_files_in_build_directory : Base.bool;(*Writes compilation related files in the
*)build_filessubdirectory of the run directory (additional files, or files that would otherwise be in temp directory). When bothoutput_debug_files_in_build_directory = trueandlog_level > 1, compilation should also preserve debug and line information for runtime debugging.mutable fixed_state_for_init : Base.int Base.option;mutable print_decimals_precision : Base.int;(*When rendering arrays etc., outputs this many decimal digits.
*)mutable check_half_prec_constants_cutoff : Base.float Base.option;(*If given, generic code optimization should fail if a half precision FP16 constant exceeds the cutoff.
*)mutable automatic_host_transfers : Base.bool;(*If true,
from_hostandto_hosthappen automatically in specific situations.- When a host array is about to be read, we transfer to host from the context that most recently updated the node.
 - When a routine is about to be run, we transfer the routine's inputs from host to the routine's context if the host array was not yet transfered since its creation or most recent modification.
 
}Retrieves arg_name argument from the command line or from an environment variable, returns default if none found.
val union_find : 
  equal:('a -> 'a -> bool) ->
  ('a, 'a, 'b) Base.Map.t ->
  key:'a ->
  rank:int ->
  'a * intval union_add : 
  equal:('a -> 'a -> bool) ->
  ('a, 'a, 'b) Base.Map.t ->
  'a ->
  'a ->
  ('a, 'a, 'b) Base.Map.tFilters the list keeping the first occurrence of each element.
Returns the multiset difference of l1 and l2, where l1 and l2 must be sorted in increasing order.
Removes the first occurrence of an element from the list that is equal to the given element.
parallel_merge merge num_devices progressively invokes the pairwise merge callback, converging on the 0th position, with from ranging from 1 to num_devices - 1, and to_ < from.
val output_to_build_file : 
  fname:Base.String.t ->
  (PPrint.ToChannel.document -> Base.unit) optionval equal_mutable_list : 
  'a. ('a -> 'a -> Base.bool) ->
  'a mutable_list ->
  'a mutable_list ->
  Base.booltype build_file_channel = {f_path : Base.string;oc : out_channel;finalize : Base.unit -> Base.unit;
}val open_build_file : 
  base_name:Base.String.t ->
  extension:Base.String.t ->
  build_file_channeltype captured_log_processor = {log_processor_prefix : Base.string;process_logs : Base.string Base.list -> Base.unit;
}val add_log_processor : 
  prefix:Base.string ->
  (Base.string Base.list -> Base.unit) ->
  Base.unitval log_debug_routine_logs : 
  log_contents:Base.string Base.List.t ->
  stream_name:Base.String.t ->
  unittype 'a safe_lazy = {mutable value : [ `Callback of Base.unit -> 'a | `Value of 'a ];unique_id : Base.string;
}