package spoc

  1. Overview
  2. Docs
type device_vec
type customarray
type (!'a, !'b) custom = {
  1. size : int;
  2. get : customarray -> int -> 'a;
  3. set : customarray -> int -> 'a -> unit;
}
type (!'a, !'b) couple = 'a * 'b
type (!'a, !'b) kind =
  1. | Float32 of ('a, 'b) Bigarray.kind
  2. | Char of ('a, 'b) Bigarray.kind
  3. | Float64 of ('a, 'b) Bigarray.kind
  4. | Int32 of ('a, 'b) Bigarray.kind
  5. | Int64 of ('a, 'b) Bigarray.kind
  6. | Complex32 of ('a, 'b) Bigarray.kind
  7. | Custom of ('a, 'b) custom
  8. | Unit of ('a, 'b) couple
  9. | Dummy of ('a, 'b) couple
val int : (int, Bigarray.int_elt) kind
val int32 : (int32, Bigarray.int32_elt) kind
val char : (char, Bigarray.int8_unsigned_elt) kind
val int64 : (int64, Bigarray.int64_elt) kind
val float32 : (float, Bigarray.float32_elt) kind
val float64 : (float, Bigarray.float64_elt) kind
val complex32 : (Stdlib.Complex.t, Bigarray.complex32_elt) kind
type (!'a, !'b) spoc_vec =
  1. | Bigarray of ('a, 'b, Bigarray.c_layout) Bigarray.Array1.t
  2. | CustomArray of customarray * ('a, 'b) custom
val float32_of_float : float -> float
val float_of_float32 : float -> float
type vec_device =
  1. | No_dev
  2. | Dev of Devices.device
  3. | Transferring of Devices.device
type ('a, 'b) vector
and ('a, 'b) sub = int * int * int * int * ('a, 'b) vector
val init_cuda_device_vec : unit -> device_vec
val init_opencl_device_vec : unit -> device_vec
val create_custom : ('a, 'b) custom -> int -> customarray
val vec_id : int Stdlib.ref
val create : ('a, 'b) kind -> ?dev:Devices.device -> int -> ('a, 'b) vector
val length : ('a, 'b) vector -> int
val dev : ('a, 'b) vector -> vec_device
val is_sub : ('a, 'b) vector -> ('a, 'b) sub option
val kind : ('a, 'b) vector -> ('a, 'b) kind
val device : ('a, 'b) vector -> int
val get_vec_id : ('a, 'b) vector -> int
val vector : ('a, 'b) vector -> ('a, 'b) spoc_vec
val equals : ('a, 'b) vector -> ('a, 'b) vector -> bool
val vseek : ('a, 'b) vector -> int -> unit
val get_seek : ('a, 'b) vector -> int
val unsafe_get : ('a, 'b) vector -> int -> 'a
val unsafe_set : ('a, 'b) vector -> int -> 'a -> unit
val update_device_array : ('a, 'b) vector -> ('a, 'b) vector -> unit
val set_device : ('a, 'b) vector -> int -> vec_device -> unit
val temp_vector : ('a, 'b) vector -> ('a, 'b) vector
val sub_vector : ('a, 'b) vector -> int -> int -> int -> int -> ('a, 'b) vector
val device_vec : ('a, 'b) vector -> [< `Cuda | `OpenCL ] -> int -> device_vec
val copy_sub : ('a, 'b) vector -> ('a, 'b) vector -> unit
val of_bigarray_shr : ('a, 'b) kind -> ('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> ('a, 'b) vector
val to_bigarray_shr : ('a, 'b) vector -> ('a, 'b, Bigarray.c_layout) Bigarray.Array1.t
OCaml

Innovation. Community. Security.