Class virtual Kernel.spoc_kernel

class virtual [['a, 'b]] spoc_kernel : string -> string -> object .. end
a Kernel is represented within Spoc a an OCaml object inheriting the spoc_kernel class

val binaries : (Spoc.Devices.device, kernel) Hashtbl.t
hashtable containg the compiled binaries of the kernel (one for each device it has been compiled for

the cuda source code of the kernel

val mutable cuda_sources : string list
val mutable opencl_sources : string list
the opencl source code of the kernel

clean binary cache

method get_binaries : unit -> (Spoc.Devices.device, kernel) Hashtbl.t
method reset_binaries : unit -> unit
compiles a kernel for a device
method compile : ?debug:bool -> Spoc.Devices.device -> unit
compiles and run a device for a kernel
method compile_and_run : 'a ->
block * grid ->
?debug:bool -> int -> Spoc.Devices.device -> unit
method virtual exec : 'a ->
block * grid ->
int -> Spoc.Devices.device -> kernel -> unit
method reload_sources : unit -> unit
reloads the sources form the file associated with the kernel

runs the kernel on a device

method run : 'a -> block * grid -> int -> Spoc.Devices.device -> unit