module Nvector_pthreads:sig
..end
The Pthreads nvectors of Sundials (requires pthreads).
typedata =
Sundials.RealArray.t
Pthreads nvectors are based on bigarrays of floats.
typekind =
[ `Pthreads | `Serial ]
Represents the internal layout of a Pthreads nvector. Pthreads nvectors can usually be used wherever serial nvectors can.
typet =
(data, kind) Nvector.t
The type of Pthreads nvectors.
val make : ?context:Sundials.Context.t ->
?with_fused_ops:bool -> int -> int -> float -> t
make nthreads n iv
creates a new Pthreads nvector with nthreads
threads and n
elements inialized to iv
.
The optional argument enables the fused and array operations for a given nvector (they are disabled by default).
Config.NotImplementedBySundialsVersion
Fused and array operations not available.val wrap : ?context:Sundials.Context.t ->
?with_fused_ops:bool -> int -> Sundials.RealArray.t -> t
wrap nthreads a
creates a new Pthreads nvector with nthreads
threads
over the elements of a
.
The optional arguments permit to enable all the fused and array operations for a given nvector (they are disabled by default).
Config.NotImplementedBySundialsVersion
Fused and array operations not available.val unwrap : t -> Sundials.RealArray.t
Aliases Nvector.unwrap
.
val pp : Stdlib.Format.formatter -> t -> unit
Pretty-print a Pthreads nvector using the Format module.
val num_threads : t -> int
Returns the number of threads used within a Pthreads nvector.
val enable : ?with_fused_ops:bool ->
?with_linear_combination:bool ->
?with_scale_add_multi:bool ->
?with_dot_prod_multi:bool ->
?with_linear_sum_vector_array:bool ->
?with_scale_vector_array:bool ->
?with_const_vector_array:bool ->
?with_wrms_norm_vector_array:bool ->
?with_wrms_norm_mask_vector_array:bool ->
?with_scale_add_multi_vector_array:bool ->
?with_linear_combination_vector_array:bool -> t -> unit
Selectively enable or disable fused and array operations.
The with_fused_ops
argument enables or disables all such operations.
Config.NotImplementedBySundialsVersion
Fused and array operations not available.module Ops:Nvector.NVECTOR_OPS
with type t = t
Underlyling nvector operations on Pthreads nvectors.
module Any:sig
..end
A generic nvector interface to Pthreads nvectors.