Sarek_native.Native_pluginmodule Native_base : sig ... endReuse the existing Native implementation
Extend Framework_sig.kargs with Native-specific variant
type native_intrinsic = {intr_name : string;intr_codegen : string;intr_convergence : Spoc_framework.Framework_sig.convergence;}Native-specific intrinsic implementation
Intrinsic registry for Native-specific intrinsics
Native Backend - implements BACKEND
val register_intrinsic : string -> Native_intrinsics.intrinsic_impl -> unitRegister a custom Native intrinsic
val find_intrinsic : string -> Native_intrinsics.intrinsic_impl optionLook up a Native intrinsic
val run_kernel_direct :
name:'a ->
native_fn:
(Spoc_framework.Framework_sig.exec_arg array ->
(int * int * int) ->
(int * int * int) ->
unit) ->
args:Spoc_framework.Framework_sig.exec_arg array ->
grid:(int * int * int) ->
block:(int * int * int) ->
unitExecute a kernel directly with the registered function
val register_kernel :
string ->
(Spoc_framework.Framework_sig.exec_arg array ->
(int * int * int) ->
(int * int * int) ->
unit) ->
unitRegister a kernel for direct execution (wraps Native_plugin_base.register_kernel)