sig
  exception No_Cuda_Device
  exception ERROR_DEINITIALIZED
  exception ERROR_NOT_INITIALIZED
  exception ERROR_INVALID_CONTEXT
  exception ERROR_INVALID_VALUE
  exception ERROR_OUT_OF_MEMORY
  exception ERROR_INVALID_DEVICE
  exception ERROR_NOT_FOUND
  exception ERROR_FILE_NOT_FOUND
  exception ERROR_UNKNOWN
  exception ERROR_LAUNCH_FAILED
  exception ERROR_LAUNCH_OUT_OF_RESOURCES
  exception ERROR_LAUNCH_TIMEOUT
  exception ERROR_LAUNCH_INCOMPATIBLE_TEXTURING
  external cuda_cpu_to_device :
    ('a, 'b) Vector.vector -> int -> Devices.generalInfo -> unit
    = "spoc_cuda_cpu_to_device"
  external cuda_device_to_device :
    ('a, 'b) Vector.vector -> int -> Devices.device -> unit
    = "spoc_cuda_device_to_device"
  external cuda_device_to_cpu :
    ('a, 'b) Vector.vector -> int -> Devices.generalInfo -> unit
    = "spoc_cuda_device_to_cpu"
  external cuda_custom_cpu_to_device :
    ('a, 'b) Vector.vector -> int -> Devices.generalInfo -> unit
    = "spoc_cuda_custom_cpu_to_device"
  external cuda_custom_device_to_cpu :
    ('a, 'b) Vector.vector -> int -> Devices.generalInfo -> unit
    = "spoc_cuda_custom_device_to_cpu"
end