aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--.devcontainer/Dockerfile22
-rw-r--r--.devcontainer/devcontainer.json4
-rw-r--r--cuda_base/README2
-rw-r--r--cuda_base/build/wrapper.h6
-rw-r--r--cuda_base/src/cuda.rs14615
-rw-r--r--cuda_base/src/lib.rs5
-rw-r--r--ptx_parser/src/lib.rs55
-rw-r--r--zluda_dump/Cargo.toml3
-rw-r--r--zluda_dump/src/format.rs163
-rw-r--r--zluda_dump/src/lib.rs8
-rw-r--r--zluda_dump/src/os_unix.rs4
-rw-r--r--zluda_dump/src/trace.rs10
12 files changed, 8975 insertions, 5922 deletions
diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
index 3df6b99..f767657 100644
--- a/.devcontainer/Dockerfile
+++ b/.devcontainer/Dockerfile
@@ -8,16 +8,27 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get update -y && DEBIAN_FRONTEND=noninter
python3 \
ripgrep \
git \
- ltrace
+ ltrace \
+ # required by llvm 17
+ lsb-release software-properties-common gnupg
+
+ARG LLVM_VERSION=17
+RUN wget https://apt.llvm.org/llvm.sh && \
+ chmod +x llvm.sh && \
+ ./llvm.sh ${LLVM_VERSION}
# Feel free to change to a newer version if you have a newer verison on your host
-ARG CUDA_VERSION=12-4
+ARG CUDA_PKG_VERSION=12-4
# Docker <-> host driver version compatiblity is newer host <-> older docker
# We don't care about a specific driver version, so pick oldest 5XX
ARG CUDA_DRIVER=515
-RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
+RUN DEBIAN_FRONTEND=noninteractive apt-get update -y && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
+ # CUDA headers need it for interop
+ libgl-dev libegl-dev libvdpau-dev \
nvidia-utils-${CUDA_DRIVER} \
- cuda-cudart-${CUDA_VERSION}
+ cuda-cudart-dev-${CUDA_PKG_VERSION} \
+ cuda-cudart-${CUDA_PKG_VERSION} \
+ cuda-profiler-api-${CUDA_PKG_VERSION}
ARG ROCM_VERSION=6.2.2
RUN mkdir --parents --mode=0755 /etc/apt/keyrings && \
@@ -29,9 +40,10 @@ RUN mkdir --parents --mode=0755 /etc/apt/keyrings && \
rocminfo \
rocm-gdb \
rocm-smi-lib \
+ rocm-llvm-dev \
hip-runtime-amd && \
echo '/opt/rocm/lib' > /etc/ld.so.conf.d/rocm.conf && \
ldconfig
-ENV PATH=$PATH:/opt/rocm-6.2.2/bin
+ENV PATH=$PATH:/opt/rocm-${ROCM_VERSION}/bin
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index 7cae35a..34e88fb 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -28,7 +28,7 @@
//"hostRequirements": { "gpu": "optional" }
"customizations": {
"vscode": {
- "extensions": [ "mhutchie.git-graph" ],
+ "extensions": [ "mhutchie.git-graph" ]
}
-}
+ }
}
diff --git a/cuda_base/README b/cuda_base/README
index 4e0d60f..a2fb27f 100644
--- a/cuda_base/README
+++ b/cuda_base/README
@@ -1 +1 @@
-bindgen build/wrapper.h -o src/cuda.rs --no-partialeq "CUDA_HOST_NODE_PARAMS_st" --with-derive-eq --whitelist-function="^cu.*" --whitelist-var="^CU.*" --size_t-is-usize --default-enum-style=newtype --no-layout-tests --no-doc-comments --no-derive-debug --new-type-alias "^CUdevice_v\d+$|^CUdeviceptr_v\d+$" --must-use-type "cudaError_enum" -- -I/usr/local/cuda/include \ No newline at end of file
+bindgen build/wrapper.h -o src/cuda.rs --no-partialeq "CUDA_HOST_NODE_PARAMS_st" --with-derive-eq --allowlist-type="^CU.*" --allowlist-function="^cu.*" --allowlist-var="^CU.*" --default-enum-style=newtype --no-layout-tests --no-doc-comments --no-derive-debug --new-type-alias "^CUdevice_v\d+$|^CUdeviceptr_v\d+$" --must-use-type "cudaError_enum" -- -I/usr/local/cuda/include \ No newline at end of file
diff --git a/cuda_base/build/wrapper.h b/cuda_base/build/wrapper.h
index beebe10..a550256 100644
--- a/cuda_base/build/wrapper.h
+++ b/cuda_base/build/wrapper.h
@@ -1,3 +1,7 @@
#define __CUDA_API_VERSION_INTERNAL
#include <cuda.h>
-#include <cudaGL.h> \ No newline at end of file
+#include <cudaProfiler.h>
+#include <cudaGL.h>
+#include <cudaEGL.h>
+#include <vdpau/vdpau.h>
+#include <cudaVDPAU.h>
diff --git a/cuda_base/src/cuda.rs b/cuda_base/src/cuda.rs
index 6c141cf..d7a329f 100644
--- a/cuda_base/src/cuda.rs
+++ b/cuda_base/src/cuda.rs
@@ -1,5836 +1,8781 @@
-/* automatically generated by rust-bindgen 0.59.2 */
+/* automatically generated by rust-bindgen 0.70.1 */
-pub const CUDA_VERSION: u32 = 11050;
-pub const CU_IPC_HANDLE_SIZE: u32 = 64;
-pub const CU_MEMHOSTALLOC_PORTABLE: u32 = 1;
-pub const CU_MEMHOSTALLOC_DEVICEMAP: u32 = 2;
-pub const CU_MEMHOSTALLOC_WRITECOMBINED: u32 = 4;
-pub const CU_MEMHOSTREGISTER_PORTABLE: u32 = 1;
-pub const CU_MEMHOSTREGISTER_DEVICEMAP: u32 = 2;
-pub const CU_MEMHOSTREGISTER_IOMEMORY: u32 = 4;
-pub const CU_MEMHOSTREGISTER_READ_ONLY: u32 = 8;
-pub const CU_ARRAY_SPARSE_PROPERTIES_SINGLE_MIPTAIL: u32 = 1;
-pub const CUDA_EXTERNAL_MEMORY_DEDICATED: u32 = 1;
-pub const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_SKIP_NVSCIBUF_MEMSYNC: u32 = 1;
-pub const CUDA_EXTERNAL_SEMAPHORE_WAIT_SKIP_NVSCIBUF_MEMSYNC: u32 = 2;
-pub const CUDA_NVSCISYNC_ATTR_SIGNAL: u32 = 1;
-pub const CUDA_NVSCISYNC_ATTR_WAIT: u32 = 2;
-pub const CU_MEM_CREATE_USAGE_TILE_POOL: u32 = 1;
-pub const CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_PRE_LAUNCH_SYNC: u32 = 1;
-pub const CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_POST_LAUNCH_SYNC: u32 = 2;
-pub const CUDA_ARRAY3D_LAYERED: u32 = 1;
-pub const CUDA_ARRAY3D_2DARRAY: u32 = 1;
-pub const CUDA_ARRAY3D_SURFACE_LDST: u32 = 2;
-pub const CUDA_ARRAY3D_CUBEMAP: u32 = 4;
-pub const CUDA_ARRAY3D_TEXTURE_GATHER: u32 = 8;
-pub const CUDA_ARRAY3D_DEPTH_TEXTURE: u32 = 16;
-pub const CUDA_ARRAY3D_COLOR_ATTACHMENT: u32 = 32;
-pub const CUDA_ARRAY3D_SPARSE: u32 = 64;
-pub const CU_TRSA_OVERRIDE_FORMAT: u32 = 1;
-pub const CU_TRSF_READ_AS_INTEGER: u32 = 1;
-pub const CU_TRSF_NORMALIZED_COORDINATES: u32 = 2;
-pub const CU_TRSF_SRGB: u32 = 16;
-pub const CU_TRSF_DISABLE_TRILINEAR_OPTIMIZATION: u32 = 32;
-pub const CU_PARAM_TR_DEFAULT: i32 = -1;
-pub const CURRENT_IMPORT_REDIRECTION_VERSION: u32 = 1;
-pub const CURVECAPS: u32 = 28;
-pub const CURSOR_SHOWING: u32 = 1;
-pub const CUR_BLOB_VERSION: u32 = 2;
-pub type cuuint32_t = u32;
-pub type cuuint64_t = u64;
-#[repr(transparent)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUdeviceptr_v2(pub ::std::os::raw::c_ulonglong);
-pub type CUdeviceptr = CUdeviceptr_v2;
-#[repr(transparent)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUdevice_v1(pub ::std::os::raw::c_int);
-pub type CUdevice = CUdevice_v1;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUctx_st {
- _unused: [u8; 0],
-}
-pub type CUcontext = *mut CUctx_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUmod_st {
- _unused: [u8; 0],
-}
-pub type CUmodule = *mut CUmod_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUfunc_st {
- _unused: [u8; 0],
-}
-pub type CUfunction = *mut CUfunc_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUarray_st {
- _unused: [u8; 0],
-}
-pub type CUarray = *mut CUarray_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUmipmappedArray_st {
- _unused: [u8; 0],
-}
-pub type CUmipmappedArray = *mut CUmipmappedArray_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUtexref_st {
- _unused: [u8; 0],
-}
-pub type CUtexref = *mut CUtexref_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUsurfref_st {
- _unused: [u8; 0],
-}
-pub type CUsurfref = *mut CUsurfref_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUevent_st {
- _unused: [u8; 0],
-}
-pub type CUevent = *mut CUevent_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUstream_st {
- _unused: [u8; 0],
-}
-pub type CUstream = *mut CUstream_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUgraphicsResource_st {
- _unused: [u8; 0],
-}
-pub type CUgraphicsResource = *mut CUgraphicsResource_st;
-pub type CUtexObject_v1 = ::std::os::raw::c_ulonglong;
-pub type CUtexObject = CUtexObject_v1;
-pub type CUsurfObject_v1 = ::std::os::raw::c_ulonglong;
-pub type CUsurfObject = CUsurfObject_v1;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUextMemory_st {
- _unused: [u8; 0],
-}
-pub type CUexternalMemory = *mut CUextMemory_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUextSemaphore_st {
- _unused: [u8; 0],
-}
-pub type CUexternalSemaphore = *mut CUextSemaphore_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUgraph_st {
- _unused: [u8; 0],
-}
-pub type CUgraph = *mut CUgraph_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUgraphNode_st {
- _unused: [u8; 0],
-}
-pub type CUgraphNode = *mut CUgraphNode_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUgraphExec_st {
- _unused: [u8; 0],
-}
-pub type CUgraphExec = *mut CUgraphExec_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUmemPoolHandle_st {
- _unused: [u8; 0],
-}
-pub type CUmemoryPool = *mut CUmemPoolHandle_st;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUuserObject_st {
- _unused: [u8; 0],
-}
-pub type CUuserObject = *mut CUuserObject_st;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUuuid_st {
- pub bytes: [::std::os::raw::c_char; 16usize],
-}
-pub type CUuuid = CUuuid_st;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUipcEventHandle_st {
- pub reserved: [::std::os::raw::c_char; 64usize],
-}
-pub type CUipcEventHandle_v1 = CUipcEventHandle_st;
-pub type CUipcEventHandle = CUipcEventHandle_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUipcMemHandle_st {
- pub reserved: [::std::os::raw::c_char; 64usize],
-}
-pub type CUipcMemHandle_v1 = CUipcMemHandle_st;
-pub type CUipcMemHandle = CUipcMemHandle_v1;
-impl CUstreamBatchMemOpType_enum {
- pub const CU_STREAM_MEM_OP_WAIT_VALUE_32: CUstreamBatchMemOpType_enum =
- CUstreamBatchMemOpType_enum(1);
-}
-impl CUstreamBatchMemOpType_enum {
- pub const CU_STREAM_MEM_OP_WRITE_VALUE_32: CUstreamBatchMemOpType_enum =
- CUstreamBatchMemOpType_enum(2);
-}
-impl CUstreamBatchMemOpType_enum {
- pub const CU_STREAM_MEM_OP_WAIT_VALUE_64: CUstreamBatchMemOpType_enum =
- CUstreamBatchMemOpType_enum(4);
-}
-impl CUstreamBatchMemOpType_enum {
- pub const CU_STREAM_MEM_OP_WRITE_VALUE_64: CUstreamBatchMemOpType_enum =
- CUstreamBatchMemOpType_enum(5);
-}
-impl CUstreamBatchMemOpType_enum {
- pub const CU_STREAM_MEM_OP_FLUSH_REMOTE_WRITES: CUstreamBatchMemOpType_enum =
- CUstreamBatchMemOpType_enum(3);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUstreamBatchMemOpType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUstreamBatchMemOpType_enum as CUstreamBatchMemOpType;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUstreamBatchMemOpParams_union {
- pub operation: CUstreamBatchMemOpType,
- pub waitValue: CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st,
- pub writeValue: CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st,
- pub flushRemoteWrites: CUstreamBatchMemOpParams_union_CUstreamMemOpFlushRemoteWritesParams_st,
- pub pad: [cuuint64_t; 6usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st {
- pub operation: CUstreamBatchMemOpType,
- pub address: CUdeviceptr,
- pub __bindgen_anon_1:
- CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st__bindgen_ty_1,
- pub flags: ::std::os::raw::c_uint,
- pub alias: CUdeviceptr,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st__bindgen_ty_1 {
- pub value: cuuint32_t,
- pub value64: cuuint64_t,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st {
- pub operation: CUstreamBatchMemOpType,
- pub address: CUdeviceptr,
- pub __bindgen_anon_1:
- CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st__bindgen_ty_1,
- pub flags: ::std::os::raw::c_uint,
- pub alias: CUdeviceptr,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st__bindgen_ty_1 {
- pub value: cuuint32_t,
- pub value64: cuuint64_t,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUstreamBatchMemOpParams_union_CUstreamMemOpFlushRemoteWritesParams_st {
- pub operation: CUstreamBatchMemOpType,
- pub flags: ::std::os::raw::c_uint,
-}
-pub type CUstreamBatchMemOpParams_v1 = CUstreamBatchMemOpParams_union;
-pub type CUstreamBatchMemOpParams = CUstreamBatchMemOpParams_v1;
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNSIGNED_INT8: CUarray_format_enum = CUarray_format_enum(1);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNSIGNED_INT16: CUarray_format_enum = CUarray_format_enum(2);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNSIGNED_INT32: CUarray_format_enum = CUarray_format_enum(3);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SIGNED_INT8: CUarray_format_enum = CUarray_format_enum(8);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SIGNED_INT16: CUarray_format_enum = CUarray_format_enum(9);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SIGNED_INT32: CUarray_format_enum = CUarray_format_enum(10);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_HALF: CUarray_format_enum = CUarray_format_enum(16);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_FLOAT: CUarray_format_enum = CUarray_format_enum(32);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_NV12: CUarray_format_enum = CUarray_format_enum(176);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNORM_INT8X1: CUarray_format_enum = CUarray_format_enum(192);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNORM_INT8X2: CUarray_format_enum = CUarray_format_enum(193);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNORM_INT8X4: CUarray_format_enum = CUarray_format_enum(194);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNORM_INT16X1: CUarray_format_enum = CUarray_format_enum(195);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNORM_INT16X2: CUarray_format_enum = CUarray_format_enum(196);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_UNORM_INT16X4: CUarray_format_enum = CUarray_format_enum(197);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SNORM_INT8X1: CUarray_format_enum = CUarray_format_enum(198);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SNORM_INT8X2: CUarray_format_enum = CUarray_format_enum(199);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SNORM_INT8X4: CUarray_format_enum = CUarray_format_enum(200);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SNORM_INT16X1: CUarray_format_enum = CUarray_format_enum(201);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SNORM_INT16X2: CUarray_format_enum = CUarray_format_enum(202);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_SNORM_INT16X4: CUarray_format_enum = CUarray_format_enum(203);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC1_UNORM: CUarray_format_enum = CUarray_format_enum(145);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC1_UNORM_SRGB: CUarray_format_enum = CUarray_format_enum(146);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC2_UNORM: CUarray_format_enum = CUarray_format_enum(147);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC2_UNORM_SRGB: CUarray_format_enum = CUarray_format_enum(148);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC3_UNORM: CUarray_format_enum = CUarray_format_enum(149);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC3_UNORM_SRGB: CUarray_format_enum = CUarray_format_enum(150);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC4_UNORM: CUarray_format_enum = CUarray_format_enum(151);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC4_SNORM: CUarray_format_enum = CUarray_format_enum(152);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC5_UNORM: CUarray_format_enum = CUarray_format_enum(153);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC5_SNORM: CUarray_format_enum = CUarray_format_enum(154);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC6H_UF16: CUarray_format_enum = CUarray_format_enum(155);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC6H_SF16: CUarray_format_enum = CUarray_format_enum(156);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC7_UNORM: CUarray_format_enum = CUarray_format_enum(157);
-}
-impl CUarray_format_enum {
- pub const CU_AD_FORMAT_BC7_UNORM_SRGB: CUarray_format_enum = CUarray_format_enum(158);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUarray_format_enum(pub ::std::os::raw::c_uint);
-pub use self::CUarray_format_enum as CUarray_format;
-impl CUaddress_mode_enum {
- pub const CU_TR_ADDRESS_MODE_WRAP: CUaddress_mode_enum = CUaddress_mode_enum(0);
-}
-impl CUaddress_mode_enum {
- pub const CU_TR_ADDRESS_MODE_CLAMP: CUaddress_mode_enum = CUaddress_mode_enum(1);
-}
-impl CUaddress_mode_enum {
- pub const CU_TR_ADDRESS_MODE_MIRROR: CUaddress_mode_enum = CUaddress_mode_enum(2);
-}
-impl CUaddress_mode_enum {
- pub const CU_TR_ADDRESS_MODE_BORDER: CUaddress_mode_enum = CUaddress_mode_enum(3);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUaddress_mode_enum(pub ::std::os::raw::c_uint);
-pub use self::CUaddress_mode_enum as CUaddress_mode;
-impl CUfilter_mode_enum {
- pub const CU_TR_FILTER_MODE_POINT: CUfilter_mode_enum = CUfilter_mode_enum(0);
-}
-impl CUfilter_mode_enum {
- pub const CU_TR_FILTER_MODE_LINEAR: CUfilter_mode_enum = CUfilter_mode_enum(1);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUfilter_mode_enum(pub ::std::os::raw::c_uint);
-pub use self::CUfilter_mode_enum as CUfilter_mode;
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK: CUdevice_attribute_enum =
- CUdevice_attribute_enum(1);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X: CUdevice_attribute_enum =
- CUdevice_attribute_enum(2);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y: CUdevice_attribute_enum =
- CUdevice_attribute_enum(3);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Z: CUdevice_attribute_enum =
- CUdevice_attribute_enum(4);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X: CUdevice_attribute_enum =
- CUdevice_attribute_enum(5);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Y: CUdevice_attribute_enum =
- CUdevice_attribute_enum(6);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Z: CUdevice_attribute_enum =
- CUdevice_attribute_enum(7);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK: CUdevice_attribute_enum =
- CUdevice_attribute_enum(8);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK: CUdevice_attribute_enum =
- CUdevice_attribute_enum(8);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_TOTAL_CONSTANT_MEMORY: CUdevice_attribute_enum =
- CUdevice_attribute_enum(9);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_WARP_SIZE: CUdevice_attribute_enum = CUdevice_attribute_enum(10);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_PITCH: CUdevice_attribute_enum = CUdevice_attribute_enum(11);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK: CUdevice_attribute_enum =
- CUdevice_attribute_enum(12);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK: CUdevice_attribute_enum =
- CUdevice_attribute_enum(12);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CLOCK_RATE: CUdevice_attribute_enum = CUdevice_attribute_enum(13);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_TEXTURE_ALIGNMENT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(14);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_GPU_OVERLAP: CUdevice_attribute_enum =
- CUdevice_attribute_enum(15);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(16);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(17);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_INTEGRATED: CUdevice_attribute_enum = CUdevice_attribute_enum(18);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY: CUdevice_attribute_enum =
- CUdevice_attribute_enum(19);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_COMPUTE_MODE: CUdevice_attribute_enum =
- CUdevice_attribute_enum(20);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(21);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(22);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(23);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(24);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(25);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(26);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(27);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(28);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_LAYERS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(29);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(27);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(28);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_NUMSLICES: CUdevice_attribute_enum =
- CUdevice_attribute_enum(29);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(30);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(31);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_ECC_ENABLED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(32);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_PCI_BUS_ID: CUdevice_attribute_enum = CUdevice_attribute_enum(33);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID: CUdevice_attribute_enum =
- CUdevice_attribute_enum(34);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_TCC_DRIVER: CUdevice_attribute_enum = CUdevice_attribute_enum(35);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE: CUdevice_attribute_enum =
- CUdevice_attribute_enum(36);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(37);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_L2_CACHE_SIZE: CUdevice_attribute_enum =
- CUdevice_attribute_enum(38);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_MULTIPROCESSOR: CUdevice_attribute_enum =
- CUdevice_attribute_enum(39);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(40);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING: CUdevice_attribute_enum =
- CUdevice_attribute_enum(41);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(42);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_LAYERS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(43);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER: CUdevice_attribute_enum =
- CUdevice_attribute_enum(44);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(45);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(46);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH_ALTERNATE: CUdevice_attribute_enum =
- CUdevice_attribute_enum(47);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT_ALTERNATE: CUdevice_attribute_enum =
- CUdevice_attribute_enum(48);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH_ALTERNATE: CUdevice_attribute_enum =
- CUdevice_attribute_enum(49);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID: CUdevice_attribute_enum =
- CUdevice_attribute_enum(50);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(51);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(52);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(53);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_LAYERS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(54);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(55);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(56);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(57);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(58);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(59);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_DEPTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(60);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(61);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_LAYERS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(62);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(63);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(64);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_LAYERS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(65);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(66);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(67);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_LAYERS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(68);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(69);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(70);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(71);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_PITCH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(72);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(73);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_HEIGHT: CUdevice_attribute_enum =
- CUdevice_attribute_enum(74);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR: CUdevice_attribute_enum =
- CUdevice_attribute_enum(75);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR: CUdevice_attribute_enum =
- CUdevice_attribute_enum(76);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_MIPMAPPED_WIDTH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(77);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(78);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_GLOBAL_L1_CACHE_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(79);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_LOCAL_L1_CACHE_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(80);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR: CUdevice_attribute_enum =
- CUdevice_attribute_enum(81);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR: CUdevice_attribute_enum =
- CUdevice_attribute_enum(82);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY: CUdevice_attribute_enum =
- CUdevice_attribute_enum(83);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD: CUdevice_attribute_enum =
- CUdevice_attribute_enum(84);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID: CUdevice_attribute_enum =
- CUdevice_attribute_enum(85);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_HOST_NATIVE_ATOMIC_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(86);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_SINGLE_TO_DOUBLE_PRECISION_PERF_RATIO: CUdevice_attribute_enum =
- CUdevice_attribute_enum(87);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(88);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CONCURRENT_MANAGED_ACCESS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(89);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_COMPUTE_PREEMPTION_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(90);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CAN_USE_HOST_POINTER_FOR_REGISTERED_MEM: CUdevice_attribute_enum =
- CUdevice_attribute_enum(91);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_MEM_OPS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(92);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(93);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR: CUdevice_attribute_enum =
- CUdevice_attribute_enum(94);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_COOPERATIVE_LAUNCH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(95);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_COOPERATIVE_MULTI_DEVICE_LAUNCH: CUdevice_attribute_enum =
- CUdevice_attribute_enum(96);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK_OPTIN: CUdevice_attribute_enum =
- CUdevice_attribute_enum(97);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_CAN_FLUSH_REMOTE_WRITES: CUdevice_attribute_enum =
- CUdevice_attribute_enum(98);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_HOST_REGISTER_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(99);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS_USES_HOST_PAGE_TABLES:
- CUdevice_attribute_enum = CUdevice_attribute_enum(100);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_DIRECT_MANAGED_MEM_ACCESS_FROM_HOST: CUdevice_attribute_enum =
- CUdevice_attribute_enum(101);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_VIRTUAL_ADDRESS_MANAGEMENT_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(102);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(102);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR_SUPPORTED:
- CUdevice_attribute_enum = CUdevice_attribute_enum(103);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_WIN32_HANDLE_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(104);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_WIN32_KMT_HANDLE_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(105);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_BLOCKS_PER_MULTIPROCESSOR: CUdevice_attribute_enum =
- CUdevice_attribute_enum(106);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_GENERIC_COMPRESSION_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(107);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_PERSISTING_L2_CACHE_SIZE: CUdevice_attribute_enum =
- CUdevice_attribute_enum(108);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX_ACCESS_POLICY_WINDOW_SIZE: CUdevice_attribute_enum =
- CUdevice_attribute_enum(109);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_WITH_CUDA_VMM_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(110);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_RESERVED_SHARED_MEMORY_PER_BLOCK: CUdevice_attribute_enum =
- CUdevice_attribute_enum(111);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_SPARSE_CUDA_ARRAY_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(112);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_READ_ONLY_HOST_REGISTER_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(113);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_TIMELINE_SEMAPHORE_INTEROP_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(114);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MEMORY_POOLS_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(115);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_SUPPORTED: CUdevice_attribute_enum =
- CUdevice_attribute_enum(116);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_FLUSH_WRITES_OPTIONS: CUdevice_attribute_enum =
- CUdevice_attribute_enum(117);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_WRITES_ORDERING: CUdevice_attribute_enum =
- CUdevice_attribute_enum(118);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MEMPOOL_SUPPORTED_HANDLE_TYPES: CUdevice_attribute_enum =
- CUdevice_attribute_enum(119);
-}
-impl CUdevice_attribute_enum {
- pub const CU_DEVICE_ATTRIBUTE_MAX: CUdevice_attribute_enum = CUdevice_attribute_enum(120);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUdevice_attribute_enum(pub ::std::os::raw::c_uint);
-pub use self::CUdevice_attribute_enum as CUdevice_attribute;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUdevprop_st {
- pub maxThreadsPerBlock: ::std::os::raw::c_int,
- pub maxThreadsDim: [::std::os::raw::c_int; 3usize],
- pub maxGridSize: [::std::os::raw::c_int; 3usize],
- pub sharedMemPerBlock: ::std::os::raw::c_int,
- pub totalConstantMemory: ::std::os::raw::c_int,
- pub SIMDWidth: ::std::os::raw::c_int,
- pub memPitch: ::std::os::raw::c_int,
- pub regsPerBlock: ::std::os::raw::c_int,
- pub clockRate: ::std::os::raw::c_int,
- pub textureAlign: ::std::os::raw::c_int,
-}
-pub type CUdevprop_v1 = CUdevprop_st;
-pub type CUdevprop = CUdevprop_v1;
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_CONTEXT: CUpointer_attribute_enum = CUpointer_attribute_enum(1);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_MEMORY_TYPE: CUpointer_attribute_enum =
- CUpointer_attribute_enum(2);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_DEVICE_POINTER: CUpointer_attribute_enum =
- CUpointer_attribute_enum(3);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_HOST_POINTER: CUpointer_attribute_enum =
- CUpointer_attribute_enum(4);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_P2P_TOKENS: CUpointer_attribute_enum =
- CUpointer_attribute_enum(5);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_SYNC_MEMOPS: CUpointer_attribute_enum =
- CUpointer_attribute_enum(6);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_BUFFER_ID: CUpointer_attribute_enum =
- CUpointer_attribute_enum(7);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_IS_MANAGED: CUpointer_attribute_enum =
- CUpointer_attribute_enum(8);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_DEVICE_ORDINAL: CUpointer_attribute_enum =
- CUpointer_attribute_enum(9);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_IS_LEGACY_CUDA_IPC_CAPABLE: CUpointer_attribute_enum =
- CUpointer_attribute_enum(10);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_RANGE_START_ADDR: CUpointer_attribute_enum =
- CUpointer_attribute_enum(11);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_RANGE_SIZE: CUpointer_attribute_enum =
- CUpointer_attribute_enum(12);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_MAPPED: CUpointer_attribute_enum = CUpointer_attribute_enum(13);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_ALLOWED_HANDLE_TYPES: CUpointer_attribute_enum =
- CUpointer_attribute_enum(14);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_IS_GPU_DIRECT_RDMA_CAPABLE: CUpointer_attribute_enum =
- CUpointer_attribute_enum(15);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_ACCESS_FLAGS: CUpointer_attribute_enum =
- CUpointer_attribute_enum(16);
-}
-impl CUpointer_attribute_enum {
- pub const CU_POINTER_ATTRIBUTE_MEMPOOL_HANDLE: CUpointer_attribute_enum =
- CUpointer_attribute_enum(17);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUpointer_attribute_enum(pub ::std::os::raw::c_uint);
-pub use self::CUpointer_attribute_enum as CUpointer_attribute;
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK: CUfunction_attribute_enum =
- CUfunction_attribute_enum(0);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES: CUfunction_attribute_enum =
- CUfunction_attribute_enum(1);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_CONST_SIZE_BYTES: CUfunction_attribute_enum =
- CUfunction_attribute_enum(2);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES: CUfunction_attribute_enum =
- CUfunction_attribute_enum(3);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_NUM_REGS: CUfunction_attribute_enum = CUfunction_attribute_enum(4);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_PTX_VERSION: CUfunction_attribute_enum =
- CUfunction_attribute_enum(5);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_BINARY_VERSION: CUfunction_attribute_enum =
- CUfunction_attribute_enum(6);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_CACHE_MODE_CA: CUfunction_attribute_enum =
- CUfunction_attribute_enum(7);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES: CUfunction_attribute_enum =
- CUfunction_attribute_enum(8);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT: CUfunction_attribute_enum =
- CUfunction_attribute_enum(9);
-}
-impl CUfunction_attribute_enum {
- pub const CU_FUNC_ATTRIBUTE_MAX: CUfunction_attribute_enum = CUfunction_attribute_enum(10);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUfunction_attribute_enum(pub ::std::os::raw::c_uint);
-pub use self::CUfunction_attribute_enum as CUfunction_attribute;
-impl CUfunc_cache_enum {
- pub const CU_FUNC_CACHE_PREFER_NONE: CUfunc_cache_enum = CUfunc_cache_enum(0);
-}
-impl CUfunc_cache_enum {
- pub const CU_FUNC_CACHE_PREFER_SHARED: CUfunc_cache_enum = CUfunc_cache_enum(1);
-}
-impl CUfunc_cache_enum {
- pub const CU_FUNC_CACHE_PREFER_L1: CUfunc_cache_enum = CUfunc_cache_enum(2);
-}
-impl CUfunc_cache_enum {
- pub const CU_FUNC_CACHE_PREFER_EQUAL: CUfunc_cache_enum = CUfunc_cache_enum(3);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUfunc_cache_enum(pub ::std::os::raw::c_uint);
-pub use self::CUfunc_cache_enum as CUfunc_cache;
-impl CUsharedconfig_enum {
- pub const CU_SHARED_MEM_CONFIG_DEFAULT_BANK_SIZE: CUsharedconfig_enum = CUsharedconfig_enum(0);
-}
-impl CUsharedconfig_enum {
- pub const CU_SHARED_MEM_CONFIG_FOUR_BYTE_BANK_SIZE: CUsharedconfig_enum =
- CUsharedconfig_enum(1);
-}
-impl CUsharedconfig_enum {
- pub const CU_SHARED_MEM_CONFIG_EIGHT_BYTE_BANK_SIZE: CUsharedconfig_enum =
- CUsharedconfig_enum(2);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUsharedconfig_enum(pub ::std::os::raw::c_uint);
-pub use self::CUsharedconfig_enum as CUsharedconfig;
-impl CUmemorytype_enum {
- pub const CU_MEMORYTYPE_HOST: CUmemorytype_enum = CUmemorytype_enum(1);
-}
-impl CUmemorytype_enum {
- pub const CU_MEMORYTYPE_DEVICE: CUmemorytype_enum = CUmemorytype_enum(2);
-}
-impl CUmemorytype_enum {
- pub const CU_MEMORYTYPE_ARRAY: CUmemorytype_enum = CUmemorytype_enum(3);
-}
-impl CUmemorytype_enum {
- pub const CU_MEMORYTYPE_UNIFIED: CUmemorytype_enum = CUmemorytype_enum(4);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemorytype_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemorytype_enum as CUmemorytype;
-impl CUmem_advise_enum {
- pub const CU_MEM_ADVISE_SET_READ_MOSTLY: CUmem_advise_enum = CUmem_advise_enum(1);
-}
-impl CUmem_advise_enum {
- pub const CU_MEM_ADVISE_UNSET_READ_MOSTLY: CUmem_advise_enum = CUmem_advise_enum(2);
-}
-impl CUmem_advise_enum {
- pub const CU_MEM_ADVISE_SET_PREFERRED_LOCATION: CUmem_advise_enum = CUmem_advise_enum(3);
-}
-impl CUmem_advise_enum {
- pub const CU_MEM_ADVISE_UNSET_PREFERRED_LOCATION: CUmem_advise_enum = CUmem_advise_enum(4);
-}
-impl CUmem_advise_enum {
- pub const CU_MEM_ADVISE_SET_ACCESSED_BY: CUmem_advise_enum = CUmem_advise_enum(5);
-}
-impl CUmem_advise_enum {
- pub const CU_MEM_ADVISE_UNSET_ACCESSED_BY: CUmem_advise_enum = CUmem_advise_enum(6);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmem_advise_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmem_advise_enum as CUmem_advise;
-impl CUmem_range_attribute_enum {
- pub const CU_MEM_RANGE_ATTRIBUTE_READ_MOSTLY: CUmem_range_attribute_enum =
- CUmem_range_attribute_enum(1);
-}
-impl CUmem_range_attribute_enum {
- pub const CU_MEM_RANGE_ATTRIBUTE_PREFERRED_LOCATION: CUmem_range_attribute_enum =
- CUmem_range_attribute_enum(2);
-}
-impl CUmem_range_attribute_enum {
- pub const CU_MEM_RANGE_ATTRIBUTE_ACCESSED_BY: CUmem_range_attribute_enum =
- CUmem_range_attribute_enum(3);
-}
-impl CUmem_range_attribute_enum {
- pub const CU_MEM_RANGE_ATTRIBUTE_LAST_PREFETCH_LOCATION: CUmem_range_attribute_enum =
- CUmem_range_attribute_enum(4);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmem_range_attribute_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmem_range_attribute_enum as CUmem_range_attribute;
-impl CUjit_option_enum {
- pub const CU_JIT_MAX_REGISTERS: CUjit_option_enum = CUjit_option_enum(0);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_THREADS_PER_BLOCK: CUjit_option_enum = CUjit_option_enum(1);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_WALL_TIME: CUjit_option_enum = CUjit_option_enum(2);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_INFO_LOG_BUFFER: CUjit_option_enum = CUjit_option_enum(3);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_INFO_LOG_BUFFER_SIZE_BYTES: CUjit_option_enum = CUjit_option_enum(4);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_ERROR_LOG_BUFFER: CUjit_option_enum = CUjit_option_enum(5);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_ERROR_LOG_BUFFER_SIZE_BYTES: CUjit_option_enum = CUjit_option_enum(6);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_OPTIMIZATION_LEVEL: CUjit_option_enum = CUjit_option_enum(7);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_TARGET_FROM_CUCONTEXT: CUjit_option_enum = CUjit_option_enum(8);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_TARGET: CUjit_option_enum = CUjit_option_enum(9);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_FALLBACK_STRATEGY: CUjit_option_enum = CUjit_option_enum(10);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_GENERATE_DEBUG_INFO: CUjit_option_enum = CUjit_option_enum(11);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_LOG_VERBOSE: CUjit_option_enum = CUjit_option_enum(12);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_GENERATE_LINE_INFO: CUjit_option_enum = CUjit_option_enum(13);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_CACHE_MODE: CUjit_option_enum = CUjit_option_enum(14);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_NEW_SM3X_OPT: CUjit_option_enum = CUjit_option_enum(15);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_FAST_COMPILE: CUjit_option_enum = CUjit_option_enum(16);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_GLOBAL_SYMBOL_NAMES: CUjit_option_enum = CUjit_option_enum(17);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_GLOBAL_SYMBOL_ADDRESSES: CUjit_option_enum = CUjit_option_enum(18);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_GLOBAL_SYMBOL_COUNT: CUjit_option_enum = CUjit_option_enum(19);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_LTO: CUjit_option_enum = CUjit_option_enum(20);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_FTZ: CUjit_option_enum = CUjit_option_enum(21);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_PREC_DIV: CUjit_option_enum = CUjit_option_enum(22);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_PREC_SQRT: CUjit_option_enum = CUjit_option_enum(23);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_FMA: CUjit_option_enum = CUjit_option_enum(24);
-}
-impl CUjit_option_enum {
- pub const CU_JIT_NUM_OPTIONS: CUjit_option_enum = CUjit_option_enum(25);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUjit_option_enum(pub ::std::os::raw::c_uint);
-pub use self::CUjit_option_enum as CUjit_option;
-impl CUjitInputType_enum {
- pub const CU_JIT_INPUT_CUBIN: CUjitInputType_enum = CUjitInputType_enum(0);
-}
-impl CUjitInputType_enum {
- pub const CU_JIT_INPUT_PTX: CUjitInputType_enum = CUjitInputType_enum(1);
-}
-impl CUjitInputType_enum {
- pub const CU_JIT_INPUT_FATBINARY: CUjitInputType_enum = CUjitInputType_enum(2);
-}
-impl CUjitInputType_enum {
- pub const CU_JIT_INPUT_OBJECT: CUjitInputType_enum = CUjitInputType_enum(3);
-}
-impl CUjitInputType_enum {
- pub const CU_JIT_INPUT_LIBRARY: CUjitInputType_enum = CUjitInputType_enum(4);
-}
-impl CUjitInputType_enum {
- pub const CU_JIT_INPUT_NVVM: CUjitInputType_enum = CUjitInputType_enum(5);
-}
-impl CUjitInputType_enum {
- pub const CU_JIT_NUM_INPUT_TYPES: CUjitInputType_enum = CUjitInputType_enum(6);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUjitInputType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUjitInputType_enum as CUjitInputType;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUlinkState_st {
- _unused: [u8; 0],
-}
-pub type CUlinkState = *mut CUlinkState_st;
-impl CUlimit_enum {
- pub const CU_LIMIT_STACK_SIZE: CUlimit_enum = CUlimit_enum(0);
-}
-impl CUlimit_enum {
- pub const CU_LIMIT_PRINTF_FIFO_SIZE: CUlimit_enum = CUlimit_enum(1);
-}
-impl CUlimit_enum {
- pub const CU_LIMIT_MALLOC_HEAP_SIZE: CUlimit_enum = CUlimit_enum(2);
-}
-impl CUlimit_enum {
- pub const CU_LIMIT_DEV_RUNTIME_SYNC_DEPTH: CUlimit_enum = CUlimit_enum(3);
-}
-impl CUlimit_enum {
- pub const CU_LIMIT_DEV_RUNTIME_PENDING_LAUNCH_COUNT: CUlimit_enum = CUlimit_enum(4);
-}
-impl CUlimit_enum {
- pub const CU_LIMIT_MAX_L2_FETCH_GRANULARITY: CUlimit_enum = CUlimit_enum(5);
-}
-impl CUlimit_enum {
- pub const CU_LIMIT_PERSISTING_L2_CACHE_SIZE: CUlimit_enum = CUlimit_enum(6);
-}
-impl CUlimit_enum {
- pub const CU_LIMIT_MAX: CUlimit_enum = CUlimit_enum(7);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUlimit_enum(pub ::std::os::raw::c_uint);
-pub use self::CUlimit_enum as CUlimit;
-impl CUresourcetype_enum {
- pub const CU_RESOURCE_TYPE_ARRAY: CUresourcetype_enum = CUresourcetype_enum(0);
-}
-impl CUresourcetype_enum {
- pub const CU_RESOURCE_TYPE_MIPMAPPED_ARRAY: CUresourcetype_enum = CUresourcetype_enum(1);
-}
-impl CUresourcetype_enum {
- pub const CU_RESOURCE_TYPE_LINEAR: CUresourcetype_enum = CUresourcetype_enum(2);
-}
-impl CUresourcetype_enum {
- pub const CU_RESOURCE_TYPE_PITCH2D: CUresourcetype_enum = CUresourcetype_enum(3);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUresourcetype_enum(pub ::std::os::raw::c_uint);
-pub use self::CUresourcetype_enum as CUresourcetype;
-pub type CUhostFn =
- ::std::option::Option<unsafe extern "C" fn(userData: *mut ::std::os::raw::c_void)>;
-impl CUaccessProperty_enum {
- pub const CU_ACCESS_PROPERTY_NORMAL: CUaccessProperty_enum = CUaccessProperty_enum(0);
-}
-impl CUaccessProperty_enum {
- pub const CU_ACCESS_PROPERTY_STREAMING: CUaccessProperty_enum = CUaccessProperty_enum(1);
-}
-impl CUaccessProperty_enum {
- pub const CU_ACCESS_PROPERTY_PERSISTING: CUaccessProperty_enum = CUaccessProperty_enum(2);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUaccessProperty_enum(pub ::std::os::raw::c_uint);
-pub use self::CUaccessProperty_enum as CUaccessProperty;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq)]
-pub struct CUaccessPolicyWindow_st {
- pub base_ptr: *mut ::std::os::raw::c_void,
- pub num_bytes: usize,
- pub hitRatio: f32,
- pub hitProp: CUaccessProperty,
- pub missProp: CUaccessProperty,
-}
-pub type CUaccessPolicyWindow_v1 = CUaccessPolicyWindow_st;
-pub type CUaccessPolicyWindow = CUaccessPolicyWindow_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_KERNEL_NODE_PARAMS_st {
- pub func: CUfunction,
- pub gridDimX: ::std::os::raw::c_uint,
- pub gridDimY: ::std::os::raw::c_uint,
- pub gridDimZ: ::std::os::raw::c_uint,
- pub blockDimX: ::std::os::raw::c_uint,
- pub blockDimY: ::std::os::raw::c_uint,
- pub blockDimZ: ::std::os::raw::c_uint,
- pub sharedMemBytes: ::std::os::raw::c_uint,
- pub kernelParams: *mut *mut ::std::os::raw::c_void,
- pub extra: *mut *mut ::std::os::raw::c_void,
-}
-pub type CUDA_KERNEL_NODE_PARAMS_v1 = CUDA_KERNEL_NODE_PARAMS_st;
-pub type CUDA_KERNEL_NODE_PARAMS = CUDA_KERNEL_NODE_PARAMS_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_MEMSET_NODE_PARAMS_st {
- pub dst: CUdeviceptr,
- pub pitch: usize,
- pub value: ::std::os::raw::c_uint,
- pub elementSize: ::std::os::raw::c_uint,
- pub width: usize,
- pub height: usize,
-}
-pub type CUDA_MEMSET_NODE_PARAMS_v1 = CUDA_MEMSET_NODE_PARAMS_st;
-pub type CUDA_MEMSET_NODE_PARAMS = CUDA_MEMSET_NODE_PARAMS_v1;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUDA_HOST_NODE_PARAMS_st {
- pub fn_: CUhostFn,
- pub userData: *mut ::std::os::raw::c_void,
-}
-pub type CUDA_HOST_NODE_PARAMS_v1 = CUDA_HOST_NODE_PARAMS_st;
-pub type CUDA_HOST_NODE_PARAMS = CUDA_HOST_NODE_PARAMS_v1;
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_KERNEL: CUgraphNodeType_enum = CUgraphNodeType_enum(0);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_MEMCPY: CUgraphNodeType_enum = CUgraphNodeType_enum(1);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_MEMSET: CUgraphNodeType_enum = CUgraphNodeType_enum(2);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_HOST: CUgraphNodeType_enum = CUgraphNodeType_enum(3);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_GRAPH: CUgraphNodeType_enum = CUgraphNodeType_enum(4);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_EMPTY: CUgraphNodeType_enum = CUgraphNodeType_enum(5);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_WAIT_EVENT: CUgraphNodeType_enum = CUgraphNodeType_enum(6);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_EVENT_RECORD: CUgraphNodeType_enum = CUgraphNodeType_enum(7);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_EXT_SEMAS_SIGNAL: CUgraphNodeType_enum = CUgraphNodeType_enum(8);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_EXT_SEMAS_WAIT: CUgraphNodeType_enum = CUgraphNodeType_enum(9);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_MEM_ALLOC: CUgraphNodeType_enum = CUgraphNodeType_enum(10);
-}
-impl CUgraphNodeType_enum {
- pub const CU_GRAPH_NODE_TYPE_MEM_FREE: CUgraphNodeType_enum = CUgraphNodeType_enum(11);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUgraphNodeType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUgraphNodeType_enum as CUgraphNodeType;
-impl CUsynchronizationPolicy_enum {
- pub const CU_SYNC_POLICY_AUTO: CUsynchronizationPolicy_enum = CUsynchronizationPolicy_enum(1);
-}
-impl CUsynchronizationPolicy_enum {
- pub const CU_SYNC_POLICY_SPIN: CUsynchronizationPolicy_enum = CUsynchronizationPolicy_enum(2);
-}
-impl CUsynchronizationPolicy_enum {
- pub const CU_SYNC_POLICY_YIELD: CUsynchronizationPolicy_enum = CUsynchronizationPolicy_enum(3);
-}
-impl CUsynchronizationPolicy_enum {
- pub const CU_SYNC_POLICY_BLOCKING_SYNC: CUsynchronizationPolicy_enum =
- CUsynchronizationPolicy_enum(4);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUsynchronizationPolicy_enum(pub ::std::os::raw::c_uint);
-pub use self::CUsynchronizationPolicy_enum as CUsynchronizationPolicy;
-impl CUkernelNodeAttrID_enum {
- pub const CU_KERNEL_NODE_ATTRIBUTE_ACCESS_POLICY_WINDOW: CUkernelNodeAttrID_enum =
- CUkernelNodeAttrID_enum(1);
-}
-impl CUkernelNodeAttrID_enum {
- pub const CU_KERNEL_NODE_ATTRIBUTE_COOPERATIVE: CUkernelNodeAttrID_enum =
- CUkernelNodeAttrID_enum(2);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUkernelNodeAttrID_enum(pub ::std::os::raw::c_uint);
-pub use self::CUkernelNodeAttrID_enum as CUkernelNodeAttrID;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUkernelNodeAttrValue_union {
- pub accessPolicyWindow: CUaccessPolicyWindow,
- pub cooperative: ::std::os::raw::c_int,
-}
-pub type CUkernelNodeAttrValue_v1 = CUkernelNodeAttrValue_union;
-pub type CUkernelNodeAttrValue = CUkernelNodeAttrValue_v1;
-impl CUstreamCaptureStatus_enum {
- pub const CU_STREAM_CAPTURE_STATUS_NONE: CUstreamCaptureStatus_enum =
- CUstreamCaptureStatus_enum(0);
-}
-impl CUstreamCaptureStatus_enum {
- pub const CU_STREAM_CAPTURE_STATUS_ACTIVE: CUstreamCaptureStatus_enum =
- CUstreamCaptureStatus_enum(1);
-}
-impl CUstreamCaptureStatus_enum {
- pub const CU_STREAM_CAPTURE_STATUS_INVALIDATED: CUstreamCaptureStatus_enum =
- CUstreamCaptureStatus_enum(2);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUstreamCaptureStatus_enum(pub ::std::os::raw::c_uint);
-pub use self::CUstreamCaptureStatus_enum as CUstreamCaptureStatus;
-impl CUstreamCaptureMode_enum {
- pub const CU_STREAM_CAPTURE_MODE_GLOBAL: CUstreamCaptureMode_enum = CUstreamCaptureMode_enum(0);
-}
-impl CUstreamCaptureMode_enum {
- pub const CU_STREAM_CAPTURE_MODE_THREAD_LOCAL: CUstreamCaptureMode_enum =
- CUstreamCaptureMode_enum(1);
-}
-impl CUstreamCaptureMode_enum {
- pub const CU_STREAM_CAPTURE_MODE_RELAXED: CUstreamCaptureMode_enum =
- CUstreamCaptureMode_enum(2);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUstreamCaptureMode_enum(pub ::std::os::raw::c_uint);
-pub use self::CUstreamCaptureMode_enum as CUstreamCaptureMode;
-impl CUstreamAttrID_enum {
- pub const CU_STREAM_ATTRIBUTE_ACCESS_POLICY_WINDOW: CUstreamAttrID_enum =
- CUstreamAttrID_enum(1);
-}
-impl CUstreamAttrID_enum {
- pub const CU_STREAM_ATTRIBUTE_SYNCHRONIZATION_POLICY: CUstreamAttrID_enum =
- CUstreamAttrID_enum(3);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUstreamAttrID_enum(pub ::std::os::raw::c_uint);
-pub use self::CUstreamAttrID_enum as CUstreamAttrID;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUstreamAttrValue_union {
- pub accessPolicyWindow: CUaccessPolicyWindow,
- pub syncPolicy: CUsynchronizationPolicy,
-}
-pub type CUstreamAttrValue_v1 = CUstreamAttrValue_union;
-pub type CUstreamAttrValue = CUstreamAttrValue_v1;
-impl CUexecAffinityType_enum {
- pub const CU_EXEC_AFFINITY_TYPE_SM_COUNT: CUexecAffinityType_enum = CUexecAffinityType_enum(0);
-}
-impl CUexecAffinityType_enum {
- pub const CU_EXEC_AFFINITY_TYPE_MAX: CUexecAffinityType_enum = CUexecAffinityType_enum(1);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUexecAffinityType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUexecAffinityType_enum as CUexecAffinityType;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUexecAffinitySmCount_st {
- pub val: ::std::os::raw::c_uint,
-}
-pub type CUexecAffinitySmCount_v1 = CUexecAffinitySmCount_st;
-pub type CUexecAffinitySmCount = CUexecAffinitySmCount_v1;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUexecAffinityParam_st {
- pub type_: CUexecAffinityType,
- pub param: CUexecAffinityParam_st__bindgen_ty_1,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUexecAffinityParam_st__bindgen_ty_1 {
- pub smCount: CUexecAffinitySmCount,
-}
-pub type CUexecAffinityParam_v1 = CUexecAffinityParam_st;
-pub type CUexecAffinityParam = CUexecAffinityParam_v1;
-impl cudaError_enum {
- pub const CUDA_SUCCESS: cudaError_enum = cudaError_enum(0);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_VALUE: cudaError_enum = cudaError_enum(1);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_OUT_OF_MEMORY: cudaError_enum = cudaError_enum(2);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NOT_INITIALIZED: cudaError_enum = cudaError_enum(3);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_DEINITIALIZED: cudaError_enum = cudaError_enum(4);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_PROFILER_DISABLED: cudaError_enum = cudaError_enum(5);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_PROFILER_NOT_INITIALIZED: cudaError_enum = cudaError_enum(6);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_PROFILER_ALREADY_STARTED: cudaError_enum = cudaError_enum(7);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_PROFILER_ALREADY_STOPPED: cudaError_enum = cudaError_enum(8);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STUB_LIBRARY: cudaError_enum = cudaError_enum(34);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NO_DEVICE: cudaError_enum = cudaError_enum(100);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_DEVICE: cudaError_enum = cudaError_enum(101);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_DEVICE_NOT_LICENSED: cudaError_enum = cudaError_enum(102);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_IMAGE: cudaError_enum = cudaError_enum(200);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_CONTEXT: cudaError_enum = cudaError_enum(201);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_CONTEXT_ALREADY_CURRENT: cudaError_enum = cudaError_enum(202);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_MAP_FAILED: cudaError_enum = cudaError_enum(205);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_UNMAP_FAILED: cudaError_enum = cudaError_enum(206);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_ARRAY_IS_MAPPED: cudaError_enum = cudaError_enum(207);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_ALREADY_MAPPED: cudaError_enum = cudaError_enum(208);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NO_BINARY_FOR_GPU: cudaError_enum = cudaError_enum(209);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_ALREADY_ACQUIRED: cudaError_enum = cudaError_enum(210);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NOT_MAPPED: cudaError_enum = cudaError_enum(211);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NOT_MAPPED_AS_ARRAY: cudaError_enum = cudaError_enum(212);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NOT_MAPPED_AS_POINTER: cudaError_enum = cudaError_enum(213);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_ECC_UNCORRECTABLE: cudaError_enum = cudaError_enum(214);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_UNSUPPORTED_LIMIT: cudaError_enum = cudaError_enum(215);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_CONTEXT_ALREADY_IN_USE: cudaError_enum = cudaError_enum(216);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_PEER_ACCESS_UNSUPPORTED: cudaError_enum = cudaError_enum(217);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_PTX: cudaError_enum = cudaError_enum(218);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_GRAPHICS_CONTEXT: cudaError_enum = cudaError_enum(219);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NVLINK_UNCORRECTABLE: cudaError_enum = cudaError_enum(220);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_JIT_COMPILER_NOT_FOUND: cudaError_enum = cudaError_enum(221);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_UNSUPPORTED_PTX_VERSION: cudaError_enum = cudaError_enum(222);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_JIT_COMPILATION_DISABLED: cudaError_enum = cudaError_enum(223);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_UNSUPPORTED_EXEC_AFFINITY: cudaError_enum = cudaError_enum(224);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_SOURCE: cudaError_enum = cudaError_enum(300);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_FILE_NOT_FOUND: cudaError_enum = cudaError_enum(301);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND: cudaError_enum = cudaError_enum(302);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_SHARED_OBJECT_INIT_FAILED: cudaError_enum = cudaError_enum(303);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_OPERATING_SYSTEM: cudaError_enum = cudaError_enum(304);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_HANDLE: cudaError_enum = cudaError_enum(400);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_ILLEGAL_STATE: cudaError_enum = cudaError_enum(401);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NOT_FOUND: cudaError_enum = cudaError_enum(500);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NOT_READY: cudaError_enum = cudaError_enum(600);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_ILLEGAL_ADDRESS: cudaError_enum = cudaError_enum(700);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES: cudaError_enum = cudaError_enum(701);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_LAUNCH_TIMEOUT: cudaError_enum = cudaError_enum(702);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING: cudaError_enum = cudaError_enum(703);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED: cudaError_enum = cudaError_enum(704);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_PEER_ACCESS_NOT_ENABLED: cudaError_enum = cudaError_enum(705);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE: cudaError_enum = cudaError_enum(708);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_CONTEXT_IS_DESTROYED: cudaError_enum = cudaError_enum(709);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_ASSERT: cudaError_enum = cudaError_enum(710);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_TOO_MANY_PEERS: cudaError_enum = cudaError_enum(711);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED: cudaError_enum = cudaError_enum(712);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED: cudaError_enum = cudaError_enum(713);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_HARDWARE_STACK_ERROR: cudaError_enum = cudaError_enum(714);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_ILLEGAL_INSTRUCTION: cudaError_enum = cudaError_enum(715);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_MISALIGNED_ADDRESS: cudaError_enum = cudaError_enum(716);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_ADDRESS_SPACE: cudaError_enum = cudaError_enum(717);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_INVALID_PC: cudaError_enum = cudaError_enum(718);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_LAUNCH_FAILED: cudaError_enum = cudaError_enum(719);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_COOPERATIVE_LAUNCH_TOO_LARGE: cudaError_enum = cudaError_enum(720);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NOT_PERMITTED: cudaError_enum = cudaError_enum(800);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_NOT_SUPPORTED: cudaError_enum = cudaError_enum(801);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_SYSTEM_NOT_READY: cudaError_enum = cudaError_enum(802);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_SYSTEM_DRIVER_MISMATCH: cudaError_enum = cudaError_enum(803);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_COMPAT_NOT_SUPPORTED_ON_DEVICE: cudaError_enum = cudaError_enum(804);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_MPS_CONNECTION_FAILED: cudaError_enum = cudaError_enum(805);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_MPS_RPC_FAILURE: cudaError_enum = cudaError_enum(806);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_MPS_SERVER_NOT_READY: cudaError_enum = cudaError_enum(807);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_MPS_MAX_CLIENTS_REACHED: cudaError_enum = cudaError_enum(808);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_MPS_MAX_CONNECTIONS_REACHED: cudaError_enum = cudaError_enum(809);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STREAM_CAPTURE_UNSUPPORTED: cudaError_enum = cudaError_enum(900);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STREAM_CAPTURE_INVALIDATED: cudaError_enum = cudaError_enum(901);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STREAM_CAPTURE_MERGE: cudaError_enum = cudaError_enum(902);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STREAM_CAPTURE_UNMATCHED: cudaError_enum = cudaError_enum(903);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STREAM_CAPTURE_UNJOINED: cudaError_enum = cudaError_enum(904);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STREAM_CAPTURE_ISOLATION: cudaError_enum = cudaError_enum(905);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STREAM_CAPTURE_IMPLICIT: cudaError_enum = cudaError_enum(906);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_CAPTURED_EVENT: cudaError_enum = cudaError_enum(907);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_STREAM_CAPTURE_WRONG_THREAD: cudaError_enum = cudaError_enum(908);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_TIMEOUT: cudaError_enum = cudaError_enum(909);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_GRAPH_EXEC_UPDATE_FAILURE: cudaError_enum = cudaError_enum(910);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_EXTERNAL_DEVICE: cudaError_enum = cudaError_enum(911);
-}
-impl cudaError_enum {
- pub const CUDA_ERROR_UNKNOWN: cudaError_enum = cudaError_enum(999);
-}
-#[repr(transparent)]
-#[must_use]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct cudaError_enum(pub ::std::os::raw::c_uint);
-pub use self::cudaError_enum as CUresult;
-impl CUdevice_P2PAttribute_enum {
- pub const CU_DEVICE_P2P_ATTRIBUTE_PERFORMANCE_RANK: CUdevice_P2PAttribute_enum =
- CUdevice_P2PAttribute_enum(1);
-}
-impl CUdevice_P2PAttribute_enum {
- pub const CU_DEVICE_P2P_ATTRIBUTE_ACCESS_SUPPORTED: CUdevice_P2PAttribute_enum =
- CUdevice_P2PAttribute_enum(2);
-}
-impl CUdevice_P2PAttribute_enum {
- pub const CU_DEVICE_P2P_ATTRIBUTE_NATIVE_ATOMIC_SUPPORTED: CUdevice_P2PAttribute_enum =
- CUdevice_P2PAttribute_enum(3);
-}
-impl CUdevice_P2PAttribute_enum {
- pub const CU_DEVICE_P2P_ATTRIBUTE_ACCESS_ACCESS_SUPPORTED: CUdevice_P2PAttribute_enum =
- CUdevice_P2PAttribute_enum(4);
-}
-impl CUdevice_P2PAttribute_enum {
- pub const CU_DEVICE_P2P_ATTRIBUTE_CUDA_ARRAY_ACCESS_SUPPORTED: CUdevice_P2PAttribute_enum =
- CUdevice_P2PAttribute_enum(4);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUdevice_P2PAttribute_enum(pub ::std::os::raw::c_uint);
-pub use self::CUdevice_P2PAttribute_enum as CUdevice_P2PAttribute;
-pub type CUstreamCallback = ::std::option::Option<
- unsafe extern "C" fn(
- hStream: CUstream,
- status: CUresult,
- userData: *mut ::std::os::raw::c_void,
- ),
->;
-pub type CUoccupancyB2DSize =
- ::std::option::Option<unsafe extern "C" fn(blockSize: ::std::os::raw::c_int) -> usize>;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_MEMCPY2D_st {
- pub srcXInBytes: usize,
- pub srcY: usize,
- pub srcMemoryType: CUmemorytype,
- pub srcHost: *const ::std::os::raw::c_void,
- pub srcDevice: CUdeviceptr,
- pub srcArray: CUarray,
- pub srcPitch: usize,
- pub dstXInBytes: usize,
- pub dstY: usize,
- pub dstMemoryType: CUmemorytype,
- pub dstHost: *mut ::std::os::raw::c_void,
- pub dstDevice: CUdeviceptr,
- pub dstArray: CUarray,
- pub dstPitch: usize,
- pub WidthInBytes: usize,
- pub Height: usize,
-}
-pub type CUDA_MEMCPY2D_v2 = CUDA_MEMCPY2D_st;
-pub type CUDA_MEMCPY2D = CUDA_MEMCPY2D_v2;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_MEMCPY3D_st {
- pub srcXInBytes: usize,
- pub srcY: usize,
- pub srcZ: usize,
- pub srcLOD: usize,
- pub srcMemoryType: CUmemorytype,
- pub srcHost: *const ::std::os::raw::c_void,
- pub srcDevice: CUdeviceptr,
- pub srcArray: CUarray,
- pub reserved0: *mut ::std::os::raw::c_void,
- pub srcPitch: usize,
- pub srcHeight: usize,
- pub dstXInBytes: usize,
- pub dstY: usize,
- pub dstZ: usize,
- pub dstLOD: usize,
- pub dstMemoryType: CUmemorytype,
- pub dstHost: *mut ::std::os::raw::c_void,
- pub dstDevice: CUdeviceptr,
- pub dstArray: CUarray,
- pub reserved1: *mut ::std::os::raw::c_void,
- pub dstPitch: usize,
- pub dstHeight: usize,
- pub WidthInBytes: usize,
- pub Height: usize,
- pub Depth: usize,
-}
-pub type CUDA_MEMCPY3D_v2 = CUDA_MEMCPY3D_st;
-pub type CUDA_MEMCPY3D = CUDA_MEMCPY3D_v2;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_MEMCPY3D_PEER_st {
- pub srcXInBytes: usize,
- pub srcY: usize,
- pub srcZ: usize,
- pub srcLOD: usize,
- pub srcMemoryType: CUmemorytype,
- pub srcHost: *const ::std::os::raw::c_void,
- pub srcDevice: CUdeviceptr,
- pub srcArray: CUarray,
- pub srcContext: CUcontext,
- pub srcPitch: usize,
- pub srcHeight: usize,
- pub dstXInBytes: usize,
- pub dstY: usize,
- pub dstZ: usize,
- pub dstLOD: usize,
- pub dstMemoryType: CUmemorytype,
- pub dstHost: *mut ::std::os::raw::c_void,
- pub dstDevice: CUdeviceptr,
- pub dstArray: CUarray,
- pub dstContext: CUcontext,
- pub dstPitch: usize,
- pub dstHeight: usize,
- pub WidthInBytes: usize,
- pub Height: usize,
- pub Depth: usize,
-}
-pub type CUDA_MEMCPY3D_PEER_v1 = CUDA_MEMCPY3D_PEER_st;
-pub type CUDA_MEMCPY3D_PEER = CUDA_MEMCPY3D_PEER_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_ARRAY_DESCRIPTOR_st {
- pub Width: usize,
- pub Height: usize,
- pub Format: CUarray_format,
- pub NumChannels: ::std::os::raw::c_uint,
-}
-pub type CUDA_ARRAY_DESCRIPTOR_v2 = CUDA_ARRAY_DESCRIPTOR_st;
-pub type CUDA_ARRAY_DESCRIPTOR = CUDA_ARRAY_DESCRIPTOR_v2;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_ARRAY3D_DESCRIPTOR_st {
- pub Width: usize,
- pub Height: usize,
- pub Depth: usize,
- pub Format: CUarray_format,
- pub NumChannels: ::std::os::raw::c_uint,
- pub Flags: ::std::os::raw::c_uint,
-}
-pub type CUDA_ARRAY3D_DESCRIPTOR_v2 = CUDA_ARRAY3D_DESCRIPTOR_st;
-pub type CUDA_ARRAY3D_DESCRIPTOR = CUDA_ARRAY3D_DESCRIPTOR_v2;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_ARRAY_SPARSE_PROPERTIES_st {
- pub tileExtent: CUDA_ARRAY_SPARSE_PROPERTIES_st__bindgen_ty_1,
- pub miptailFirstLevel: ::std::os::raw::c_uint,
- pub miptailSize: ::std::os::raw::c_ulonglong,
- pub flags: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 4usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_ARRAY_SPARSE_PROPERTIES_st__bindgen_ty_1 {
- pub width: ::std::os::raw::c_uint,
- pub height: ::std::os::raw::c_uint,
- pub depth: ::std::os::raw::c_uint,
-}
-pub type CUDA_ARRAY_SPARSE_PROPERTIES_v1 = CUDA_ARRAY_SPARSE_PROPERTIES_st;
-pub type CUDA_ARRAY_SPARSE_PROPERTIES = CUDA_ARRAY_SPARSE_PROPERTIES_v1;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUDA_RESOURCE_DESC_st {
- pub resType: CUresourcetype,
- pub res: CUDA_RESOURCE_DESC_st__bindgen_ty_1,
- pub flags: ::std::os::raw::c_uint,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUDA_RESOURCE_DESC_st__bindgen_ty_1 {
- pub array: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_1,
- pub mipmap: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_2,
- pub linear: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_3,
- pub pitch2D: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_4,
- pub reserved: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_5,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_1 {
- pub hArray: CUarray,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_2 {
- pub hMipmappedArray: CUmipmappedArray,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_3 {
- pub devPtr: CUdeviceptr,
- pub format: CUarray_format,
- pub numChannels: ::std::os::raw::c_uint,
- pub sizeInBytes: usize,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_4 {
- pub devPtr: CUdeviceptr,
- pub format: CUarray_format,
- pub numChannels: ::std::os::raw::c_uint,
- pub width: usize,
- pub height: usize,
- pub pitchInBytes: usize,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_5 {
- pub reserved: [::std::os::raw::c_int; 32usize],
-}
-pub type CUDA_RESOURCE_DESC_v1 = CUDA_RESOURCE_DESC_st;
-pub type CUDA_RESOURCE_DESC = CUDA_RESOURCE_DESC_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq)]
-pub struct CUDA_TEXTURE_DESC_st {
- pub addressMode: [CUaddress_mode; 3usize],
- pub filterMode: CUfilter_mode,
- pub flags: ::std::os::raw::c_uint,
- pub maxAnisotropy: ::std::os::raw::c_uint,
- pub mipmapFilterMode: CUfilter_mode,
- pub mipmapLevelBias: f32,
- pub minMipmapLevelClamp: f32,
- pub maxMipmapLevelClamp: f32,
- pub borderColor: [f32; 4usize],
- pub reserved: [::std::os::raw::c_int; 12usize],
-}
-pub type CUDA_TEXTURE_DESC_v1 = CUDA_TEXTURE_DESC_st;
-pub type CUDA_TEXTURE_DESC = CUDA_TEXTURE_DESC_v1;
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_NONE: CUresourceViewFormat_enum = CUresourceViewFormat_enum(0);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_1X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(1);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_2X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(2);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_4X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(3);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_1X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(4);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_2X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(5);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_4X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(6);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_1X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(7);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_2X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(8);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_4X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(9);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_1X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(10);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_2X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(11);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_4X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(12);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_1X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(13);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_2X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(14);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UINT_4X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(15);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_1X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(16);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_2X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(17);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SINT_4X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(18);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_FLOAT_1X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(19);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_FLOAT_2X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(20);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_FLOAT_4X16: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(21);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_FLOAT_1X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(22);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_FLOAT_2X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(23);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_FLOAT_4X32: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(24);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC1: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(25);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC2: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(26);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC3: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(27);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC4: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(28);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SIGNED_BC4: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(29);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC5: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(30);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SIGNED_BC5: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(31);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC6H: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(32);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_SIGNED_BC6H: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(33);
-}
-impl CUresourceViewFormat_enum {
- pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC7: CUresourceViewFormat_enum =
- CUresourceViewFormat_enum(34);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUresourceViewFormat_enum(pub ::std::os::raw::c_uint);
-pub use self::CUresourceViewFormat_enum as CUresourceViewFormat;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_RESOURCE_VIEW_DESC_st {
- pub format: CUresourceViewFormat,
- pub width: usize,
- pub height: usize,
- pub depth: usize,
- pub firstMipmapLevel: ::std::os::raw::c_uint,
- pub lastMipmapLevel: ::std::os::raw::c_uint,
- pub firstLayer: ::std::os::raw::c_uint,
- pub lastLayer: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 16usize],
-}
-pub type CUDA_RESOURCE_VIEW_DESC_v1 = CUDA_RESOURCE_VIEW_DESC_st;
-pub type CUDA_RESOURCE_VIEW_DESC = CUDA_RESOURCE_VIEW_DESC_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_LAUNCH_PARAMS_st {
- pub function: CUfunction,
- pub gridDimX: ::std::os::raw::c_uint,
- pub gridDimY: ::std::os::raw::c_uint,
- pub gridDimZ: ::std::os::raw::c_uint,
- pub blockDimX: ::std::os::raw::c_uint,
- pub blockDimY: ::std::os::raw::c_uint,
- pub blockDimZ: ::std::os::raw::c_uint,
- pub sharedMemBytes: ::std::os::raw::c_uint,
- pub hStream: CUstream,
- pub kernelParams: *mut *mut ::std::os::raw::c_void,
-}
-pub type CUDA_LAUNCH_PARAMS_v1 = CUDA_LAUNCH_PARAMS_st;
-pub type CUDA_LAUNCH_PARAMS = CUDA_LAUNCH_PARAMS_v1;
-impl CUexternalMemoryHandleType_enum {
- pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD: CUexternalMemoryHandleType_enum =
- CUexternalMemoryHandleType_enum(1);
-}
-impl CUexternalMemoryHandleType_enum {
- pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32: CUexternalMemoryHandleType_enum =
- CUexternalMemoryHandleType_enum(2);
-}
-impl CUexternalMemoryHandleType_enum {
- pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT: CUexternalMemoryHandleType_enum =
- CUexternalMemoryHandleType_enum(3);
-}
-impl CUexternalMemoryHandleType_enum {
- pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP: CUexternalMemoryHandleType_enum =
- CUexternalMemoryHandleType_enum(4);
-}
-impl CUexternalMemoryHandleType_enum {
- pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE: CUexternalMemoryHandleType_enum =
- CUexternalMemoryHandleType_enum(5);
-}
-impl CUexternalMemoryHandleType_enum {
- pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_RESOURCE: CUexternalMemoryHandleType_enum =
- CUexternalMemoryHandleType_enum(6);
-}
-impl CUexternalMemoryHandleType_enum {
- pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_RESOURCE_KMT: CUexternalMemoryHandleType_enum =
- CUexternalMemoryHandleType_enum(7);
-}
-impl CUexternalMemoryHandleType_enum {
- pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_NVSCIBUF: CUexternalMemoryHandleType_enum =
- CUexternalMemoryHandleType_enum(8);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUexternalMemoryHandleType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUexternalMemoryHandleType_enum as CUexternalMemoryHandleType;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st {
- pub type_: CUexternalMemoryHandleType,
- pub handle: CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st__bindgen_ty_1,
- pub size: ::std::os::raw::c_ulonglong,
- pub flags: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 16usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st__bindgen_ty_1 {
- pub fd: ::std::os::raw::c_int,
- pub win32: CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st__bindgen_ty_1__bindgen_ty_1,
- pub nvSciBufObject: *const ::std::os::raw::c_void,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st__bindgen_ty_1__bindgen_ty_1 {
- pub handle: *mut ::std::os::raw::c_void,
- pub name: *const ::std::os::raw::c_void,
-}
-pub type CUDA_EXTERNAL_MEMORY_HANDLE_DESC_v1 = CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st;
-pub type CUDA_EXTERNAL_MEMORY_HANDLE_DESC = CUDA_EXTERNAL_MEMORY_HANDLE_DESC_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXTERNAL_MEMORY_BUFFER_DESC_st {
- pub offset: ::std::os::raw::c_ulonglong,
- pub size: ::std::os::raw::c_ulonglong,
- pub flags: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 16usize],
-}
-pub type CUDA_EXTERNAL_MEMORY_BUFFER_DESC_v1 = CUDA_EXTERNAL_MEMORY_BUFFER_DESC_st;
-pub type CUDA_EXTERNAL_MEMORY_BUFFER_DESC = CUDA_EXTERNAL_MEMORY_BUFFER_DESC_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_st {
- pub offset: ::std::os::raw::c_ulonglong,
- pub arrayDesc: CUDA_ARRAY3D_DESCRIPTOR,
- pub numLevels: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 16usize],
-}
-pub type CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_v1 =
- CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_st;
-pub type CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC = CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_v1;
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD: CUexternalSemaphoreHandleType_enum =
- CUexternalSemaphoreHandleType_enum(1);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32: CUexternalSemaphoreHandleType_enum =
- CUexternalSemaphoreHandleType_enum(2);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT:
- CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(3);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE: CUexternalSemaphoreHandleType_enum =
- CUexternalSemaphoreHandleType_enum(4);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE: CUexternalSemaphoreHandleType_enum =
- CUexternalSemaphoreHandleType_enum(5);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_NVSCISYNC: CUexternalSemaphoreHandleType_enum =
- CUexternalSemaphoreHandleType_enum(6);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_KEYED_MUTEX:
- CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(7);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_KEYED_MUTEX_KMT:
- CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(8);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_TIMELINE_SEMAPHORE_FD:
- CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(9);
-}
-impl CUexternalSemaphoreHandleType_enum {
- pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_TIMELINE_SEMAPHORE_WIN32:
- CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(10);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUexternalSemaphoreHandleType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUexternalSemaphoreHandleType_enum as CUexternalSemaphoreHandleType;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st {
- pub type_: CUexternalSemaphoreHandleType,
- pub handle: CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st__bindgen_ty_1,
- pub flags: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 16usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st__bindgen_ty_1 {
- pub fd: ::std::os::raw::c_int,
- pub win32: CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st__bindgen_ty_1__bindgen_ty_1,
- pub nvSciSyncObj: *const ::std::os::raw::c_void,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st__bindgen_ty_1__bindgen_ty_1 {
- pub handle: *mut ::std::os::raw::c_void,
- pub name: *const ::std::os::raw::c_void,
-}
-pub type CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_v1 = CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st;
-pub type CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC = CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_v1;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st {
- pub params: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1,
- pub flags: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 16usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1 {
- pub fence: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_1,
- pub nvSciSync: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_2,
- pub keyedMutex: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_3,
- pub reserved: [::std::os::raw::c_uint; 12usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_1 {
- pub value: ::std::os::raw::c_ulonglong,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_2 {
- pub fence: *mut ::std::os::raw::c_void,
- pub reserved: ::std::os::raw::c_ulonglong,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_3 {
- pub key: ::std::os::raw::c_ulonglong,
-}
-pub type CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_v1 = CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st;
-pub type CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS = CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_v1;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st {
- pub params: CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1,
- pub flags: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 16usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1 {
- pub fence: CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_1,
- pub nvSciSync: CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_2,
- pub keyedMutex: CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_3,
- pub reserved: [::std::os::raw::c_uint; 10usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_1 {
- pub value: ::std::os::raw::c_ulonglong,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_2 {
- pub fence: *mut ::std::os::raw::c_void,
- pub reserved: ::std::os::raw::c_ulonglong,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_3 {
- pub key: ::std::os::raw::c_ulonglong,
- pub timeoutMs: ::std::os::raw::c_uint,
-}
-pub type CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_v1 = CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st;
-pub type CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS = CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_st {
- pub extSemArray: *mut CUexternalSemaphore,
- pub paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS,
- pub numExtSems: ::std::os::raw::c_uint,
-}
-pub type CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v1 = CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_st;
-pub type CUDA_EXT_SEM_SIGNAL_NODE_PARAMS = CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_EXT_SEM_WAIT_NODE_PARAMS_st {
- pub extSemArray: *mut CUexternalSemaphore,
- pub paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS,
- pub numExtSems: ::std::os::raw::c_uint,
-}
-pub type CUDA_EXT_SEM_WAIT_NODE_PARAMS_v1 = CUDA_EXT_SEM_WAIT_NODE_PARAMS_st;
-pub type CUDA_EXT_SEM_WAIT_NODE_PARAMS = CUDA_EXT_SEM_WAIT_NODE_PARAMS_v1;
-pub type CUmemGenericAllocationHandle_v1 = ::std::os::raw::c_ulonglong;
-pub type CUmemGenericAllocationHandle = CUmemGenericAllocationHandle_v1;
-impl CUmemAllocationHandleType_enum {
- pub const CU_MEM_HANDLE_TYPE_NONE: CUmemAllocationHandleType_enum =
- CUmemAllocationHandleType_enum(0);
-}
-impl CUmemAllocationHandleType_enum {
- pub const CU_MEM_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR: CUmemAllocationHandleType_enum =
- CUmemAllocationHandleType_enum(1);
-}
-impl CUmemAllocationHandleType_enum {
- pub const CU_MEM_HANDLE_TYPE_WIN32: CUmemAllocationHandleType_enum =
- CUmemAllocationHandleType_enum(2);
-}
-impl CUmemAllocationHandleType_enum {
- pub const CU_MEM_HANDLE_TYPE_WIN32_KMT: CUmemAllocationHandleType_enum =
- CUmemAllocationHandleType_enum(4);
-}
-impl CUmemAllocationHandleType_enum {
- pub const CU_MEM_HANDLE_TYPE_MAX: CUmemAllocationHandleType_enum =
- CUmemAllocationHandleType_enum(2147483647);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemAllocationHandleType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemAllocationHandleType_enum as CUmemAllocationHandleType;
-impl CUmemAccess_flags_enum {
- pub const CU_MEM_ACCESS_FLAGS_PROT_NONE: CUmemAccess_flags_enum = CUmemAccess_flags_enum(0);
-}
-impl CUmemAccess_flags_enum {
- pub const CU_MEM_ACCESS_FLAGS_PROT_READ: CUmemAccess_flags_enum = CUmemAccess_flags_enum(1);
-}
-impl CUmemAccess_flags_enum {
- pub const CU_MEM_ACCESS_FLAGS_PROT_READWRITE: CUmemAccess_flags_enum =
- CUmemAccess_flags_enum(3);
-}
-impl CUmemAccess_flags_enum {
- pub const CU_MEM_ACCESS_FLAGS_PROT_MAX: CUmemAccess_flags_enum =
- CUmemAccess_flags_enum(2147483647);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemAccess_flags_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemAccess_flags_enum as CUmemAccess_flags;
-impl CUmemLocationType_enum {
- pub const CU_MEM_LOCATION_TYPE_INVALID: CUmemLocationType_enum = CUmemLocationType_enum(0);
-}
-impl CUmemLocationType_enum {
- pub const CU_MEM_LOCATION_TYPE_DEVICE: CUmemLocationType_enum = CUmemLocationType_enum(1);
-}
-impl CUmemLocationType_enum {
- pub const CU_MEM_LOCATION_TYPE_MAX: CUmemLocationType_enum = CUmemLocationType_enum(2147483647);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemLocationType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemLocationType_enum as CUmemLocationType;
-impl CUmemAllocationType_enum {
- pub const CU_MEM_ALLOCATION_TYPE_INVALID: CUmemAllocationType_enum =
- CUmemAllocationType_enum(0);
-}
-impl CUmemAllocationType_enum {
- pub const CU_MEM_ALLOCATION_TYPE_PINNED: CUmemAllocationType_enum = CUmemAllocationType_enum(1);
-}
-impl CUmemAllocationType_enum {
- pub const CU_MEM_ALLOCATION_TYPE_MAX: CUmemAllocationType_enum =
- CUmemAllocationType_enum(2147483647);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemAllocationType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemAllocationType_enum as CUmemAllocationType;
-impl CUmemAllocationGranularity_flags_enum {
- pub const CU_MEM_ALLOC_GRANULARITY_MINIMUM: CUmemAllocationGranularity_flags_enum =
- CUmemAllocationGranularity_flags_enum(0);
-}
-impl CUmemAllocationGranularity_flags_enum {
- pub const CU_MEM_ALLOC_GRANULARITY_RECOMMENDED: CUmemAllocationGranularity_flags_enum =
- CUmemAllocationGranularity_flags_enum(1);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemAllocationGranularity_flags_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemAllocationGranularity_flags_enum as CUmemAllocationGranularity_flags;
-impl CUarraySparseSubresourceType_enum {
- pub const CU_ARRAY_SPARSE_SUBRESOURCE_TYPE_SPARSE_LEVEL: CUarraySparseSubresourceType_enum =
- CUarraySparseSubresourceType_enum(0);
-}
-impl CUarraySparseSubresourceType_enum {
- pub const CU_ARRAY_SPARSE_SUBRESOURCE_TYPE_MIPTAIL: CUarraySparseSubresourceType_enum =
- CUarraySparseSubresourceType_enum(1);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUarraySparseSubresourceType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUarraySparseSubresourceType_enum as CUarraySparseSubresourceType;
-impl CUmemOperationType_enum {
- pub const CU_MEM_OPERATION_TYPE_MAP: CUmemOperationType_enum = CUmemOperationType_enum(1);
-}
-impl CUmemOperationType_enum {
- pub const CU_MEM_OPERATION_TYPE_UNMAP: CUmemOperationType_enum = CUmemOperationType_enum(2);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemOperationType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemOperationType_enum as CUmemOperationType;
-impl CUmemHandleType_enum {
- pub const CU_MEM_HANDLE_TYPE_GENERIC: CUmemHandleType_enum = CUmemHandleType_enum(0);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemHandleType_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemHandleType_enum as CUmemHandleType;
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub struct CUarrayMapInfo_st {
- pub resourceType: CUresourcetype,
- pub resource: CUarrayMapInfo_st__bindgen_ty_1,
- pub subresourceType: CUarraySparseSubresourceType,
- pub subresource: CUarrayMapInfo_st__bindgen_ty_2,
- pub memOperationType: CUmemOperationType,
- pub memHandleType: CUmemHandleType,
- pub memHandle: CUarrayMapInfo_st__bindgen_ty_3,
- pub offset: ::std::os::raw::c_ulonglong,
- pub deviceBitMask: ::std::os::raw::c_uint,
- pub flags: ::std::os::raw::c_uint,
- pub reserved: [::std::os::raw::c_uint; 2usize],
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUarrayMapInfo_st__bindgen_ty_1 {
- pub mipmap: CUmipmappedArray,
- pub array: CUarray,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUarrayMapInfo_st__bindgen_ty_2 {
- pub sparseLevel: CUarrayMapInfo_st__bindgen_ty_2__bindgen_ty_1,
- pub miptail: CUarrayMapInfo_st__bindgen_ty_2__bindgen_ty_2,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUarrayMapInfo_st__bindgen_ty_2__bindgen_ty_1 {
- pub level: ::std::os::raw::c_uint,
- pub layer: ::std::os::raw::c_uint,
- pub offsetX: ::std::os::raw::c_uint,
- pub offsetY: ::std::os::raw::c_uint,
- pub offsetZ: ::std::os::raw::c_uint,
- pub extentWidth: ::std::os::raw::c_uint,
- pub extentHeight: ::std::os::raw::c_uint,
- pub extentDepth: ::std::os::raw::c_uint,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUarrayMapInfo_st__bindgen_ty_2__bindgen_ty_2 {
- pub layer: ::std::os::raw::c_uint,
- pub offset: ::std::os::raw::c_ulonglong,
- pub size: ::std::os::raw::c_ulonglong,
-}
-#[repr(C)]
-#[derive(Copy, Clone)]
-pub union CUarrayMapInfo_st__bindgen_ty_3 {
- pub memHandle: CUmemGenericAllocationHandle,
-}
-pub type CUarrayMapInfo_v1 = CUarrayMapInfo_st;
-pub type CUarrayMapInfo = CUarrayMapInfo_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUmemLocation_st {
- pub type_: CUmemLocationType,
- pub id: ::std::os::raw::c_int,
-}
-pub type CUmemLocation_v1 = CUmemLocation_st;
-pub type CUmemLocation = CUmemLocation_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUmemAllocationProp_st {
- pub type_: CUmemAllocationType,
- pub requestedHandleTypes: CUmemAllocationHandleType,
- pub location: CUmemLocation,
- pub win32HandleMetaData: *mut ::std::os::raw::c_void,
- pub allocFlags: CUmemAllocationProp_st__bindgen_ty_1,
-}
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUmemAllocationProp_st__bindgen_ty_1 {
- pub compressionType: ::std::os::raw::c_uchar,
- pub gpuDirectRDMACapable: ::std::os::raw::c_uchar,
- pub usage: ::std::os::raw::c_ushort,
- pub reserved: [::std::os::raw::c_uchar; 4usize],
-}
-pub type CUmemAllocationProp_v1 = CUmemAllocationProp_st;
-pub type CUmemAllocationProp = CUmemAllocationProp_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUmemAccessDesc_st {
- pub location: CUmemLocation,
- pub flags: CUmemAccess_flags,
-}
-pub type CUmemAccessDesc_v1 = CUmemAccessDesc_st;
-pub type CUmemAccessDesc = CUmemAccessDesc_v1;
-impl CUgraphExecUpdateResult_enum {
- pub const CU_GRAPH_EXEC_UPDATE_SUCCESS: CUgraphExecUpdateResult_enum =
- CUgraphExecUpdateResult_enum(0);
-}
-impl CUgraphExecUpdateResult_enum {
- pub const CU_GRAPH_EXEC_UPDATE_ERROR: CUgraphExecUpdateResult_enum =
- CUgraphExecUpdateResult_enum(1);
-}
-impl CUgraphExecUpdateResult_enum {
- pub const CU_GRAPH_EXEC_UPDATE_ERROR_TOPOLOGY_CHANGED: CUgraphExecUpdateResult_enum =
- CUgraphExecUpdateResult_enum(2);
-}
-impl CUgraphExecUpdateResult_enum {
- pub const CU_GRAPH_EXEC_UPDATE_ERROR_NODE_TYPE_CHANGED: CUgraphExecUpdateResult_enum =
- CUgraphExecUpdateResult_enum(3);
-}
-impl CUgraphExecUpdateResult_enum {
- pub const CU_GRAPH_EXEC_UPDATE_ERROR_FUNCTION_CHANGED: CUgraphExecUpdateResult_enum =
- CUgraphExecUpdateResult_enum(4);
-}
-impl CUgraphExecUpdateResult_enum {
- pub const CU_GRAPH_EXEC_UPDATE_ERROR_PARAMETERS_CHANGED: CUgraphExecUpdateResult_enum =
- CUgraphExecUpdateResult_enum(5);
-}
-impl CUgraphExecUpdateResult_enum {
- pub const CU_GRAPH_EXEC_UPDATE_ERROR_NOT_SUPPORTED: CUgraphExecUpdateResult_enum =
- CUgraphExecUpdateResult_enum(6);
-}
-impl CUgraphExecUpdateResult_enum {
- pub const CU_GRAPH_EXEC_UPDATE_ERROR_UNSUPPORTED_FUNCTION_CHANGE: CUgraphExecUpdateResult_enum =
- CUgraphExecUpdateResult_enum(7);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUgraphExecUpdateResult_enum(pub ::std::os::raw::c_uint);
-pub use self::CUgraphExecUpdateResult_enum as CUgraphExecUpdateResult;
-impl CUmemPool_attribute_enum {
- pub const CU_MEMPOOL_ATTR_REUSE_FOLLOW_EVENT_DEPENDENCIES: CUmemPool_attribute_enum =
- CUmemPool_attribute_enum(1);
-}
-impl CUmemPool_attribute_enum {
- pub const CU_MEMPOOL_ATTR_REUSE_ALLOW_OPPORTUNISTIC: CUmemPool_attribute_enum =
- CUmemPool_attribute_enum(2);
-}
-impl CUmemPool_attribute_enum {
- pub const CU_MEMPOOL_ATTR_REUSE_ALLOW_INTERNAL_DEPENDENCIES: CUmemPool_attribute_enum =
- CUmemPool_attribute_enum(3);
-}
-impl CUmemPool_attribute_enum {
- pub const CU_MEMPOOL_ATTR_RELEASE_THRESHOLD: CUmemPool_attribute_enum =
- CUmemPool_attribute_enum(4);
-}
-impl CUmemPool_attribute_enum {
- pub const CU_MEMPOOL_ATTR_RESERVED_MEM_CURRENT: CUmemPool_attribute_enum =
- CUmemPool_attribute_enum(5);
-}
-impl CUmemPool_attribute_enum {
- pub const CU_MEMPOOL_ATTR_RESERVED_MEM_HIGH: CUmemPool_attribute_enum =
- CUmemPool_attribute_enum(6);
-}
-impl CUmemPool_attribute_enum {
- pub const CU_MEMPOOL_ATTR_USED_MEM_CURRENT: CUmemPool_attribute_enum =
- CUmemPool_attribute_enum(7);
-}
-impl CUmemPool_attribute_enum {
- pub const CU_MEMPOOL_ATTR_USED_MEM_HIGH: CUmemPool_attribute_enum = CUmemPool_attribute_enum(8);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUmemPool_attribute_enum(pub ::std::os::raw::c_uint);
-pub use self::CUmemPool_attribute_enum as CUmemPool_attribute;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUmemPoolProps_st {
- pub allocType: CUmemAllocationType,
- pub handleTypes: CUmemAllocationHandleType,
- pub location: CUmemLocation,
- pub win32SecurityAttributes: *mut ::std::os::raw::c_void,
- pub reserved: [::std::os::raw::c_uchar; 64usize],
-}
-pub type CUmemPoolProps_v1 = CUmemPoolProps_st;
-pub type CUmemPoolProps = CUmemPoolProps_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUmemPoolPtrExportData_st {
- pub reserved: [::std::os::raw::c_uchar; 64usize],
-}
-pub type CUmemPoolPtrExportData_v1 = CUmemPoolPtrExportData_st;
-pub type CUmemPoolPtrExportData = CUmemPoolPtrExportData_v1;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_MEM_ALLOC_NODE_PARAMS_st {
- pub poolProps: CUmemPoolProps,
- pub accessDescs: *const CUmemAccessDesc,
- pub accessDescCount: usize,
- pub bytesize: usize,
- pub dptr: CUdeviceptr,
-}
-pub type CUDA_MEM_ALLOC_NODE_PARAMS = CUDA_MEM_ALLOC_NODE_PARAMS_st;
-impl CUgraphMem_attribute_enum {
- pub const CU_GRAPH_MEM_ATTR_USED_MEM_CURRENT: CUgraphMem_attribute_enum =
- CUgraphMem_attribute_enum(0);
-}
-impl CUgraphMem_attribute_enum {
- pub const CU_GRAPH_MEM_ATTR_USED_MEM_HIGH: CUgraphMem_attribute_enum =
- CUgraphMem_attribute_enum(1);
-}
-impl CUgraphMem_attribute_enum {
- pub const CU_GRAPH_MEM_ATTR_RESERVED_MEM_CURRENT: CUgraphMem_attribute_enum =
- CUgraphMem_attribute_enum(2);
-}
-impl CUgraphMem_attribute_enum {
- pub const CU_GRAPH_MEM_ATTR_RESERVED_MEM_HIGH: CUgraphMem_attribute_enum =
- CUgraphMem_attribute_enum(3);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUgraphMem_attribute_enum(pub ::std::os::raw::c_uint);
-pub use self::CUgraphMem_attribute_enum as CUgraphMem_attribute;
-impl CUflushGPUDirectRDMAWritesScope_enum {
- pub const CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TO_OWNER: CUflushGPUDirectRDMAWritesScope_enum =
- CUflushGPUDirectRDMAWritesScope_enum(100);
-}
-impl CUflushGPUDirectRDMAWritesScope_enum {
- pub const CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TO_ALL_DEVICES: CUflushGPUDirectRDMAWritesScope_enum =
- CUflushGPUDirectRDMAWritesScope_enum(200);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUflushGPUDirectRDMAWritesScope_enum(pub ::std::os::raw::c_uint);
-pub use self::CUflushGPUDirectRDMAWritesScope_enum as CUflushGPUDirectRDMAWritesScope;
-impl CUflushGPUDirectRDMAWritesTarget_enum {
- pub const CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TARGET_CURRENT_CTX:
- CUflushGPUDirectRDMAWritesTarget_enum = CUflushGPUDirectRDMAWritesTarget_enum(0);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUflushGPUDirectRDMAWritesTarget_enum(pub ::std::os::raw::c_uint);
-pub use self::CUflushGPUDirectRDMAWritesTarget_enum as CUflushGPUDirectRDMAWritesTarget;
-extern "C" {
- pub fn cuGetErrorString(error: CUresult, pStr: *mut *const ::std::os::raw::c_char) -> CUresult;
-}
-extern "C" {
- pub fn cuGetErrorName(error: CUresult, pStr: *mut *const ::std::os::raw::c_char) -> CUresult;
-}
-extern "C" {
- pub fn cuInit(Flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuDriverGetVersion(driverVersion: *mut ::std::os::raw::c_int) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGet(device: *mut CUdevice, ordinal: ::std::os::raw::c_int) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetCount(count: *mut ::std::os::raw::c_int) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetName(
- name: *mut ::std::os::raw::c_char,
- len: ::std::os::raw::c_int,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetUuid(uuid: *mut CUuuid, dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetUuid_v2(uuid: *mut CUuuid, dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetLuid(
- luid: *mut ::std::os::raw::c_char,
- deviceNodeMask: *mut ::std::os::raw::c_uint,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceTotalMem_v2(bytes: *mut usize, dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetTexture1DLinearMaxWidth(
- maxWidthInElements: *mut usize,
- format: CUarray_format,
- numChannels: ::std::os::raw::c_uint,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetAttribute(
- pi: *mut ::std::os::raw::c_int,
- attrib: CUdevice_attribute,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetNvSciSyncAttributes(
- nvSciSyncAttrList: *mut ::std::os::raw::c_void,
- dev: CUdevice,
- flags: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceSetMemPool(dev: CUdevice, pool: CUmemoryPool) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetMemPool(pool: *mut CUmemoryPool, dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetDefaultMemPool(pool_out: *mut CUmemoryPool, dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuFlushGPUDirectRDMAWrites(
- target: CUflushGPUDirectRDMAWritesTarget,
- scope: CUflushGPUDirectRDMAWritesScope,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetProperties(prop: *mut CUdevprop, dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceComputeCapability(
- major: *mut ::std::os::raw::c_int,
- minor: *mut ::std::os::raw::c_int,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDevicePrimaryCtxRetain(pctx: *mut CUcontext, dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDevicePrimaryCtxRelease_v2(dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDevicePrimaryCtxSetFlags_v2(dev: CUdevice, flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuDevicePrimaryCtxGetState(
- dev: CUdevice,
- flags: *mut ::std::os::raw::c_uint,
- active: *mut ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDevicePrimaryCtxReset_v2(dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetExecAffinitySupport(
- pi: *mut ::std::os::raw::c_int,
- type_: CUexecAffinityType,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxCreate_v2(
- pctx: *mut CUcontext,
- flags: ::std::os::raw::c_uint,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxCreate_v3(
- pctx: *mut CUcontext,
- paramsArray: *mut CUexecAffinityParam,
- numParams: ::std::os::raw::c_int,
- flags: ::std::os::raw::c_uint,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxDestroy_v2(ctx: CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxPushCurrent_v2(ctx: CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxPopCurrent_v2(pctx: *mut CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxSetCurrent(ctx: CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetCurrent(pctx: *mut CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetDevice(device: *mut CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetFlags(flags: *mut ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxSynchronize() -> CUresult;
-}
-extern "C" {
- pub fn cuCtxSetLimit(limit: CUlimit, value: usize) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetLimit(pvalue: *mut usize, limit: CUlimit) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetCacheConfig(pconfig: *mut CUfunc_cache) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxSetCacheConfig(config: CUfunc_cache) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetSharedMemConfig(pConfig: *mut CUsharedconfig) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxSetSharedMemConfig(config: CUsharedconfig) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetApiVersion(ctx: CUcontext, version: *mut ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetStreamPriorityRange(
- leastPriority: *mut ::std::os::raw::c_int,
- greatestPriority: *mut ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxResetPersistingL2Cache() -> CUresult;
-}
-extern "C" {
- pub fn cuCtxGetExecAffinity(
- pExecAffinity: *mut CUexecAffinityParam,
- type_: CUexecAffinityType,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxAttach(pctx: *mut CUcontext, flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxDetach(ctx: CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleLoad(module: *mut CUmodule, fname: *const ::std::os::raw::c_char) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleLoadData(
- module: *mut CUmodule,
- image: *const ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleLoadDataEx(
- module: *mut CUmodule,
- image: *const ::std::os::raw::c_void,
- numOptions: ::std::os::raw::c_uint,
- options: *mut CUjit_option,
- optionValues: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleLoadFatBinary(
- module: *mut CUmodule,
- fatCubin: *const ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleUnload(hmod: CUmodule) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleGetFunction(
- hfunc: *mut CUfunction,
- hmod: CUmodule,
- name: *const ::std::os::raw::c_char,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleGetGlobal_v2(
- dptr: *mut CUdeviceptr,
- bytes: *mut usize,
- hmod: CUmodule,
- name: *const ::std::os::raw::c_char,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleGetTexRef(
- pTexRef: *mut CUtexref,
- hmod: CUmodule,
- name: *const ::std::os::raw::c_char,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleGetSurfRef(
- pSurfRef: *mut CUsurfref,
- hmod: CUmodule,
- name: *const ::std::os::raw::c_char,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLinkCreate_v2(
- numOptions: ::std::os::raw::c_uint,
- options: *mut CUjit_option,
- optionValues: *mut *mut ::std::os::raw::c_void,
- stateOut: *mut CUlinkState,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLinkAddData_v2(
- state: CUlinkState,
- type_: CUjitInputType,
- data: *mut ::std::os::raw::c_void,
- size: usize,
- name: *const ::std::os::raw::c_char,
- numOptions: ::std::os::raw::c_uint,
- options: *mut CUjit_option,
- optionValues: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLinkAddFile_v2(
- state: CUlinkState,
- type_: CUjitInputType,
- path: *const ::std::os::raw::c_char,
- numOptions: ::std::os::raw::c_uint,
- options: *mut CUjit_option,
- optionValues: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLinkComplete(
- state: CUlinkState,
- cubinOut: *mut *mut ::std::os::raw::c_void,
- sizeOut: *mut usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLinkDestroy(state: CUlinkState) -> CUresult;
-}
-extern "C" {
- pub fn cuMemGetInfo_v2(free: *mut usize, total: *mut usize) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAlloc_v2(dptr: *mut CUdeviceptr, bytesize: usize) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocPitch_v2(
- dptr: *mut CUdeviceptr,
- pPitch: *mut usize,
- WidthInBytes: usize,
- Height: usize,
- ElementSizeBytes: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemFree_v2(dptr: CUdeviceptr) -> CUresult;
-}
-extern "C" {
- pub fn cuMemGetAddressRange_v2(
- pbase: *mut CUdeviceptr,
- psize: *mut usize,
- dptr: CUdeviceptr,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocHost_v2(pp: *mut *mut ::std::os::raw::c_void, bytesize: usize) -> CUresult;
-}
-extern "C" {
- pub fn cuMemFreeHost(p: *mut ::std::os::raw::c_void) -> CUresult;
-}
-extern "C" {
- pub fn cuMemHostAlloc(
- pp: *mut *mut ::std::os::raw::c_void,
- bytesize: usize,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemHostGetDevicePointer_v2(
- pdptr: *mut CUdeviceptr,
- p: *mut ::std::os::raw::c_void,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemHostGetFlags(
- pFlags: *mut ::std::os::raw::c_uint,
- p: *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocManaged(
- dptr: *mut CUdeviceptr,
- bytesize: usize,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetByPCIBusId(
- dev: *mut CUdevice,
- pciBusId: *const ::std::os::raw::c_char,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetPCIBusId(
- pciBusId: *mut ::std::os::raw::c_char,
- len: ::std::os::raw::c_int,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuIpcGetEventHandle(pHandle: *mut CUipcEventHandle, event: CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuIpcOpenEventHandle(phEvent: *mut CUevent, handle: CUipcEventHandle) -> CUresult;
-}
-extern "C" {
- pub fn cuIpcGetMemHandle(pHandle: *mut CUipcMemHandle, dptr: CUdeviceptr) -> CUresult;
-}
-extern "C" {
- pub fn cuIpcOpenMemHandle_v2(
- pdptr: *mut CUdeviceptr,
- handle: CUipcMemHandle,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuIpcCloseMemHandle(dptr: CUdeviceptr) -> CUresult;
-}
-extern "C" {
- pub fn cuMemHostRegister_v2(
- p: *mut ::std::os::raw::c_void,
- bytesize: usize,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemHostUnregister(p: *mut ::std::os::raw::c_void) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy_ptds(dst: CUdeviceptr, src: CUdeviceptr, ByteCount: usize) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyPeer_ptds(
- dstDevice: CUdeviceptr,
- dstContext: CUcontext,
- srcDevice: CUdeviceptr,
- srcContext: CUcontext,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoD_v2_ptds(
- dstDevice: CUdeviceptr,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoH_v2_ptds(
- dstHost: *mut ::std::os::raw::c_void,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoD_v2_ptds(
- dstDevice: CUdeviceptr,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoA_v2_ptds(
- dstArray: CUarray,
- dstOffset: usize,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoD_v2_ptds(
- dstDevice: CUdeviceptr,
- srcArray: CUarray,
- srcOffset: usize,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoA_v2_ptds(
- dstArray: CUarray,
- dstOffset: usize,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoH_v2_ptds(
- dstHost: *mut ::std::os::raw::c_void,
- srcArray: CUarray,
- srcOffset: usize,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoA_v2_ptds(
- dstArray: CUarray,
- dstOffset: usize,
- srcArray: CUarray,
- srcOffset: usize,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2D_v2_ptds(pCopy: *const CUDA_MEMCPY2D) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2DUnaligned_v2_ptds(pCopy: *const CUDA_MEMCPY2D) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3D_v2_ptds(pCopy: *const CUDA_MEMCPY3D) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3DPeer_ptds(pCopy: *const CUDA_MEMCPY3D_PEER) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAsync_ptsz(
- dst: CUdeviceptr,
- src: CUdeviceptr,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyPeerAsync_ptsz(
- dstDevice: CUdeviceptr,
- dstContext: CUcontext,
- srcDevice: CUdeviceptr,
- srcContext: CUcontext,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoDAsync_v2_ptsz(
- dstDevice: CUdeviceptr,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoHAsync_v2_ptsz(
- dstHost: *mut ::std::os::raw::c_void,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoDAsync_v2_ptsz(
- dstDevice: CUdeviceptr,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoAAsync_v2_ptsz(
- dstArray: CUarray,
- dstOffset: usize,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoHAsync_v2_ptsz(
- dstHost: *mut ::std::os::raw::c_void,
- srcArray: CUarray,
- srcOffset: usize,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2DAsync_v2_ptsz(pCopy: *const CUDA_MEMCPY2D, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3DAsync_v2_ptsz(pCopy: *const CUDA_MEMCPY3D, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3DPeerAsync_ptsz(
- pCopy: *const CUDA_MEMCPY3D_PEER,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD8_v2_ptds(
- dstDevice: CUdeviceptr,
- uc: ::std::os::raw::c_uchar,
- N: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD16_v2_ptds(
- dstDevice: CUdeviceptr,
- us: ::std::os::raw::c_ushort,
- N: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD32_v2_ptds(
- dstDevice: CUdeviceptr,
- ui: ::std::os::raw::c_uint,
- N: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D8_v2_ptds(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- uc: ::std::os::raw::c_uchar,
- Width: usize,
- Height: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D16_v2_ptds(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- us: ::std::os::raw::c_ushort,
- Width: usize,
- Height: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D32_v2_ptds(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- ui: ::std::os::raw::c_uint,
- Width: usize,
- Height: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD8Async_ptsz(
- dstDevice: CUdeviceptr,
- uc: ::std::os::raw::c_uchar,
- N: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD16Async_ptsz(
- dstDevice: CUdeviceptr,
- us: ::std::os::raw::c_ushort,
- N: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD32Async_ptsz(
- dstDevice: CUdeviceptr,
- ui: ::std::os::raw::c_uint,
- N: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D8Async_ptsz(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- uc: ::std::os::raw::c_uchar,
- Width: usize,
- Height: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D16Async_ptsz(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- us: ::std::os::raw::c_ushort,
- Width: usize,
- Height: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D32Async_ptsz(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- ui: ::std::os::raw::c_uint,
- Width: usize,
- Height: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArrayCreate_v2(
- pHandle: *mut CUarray,
- pAllocateArray: *const CUDA_ARRAY_DESCRIPTOR,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArrayGetDescriptor_v2(
- pArrayDescriptor: *mut CUDA_ARRAY_DESCRIPTOR,
- hArray: CUarray,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArrayGetSparseProperties(
- sparseProperties: *mut CUDA_ARRAY_SPARSE_PROPERTIES,
- array: CUarray,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMipmappedArrayGetSparseProperties(
- sparseProperties: *mut CUDA_ARRAY_SPARSE_PROPERTIES,
- mipmap: CUmipmappedArray,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArrayGetPlane(
- pPlaneArray: *mut CUarray,
- hArray: CUarray,
- planeIdx: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArrayDestroy(hArray: CUarray) -> CUresult;
-}
-extern "C" {
- pub fn cuArray3DCreate_v2(
- pHandle: *mut CUarray,
- pAllocateArray: *const CUDA_ARRAY3D_DESCRIPTOR,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArray3DGetDescriptor_v2(
- pArrayDescriptor: *mut CUDA_ARRAY3D_DESCRIPTOR,
- hArray: CUarray,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMipmappedArrayCreate(
- pHandle: *mut CUmipmappedArray,
- pMipmappedArrayDesc: *const CUDA_ARRAY3D_DESCRIPTOR,
- numMipmapLevels: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMipmappedArrayGetLevel(
- pLevelArray: *mut CUarray,
- hMipmappedArray: CUmipmappedArray,
- level: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMipmappedArrayDestroy(hMipmappedArray: CUmipmappedArray) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAddressReserve(
- ptr: *mut CUdeviceptr,
- size: usize,
- alignment: usize,
- addr: CUdeviceptr,
- flags: ::std::os::raw::c_ulonglong,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAddressFree(ptr: CUdeviceptr, size: usize) -> CUresult;
-}
-extern "C" {
- pub fn cuMemCreate(
- handle: *mut CUmemGenericAllocationHandle,
- size: usize,
- prop: *const CUmemAllocationProp,
- flags: ::std::os::raw::c_ulonglong,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemRelease(handle: CUmemGenericAllocationHandle) -> CUresult;
-}
-extern "C" {
- pub fn cuMemMap(
- ptr: CUdeviceptr,
- size: usize,
- offset: usize,
- handle: CUmemGenericAllocationHandle,
- flags: ::std::os::raw::c_ulonglong,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemMapArrayAsync_ptsz(
- mapInfoList: *mut CUarrayMapInfo,
- count: ::std::os::raw::c_uint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemUnmap(ptr: CUdeviceptr, size: usize) -> CUresult;
-}
-extern "C" {
- pub fn cuMemSetAccess(
- ptr: CUdeviceptr,
- size: usize,
- desc: *const CUmemAccessDesc,
- count: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemGetAccess(
- flags: *mut ::std::os::raw::c_ulonglong,
- location: *const CUmemLocation,
- ptr: CUdeviceptr,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemExportToShareableHandle(
- shareableHandle: *mut ::std::os::raw::c_void,
- handle: CUmemGenericAllocationHandle,
- handleType: CUmemAllocationHandleType,
- flags: ::std::os::raw::c_ulonglong,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemImportFromShareableHandle(
- handle: *mut CUmemGenericAllocationHandle,
- osHandle: *mut ::std::os::raw::c_void,
- shHandleType: CUmemAllocationHandleType,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemGetAllocationGranularity(
- granularity: *mut usize,
- prop: *const CUmemAllocationProp,
- option: CUmemAllocationGranularity_flags,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemGetAllocationPropertiesFromHandle(
- prop: *mut CUmemAllocationProp,
- handle: CUmemGenericAllocationHandle,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemRetainAllocationHandle(
- handle: *mut CUmemGenericAllocationHandle,
- addr: *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemFreeAsync_ptsz(dptr: CUdeviceptr, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocAsync_ptsz(
- dptr: *mut CUdeviceptr,
- bytesize: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolTrimTo(pool: CUmemoryPool, minBytesToKeep: usize) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolSetAttribute(
- pool: CUmemoryPool,
- attr: CUmemPool_attribute,
- value: *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolGetAttribute(
- pool: CUmemoryPool,
- attr: CUmemPool_attribute,
- value: *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolSetAccess(
- pool: CUmemoryPool,
- map: *const CUmemAccessDesc,
- count: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolGetAccess(
- flags: *mut CUmemAccess_flags,
- memPool: CUmemoryPool,
- location: *mut CUmemLocation,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolCreate(pool: *mut CUmemoryPool, poolProps: *const CUmemPoolProps) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolDestroy(pool: CUmemoryPool) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocFromPoolAsync_ptsz(
- dptr: *mut CUdeviceptr,
- bytesize: usize,
- pool: CUmemoryPool,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolExportToShareableHandle(
- handle_out: *mut ::std::os::raw::c_void,
- pool: CUmemoryPool,
- handleType: CUmemAllocationHandleType,
- flags: ::std::os::raw::c_ulonglong,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolImportFromShareableHandle(
- pool_out: *mut CUmemoryPool,
- handle: *mut ::std::os::raw::c_void,
- handleType: CUmemAllocationHandleType,
- flags: ::std::os::raw::c_ulonglong,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolExportPointer(
- shareData_out: *mut CUmemPoolPtrExportData,
- ptr: CUdeviceptr,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPoolImportPointer(
- ptr_out: *mut CUdeviceptr,
- pool: CUmemoryPool,
- shareData: *mut CUmemPoolPtrExportData,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuPointerGetAttribute(
- data: *mut ::std::os::raw::c_void,
- attribute: CUpointer_attribute,
- ptr: CUdeviceptr,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPrefetchAsync_ptsz(
- devPtr: CUdeviceptr,
- count: usize,
- dstDevice: CUdevice,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAdvise(
- devPtr: CUdeviceptr,
- count: usize,
- advice: CUmem_advise,
- device: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemRangeGetAttribute(
- data: *mut ::std::os::raw::c_void,
- dataSize: usize,
- attribute: CUmem_range_attribute,
- devPtr: CUdeviceptr,
- count: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemRangeGetAttributes(
- data: *mut *mut ::std::os::raw::c_void,
- dataSizes: *mut usize,
- attributes: *mut CUmem_range_attribute,
- numAttributes: usize,
- devPtr: CUdeviceptr,
- count: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuPointerSetAttribute(
- value: *const ::std::os::raw::c_void,
- attribute: CUpointer_attribute,
- ptr: CUdeviceptr,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuPointerGetAttributes(
- numAttributes: ::std::os::raw::c_uint,
- attributes: *mut CUpointer_attribute,
- data: *mut *mut ::std::os::raw::c_void,
- ptr: CUdeviceptr,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamCreate(phStream: *mut CUstream, Flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamCreateWithPriority(
- phStream: *mut CUstream,
- flags: ::std::os::raw::c_uint,
- priority: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetPriority_ptsz(
- hStream: CUstream,
- priority: *mut ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetFlags_ptsz(hStream: CUstream, flags: *mut ::std::os::raw::c_uint)
- -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetCtx_ptsz(hStream: CUstream, pctx: *mut CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWaitEvent_ptsz(
- hStream: CUstream,
- hEvent: CUevent,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamAddCallback_ptsz(
- hStream: CUstream,
- callback: CUstreamCallback,
- userData: *mut ::std::os::raw::c_void,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamBeginCapture_v2_ptsz(hStream: CUstream, mode: CUstreamCaptureMode) -> CUresult;
-}
-extern "C" {
- pub fn cuThreadExchangeStreamCaptureMode(mode: *mut CUstreamCaptureMode) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamEndCapture_ptsz(hStream: CUstream, phGraph: *mut CUgraph) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamIsCapturing_ptsz(
- hStream: CUstream,
- captureStatus: *mut CUstreamCaptureStatus,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetCaptureInfo_ptsz(
- hStream: CUstream,
- captureStatus_out: *mut CUstreamCaptureStatus,
- id_out: *mut cuuint64_t,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetCaptureInfo_v2_ptsz(
- hStream: CUstream,
- captureStatus_out: *mut CUstreamCaptureStatus,
- id_out: *mut cuuint64_t,
- graph_out: *mut CUgraph,
- dependencies_out: *mut *const CUgraphNode,
- numDependencies_out: *mut usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamUpdateCaptureDependencies_ptsz(
- hStream: CUstream,
- dependencies: *mut CUgraphNode,
- numDependencies: usize,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamAttachMemAsync_ptsz(
- hStream: CUstream,
- dptr: CUdeviceptr,
- length: usize,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamQuery_ptsz(hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamSynchronize_ptsz(hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamDestroy_v2(hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamCopyAttributes_ptsz(dst: CUstream, src: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetAttribute_ptsz(
- hStream: CUstream,
- attr: CUstreamAttrID,
- value_out: *mut CUstreamAttrValue,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamSetAttribute_ptsz(
- hStream: CUstream,
- attr: CUstreamAttrID,
- value: *const CUstreamAttrValue,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuEventCreate(phEvent: *mut CUevent, Flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuEventRecord_ptsz(hEvent: CUevent, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuEventRecordWithFlags_ptsz(
- hEvent: CUevent,
- hStream: CUstream,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuEventQuery(hEvent: CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuEventSynchronize(hEvent: CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuEventDestroy_v2(hEvent: CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuEventElapsedTime(pMilliseconds: *mut f32, hStart: CUevent, hEnd: CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuImportExternalMemory(
- extMem_out: *mut CUexternalMemory,
- memHandleDesc: *const CUDA_EXTERNAL_MEMORY_HANDLE_DESC,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuExternalMemoryGetMappedBuffer(
- devPtr: *mut CUdeviceptr,
- extMem: CUexternalMemory,
- bufferDesc: *const CUDA_EXTERNAL_MEMORY_BUFFER_DESC,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuExternalMemoryGetMappedMipmappedArray(
- mipmap: *mut CUmipmappedArray,
- extMem: CUexternalMemory,
- mipmapDesc: *const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDestroyExternalMemory(extMem: CUexternalMemory) -> CUresult;
-}
-extern "C" {
- pub fn cuImportExternalSemaphore(
- extSem_out: *mut CUexternalSemaphore,
- semHandleDesc: *const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuSignalExternalSemaphoresAsync_ptsz(
- extSemArray: *const CUexternalSemaphore,
- paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS,
- numExtSems: ::std::os::raw::c_uint,
- stream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuWaitExternalSemaphoresAsync_ptsz(
- extSemArray: *const CUexternalSemaphore,
- paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS,
- numExtSems: ::std::os::raw::c_uint,
- stream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDestroyExternalSemaphore(extSem: CUexternalSemaphore) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWaitValue32_ptsz(
- stream: CUstream,
- addr: CUdeviceptr,
- value: cuuint32_t,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWaitValue64_ptsz(
- stream: CUstream,
- addr: CUdeviceptr,
- value: cuuint64_t,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWriteValue32_ptsz(
- stream: CUstream,
- addr: CUdeviceptr,
- value: cuuint32_t,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWriteValue64_ptsz(
- stream: CUstream,
- addr: CUdeviceptr,
- value: cuuint64_t,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamBatchMemOp_ptsz(
- stream: CUstream,
- count: ::std::os::raw::c_uint,
- paramArray: *mut CUstreamBatchMemOpParams,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuFuncGetAttribute(
- pi: *mut ::std::os::raw::c_int,
- attrib: CUfunction_attribute,
- hfunc: CUfunction,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuFuncSetAttribute(
- hfunc: CUfunction,
- attrib: CUfunction_attribute,
- value: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuFuncSetCacheConfig(hfunc: CUfunction, config: CUfunc_cache) -> CUresult;
-}
-extern "C" {
- pub fn cuFuncSetSharedMemConfig(hfunc: CUfunction, config: CUsharedconfig) -> CUresult;
-}
-extern "C" {
- pub fn cuFuncGetModule(hmod: *mut CUmodule, hfunc: CUfunction) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchKernel_ptsz(
- f: CUfunction,
- gridDimX: ::std::os::raw::c_uint,
- gridDimY: ::std::os::raw::c_uint,
- gridDimZ: ::std::os::raw::c_uint,
- blockDimX: ::std::os::raw::c_uint,
- blockDimY: ::std::os::raw::c_uint,
- blockDimZ: ::std::os::raw::c_uint,
- sharedMemBytes: ::std::os::raw::c_uint,
- hStream: CUstream,
- kernelParams: *mut *mut ::std::os::raw::c_void,
- extra: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchCooperativeKernel_ptsz(
- f: CUfunction,
- gridDimX: ::std::os::raw::c_uint,
- gridDimY: ::std::os::raw::c_uint,
- gridDimZ: ::std::os::raw::c_uint,
- blockDimX: ::std::os::raw::c_uint,
- blockDimY: ::std::os::raw::c_uint,
- blockDimZ: ::std::os::raw::c_uint,
- sharedMemBytes: ::std::os::raw::c_uint,
- hStream: CUstream,
- kernelParams: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchCooperativeKernelMultiDevice(
- launchParamsList: *mut CUDA_LAUNCH_PARAMS,
- numDevices: ::std::os::raw::c_uint,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchHostFunc_ptsz(
- hStream: CUstream,
- fn_: CUhostFn,
- userData: *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuFuncSetBlockShape(
- hfunc: CUfunction,
- x: ::std::os::raw::c_int,
- y: ::std::os::raw::c_int,
- z: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuFuncSetSharedSize(hfunc: CUfunction, bytes: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuParamSetSize(hfunc: CUfunction, numbytes: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuParamSeti(
- hfunc: CUfunction,
- offset: ::std::os::raw::c_int,
- value: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuParamSetf(hfunc: CUfunction, offset: ::std::os::raw::c_int, value: f32) -> CUresult;
-}
-extern "C" {
- pub fn cuParamSetv(
- hfunc: CUfunction,
- offset: ::std::os::raw::c_int,
- ptr: *mut ::std::os::raw::c_void,
- numbytes: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunch(f: CUfunction) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchGrid(
- f: CUfunction,
- grid_width: ::std::os::raw::c_int,
- grid_height: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchGridAsync(
- f: CUfunction,
- grid_width: ::std::os::raw::c_int,
- grid_height: ::std::os::raw::c_int,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuParamSetTexRef(
- hfunc: CUfunction,
- texunit: ::std::os::raw::c_int,
- hTexRef: CUtexref,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphCreate(phGraph: *mut CUgraph, flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddKernelNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- nodeParams: *const CUDA_KERNEL_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphKernelNodeGetParams(
- hNode: CUgraphNode,
- nodeParams: *mut CUDA_KERNEL_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphKernelNodeSetParams(
- hNode: CUgraphNode,
- nodeParams: *const CUDA_KERNEL_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddMemcpyNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- copyParams: *const CUDA_MEMCPY3D,
- ctx: CUcontext,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphMemcpyNodeGetParams(
- hNode: CUgraphNode,
- nodeParams: *mut CUDA_MEMCPY3D,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphMemcpyNodeSetParams(
- hNode: CUgraphNode,
- nodeParams: *const CUDA_MEMCPY3D,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddMemsetNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- memsetParams: *const CUDA_MEMSET_NODE_PARAMS,
- ctx: CUcontext,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphMemsetNodeGetParams(
- hNode: CUgraphNode,
- nodeParams: *mut CUDA_MEMSET_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphMemsetNodeSetParams(
- hNode: CUgraphNode,
- nodeParams: *const CUDA_MEMSET_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddHostNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- nodeParams: *const CUDA_HOST_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphHostNodeGetParams(
- hNode: CUgraphNode,
- nodeParams: *mut CUDA_HOST_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphHostNodeSetParams(
- hNode: CUgraphNode,
- nodeParams: *const CUDA_HOST_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddChildGraphNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- childGraph: CUgraph,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphChildGraphNodeGetGraph(hNode: CUgraphNode, phGraph: *mut CUgraph) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddEmptyNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddEventRecordNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- event: CUevent,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphEventRecordNodeGetEvent(hNode: CUgraphNode, event_out: *mut CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphEventRecordNodeSetEvent(hNode: CUgraphNode, event: CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddEventWaitNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- event: CUevent,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphEventWaitNodeGetEvent(hNode: CUgraphNode, event_out: *mut CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphEventWaitNodeSetEvent(hNode: CUgraphNode, event: CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddExternalSemaphoresSignalNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- nodeParams: *const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExternalSemaphoresSignalNodeGetParams(
- hNode: CUgraphNode,
- params_out: *mut CUDA_EXT_SEM_SIGNAL_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExternalSemaphoresSignalNodeSetParams(
- hNode: CUgraphNode,
- nodeParams: *const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddExternalSemaphoresWaitNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- nodeParams: *const CUDA_EXT_SEM_WAIT_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExternalSemaphoresWaitNodeGetParams(
- hNode: CUgraphNode,
- params_out: *mut CUDA_EXT_SEM_WAIT_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExternalSemaphoresWaitNodeSetParams(
- hNode: CUgraphNode,
- nodeParams: *const CUDA_EXT_SEM_WAIT_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddMemAllocNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- nodeParams: *mut CUDA_MEM_ALLOC_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphMemAllocNodeGetParams(
- hNode: CUgraphNode,
- params_out: *mut CUDA_MEM_ALLOC_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddMemFreeNode(
- phGraphNode: *mut CUgraphNode,
- hGraph: CUgraph,
- dependencies: *const CUgraphNode,
- numDependencies: usize,
- dptr: CUdeviceptr,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphMemFreeNodeGetParams(hNode: CUgraphNode, dptr_out: *mut CUdeviceptr) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGraphMemTrim(device: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetGraphMemAttribute(
- device: CUdevice,
- attr: CUgraphMem_attribute,
- value: *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceSetGraphMemAttribute(
- device: CUdevice,
- attr: CUgraphMem_attribute,
- value: *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphClone(phGraphClone: *mut CUgraph, originalGraph: CUgraph) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphNodeFindInClone(
- phNode: *mut CUgraphNode,
- hOriginalNode: CUgraphNode,
- hClonedGraph: CUgraph,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphNodeGetType(hNode: CUgraphNode, type_: *mut CUgraphNodeType) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphGetNodes(
- hGraph: CUgraph,
- nodes: *mut CUgraphNode,
- numNodes: *mut usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphGetRootNodes(
- hGraph: CUgraph,
- rootNodes: *mut CUgraphNode,
- numRootNodes: *mut usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphGetEdges(
- hGraph: CUgraph,
- from: *mut CUgraphNode,
- to: *mut CUgraphNode,
- numEdges: *mut usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphNodeGetDependencies(
- hNode: CUgraphNode,
- dependencies: *mut CUgraphNode,
- numDependencies: *mut usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphNodeGetDependentNodes(
- hNode: CUgraphNode,
- dependentNodes: *mut CUgraphNode,
- numDependentNodes: *mut usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphAddDependencies(
- hGraph: CUgraph,
- from: *const CUgraphNode,
- to: *const CUgraphNode,
- numDependencies: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphRemoveDependencies(
- hGraph: CUgraph,
- from: *const CUgraphNode,
- to: *const CUgraphNode,
- numDependencies: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphDestroyNode(hNode: CUgraphNode) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphInstantiate_v2(
- phGraphExec: *mut CUgraphExec,
- hGraph: CUgraph,
- phErrorNode: *mut CUgraphNode,
- logBuffer: *mut ::std::os::raw::c_char,
- bufferSize: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphInstantiateWithFlags(
- phGraphExec: *mut CUgraphExec,
- hGraph: CUgraph,
- flags: ::std::os::raw::c_ulonglong,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecKernelNodeSetParams(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- nodeParams: *const CUDA_KERNEL_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecMemcpyNodeSetParams(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- copyParams: *const CUDA_MEMCPY3D,
- ctx: CUcontext,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecMemsetNodeSetParams(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- memsetParams: *const CUDA_MEMSET_NODE_PARAMS,
- ctx: CUcontext,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecHostNodeSetParams(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- nodeParams: *const CUDA_HOST_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecChildGraphNodeSetParams(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- childGraph: CUgraph,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecEventRecordNodeSetEvent(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- event: CUevent,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecEventWaitNodeSetEvent(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- event: CUevent,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecExternalSemaphoresSignalNodeSetParams(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- nodeParams: *const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecExternalSemaphoresWaitNodeSetParams(
- hGraphExec: CUgraphExec,
- hNode: CUgraphNode,
- nodeParams: *const CUDA_EXT_SEM_WAIT_NODE_PARAMS,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphUpload_ptsz(hGraphExec: CUgraphExec, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphLaunch_ptsz(hGraphExec: CUgraphExec, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecDestroy(hGraphExec: CUgraphExec) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphDestroy(hGraph: CUgraph) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphExecUpdate(
- hGraphExec: CUgraphExec,
- hGraph: CUgraph,
- hErrorNode_out: *mut CUgraphNode,
- updateResult_out: *mut CUgraphExecUpdateResult,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphKernelNodeCopyAttributes(dst: CUgraphNode, src: CUgraphNode) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphKernelNodeGetAttribute(
- hNode: CUgraphNode,
- attr: CUkernelNodeAttrID,
- value_out: *mut CUkernelNodeAttrValue,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphKernelNodeSetAttribute(
- hNode: CUgraphNode,
- attr: CUkernelNodeAttrID,
- value: *const CUkernelNodeAttrValue,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphDebugDotPrint(
- hGraph: CUgraph,
- path: *const ::std::os::raw::c_char,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuUserObjectCreate(
- object_out: *mut CUuserObject,
- ptr: *mut ::std::os::raw::c_void,
- destroy: CUhostFn,
- initialRefcount: ::std::os::raw::c_uint,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuUserObjectRetain(object: CUuserObject, count: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuUserObjectRelease(object: CUuserObject, count: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphRetainUserObject(
- graph: CUgraph,
- object: CUuserObject,
- count: ::std::os::raw::c_uint,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphReleaseUserObject(
- graph: CUgraph,
- object: CUuserObject,
- count: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuOccupancyMaxActiveBlocksPerMultiprocessor(
- numBlocks: *mut ::std::os::raw::c_int,
- func: CUfunction,
- blockSize: ::std::os::raw::c_int,
- dynamicSMemSize: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(
- numBlocks: *mut ::std::os::raw::c_int,
- func: CUfunction,
- blockSize: ::std::os::raw::c_int,
- dynamicSMemSize: usize,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuOccupancyMaxPotentialBlockSize(
- minGridSize: *mut ::std::os::raw::c_int,
- blockSize: *mut ::std::os::raw::c_int,
- func: CUfunction,
- blockSizeToDynamicSMemSize: CUoccupancyB2DSize,
- dynamicSMemSize: usize,
- blockSizeLimit: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuOccupancyMaxPotentialBlockSizeWithFlags(
- minGridSize: *mut ::std::os::raw::c_int,
- blockSize: *mut ::std::os::raw::c_int,
- func: CUfunction,
- blockSizeToDynamicSMemSize: CUoccupancyB2DSize,
- dynamicSMemSize: usize,
- blockSizeLimit: ::std::os::raw::c_int,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuOccupancyAvailableDynamicSMemPerBlock(
- dynamicSmemSize: *mut usize,
- func: CUfunction,
- numBlocks: ::std::os::raw::c_int,
- blockSize: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetArray(
- hTexRef: CUtexref,
- hArray: CUarray,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetMipmappedArray(
- hTexRef: CUtexref,
- hMipmappedArray: CUmipmappedArray,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetAddress_v2(
- ByteOffset: *mut usize,
- hTexRef: CUtexref,
- dptr: CUdeviceptr,
- bytes: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetAddress2D_v3(
- hTexRef: CUtexref,
- desc: *const CUDA_ARRAY_DESCRIPTOR,
- dptr: CUdeviceptr,
- Pitch: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetFormat(
- hTexRef: CUtexref,
- fmt: CUarray_format,
- NumPackedComponents: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetAddressMode(
- hTexRef: CUtexref,
- dim: ::std::os::raw::c_int,
- am: CUaddress_mode,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetFilterMode(hTexRef: CUtexref, fm: CUfilter_mode) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetMipmapFilterMode(hTexRef: CUtexref, fm: CUfilter_mode) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetMipmapLevelBias(hTexRef: CUtexref, bias: f32) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetMipmapLevelClamp(
- hTexRef: CUtexref,
- minMipmapLevelClamp: f32,
- maxMipmapLevelClamp: f32,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetMaxAnisotropy(
- hTexRef: CUtexref,
- maxAniso: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetBorderColor(hTexRef: CUtexref, pBorderColor: *mut f32) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetFlags(hTexRef: CUtexref, Flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetAddress_v2(pdptr: *mut CUdeviceptr, hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetArray(phArray: *mut CUarray, hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetMipmappedArray(
- phMipmappedArray: *mut CUmipmappedArray,
- hTexRef: CUtexref,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetAddressMode(
- pam: *mut CUaddress_mode,
- hTexRef: CUtexref,
- dim: ::std::os::raw::c_int,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetFilterMode(pfm: *mut CUfilter_mode, hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetFormat(
- pFormat: *mut CUarray_format,
- pNumChannels: *mut ::std::os::raw::c_int,
- hTexRef: CUtexref,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetMipmapFilterMode(pfm: *mut CUfilter_mode, hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetMipmapLevelBias(pbias: *mut f32, hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetMipmapLevelClamp(
- pminMipmapLevelClamp: *mut f32,
- pmaxMipmapLevelClamp: *mut f32,
- hTexRef: CUtexref,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetMaxAnisotropy(
- pmaxAniso: *mut ::std::os::raw::c_int,
- hTexRef: CUtexref,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetBorderColor(pBorderColor: *mut f32, hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetFlags(pFlags: *mut ::std::os::raw::c_uint, hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefCreate(pTexRef: *mut CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefDestroy(hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuSurfRefSetArray(
- hSurfRef: CUsurfref,
- hArray: CUarray,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuSurfRefGetArray(phArray: *mut CUarray, hSurfRef: CUsurfref) -> CUresult;
-}
-extern "C" {
- pub fn cuTexObjectCreate(
- pTexObject: *mut CUtexObject,
- pResDesc: *const CUDA_RESOURCE_DESC,
- pTexDesc: *const CUDA_TEXTURE_DESC,
- pResViewDesc: *const CUDA_RESOURCE_VIEW_DESC,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexObjectDestroy(texObject: CUtexObject) -> CUresult;
-}
-extern "C" {
- pub fn cuTexObjectGetResourceDesc(
- pResDesc: *mut CUDA_RESOURCE_DESC,
- texObject: CUtexObject,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexObjectGetTextureDesc(
- pTexDesc: *mut CUDA_TEXTURE_DESC,
- texObject: CUtexObject,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexObjectGetResourceViewDesc(
- pResViewDesc: *mut CUDA_RESOURCE_VIEW_DESC,
- texObject: CUtexObject,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuSurfObjectCreate(
- pSurfObject: *mut CUsurfObject,
- pResDesc: *const CUDA_RESOURCE_DESC,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuSurfObjectDestroy(surfObject: CUsurfObject) -> CUresult;
-}
-extern "C" {
- pub fn cuSurfObjectGetResourceDesc(
- pResDesc: *mut CUDA_RESOURCE_DESC,
- surfObject: CUsurfObject,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceCanAccessPeer(
- canAccessPeer: *mut ::std::os::raw::c_int,
- dev: CUdevice,
- peerDev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxEnablePeerAccess(peerContext: CUcontext, Flags: ::std::os::raw::c_uint)
- -> CUresult;
-}
-extern "C" {
- pub fn cuCtxDisablePeerAccess(peerContext: CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuDeviceGetP2PAttribute(
- value: *mut ::std::os::raw::c_int,
- attrib: CUdevice_P2PAttribute,
- srcDevice: CUdevice,
- dstDevice: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsUnregisterResource(resource: CUgraphicsResource) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsSubResourceGetMappedArray(
- pArray: *mut CUarray,
- resource: CUgraphicsResource,
- arrayIndex: ::std::os::raw::c_uint,
- mipLevel: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsResourceGetMappedMipmappedArray(
- pMipmappedArray: *mut CUmipmappedArray,
- resource: CUgraphicsResource,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsResourceGetMappedPointer_v2(
- pDevPtr: *mut CUdeviceptr,
- pSize: *mut usize,
- resource: CUgraphicsResource,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsResourceSetMapFlags_v2(
- resource: CUgraphicsResource,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsMapResources_ptsz(
- count: ::std::os::raw::c_uint,
- resources: *mut CUgraphicsResource,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsUnmapResources_ptsz(
- count: ::std::os::raw::c_uint,
- resources: *mut CUgraphicsResource,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGetProcAddress(
- symbol: *const ::std::os::raw::c_char,
- pfn: *mut *mut ::std::os::raw::c_void,
- cudaVersion: ::std::os::raw::c_int,
- flags: cuuint64_t,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGetExportTable(
- ppExportTable: *mut *const ::std::os::raw::c_void,
- pExportTableId: *const CUuuid,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemHostRegister(
- p: *mut ::std::os::raw::c_void,
- bytesize: usize,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsResourceSetMapFlags(
- resource: CUgraphicsResource,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLinkCreate(
- numOptions: ::std::os::raw::c_uint,
- options: *mut CUjit_option,
- optionValues: *mut *mut ::std::os::raw::c_void,
- stateOut: *mut CUlinkState,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLinkAddData(
- state: CUlinkState,
- type_: CUjitInputType,
- data: *mut ::std::os::raw::c_void,
- size: usize,
- name: *const ::std::os::raw::c_char,
- numOptions: ::std::os::raw::c_uint,
- options: *mut CUjit_option,
- optionValues: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLinkAddFile(
- state: CUlinkState,
- type_: CUjitInputType,
- path: *const ::std::os::raw::c_char,
- numOptions: ::std::os::raw::c_uint,
- options: *mut CUjit_option,
- optionValues: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetAddress2D_v2(
- hTexRef: CUtexref,
- desc: *const CUDA_ARRAY_DESCRIPTOR,
- dptr: CUdeviceptr,
- Pitch: usize,
- ) -> CUresult;
-}
-#[repr(transparent)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUdeviceptr_v1(pub ::std::os::raw::c_uint);
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_MEMCPY2D_v1_st {
- pub srcXInBytes: ::std::os::raw::c_uint,
- pub srcY: ::std::os::raw::c_uint,
- pub srcMemoryType: CUmemorytype,
- pub srcHost: *const ::std::os::raw::c_void,
- pub srcDevice: CUdeviceptr_v1,
- pub srcArray: CUarray,
- pub srcPitch: ::std::os::raw::c_uint,
- pub dstXInBytes: ::std::os::raw::c_uint,
- pub dstY: ::std::os::raw::c_uint,
- pub dstMemoryType: CUmemorytype,
- pub dstHost: *mut ::std::os::raw::c_void,
- pub dstDevice: CUdeviceptr_v1,
- pub dstArray: CUarray,
- pub dstPitch: ::std::os::raw::c_uint,
- pub WidthInBytes: ::std::os::raw::c_uint,
- pub Height: ::std::os::raw::c_uint,
-}
-pub type CUDA_MEMCPY2D_v1 = CUDA_MEMCPY2D_v1_st;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_MEMCPY3D_v1_st {
- pub srcXInBytes: ::std::os::raw::c_uint,
- pub srcY: ::std::os::raw::c_uint,
- pub srcZ: ::std::os::raw::c_uint,
- pub srcLOD: ::std::os::raw::c_uint,
- pub srcMemoryType: CUmemorytype,
- pub srcHost: *const ::std::os::raw::c_void,
- pub srcDevice: CUdeviceptr_v1,
- pub srcArray: CUarray,
- pub reserved0: *mut ::std::os::raw::c_void,
- pub srcPitch: ::std::os::raw::c_uint,
- pub srcHeight: ::std::os::raw::c_uint,
- pub dstXInBytes: ::std::os::raw::c_uint,
- pub dstY: ::std::os::raw::c_uint,
- pub dstZ: ::std::os::raw::c_uint,
- pub dstLOD: ::std::os::raw::c_uint,
- pub dstMemoryType: CUmemorytype,
- pub dstHost: *mut ::std::os::raw::c_void,
- pub dstDevice: CUdeviceptr_v1,
- pub dstArray: CUarray,
- pub reserved1: *mut ::std::os::raw::c_void,
- pub dstPitch: ::std::os::raw::c_uint,
- pub dstHeight: ::std::os::raw::c_uint,
- pub WidthInBytes: ::std::os::raw::c_uint,
- pub Height: ::std::os::raw::c_uint,
- pub Depth: ::std::os::raw::c_uint,
-}
-pub type CUDA_MEMCPY3D_v1 = CUDA_MEMCPY3D_v1_st;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_ARRAY_DESCRIPTOR_v1_st {
- pub Width: ::std::os::raw::c_uint,
- pub Height: ::std::os::raw::c_uint,
- pub Format: CUarray_format,
- pub NumChannels: ::std::os::raw::c_uint,
-}
-pub type CUDA_ARRAY_DESCRIPTOR_v1 = CUDA_ARRAY_DESCRIPTOR_v1_st;
-#[repr(C)]
-#[derive(Copy, Clone, PartialEq, Eq)]
-pub struct CUDA_ARRAY3D_DESCRIPTOR_v1_st {
- pub Width: ::std::os::raw::c_uint,
- pub Height: ::std::os::raw::c_uint,
- pub Depth: ::std::os::raw::c_uint,
- pub Format: CUarray_format,
- pub NumChannels: ::std::os::raw::c_uint,
- pub Flags: ::std::os::raw::c_uint,
-}
-pub type CUDA_ARRAY3D_DESCRIPTOR_v1 = CUDA_ARRAY3D_DESCRIPTOR_v1_st;
-extern "C" {
- pub fn cuDeviceTotalMem(bytes: *mut ::std::os::raw::c_uint, dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxCreate(
- pctx: *mut CUcontext,
- flags: ::std::os::raw::c_uint,
- dev: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuModuleGetGlobal(
- dptr: *mut CUdeviceptr_v1,
- bytes: *mut ::std::os::raw::c_uint,
- hmod: CUmodule,
- name: *const ::std::os::raw::c_char,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemGetInfo(
- free: *mut ::std::os::raw::c_uint,
- total: *mut ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAlloc(dptr: *mut CUdeviceptr_v1, bytesize: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocPitch(
- dptr: *mut CUdeviceptr_v1,
- pPitch: *mut ::std::os::raw::c_uint,
- WidthInBytes: ::std::os::raw::c_uint,
- Height: ::std::os::raw::c_uint,
- ElementSizeBytes: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemFree(dptr: CUdeviceptr_v1) -> CUresult;
-}
-extern "C" {
- pub fn cuMemGetAddressRange(
- pbase: *mut CUdeviceptr_v1,
- psize: *mut ::std::os::raw::c_uint,
- dptr: CUdeviceptr_v1,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocHost(
- pp: *mut *mut ::std::os::raw::c_void,
- bytesize: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemHostGetDevicePointer(
- pdptr: *mut CUdeviceptr_v1,
- p: *mut ::std::os::raw::c_void,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoD(
- dstDevice: CUdeviceptr_v1,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoH(
- dstHost: *mut ::std::os::raw::c_void,
- srcDevice: CUdeviceptr_v1,
- ByteCount: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoD(
- dstDevice: CUdeviceptr_v1,
- srcDevice: CUdeviceptr_v1,
- ByteCount: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoA(
- dstArray: CUarray,
- dstOffset: ::std::os::raw::c_uint,
- srcDevice: CUdeviceptr_v1,
- ByteCount: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoD(
- dstDevice: CUdeviceptr_v1,
- srcArray: CUarray,
- srcOffset: ::std::os::raw::c_uint,
- ByteCount: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoA(
- dstArray: CUarray,
- dstOffset: ::std::os::raw::c_uint,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoH(
- dstHost: *mut ::std::os::raw::c_void,
- srcArray: CUarray,
- srcOffset: ::std::os::raw::c_uint,
- ByteCount: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoA(
- dstArray: CUarray,
- dstOffset: ::std::os::raw::c_uint,
- srcArray: CUarray,
- srcOffset: ::std::os::raw::c_uint,
- ByteCount: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoAAsync(
- dstArray: CUarray,
- dstOffset: ::std::os::raw::c_uint,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: ::std::os::raw::c_uint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoHAsync(
- dstHost: *mut ::std::os::raw::c_void,
- srcArray: CUarray,
- srcOffset: ::std::os::raw::c_uint,
- ByteCount: ::std::os::raw::c_uint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2D(pCopy: *const CUDA_MEMCPY2D_v1) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2DUnaligned(pCopy: *const CUDA_MEMCPY2D_v1) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3D(pCopy: *const CUDA_MEMCPY3D_v1) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoDAsync(
- dstDevice: CUdeviceptr_v1,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: ::std::os::raw::c_uint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoHAsync(
- dstHost: *mut ::std::os::raw::c_void,
- srcDevice: CUdeviceptr_v1,
- ByteCount: ::std::os::raw::c_uint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoDAsync(
- dstDevice: CUdeviceptr_v1,
- srcDevice: CUdeviceptr_v1,
- ByteCount: ::std::os::raw::c_uint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2DAsync(pCopy: *const CUDA_MEMCPY2D_v1, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3DAsync(pCopy: *const CUDA_MEMCPY3D_v1, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD8(
- dstDevice: CUdeviceptr_v1,
- uc: ::std::os::raw::c_uchar,
- N: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD16(
- dstDevice: CUdeviceptr_v1,
- us: ::std::os::raw::c_ushort,
- N: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD32(
- dstDevice: CUdeviceptr_v1,
- ui: ::std::os::raw::c_uint,
- N: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D8(
- dstDevice: CUdeviceptr_v1,
- dstPitch: ::std::os::raw::c_uint,
- uc: ::std::os::raw::c_uchar,
- Width: ::std::os::raw::c_uint,
- Height: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D16(
- dstDevice: CUdeviceptr_v1,
- dstPitch: ::std::os::raw::c_uint,
- us: ::std::os::raw::c_ushort,
- Width: ::std::os::raw::c_uint,
- Height: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D32(
- dstDevice: CUdeviceptr_v1,
- dstPitch: ::std::os::raw::c_uint,
- ui: ::std::os::raw::c_uint,
- Width: ::std::os::raw::c_uint,
- Height: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArrayCreate(
- pHandle: *mut CUarray,
- pAllocateArray: *const CUDA_ARRAY_DESCRIPTOR_v1,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArrayGetDescriptor(
- pArrayDescriptor: *mut CUDA_ARRAY_DESCRIPTOR_v1,
- hArray: CUarray,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArray3DCreate(
- pHandle: *mut CUarray,
- pAllocateArray: *const CUDA_ARRAY3D_DESCRIPTOR_v1,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuArray3DGetDescriptor(
- pArrayDescriptor: *mut CUDA_ARRAY3D_DESCRIPTOR_v1,
- hArray: CUarray,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetAddress(
- ByteOffset: *mut ::std::os::raw::c_uint,
- hTexRef: CUtexref,
- dptr: CUdeviceptr_v1,
- bytes: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefSetAddress2D(
- hTexRef: CUtexref,
- desc: *const CUDA_ARRAY_DESCRIPTOR_v1,
- dptr: CUdeviceptr_v1,
- Pitch: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuTexRefGetAddress(pdptr: *mut CUdeviceptr_v1, hTexRef: CUtexref) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsResourceGetMappedPointer(
- pDevPtr: *mut CUdeviceptr_v1,
- pSize: *mut ::std::os::raw::c_uint,
- resource: CUgraphicsResource,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxDestroy(ctx: CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxPopCurrent(pctx: *mut CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuCtxPushCurrent(ctx: CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamDestroy(hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuEventDestroy(hEvent: CUevent) -> CUresult;
-}
-extern "C" {
- pub fn cuDevicePrimaryCtxRelease(dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDevicePrimaryCtxReset(dev: CUdevice) -> CUresult;
-}
-extern "C" {
- pub fn cuDevicePrimaryCtxSetFlags(dev: CUdevice, flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoD_v2(
- dstDevice: CUdeviceptr,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoH_v2(
- dstHost: *mut ::std::os::raw::c_void,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoD_v2(
- dstDevice: CUdeviceptr,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoA_v2(
- dstArray: CUarray,
- dstOffset: usize,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoD_v2(
- dstDevice: CUdeviceptr,
- srcArray: CUarray,
- srcOffset: usize,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoA_v2(
- dstArray: CUarray,
- dstOffset: usize,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoH_v2(
- dstHost: *mut ::std::os::raw::c_void,
- srcArray: CUarray,
- srcOffset: usize,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoA_v2(
- dstArray: CUarray,
- dstOffset: usize,
- srcArray: CUarray,
- srcOffset: usize,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoAAsync_v2(
- dstArray: CUarray,
- dstOffset: usize,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAtoHAsync_v2(
- dstHost: *mut ::std::os::raw::c_void,
- srcArray: CUarray,
- srcOffset: usize,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2D_v2(pCopy: *const CUDA_MEMCPY2D) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2DUnaligned_v2(pCopy: *const CUDA_MEMCPY2D) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3D_v2(pCopy: *const CUDA_MEMCPY3D) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyHtoDAsync_v2(
- dstDevice: CUdeviceptr,
- srcHost: *const ::std::os::raw::c_void,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoHAsync_v2(
- dstHost: *mut ::std::os::raw::c_void,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyDtoDAsync_v2(
- dstDevice: CUdeviceptr,
- srcDevice: CUdeviceptr,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy2DAsync_v2(pCopy: *const CUDA_MEMCPY2D, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3DAsync_v2(pCopy: *const CUDA_MEMCPY3D, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD8_v2(dstDevice: CUdeviceptr, uc: ::std::os::raw::c_uchar, N: usize)
- -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD16_v2(
- dstDevice: CUdeviceptr,
- us: ::std::os::raw::c_ushort,
- N: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD32_v2(dstDevice: CUdeviceptr, ui: ::std::os::raw::c_uint, N: usize)
- -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D8_v2(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- uc: ::std::os::raw::c_uchar,
- Width: usize,
- Height: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D16_v2(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- us: ::std::os::raw::c_ushort,
- Width: usize,
- Height: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D32_v2(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- ui: ::std::os::raw::c_uint,
- Width: usize,
- Height: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy(dst: CUdeviceptr, src: CUdeviceptr, ByteCount: usize) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyAsync(
- dst: CUdeviceptr,
- src: CUdeviceptr,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyPeer(
- dstDevice: CUdeviceptr,
- dstContext: CUcontext,
- srcDevice: CUdeviceptr,
- srcContext: CUcontext,
- ByteCount: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpyPeerAsync(
- dstDevice: CUdeviceptr,
- dstContext: CUcontext,
- srcDevice: CUdeviceptr,
- srcContext: CUcontext,
- ByteCount: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3DPeer(pCopy: *const CUDA_MEMCPY3D_PEER) -> CUresult;
-}
-extern "C" {
- pub fn cuMemcpy3DPeerAsync(pCopy: *const CUDA_MEMCPY3D_PEER, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD8Async(
- dstDevice: CUdeviceptr,
- uc: ::std::os::raw::c_uchar,
- N: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD16Async(
- dstDevice: CUdeviceptr,
- us: ::std::os::raw::c_ushort,
- N: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD32Async(
- dstDevice: CUdeviceptr,
- ui: ::std::os::raw::c_uint,
- N: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D8Async(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- uc: ::std::os::raw::c_uchar,
- Width: usize,
- Height: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D16Async(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- us: ::std::os::raw::c_ushort,
- Width: usize,
- Height: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemsetD2D32Async(
- dstDevice: CUdeviceptr,
- dstPitch: usize,
- ui: ::std::os::raw::c_uint,
- Width: usize,
- Height: usize,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetPriority(hStream: CUstream, priority: *mut ::std::os::raw::c_int)
- -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetFlags(hStream: CUstream, flags: *mut ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetCtx(hStream: CUstream, pctx: *mut CUcontext) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWaitEvent(
- hStream: CUstream,
- hEvent: CUevent,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamAddCallback(
- hStream: CUstream,
- callback: CUstreamCallback,
- userData: *mut ::std::os::raw::c_void,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamAttachMemAsync(
- hStream: CUstream,
- dptr: CUdeviceptr,
- length: usize,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamQuery(hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamSynchronize(hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuEventRecord(hEvent: CUevent, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuEventRecordWithFlags(
- hEvent: CUevent,
- hStream: CUstream,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchKernel(
- f: CUfunction,
- gridDimX: ::std::os::raw::c_uint,
- gridDimY: ::std::os::raw::c_uint,
- gridDimZ: ::std::os::raw::c_uint,
- blockDimX: ::std::os::raw::c_uint,
- blockDimY: ::std::os::raw::c_uint,
- blockDimZ: ::std::os::raw::c_uint,
- sharedMemBytes: ::std::os::raw::c_uint,
- hStream: CUstream,
- kernelParams: *mut *mut ::std::os::raw::c_void,
- extra: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchHostFunc(
- hStream: CUstream,
- fn_: CUhostFn,
- userData: *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsMapResources(
- count: ::std::os::raw::c_uint,
- resources: *mut CUgraphicsResource,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsUnmapResources(
- count: ::std::os::raw::c_uint,
- resources: *mut CUgraphicsResource,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWriteValue32(
- stream: CUstream,
- addr: CUdeviceptr,
- value: cuuint32_t,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWaitValue32(
- stream: CUstream,
- addr: CUdeviceptr,
- value: cuuint32_t,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWriteValue64(
- stream: CUstream,
- addr: CUdeviceptr,
- value: cuuint64_t,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamWaitValue64(
- stream: CUstream,
- addr: CUdeviceptr,
- value: cuuint64_t,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamBatchMemOp(
- stream: CUstream,
- count: ::std::os::raw::c_uint,
- paramArray: *mut CUstreamBatchMemOpParams,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemPrefetchAsync(
- devPtr: CUdeviceptr,
- count: usize,
- dstDevice: CUdevice,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuLaunchCooperativeKernel(
- f: CUfunction,
- gridDimX: ::std::os::raw::c_uint,
- gridDimY: ::std::os::raw::c_uint,
- gridDimZ: ::std::os::raw::c_uint,
- blockDimX: ::std::os::raw::c_uint,
- blockDimY: ::std::os::raw::c_uint,
- blockDimZ: ::std::os::raw::c_uint,
- sharedMemBytes: ::std::os::raw::c_uint,
- hStream: CUstream,
- kernelParams: *mut *mut ::std::os::raw::c_void,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuSignalExternalSemaphoresAsync(
- extSemArray: *const CUexternalSemaphore,
- paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS,
- numExtSems: ::std::os::raw::c_uint,
- stream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuWaitExternalSemaphoresAsync(
- extSemArray: *const CUexternalSemaphore,
- paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS,
- numExtSems: ::std::os::raw::c_uint,
- stream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamBeginCapture(hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamBeginCapture_ptsz(hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamBeginCapture_v2(hStream: CUstream, mode: CUstreamCaptureMode) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamEndCapture(hStream: CUstream, phGraph: *mut CUgraph) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamIsCapturing(
- hStream: CUstream,
- captureStatus: *mut CUstreamCaptureStatus,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetCaptureInfo(
- hStream: CUstream,
- captureStatus_out: *mut CUstreamCaptureStatus,
- id_out: *mut cuuint64_t,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetCaptureInfo_v2(
- hStream: CUstream,
- captureStatus_out: *mut CUstreamCaptureStatus,
- id_out: *mut cuuint64_t,
- graph_out: *mut CUgraph,
- dependencies_out: *mut *const CUgraphNode,
- numDependencies_out: *mut usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphUpload(hGraph: CUgraphExec, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphLaunch(hGraph: CUgraphExec, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamCopyAttributes(dstStream: CUstream, srcStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamGetAttribute(
- hStream: CUstream,
- attr: CUstreamAttrID,
- value: *mut CUstreamAttrValue,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamSetAttribute(
- hStream: CUstream,
- attr: CUstreamAttrID,
- param: *const CUstreamAttrValue,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuIpcOpenMemHandle(
- pdptr: *mut CUdeviceptr,
- handle: CUipcMemHandle,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphInstantiate(
- phGraphExec: *mut CUgraphExec,
- hGraph: CUgraph,
- phErrorNode: *mut CUgraphNode,
- logBuffer: *mut ::std::os::raw::c_char,
- bufferSize: usize,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemMapArrayAsync(
- mapInfoList: *mut CUarrayMapInfo,
- count: ::std::os::raw::c_uint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuMemFreeAsync(dptr: CUdeviceptr, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocAsync(dptr: *mut CUdeviceptr, bytesize: usize, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuMemAllocFromPoolAsync(
- dptr: *mut CUdeviceptr,
- bytesize: usize,
- pool: CUmemoryPool,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuStreamUpdateCaptureDependencies(
- hStream: CUstream,
- dependencies: *mut CUgraphNode,
- numDependencies: usize,
- flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-pub type GLenum = ::std::os::raw::c_uint;
-pub type GLuint = ::std::os::raw::c_uint;
-pub type HGPUNV = *mut ::std::os::raw::c_void;
-extern "C" {
- pub fn cuGraphicsGLRegisterBuffer(
- pCudaResource: *mut CUgraphicsResource,
- buffer: GLuint,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGraphicsGLRegisterImage(
- pCudaResource: *mut CUgraphicsResource,
- image: GLuint,
- target: GLenum,
- Flags: ::std::os::raw::c_uint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuWGLGetDevice(pDevice: *mut CUdevice, hGpu: HGPUNV) -> CUresult;
-}
-impl CUGLDeviceList_enum {
- pub const CU_GL_DEVICE_LIST_ALL: CUGLDeviceList_enum = CUGLDeviceList_enum(1);
-}
-impl CUGLDeviceList_enum {
- pub const CU_GL_DEVICE_LIST_CURRENT_FRAME: CUGLDeviceList_enum = CUGLDeviceList_enum(2);
-}
-impl CUGLDeviceList_enum {
- pub const CU_GL_DEVICE_LIST_NEXT_FRAME: CUGLDeviceList_enum = CUGLDeviceList_enum(3);
-}
-#[repr(transparent)]
-#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
-pub struct CUGLDeviceList_enum(pub ::std::os::raw::c_uint);
-pub use self::CUGLDeviceList_enum as CUGLDeviceList;
-extern "C" {
- pub fn cuGLGetDevices_v2(
- pCudaDeviceCount: *mut ::std::os::raw::c_uint,
- pCudaDevices: *mut CUdevice,
- cudaDeviceCount: ::std::os::raw::c_uint,
- deviceList: CUGLDeviceList,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLCtxCreate_v2(
- pCtx: *mut CUcontext,
- Flags: ::std::os::raw::c_uint,
- device: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLInit() -> CUresult;
-}
-extern "C" {
- pub fn cuGLRegisterBufferObject(buffer: GLuint) -> CUresult;
-}
-extern "C" {
- pub fn cuGLMapBufferObject_v2_ptds(
- dptr: *mut CUdeviceptr,
- size: *mut usize,
- buffer: GLuint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLUnmapBufferObject(buffer: GLuint) -> CUresult;
-}
-extern "C" {
- pub fn cuGLUnregisterBufferObject(buffer: GLuint) -> CUresult;
-}
-extern "C" {
- pub fn cuGLSetBufferObjectMapFlags(buffer: GLuint, Flags: ::std::os::raw::c_uint) -> CUresult;
-}
-extern "C" {
- pub fn cuGLMapBufferObjectAsync_v2_ptsz(
- dptr: *mut CUdeviceptr,
- size: *mut usize,
- buffer: GLuint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLUnmapBufferObjectAsync(buffer: GLuint, hStream: CUstream) -> CUresult;
-}
-extern "C" {
- pub fn cuGLGetDevices(
- pCudaDeviceCount: *mut ::std::os::raw::c_uint,
- pCudaDevices: *mut CUdevice,
- cudaDeviceCount: ::std::os::raw::c_uint,
- deviceList: CUGLDeviceList,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLMapBufferObject_v2(
- dptr: *mut CUdeviceptr,
- size: *mut usize,
- buffer: GLuint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLMapBufferObjectAsync_v2(
- dptr: *mut CUdeviceptr,
- size: *mut usize,
- buffer: GLuint,
- hStream: CUstream,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLCtxCreate(
- pCtx: *mut CUcontext,
- Flags: ::std::os::raw::c_uint,
- device: CUdevice,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLMapBufferObject(
- dptr: *mut CUdeviceptr_v1,
- size: *mut ::std::os::raw::c_uint,
- buffer: GLuint,
- ) -> CUresult;
-}
-extern "C" {
- pub fn cuGLMapBufferObjectAsync(
- dptr: *mut CUdeviceptr_v1,
- size: *mut ::std::os::raw::c_uint,
- buffer: GLuint,
- hStream: CUstream,
- ) -> CUresult;
-}
+pub const CUDA_VERSION: u32 = 12040;
+pub const CU_IPC_HANDLE_SIZE: u32 = 64;
+pub const CU_COMPUTE_ACCELERATED_TARGET_BASE: u32 = 65536;
+pub const CU_GRAPH_COND_ASSIGN_DEFAULT: u32 = 1;
+pub const CU_GRAPH_KERNEL_NODE_PORT_DEFAULT: u32 = 0;
+pub const CU_GRAPH_KERNEL_NODE_PORT_PROGRAMMATIC: u32 = 1;
+pub const CU_GRAPH_KERNEL_NODE_PORT_LAUNCH_ORDER: u32 = 2;
+pub const CU_MEMHOSTALLOC_PORTABLE: u32 = 1;
+pub const CU_MEMHOSTALLOC_DEVICEMAP: u32 = 2;
+pub const CU_MEMHOSTALLOC_WRITECOMBINED: u32 = 4;
+pub const CU_MEMHOSTREGISTER_PORTABLE: u32 = 1;
+pub const CU_MEMHOSTREGISTER_DEVICEMAP: u32 = 2;
+pub const CU_MEMHOSTREGISTER_IOMEMORY: u32 = 4;
+pub const CU_MEMHOSTREGISTER_READ_ONLY: u32 = 8;
+pub const CU_ARRAY_SPARSE_PROPERTIES_SINGLE_MIPTAIL: u32 = 1;
+pub const CU_TENSOR_MAP_NUM_QWORDS: u32 = 16;
+pub const CUDA_EXTERNAL_MEMORY_DEDICATED: u32 = 1;
+pub const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_SKIP_NVSCIBUF_MEMSYNC: u32 = 1;
+pub const CUDA_EXTERNAL_SEMAPHORE_WAIT_SKIP_NVSCIBUF_MEMSYNC: u32 = 2;
+pub const CUDA_NVSCISYNC_ATTR_SIGNAL: u32 = 1;
+pub const CUDA_NVSCISYNC_ATTR_WAIT: u32 = 2;
+pub const CU_MEM_CREATE_USAGE_TILE_POOL: u32 = 1;
+pub const CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_PRE_LAUNCH_SYNC: u32 = 1;
+pub const CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_POST_LAUNCH_SYNC: u32 = 2;
+pub const CUDA_ARRAY3D_LAYERED: u32 = 1;
+pub const CUDA_ARRAY3D_2DARRAY: u32 = 1;
+pub const CUDA_ARRAY3D_SURFACE_LDST: u32 = 2;
+pub const CUDA_ARRAY3D_CUBEMAP: u32 = 4;
+pub const CUDA_ARRAY3D_TEXTURE_GATHER: u32 = 8;
+pub const CUDA_ARRAY3D_DEPTH_TEXTURE: u32 = 16;
+pub const CUDA_ARRAY3D_COLOR_ATTACHMENT: u32 = 32;
+pub const CUDA_ARRAY3D_SPARSE: u32 = 64;
+pub const CUDA_ARRAY3D_DEFERRED_MAPPING: u32 = 128;
+pub const CU_TRSA_OVERRIDE_FORMAT: u32 = 1;
+pub const CU_TRSF_READ_AS_INTEGER: u32 = 1;
+pub const CU_TRSF_NORMALIZED_COORDINATES: u32 = 2;
+pub const CU_TRSF_SRGB: u32 = 16;
+pub const CU_TRSF_DISABLE_TRILINEAR_OPTIMIZATION: u32 = 32;
+pub const CU_TRSF_SEAMLESS_CUBEMAP: u32 = 64;
+pub const CU_LAUNCH_PARAM_END_AS_INT: u32 = 0;
+pub const CU_LAUNCH_PARAM_BUFFER_POINTER_AS_INT: u32 = 1;
+pub const CU_LAUNCH_PARAM_BUFFER_SIZE_AS_INT: u32 = 2;
+pub const CU_PARAM_TR_DEFAULT: i32 = -1;
+pub const CUDA_EGL_INFINITE_TIMEOUT: u32 = 4294967295;
+pub type cuuint32_t = u32;
+pub type cuuint64_t = u64;
+#[repr(transparent)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUdeviceptr_v2(pub ::std::os::raw::c_ulonglong);
+pub type CUdeviceptr = CUdeviceptr_v2;
+#[repr(transparent)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUdevice_v1(pub ::std::os::raw::c_int);
+pub type CUdevice = CUdevice_v1;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUctx_st {
+ _unused: [u8; 0],
+}
+pub type CUcontext = *mut CUctx_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUmod_st {
+ _unused: [u8; 0],
+}
+pub type CUmodule = *mut CUmod_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUfunc_st {
+ _unused: [u8; 0],
+}
+pub type CUfunction = *mut CUfunc_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUlib_st {
+ _unused: [u8; 0],
+}
+pub type CUlibrary = *mut CUlib_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUkern_st {
+ _unused: [u8; 0],
+}
+pub type CUkernel = *mut CUkern_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUarray_st {
+ _unused: [u8; 0],
+}
+pub type CUarray = *mut CUarray_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUmipmappedArray_st {
+ _unused: [u8; 0],
+}
+pub type CUmipmappedArray = *mut CUmipmappedArray_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUtexref_st {
+ _unused: [u8; 0],
+}
+pub type CUtexref = *mut CUtexref_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUsurfref_st {
+ _unused: [u8; 0],
+}
+pub type CUsurfref = *mut CUsurfref_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUevent_st {
+ _unused: [u8; 0],
+}
+pub type CUevent = *mut CUevent_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUstream_st {
+ _unused: [u8; 0],
+}
+pub type CUstream = *mut CUstream_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUgraphicsResource_st {
+ _unused: [u8; 0],
+}
+pub type CUgraphicsResource = *mut CUgraphicsResource_st;
+pub type CUtexObject_v1 = ::std::os::raw::c_ulonglong;
+pub type CUtexObject = CUtexObject_v1;
+pub type CUsurfObject_v1 = ::std::os::raw::c_ulonglong;
+pub type CUsurfObject = CUsurfObject_v1;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUextMemory_st {
+ _unused: [u8; 0],
+}
+pub type CUexternalMemory = *mut CUextMemory_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUextSemaphore_st {
+ _unused: [u8; 0],
+}
+pub type CUexternalSemaphore = *mut CUextSemaphore_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUgraph_st {
+ _unused: [u8; 0],
+}
+pub type CUgraph = *mut CUgraph_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUgraphNode_st {
+ _unused: [u8; 0],
+}
+pub type CUgraphNode = *mut CUgraphNode_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUgraphExec_st {
+ _unused: [u8; 0],
+}
+pub type CUgraphExec = *mut CUgraphExec_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUmemPoolHandle_st {
+ _unused: [u8; 0],
+}
+pub type CUmemoryPool = *mut CUmemPoolHandle_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUuserObject_st {
+ _unused: [u8; 0],
+}
+pub type CUuserObject = *mut CUuserObject_st;
+pub type CUgraphConditionalHandle = cuuint64_t;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUgraphDeviceUpdatableNode_st {
+ _unused: [u8; 0],
+}
+pub type CUgraphDeviceNode = *mut CUgraphDeviceUpdatableNode_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUasyncCallbackEntry_st {
+ _unused: [u8; 0],
+}
+pub type CUasyncCallbackHandle = *mut CUasyncCallbackEntry_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUuuid_st {
+ pub bytes: [::std::os::raw::c_char; 16usize],
+}
+pub type CUuuid = CUuuid_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUmemFabricHandle_st {
+ pub data: [::std::os::raw::c_uchar; 64usize],
+}
+pub type CUmemFabricHandle_v1 = CUmemFabricHandle_st;
+pub type CUmemFabricHandle = CUmemFabricHandle_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUipcEventHandle_st {
+ pub reserved: [::std::os::raw::c_char; 64usize],
+}
+pub type CUipcEventHandle_v1 = CUipcEventHandle_st;
+pub type CUipcEventHandle = CUipcEventHandle_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUipcMemHandle_st {
+ pub reserved: [::std::os::raw::c_char; 64usize],
+}
+pub type CUipcMemHandle_v1 = CUipcMemHandle_st;
+pub type CUipcMemHandle = CUipcMemHandle_v1;
+impl CUipcMem_flags_enum {
+ pub const CU_IPC_MEM_LAZY_ENABLE_PEER_ACCESS: CUipcMem_flags_enum = CUipcMem_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUipcMem_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUipcMem_flags_enum as CUipcMem_flags;
+impl CUmemAttach_flags_enum {
+ pub const CU_MEM_ATTACH_GLOBAL: CUmemAttach_flags_enum = CUmemAttach_flags_enum(1);
+}
+impl CUmemAttach_flags_enum {
+ pub const CU_MEM_ATTACH_HOST: CUmemAttach_flags_enum = CUmemAttach_flags_enum(2);
+}
+impl CUmemAttach_flags_enum {
+ pub const CU_MEM_ATTACH_SINGLE: CUmemAttach_flags_enum = CUmemAttach_flags_enum(4);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemAttach_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemAttach_flags_enum as CUmemAttach_flags;
+impl CUctx_flags_enum {
+ pub const CU_CTX_SCHED_AUTO: CUctx_flags_enum = CUctx_flags_enum(0);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_SCHED_SPIN: CUctx_flags_enum = CUctx_flags_enum(1);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_SCHED_YIELD: CUctx_flags_enum = CUctx_flags_enum(2);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_SCHED_BLOCKING_SYNC: CUctx_flags_enum = CUctx_flags_enum(4);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_BLOCKING_SYNC: CUctx_flags_enum = CUctx_flags_enum(4);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_SCHED_MASK: CUctx_flags_enum = CUctx_flags_enum(7);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_MAP_HOST: CUctx_flags_enum = CUctx_flags_enum(8);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_LMEM_RESIZE_TO_MAX: CUctx_flags_enum = CUctx_flags_enum(16);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_COREDUMP_ENABLE: CUctx_flags_enum = CUctx_flags_enum(32);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_USER_COREDUMP_ENABLE: CUctx_flags_enum = CUctx_flags_enum(64);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_SYNC_MEMOPS: CUctx_flags_enum = CUctx_flags_enum(128);
+}
+impl CUctx_flags_enum {
+ pub const CU_CTX_FLAGS_MASK: CUctx_flags_enum = CUctx_flags_enum(255);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUctx_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUctx_flags_enum as CUctx_flags;
+impl CUevent_sched_flags_enum {
+ pub const CU_EVENT_SCHED_AUTO: CUevent_sched_flags_enum = CUevent_sched_flags_enum(0);
+}
+impl CUevent_sched_flags_enum {
+ pub const CU_EVENT_SCHED_SPIN: CUevent_sched_flags_enum = CUevent_sched_flags_enum(1);
+}
+impl CUevent_sched_flags_enum {
+ pub const CU_EVENT_SCHED_YIELD: CUevent_sched_flags_enum = CUevent_sched_flags_enum(2);
+}
+impl CUevent_sched_flags_enum {
+ pub const CU_EVENT_SCHED_BLOCKING_SYNC: CUevent_sched_flags_enum = CUevent_sched_flags_enum(4);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUevent_sched_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUevent_sched_flags_enum as CUevent_sched_flags;
+impl CUstream_flags_enum {
+ pub const CU_STREAM_DEFAULT: CUstream_flags_enum = CUstream_flags_enum(0);
+}
+impl CUstream_flags_enum {
+ pub const CU_STREAM_NON_BLOCKING: CUstream_flags_enum = CUstream_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUstream_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUstream_flags_enum as CUstream_flags;
+impl CUevent_flags_enum {
+ pub const CU_EVENT_DEFAULT: CUevent_flags_enum = CUevent_flags_enum(0);
+}
+impl CUevent_flags_enum {
+ pub const CU_EVENT_BLOCKING_SYNC: CUevent_flags_enum = CUevent_flags_enum(1);
+}
+impl CUevent_flags_enum {
+ pub const CU_EVENT_DISABLE_TIMING: CUevent_flags_enum = CUevent_flags_enum(2);
+}
+impl CUevent_flags_enum {
+ pub const CU_EVENT_INTERPROCESS: CUevent_flags_enum = CUevent_flags_enum(4);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUevent_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUevent_flags_enum as CUevent_flags;
+impl CUevent_record_flags_enum {
+ pub const CU_EVENT_RECORD_DEFAULT: CUevent_record_flags_enum = CUevent_record_flags_enum(0);
+}
+impl CUevent_record_flags_enum {
+ pub const CU_EVENT_RECORD_EXTERNAL: CUevent_record_flags_enum = CUevent_record_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUevent_record_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUevent_record_flags_enum as CUevent_record_flags;
+impl CUevent_wait_flags_enum {
+ pub const CU_EVENT_WAIT_DEFAULT: CUevent_wait_flags_enum = CUevent_wait_flags_enum(0);
+}
+impl CUevent_wait_flags_enum {
+ pub const CU_EVENT_WAIT_EXTERNAL: CUevent_wait_flags_enum = CUevent_wait_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUevent_wait_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUevent_wait_flags_enum as CUevent_wait_flags;
+impl CUstreamWaitValue_flags_enum {
+ pub const CU_STREAM_WAIT_VALUE_GEQ: CUstreamWaitValue_flags_enum =
+ CUstreamWaitValue_flags_enum(0);
+}
+impl CUstreamWaitValue_flags_enum {
+ pub const CU_STREAM_WAIT_VALUE_EQ: CUstreamWaitValue_flags_enum =
+ CUstreamWaitValue_flags_enum(1);
+}
+impl CUstreamWaitValue_flags_enum {
+ pub const CU_STREAM_WAIT_VALUE_AND: CUstreamWaitValue_flags_enum =
+ CUstreamWaitValue_flags_enum(2);
+}
+impl CUstreamWaitValue_flags_enum {
+ pub const CU_STREAM_WAIT_VALUE_NOR: CUstreamWaitValue_flags_enum =
+ CUstreamWaitValue_flags_enum(3);
+}
+impl CUstreamWaitValue_flags_enum {
+ pub const CU_STREAM_WAIT_VALUE_FLUSH: CUstreamWaitValue_flags_enum =
+ CUstreamWaitValue_flags_enum(1073741824);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUstreamWaitValue_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUstreamWaitValue_flags_enum as CUstreamWaitValue_flags;
+impl CUstreamWriteValue_flags_enum {
+ pub const CU_STREAM_WRITE_VALUE_DEFAULT: CUstreamWriteValue_flags_enum =
+ CUstreamWriteValue_flags_enum(0);
+}
+impl CUstreamWriteValue_flags_enum {
+ pub const CU_STREAM_WRITE_VALUE_NO_MEMORY_BARRIER: CUstreamWriteValue_flags_enum =
+ CUstreamWriteValue_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUstreamWriteValue_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUstreamWriteValue_flags_enum as CUstreamWriteValue_flags;
+impl CUstreamBatchMemOpType_enum {
+ pub const CU_STREAM_MEM_OP_WAIT_VALUE_32: CUstreamBatchMemOpType_enum =
+ CUstreamBatchMemOpType_enum(1);
+}
+impl CUstreamBatchMemOpType_enum {
+ pub const CU_STREAM_MEM_OP_WRITE_VALUE_32: CUstreamBatchMemOpType_enum =
+ CUstreamBatchMemOpType_enum(2);
+}
+impl CUstreamBatchMemOpType_enum {
+ pub const CU_STREAM_MEM_OP_WAIT_VALUE_64: CUstreamBatchMemOpType_enum =
+ CUstreamBatchMemOpType_enum(4);
+}
+impl CUstreamBatchMemOpType_enum {
+ pub const CU_STREAM_MEM_OP_WRITE_VALUE_64: CUstreamBatchMemOpType_enum =
+ CUstreamBatchMemOpType_enum(5);
+}
+impl CUstreamBatchMemOpType_enum {
+ pub const CU_STREAM_MEM_OP_BARRIER: CUstreamBatchMemOpType_enum =
+ CUstreamBatchMemOpType_enum(6);
+}
+impl CUstreamBatchMemOpType_enum {
+ pub const CU_STREAM_MEM_OP_FLUSH_REMOTE_WRITES: CUstreamBatchMemOpType_enum =
+ CUstreamBatchMemOpType_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUstreamBatchMemOpType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUstreamBatchMemOpType_enum as CUstreamBatchMemOpType;
+impl CUstreamMemoryBarrier_flags_enum {
+ pub const CU_STREAM_MEMORY_BARRIER_TYPE_SYS: CUstreamMemoryBarrier_flags_enum =
+ CUstreamMemoryBarrier_flags_enum(0);
+}
+impl CUstreamMemoryBarrier_flags_enum {
+ pub const CU_STREAM_MEMORY_BARRIER_TYPE_GPU: CUstreamMemoryBarrier_flags_enum =
+ CUstreamMemoryBarrier_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUstreamMemoryBarrier_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUstreamMemoryBarrier_flags_enum as CUstreamMemoryBarrier_flags;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUstreamBatchMemOpParams_union {
+ pub operation: CUstreamBatchMemOpType,
+ pub waitValue: CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st,
+ pub writeValue: CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st,
+ pub flushRemoteWrites: CUstreamBatchMemOpParams_union_CUstreamMemOpFlushRemoteWritesParams_st,
+ pub memoryBarrier: CUstreamBatchMemOpParams_union_CUstreamMemOpMemoryBarrierParams_st,
+ pub pad: [cuuint64_t; 6usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st {
+ pub operation: CUstreamBatchMemOpType,
+ pub address: CUdeviceptr,
+ pub __bindgen_anon_1:
+ CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st__bindgen_ty_1,
+ pub flags: ::std::os::raw::c_uint,
+ pub alias: CUdeviceptr,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st__bindgen_ty_1 {
+ pub value: cuuint32_t,
+ pub value64: cuuint64_t,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st {
+ pub operation: CUstreamBatchMemOpType,
+ pub address: CUdeviceptr,
+ pub __bindgen_anon_1:
+ CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st__bindgen_ty_1,
+ pub flags: ::std::os::raw::c_uint,
+ pub alias: CUdeviceptr,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st__bindgen_ty_1 {
+ pub value: cuuint32_t,
+ pub value64: cuuint64_t,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUstreamBatchMemOpParams_union_CUstreamMemOpFlushRemoteWritesParams_st {
+ pub operation: CUstreamBatchMemOpType,
+ pub flags: ::std::os::raw::c_uint,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUstreamBatchMemOpParams_union_CUstreamMemOpMemoryBarrierParams_st {
+ pub operation: CUstreamBatchMemOpType,
+ pub flags: ::std::os::raw::c_uint,
+}
+pub type CUstreamBatchMemOpParams_v1 = CUstreamBatchMemOpParams_union;
+pub type CUstreamBatchMemOpParams = CUstreamBatchMemOpParams_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st {
+ pub ctx: CUcontext,
+ pub count: ::std::os::raw::c_uint,
+ pub paramArray: *mut CUstreamBatchMemOpParams,
+ pub flags: ::std::os::raw::c_uint,
+}
+pub type CUDA_BATCH_MEM_OP_NODE_PARAMS_v1 = CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st;
+pub type CUDA_BATCH_MEM_OP_NODE_PARAMS = CUDA_BATCH_MEM_OP_NODE_PARAMS_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st {
+ pub ctx: CUcontext,
+ pub count: ::std::os::raw::c_uint,
+ pub paramArray: *mut CUstreamBatchMemOpParams,
+ pub flags: ::std::os::raw::c_uint,
+}
+pub type CUDA_BATCH_MEM_OP_NODE_PARAMS_v2 = CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st;
+impl CUoccupancy_flags_enum {
+ pub const CU_OCCUPANCY_DEFAULT: CUoccupancy_flags_enum = CUoccupancy_flags_enum(0);
+}
+impl CUoccupancy_flags_enum {
+ pub const CU_OCCUPANCY_DISABLE_CACHING_OVERRIDE: CUoccupancy_flags_enum =
+ CUoccupancy_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUoccupancy_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUoccupancy_flags_enum as CUoccupancy_flags;
+impl CUstreamUpdateCaptureDependencies_flags_enum {
+ pub const CU_STREAM_ADD_CAPTURE_DEPENDENCIES: CUstreamUpdateCaptureDependencies_flags_enum =
+ CUstreamUpdateCaptureDependencies_flags_enum(0);
+}
+impl CUstreamUpdateCaptureDependencies_flags_enum {
+ pub const CU_STREAM_SET_CAPTURE_DEPENDENCIES: CUstreamUpdateCaptureDependencies_flags_enum =
+ CUstreamUpdateCaptureDependencies_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUstreamUpdateCaptureDependencies_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUstreamUpdateCaptureDependencies_flags_enum as CUstreamUpdateCaptureDependencies_flags;
+impl CUasyncNotificationType_enum {
+ pub const CU_ASYNC_NOTIFICATION_TYPE_OVER_BUDGET: CUasyncNotificationType_enum =
+ CUasyncNotificationType_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUasyncNotificationType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUasyncNotificationType_enum as CUasyncNotificationType;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUasyncNotificationInfo_st {
+ pub type_: CUasyncNotificationType,
+ pub info: CUasyncNotificationInfo_st__bindgen_ty_1,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUasyncNotificationInfo_st__bindgen_ty_1 {
+ pub overBudget: CUasyncNotificationInfo_st__bindgen_ty_1__bindgen_ty_1,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUasyncNotificationInfo_st__bindgen_ty_1__bindgen_ty_1 {
+ pub bytesOverBudget: ::std::os::raw::c_ulonglong,
+}
+pub type CUasyncNotificationInfo = CUasyncNotificationInfo_st;
+pub type CUasyncCallback = ::std::option::Option<
+ unsafe extern "C" fn(
+ info: *mut CUasyncNotificationInfo,
+ userData: *mut ::std::os::raw::c_void,
+ callback: CUasyncCallbackHandle,
+ ),
+>;
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNSIGNED_INT8: CUarray_format_enum = CUarray_format_enum(1);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNSIGNED_INT16: CUarray_format_enum = CUarray_format_enum(2);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNSIGNED_INT32: CUarray_format_enum = CUarray_format_enum(3);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SIGNED_INT8: CUarray_format_enum = CUarray_format_enum(8);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SIGNED_INT16: CUarray_format_enum = CUarray_format_enum(9);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SIGNED_INT32: CUarray_format_enum = CUarray_format_enum(10);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_HALF: CUarray_format_enum = CUarray_format_enum(16);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_FLOAT: CUarray_format_enum = CUarray_format_enum(32);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_NV12: CUarray_format_enum = CUarray_format_enum(176);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNORM_INT8X1: CUarray_format_enum = CUarray_format_enum(192);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNORM_INT8X2: CUarray_format_enum = CUarray_format_enum(193);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNORM_INT8X4: CUarray_format_enum = CUarray_format_enum(194);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNORM_INT16X1: CUarray_format_enum = CUarray_format_enum(195);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNORM_INT16X2: CUarray_format_enum = CUarray_format_enum(196);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_UNORM_INT16X4: CUarray_format_enum = CUarray_format_enum(197);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SNORM_INT8X1: CUarray_format_enum = CUarray_format_enum(198);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SNORM_INT8X2: CUarray_format_enum = CUarray_format_enum(199);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SNORM_INT8X4: CUarray_format_enum = CUarray_format_enum(200);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SNORM_INT16X1: CUarray_format_enum = CUarray_format_enum(201);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SNORM_INT16X2: CUarray_format_enum = CUarray_format_enum(202);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_SNORM_INT16X4: CUarray_format_enum = CUarray_format_enum(203);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC1_UNORM: CUarray_format_enum = CUarray_format_enum(145);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC1_UNORM_SRGB: CUarray_format_enum = CUarray_format_enum(146);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC2_UNORM: CUarray_format_enum = CUarray_format_enum(147);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC2_UNORM_SRGB: CUarray_format_enum = CUarray_format_enum(148);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC3_UNORM: CUarray_format_enum = CUarray_format_enum(149);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC3_UNORM_SRGB: CUarray_format_enum = CUarray_format_enum(150);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC4_UNORM: CUarray_format_enum = CUarray_format_enum(151);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC4_SNORM: CUarray_format_enum = CUarray_format_enum(152);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC5_UNORM: CUarray_format_enum = CUarray_format_enum(153);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC5_SNORM: CUarray_format_enum = CUarray_format_enum(154);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC6H_UF16: CUarray_format_enum = CUarray_format_enum(155);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC6H_SF16: CUarray_format_enum = CUarray_format_enum(156);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC7_UNORM: CUarray_format_enum = CUarray_format_enum(157);
+}
+impl CUarray_format_enum {
+ pub const CU_AD_FORMAT_BC7_UNORM_SRGB: CUarray_format_enum = CUarray_format_enum(158);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUarray_format_enum(pub ::std::os::raw::c_uint);
+pub use self::CUarray_format_enum as CUarray_format;
+impl CUaddress_mode_enum {
+ pub const CU_TR_ADDRESS_MODE_WRAP: CUaddress_mode_enum = CUaddress_mode_enum(0);
+}
+impl CUaddress_mode_enum {
+ pub const CU_TR_ADDRESS_MODE_CLAMP: CUaddress_mode_enum = CUaddress_mode_enum(1);
+}
+impl CUaddress_mode_enum {
+ pub const CU_TR_ADDRESS_MODE_MIRROR: CUaddress_mode_enum = CUaddress_mode_enum(2);
+}
+impl CUaddress_mode_enum {
+ pub const CU_TR_ADDRESS_MODE_BORDER: CUaddress_mode_enum = CUaddress_mode_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUaddress_mode_enum(pub ::std::os::raw::c_uint);
+pub use self::CUaddress_mode_enum as CUaddress_mode;
+impl CUfilter_mode_enum {
+ pub const CU_TR_FILTER_MODE_POINT: CUfilter_mode_enum = CUfilter_mode_enum(0);
+}
+impl CUfilter_mode_enum {
+ pub const CU_TR_FILTER_MODE_LINEAR: CUfilter_mode_enum = CUfilter_mode_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUfilter_mode_enum(pub ::std::os::raw::c_uint);
+pub use self::CUfilter_mode_enum as CUfilter_mode;
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(1);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(2);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(3);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Z: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(4);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(5);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Y: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(6);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Z: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(7);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(8);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(8);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_TOTAL_CONSTANT_MEMORY: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(9);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_WARP_SIZE: CUdevice_attribute_enum = CUdevice_attribute_enum(10);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_PITCH: CUdevice_attribute_enum = CUdevice_attribute_enum(11);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(12);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(12);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CLOCK_RATE: CUdevice_attribute_enum = CUdevice_attribute_enum(13);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_TEXTURE_ALIGNMENT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(14);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_GPU_OVERLAP: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(15);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(16);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(17);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_INTEGRATED: CUdevice_attribute_enum = CUdevice_attribute_enum(18);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(19);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_COMPUTE_MODE: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(20);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(21);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(22);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(23);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(24);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(25);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(26);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(27);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(28);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_LAYERS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(29);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(27);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(28);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_NUMSLICES: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(29);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(30);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(31);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_ECC_ENABLED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(32);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_PCI_BUS_ID: CUdevice_attribute_enum = CUdevice_attribute_enum(33);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(34);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_TCC_DRIVER: CUdevice_attribute_enum = CUdevice_attribute_enum(35);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(36);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(37);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_L2_CACHE_SIZE: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(38);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_MULTIPROCESSOR: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(39);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(40);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(41);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(42);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_LAYERS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(43);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(44);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(45);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(46);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH_ALTERNATE: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(47);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT_ALTERNATE: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(48);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH_ALTERNATE: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(49);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(50);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(51);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(52);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(53);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_LAYERS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(54);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(55);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(56);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(57);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(58);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(59);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_DEPTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(60);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(61);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_LAYERS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(62);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(63);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(64);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_LAYERS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(65);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(66);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(67);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_LAYERS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(68);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(69);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(70);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(71);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_PITCH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(72);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(73);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_HEIGHT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(74);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(75);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(76);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_MIPMAPPED_WIDTH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(77);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(78);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_GLOBAL_L1_CACHE_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(79);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_LOCAL_L1_CACHE_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(80);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(81);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(82);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(83);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(84);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(85);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_HOST_NATIVE_ATOMIC_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(86);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_SINGLE_TO_DOUBLE_PRECISION_PERF_RATIO: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(87);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(88);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CONCURRENT_MANAGED_ACCESS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(89);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_COMPUTE_PREEMPTION_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(90);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_USE_HOST_POINTER_FOR_REGISTERED_MEM: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(91);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_MEM_OPS_V1: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(92);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS_V1: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(93);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR_V1: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(94);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_COOPERATIVE_LAUNCH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(95);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_COOPERATIVE_MULTI_DEVICE_LAUNCH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(96);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK_OPTIN: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(97);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_FLUSH_REMOTE_WRITES: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(98);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_HOST_REGISTER_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(99);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS_USES_HOST_PAGE_TABLES:
+ CUdevice_attribute_enum = CUdevice_attribute_enum(100);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_DIRECT_MANAGED_MEM_ACCESS_FROM_HOST: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(101);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_VIRTUAL_ADDRESS_MANAGEMENT_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(102);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(102);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR_SUPPORTED:
+ CUdevice_attribute_enum = CUdevice_attribute_enum(103);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_WIN32_HANDLE_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(104);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_WIN32_KMT_HANDLE_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(105);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_BLOCKS_PER_MULTIPROCESSOR: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(106);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_GENERIC_COMPRESSION_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(107);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_PERSISTING_L2_CACHE_SIZE: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(108);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX_ACCESS_POLICY_WINDOW_SIZE: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(109);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_WITH_CUDA_VMM_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(110);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_RESERVED_SHARED_MEMORY_PER_BLOCK: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(111);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_SPARSE_CUDA_ARRAY_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(112);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_READ_ONLY_HOST_REGISTER_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(113);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_TIMELINE_SEMAPHORE_INTEROP_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(114);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MEMORY_POOLS_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(115);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(116);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_FLUSH_WRITES_OPTIONS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(117);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_WRITES_ORDERING: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(118);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MEMPOOL_SUPPORTED_HANDLE_TYPES: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(119);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CLUSTER_LAUNCH: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(120);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_DEFERRED_MAPPING_CUDA_ARRAY_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(121);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(122);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(123);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_DMA_BUF_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(124);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_IPC_EVENT_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(125);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MEM_SYNC_DOMAIN_COUNT: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(126);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_TENSOR_MAP_ACCESS_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(127);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_FABRIC_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(128);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_UNIFIED_FUNCTION_POINTERS: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(129);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_NUMA_CONFIG: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(130);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_NUMA_ID: CUdevice_attribute_enum = CUdevice_attribute_enum(131);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MULTICAST_SUPPORTED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(132);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MPS_ENABLED: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(133);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_HOST_NUMA_ID: CUdevice_attribute_enum =
+ CUdevice_attribute_enum(134);
+}
+impl CUdevice_attribute_enum {
+ pub const CU_DEVICE_ATTRIBUTE_MAX: CUdevice_attribute_enum = CUdevice_attribute_enum(135);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUdevice_attribute_enum(pub ::std::os::raw::c_uint);
+pub use self::CUdevice_attribute_enum as CUdevice_attribute;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUdevprop_st {
+ pub maxThreadsPerBlock: ::std::os::raw::c_int,
+ pub maxThreadsDim: [::std::os::raw::c_int; 3usize],
+ pub maxGridSize: [::std::os::raw::c_int; 3usize],
+ pub sharedMemPerBlock: ::std::os::raw::c_int,
+ pub totalConstantMemory: ::std::os::raw::c_int,
+ pub SIMDWidth: ::std::os::raw::c_int,
+ pub memPitch: ::std::os::raw::c_int,
+ pub regsPerBlock: ::std::os::raw::c_int,
+ pub clockRate: ::std::os::raw::c_int,
+ pub textureAlign: ::std::os::raw::c_int,
+}
+pub type CUdevprop_v1 = CUdevprop_st;
+pub type CUdevprop = CUdevprop_v1;
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_CONTEXT: CUpointer_attribute_enum = CUpointer_attribute_enum(1);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_MEMORY_TYPE: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(2);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_DEVICE_POINTER: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(3);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_HOST_POINTER: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(4);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_P2P_TOKENS: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(5);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_SYNC_MEMOPS: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(6);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_BUFFER_ID: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(7);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_IS_MANAGED: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(8);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_DEVICE_ORDINAL: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(9);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_IS_LEGACY_CUDA_IPC_CAPABLE: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(10);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_RANGE_START_ADDR: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(11);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_RANGE_SIZE: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(12);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_MAPPED: CUpointer_attribute_enum = CUpointer_attribute_enum(13);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_ALLOWED_HANDLE_TYPES: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(14);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_IS_GPU_DIRECT_RDMA_CAPABLE: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(15);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_ACCESS_FLAGS: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(16);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_MEMPOOL_HANDLE: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(17);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_MAPPING_SIZE: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(18);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_MAPPING_BASE_ADDR: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(19);
+}
+impl CUpointer_attribute_enum {
+ pub const CU_POINTER_ATTRIBUTE_MEMORY_BLOCK_ID: CUpointer_attribute_enum =
+ CUpointer_attribute_enum(20);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUpointer_attribute_enum(pub ::std::os::raw::c_uint);
+pub use self::CUpointer_attribute_enum as CUpointer_attribute;
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(0);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(1);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_CONST_SIZE_BYTES: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(2);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(3);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_NUM_REGS: CUfunction_attribute_enum = CUfunction_attribute_enum(4);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_PTX_VERSION: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(5);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_BINARY_VERSION: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(6);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_CACHE_MODE_CA: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(7);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(8);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(9);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_CLUSTER_SIZE_MUST_BE_SET: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(10);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_WIDTH: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(11);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_HEIGHT: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(12);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_DEPTH: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(13);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_NON_PORTABLE_CLUSTER_SIZE_ALLOWED: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(14);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE: CUfunction_attribute_enum =
+ CUfunction_attribute_enum(15);
+}
+impl CUfunction_attribute_enum {
+ pub const CU_FUNC_ATTRIBUTE_MAX: CUfunction_attribute_enum = CUfunction_attribute_enum(16);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUfunction_attribute_enum(pub ::std::os::raw::c_uint);
+pub use self::CUfunction_attribute_enum as CUfunction_attribute;
+impl CUfunc_cache_enum {
+ pub const CU_FUNC_CACHE_PREFER_NONE: CUfunc_cache_enum = CUfunc_cache_enum(0);
+}
+impl CUfunc_cache_enum {
+ pub const CU_FUNC_CACHE_PREFER_SHARED: CUfunc_cache_enum = CUfunc_cache_enum(1);
+}
+impl CUfunc_cache_enum {
+ pub const CU_FUNC_CACHE_PREFER_L1: CUfunc_cache_enum = CUfunc_cache_enum(2);
+}
+impl CUfunc_cache_enum {
+ pub const CU_FUNC_CACHE_PREFER_EQUAL: CUfunc_cache_enum = CUfunc_cache_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUfunc_cache_enum(pub ::std::os::raw::c_uint);
+pub use self::CUfunc_cache_enum as CUfunc_cache;
+impl CUsharedconfig_enum {
+ pub const CU_SHARED_MEM_CONFIG_DEFAULT_BANK_SIZE: CUsharedconfig_enum = CUsharedconfig_enum(0);
+}
+impl CUsharedconfig_enum {
+ pub const CU_SHARED_MEM_CONFIG_FOUR_BYTE_BANK_SIZE: CUsharedconfig_enum =
+ CUsharedconfig_enum(1);
+}
+impl CUsharedconfig_enum {
+ pub const CU_SHARED_MEM_CONFIG_EIGHT_BYTE_BANK_SIZE: CUsharedconfig_enum =
+ CUsharedconfig_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUsharedconfig_enum(pub ::std::os::raw::c_uint);
+pub use self::CUsharedconfig_enum as CUsharedconfig;
+impl CUshared_carveout_enum {
+ pub const CU_SHAREDMEM_CARVEOUT_DEFAULT: CUshared_carveout_enum = CUshared_carveout_enum(-1);
+}
+impl CUshared_carveout_enum {
+ pub const CU_SHAREDMEM_CARVEOUT_MAX_SHARED: CUshared_carveout_enum =
+ CUshared_carveout_enum(100);
+}
+impl CUshared_carveout_enum {
+ pub const CU_SHAREDMEM_CARVEOUT_MAX_L1: CUshared_carveout_enum = CUshared_carveout_enum(0);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUshared_carveout_enum(pub ::std::os::raw::c_int);
+pub use self::CUshared_carveout_enum as CUshared_carveout;
+impl CUmemorytype_enum {
+ pub const CU_MEMORYTYPE_HOST: CUmemorytype_enum = CUmemorytype_enum(1);
+}
+impl CUmemorytype_enum {
+ pub const CU_MEMORYTYPE_DEVICE: CUmemorytype_enum = CUmemorytype_enum(2);
+}
+impl CUmemorytype_enum {
+ pub const CU_MEMORYTYPE_ARRAY: CUmemorytype_enum = CUmemorytype_enum(3);
+}
+impl CUmemorytype_enum {
+ pub const CU_MEMORYTYPE_UNIFIED: CUmemorytype_enum = CUmemorytype_enum(4);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemorytype_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemorytype_enum as CUmemorytype;
+impl CUcomputemode_enum {
+ pub const CU_COMPUTEMODE_DEFAULT: CUcomputemode_enum = CUcomputemode_enum(0);
+}
+impl CUcomputemode_enum {
+ pub const CU_COMPUTEMODE_PROHIBITED: CUcomputemode_enum = CUcomputemode_enum(2);
+}
+impl CUcomputemode_enum {
+ pub const CU_COMPUTEMODE_EXCLUSIVE_PROCESS: CUcomputemode_enum = CUcomputemode_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUcomputemode_enum(pub ::std::os::raw::c_uint);
+pub use self::CUcomputemode_enum as CUcomputemode;
+impl CUmem_advise_enum {
+ pub const CU_MEM_ADVISE_SET_READ_MOSTLY: CUmem_advise_enum = CUmem_advise_enum(1);
+}
+impl CUmem_advise_enum {
+ pub const CU_MEM_ADVISE_UNSET_READ_MOSTLY: CUmem_advise_enum = CUmem_advise_enum(2);
+}
+impl CUmem_advise_enum {
+ pub const CU_MEM_ADVISE_SET_PREFERRED_LOCATION: CUmem_advise_enum = CUmem_advise_enum(3);
+}
+impl CUmem_advise_enum {
+ pub const CU_MEM_ADVISE_UNSET_PREFERRED_LOCATION: CUmem_advise_enum = CUmem_advise_enum(4);
+}
+impl CUmem_advise_enum {
+ pub const CU_MEM_ADVISE_SET_ACCESSED_BY: CUmem_advise_enum = CUmem_advise_enum(5);
+}
+impl CUmem_advise_enum {
+ pub const CU_MEM_ADVISE_UNSET_ACCESSED_BY: CUmem_advise_enum = CUmem_advise_enum(6);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmem_advise_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmem_advise_enum as CUmem_advise;
+impl CUmem_range_attribute_enum {
+ pub const CU_MEM_RANGE_ATTRIBUTE_READ_MOSTLY: CUmem_range_attribute_enum =
+ CUmem_range_attribute_enum(1);
+}
+impl CUmem_range_attribute_enum {
+ pub const CU_MEM_RANGE_ATTRIBUTE_PREFERRED_LOCATION: CUmem_range_attribute_enum =
+ CUmem_range_attribute_enum(2);
+}
+impl CUmem_range_attribute_enum {
+ pub const CU_MEM_RANGE_ATTRIBUTE_ACCESSED_BY: CUmem_range_attribute_enum =
+ CUmem_range_attribute_enum(3);
+}
+impl CUmem_range_attribute_enum {
+ pub const CU_MEM_RANGE_ATTRIBUTE_LAST_PREFETCH_LOCATION: CUmem_range_attribute_enum =
+ CUmem_range_attribute_enum(4);
+}
+impl CUmem_range_attribute_enum {
+ pub const CU_MEM_RANGE_ATTRIBUTE_PREFERRED_LOCATION_TYPE: CUmem_range_attribute_enum =
+ CUmem_range_attribute_enum(5);
+}
+impl CUmem_range_attribute_enum {
+ pub const CU_MEM_RANGE_ATTRIBUTE_PREFERRED_LOCATION_ID: CUmem_range_attribute_enum =
+ CUmem_range_attribute_enum(6);
+}
+impl CUmem_range_attribute_enum {
+ pub const CU_MEM_RANGE_ATTRIBUTE_LAST_PREFETCH_LOCATION_TYPE: CUmem_range_attribute_enum =
+ CUmem_range_attribute_enum(7);
+}
+impl CUmem_range_attribute_enum {
+ pub const CU_MEM_RANGE_ATTRIBUTE_LAST_PREFETCH_LOCATION_ID: CUmem_range_attribute_enum =
+ CUmem_range_attribute_enum(8);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmem_range_attribute_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmem_range_attribute_enum as CUmem_range_attribute;
+impl CUjit_option_enum {
+ pub const CU_JIT_MAX_REGISTERS: CUjit_option_enum = CUjit_option_enum(0);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_THREADS_PER_BLOCK: CUjit_option_enum = CUjit_option_enum(1);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_WALL_TIME: CUjit_option_enum = CUjit_option_enum(2);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_INFO_LOG_BUFFER: CUjit_option_enum = CUjit_option_enum(3);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_INFO_LOG_BUFFER_SIZE_BYTES: CUjit_option_enum = CUjit_option_enum(4);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_ERROR_LOG_BUFFER: CUjit_option_enum = CUjit_option_enum(5);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_ERROR_LOG_BUFFER_SIZE_BYTES: CUjit_option_enum = CUjit_option_enum(6);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_OPTIMIZATION_LEVEL: CUjit_option_enum = CUjit_option_enum(7);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_TARGET_FROM_CUCONTEXT: CUjit_option_enum = CUjit_option_enum(8);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_TARGET: CUjit_option_enum = CUjit_option_enum(9);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_FALLBACK_STRATEGY: CUjit_option_enum = CUjit_option_enum(10);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_GENERATE_DEBUG_INFO: CUjit_option_enum = CUjit_option_enum(11);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_LOG_VERBOSE: CUjit_option_enum = CUjit_option_enum(12);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_GENERATE_LINE_INFO: CUjit_option_enum = CUjit_option_enum(13);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_CACHE_MODE: CUjit_option_enum = CUjit_option_enum(14);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_NEW_SM3X_OPT: CUjit_option_enum = CUjit_option_enum(15);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_FAST_COMPILE: CUjit_option_enum = CUjit_option_enum(16);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_GLOBAL_SYMBOL_NAMES: CUjit_option_enum = CUjit_option_enum(17);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_GLOBAL_SYMBOL_ADDRESSES: CUjit_option_enum = CUjit_option_enum(18);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_GLOBAL_SYMBOL_COUNT: CUjit_option_enum = CUjit_option_enum(19);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_LTO: CUjit_option_enum = CUjit_option_enum(20);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_FTZ: CUjit_option_enum = CUjit_option_enum(21);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_PREC_DIV: CUjit_option_enum = CUjit_option_enum(22);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_PREC_SQRT: CUjit_option_enum = CUjit_option_enum(23);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_FMA: CUjit_option_enum = CUjit_option_enum(24);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_REFERENCED_KERNEL_NAMES: CUjit_option_enum = CUjit_option_enum(25);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_REFERENCED_KERNEL_COUNT: CUjit_option_enum = CUjit_option_enum(26);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_REFERENCED_VARIABLE_NAMES: CUjit_option_enum = CUjit_option_enum(27);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_REFERENCED_VARIABLE_COUNT: CUjit_option_enum = CUjit_option_enum(28);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_OPTIMIZE_UNUSED_DEVICE_VARIABLES: CUjit_option_enum = CUjit_option_enum(29);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_POSITION_INDEPENDENT_CODE: CUjit_option_enum = CUjit_option_enum(30);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_MIN_CTA_PER_SM: CUjit_option_enum = CUjit_option_enum(31);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_MAX_THREADS_PER_BLOCK: CUjit_option_enum = CUjit_option_enum(32);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_OVERRIDE_DIRECTIVE_VALUES: CUjit_option_enum = CUjit_option_enum(33);
+}
+impl CUjit_option_enum {
+ pub const CU_JIT_NUM_OPTIONS: CUjit_option_enum = CUjit_option_enum(34);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUjit_option_enum(pub ::std::os::raw::c_uint);
+pub use self::CUjit_option_enum as CUjit_option;
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_30: CUjit_target_enum = CUjit_target_enum(30);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_32: CUjit_target_enum = CUjit_target_enum(32);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_35: CUjit_target_enum = CUjit_target_enum(35);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_37: CUjit_target_enum = CUjit_target_enum(37);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_50: CUjit_target_enum = CUjit_target_enum(50);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_52: CUjit_target_enum = CUjit_target_enum(52);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_53: CUjit_target_enum = CUjit_target_enum(53);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_60: CUjit_target_enum = CUjit_target_enum(60);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_61: CUjit_target_enum = CUjit_target_enum(61);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_62: CUjit_target_enum = CUjit_target_enum(62);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_70: CUjit_target_enum = CUjit_target_enum(70);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_72: CUjit_target_enum = CUjit_target_enum(72);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_75: CUjit_target_enum = CUjit_target_enum(75);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_80: CUjit_target_enum = CUjit_target_enum(80);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_86: CUjit_target_enum = CUjit_target_enum(86);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_87: CUjit_target_enum = CUjit_target_enum(87);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_89: CUjit_target_enum = CUjit_target_enum(89);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_90: CUjit_target_enum = CUjit_target_enum(90);
+}
+impl CUjit_target_enum {
+ pub const CU_TARGET_COMPUTE_90A: CUjit_target_enum = CUjit_target_enum(65626);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUjit_target_enum(pub ::std::os::raw::c_uint);
+pub use self::CUjit_target_enum as CUjit_target;
+impl CUjit_fallback_enum {
+ pub const CU_PREFER_PTX: CUjit_fallback_enum = CUjit_fallback_enum(0);
+}
+impl CUjit_fallback_enum {
+ pub const CU_PREFER_BINARY: CUjit_fallback_enum = CUjit_fallback_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUjit_fallback_enum(pub ::std::os::raw::c_uint);
+pub use self::CUjit_fallback_enum as CUjit_fallback;
+impl CUjit_cacheMode_enum {
+ pub const CU_JIT_CACHE_OPTION_NONE: CUjit_cacheMode_enum = CUjit_cacheMode_enum(0);
+}
+impl CUjit_cacheMode_enum {
+ pub const CU_JIT_CACHE_OPTION_CG: CUjit_cacheMode_enum = CUjit_cacheMode_enum(1);
+}
+impl CUjit_cacheMode_enum {
+ pub const CU_JIT_CACHE_OPTION_CA: CUjit_cacheMode_enum = CUjit_cacheMode_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUjit_cacheMode_enum(pub ::std::os::raw::c_uint);
+pub use self::CUjit_cacheMode_enum as CUjit_cacheMode;
+impl CUjitInputType_enum {
+ pub const CU_JIT_INPUT_CUBIN: CUjitInputType_enum = CUjitInputType_enum(0);
+}
+impl CUjitInputType_enum {
+ pub const CU_JIT_INPUT_PTX: CUjitInputType_enum = CUjitInputType_enum(1);
+}
+impl CUjitInputType_enum {
+ pub const CU_JIT_INPUT_FATBINARY: CUjitInputType_enum = CUjitInputType_enum(2);
+}
+impl CUjitInputType_enum {
+ pub const CU_JIT_INPUT_OBJECT: CUjitInputType_enum = CUjitInputType_enum(3);
+}
+impl CUjitInputType_enum {
+ pub const CU_JIT_INPUT_LIBRARY: CUjitInputType_enum = CUjitInputType_enum(4);
+}
+impl CUjitInputType_enum {
+ pub const CU_JIT_INPUT_NVVM: CUjitInputType_enum = CUjitInputType_enum(5);
+}
+impl CUjitInputType_enum {
+ pub const CU_JIT_NUM_INPUT_TYPES: CUjitInputType_enum = CUjitInputType_enum(6);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUjitInputType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUjitInputType_enum as CUjitInputType;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUlinkState_st {
+ _unused: [u8; 0],
+}
+pub type CUlinkState = *mut CUlinkState_st;
+impl CUgraphicsRegisterFlags_enum {
+ pub const CU_GRAPHICS_REGISTER_FLAGS_NONE: CUgraphicsRegisterFlags_enum =
+ CUgraphicsRegisterFlags_enum(0);
+}
+impl CUgraphicsRegisterFlags_enum {
+ pub const CU_GRAPHICS_REGISTER_FLAGS_READ_ONLY: CUgraphicsRegisterFlags_enum =
+ CUgraphicsRegisterFlags_enum(1);
+}
+impl CUgraphicsRegisterFlags_enum {
+ pub const CU_GRAPHICS_REGISTER_FLAGS_WRITE_DISCARD: CUgraphicsRegisterFlags_enum =
+ CUgraphicsRegisterFlags_enum(2);
+}
+impl CUgraphicsRegisterFlags_enum {
+ pub const CU_GRAPHICS_REGISTER_FLAGS_SURFACE_LDST: CUgraphicsRegisterFlags_enum =
+ CUgraphicsRegisterFlags_enum(4);
+}
+impl CUgraphicsRegisterFlags_enum {
+ pub const CU_GRAPHICS_REGISTER_FLAGS_TEXTURE_GATHER: CUgraphicsRegisterFlags_enum =
+ CUgraphicsRegisterFlags_enum(8);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphicsRegisterFlags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphicsRegisterFlags_enum as CUgraphicsRegisterFlags;
+impl CUgraphicsMapResourceFlags_enum {
+ pub const CU_GRAPHICS_MAP_RESOURCE_FLAGS_NONE: CUgraphicsMapResourceFlags_enum =
+ CUgraphicsMapResourceFlags_enum(0);
+}
+impl CUgraphicsMapResourceFlags_enum {
+ pub const CU_GRAPHICS_MAP_RESOURCE_FLAGS_READ_ONLY: CUgraphicsMapResourceFlags_enum =
+ CUgraphicsMapResourceFlags_enum(1);
+}
+impl CUgraphicsMapResourceFlags_enum {
+ pub const CU_GRAPHICS_MAP_RESOURCE_FLAGS_WRITE_DISCARD: CUgraphicsMapResourceFlags_enum =
+ CUgraphicsMapResourceFlags_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphicsMapResourceFlags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphicsMapResourceFlags_enum as CUgraphicsMapResourceFlags;
+impl CUarray_cubemap_face_enum {
+ pub const CU_CUBEMAP_FACE_POSITIVE_X: CUarray_cubemap_face_enum = CUarray_cubemap_face_enum(0);
+}
+impl CUarray_cubemap_face_enum {
+ pub const CU_CUBEMAP_FACE_NEGATIVE_X: CUarray_cubemap_face_enum = CUarray_cubemap_face_enum(1);
+}
+impl CUarray_cubemap_face_enum {
+ pub const CU_CUBEMAP_FACE_POSITIVE_Y: CUarray_cubemap_face_enum = CUarray_cubemap_face_enum(2);
+}
+impl CUarray_cubemap_face_enum {
+ pub const CU_CUBEMAP_FACE_NEGATIVE_Y: CUarray_cubemap_face_enum = CUarray_cubemap_face_enum(3);
+}
+impl CUarray_cubemap_face_enum {
+ pub const CU_CUBEMAP_FACE_POSITIVE_Z: CUarray_cubemap_face_enum = CUarray_cubemap_face_enum(4);
+}
+impl CUarray_cubemap_face_enum {
+ pub const CU_CUBEMAP_FACE_NEGATIVE_Z: CUarray_cubemap_face_enum = CUarray_cubemap_face_enum(5);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUarray_cubemap_face_enum(pub ::std::os::raw::c_uint);
+pub use self::CUarray_cubemap_face_enum as CUarray_cubemap_face;
+impl CUlimit_enum {
+ pub const CU_LIMIT_STACK_SIZE: CUlimit_enum = CUlimit_enum(0);
+}
+impl CUlimit_enum {
+ pub const CU_LIMIT_PRINTF_FIFO_SIZE: CUlimit_enum = CUlimit_enum(1);
+}
+impl CUlimit_enum {
+ pub const CU_LIMIT_MALLOC_HEAP_SIZE: CUlimit_enum = CUlimit_enum(2);
+}
+impl CUlimit_enum {
+ pub const CU_LIMIT_DEV_RUNTIME_SYNC_DEPTH: CUlimit_enum = CUlimit_enum(3);
+}
+impl CUlimit_enum {
+ pub const CU_LIMIT_DEV_RUNTIME_PENDING_LAUNCH_COUNT: CUlimit_enum = CUlimit_enum(4);
+}
+impl CUlimit_enum {
+ pub const CU_LIMIT_MAX_L2_FETCH_GRANULARITY: CUlimit_enum = CUlimit_enum(5);
+}
+impl CUlimit_enum {
+ pub const CU_LIMIT_PERSISTING_L2_CACHE_SIZE: CUlimit_enum = CUlimit_enum(6);
+}
+impl CUlimit_enum {
+ pub const CU_LIMIT_MAX: CUlimit_enum = CUlimit_enum(7);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUlimit_enum(pub ::std::os::raw::c_uint);
+pub use self::CUlimit_enum as CUlimit;
+impl CUresourcetype_enum {
+ pub const CU_RESOURCE_TYPE_ARRAY: CUresourcetype_enum = CUresourcetype_enum(0);
+}
+impl CUresourcetype_enum {
+ pub const CU_RESOURCE_TYPE_MIPMAPPED_ARRAY: CUresourcetype_enum = CUresourcetype_enum(1);
+}
+impl CUresourcetype_enum {
+ pub const CU_RESOURCE_TYPE_LINEAR: CUresourcetype_enum = CUresourcetype_enum(2);
+}
+impl CUresourcetype_enum {
+ pub const CU_RESOURCE_TYPE_PITCH2D: CUresourcetype_enum = CUresourcetype_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUresourcetype_enum(pub ::std::os::raw::c_uint);
+pub use self::CUresourcetype_enum as CUresourcetype;
+pub type CUhostFn =
+ ::std::option::Option<unsafe extern "C" fn(userData: *mut ::std::os::raw::c_void)>;
+impl CUaccessProperty_enum {
+ pub const CU_ACCESS_PROPERTY_NORMAL: CUaccessProperty_enum = CUaccessProperty_enum(0);
+}
+impl CUaccessProperty_enum {
+ pub const CU_ACCESS_PROPERTY_STREAMING: CUaccessProperty_enum = CUaccessProperty_enum(1);
+}
+impl CUaccessProperty_enum {
+ pub const CU_ACCESS_PROPERTY_PERSISTING: CUaccessProperty_enum = CUaccessProperty_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUaccessProperty_enum(pub ::std::os::raw::c_uint);
+pub use self::CUaccessProperty_enum as CUaccessProperty;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq)]
+pub struct CUaccessPolicyWindow_st {
+ pub base_ptr: *mut ::std::os::raw::c_void,
+ pub num_bytes: usize,
+ pub hitRatio: f32,
+ pub hitProp: CUaccessProperty,
+ pub missProp: CUaccessProperty,
+}
+pub type CUaccessPolicyWindow_v1 = CUaccessPolicyWindow_st;
+pub type CUaccessPolicyWindow = CUaccessPolicyWindow_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_KERNEL_NODE_PARAMS_st {
+ pub func: CUfunction,
+ pub gridDimX: ::std::os::raw::c_uint,
+ pub gridDimY: ::std::os::raw::c_uint,
+ pub gridDimZ: ::std::os::raw::c_uint,
+ pub blockDimX: ::std::os::raw::c_uint,
+ pub blockDimY: ::std::os::raw::c_uint,
+ pub blockDimZ: ::std::os::raw::c_uint,
+ pub sharedMemBytes: ::std::os::raw::c_uint,
+ pub kernelParams: *mut *mut ::std::os::raw::c_void,
+ pub extra: *mut *mut ::std::os::raw::c_void,
+}
+pub type CUDA_KERNEL_NODE_PARAMS_v1 = CUDA_KERNEL_NODE_PARAMS_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_KERNEL_NODE_PARAMS_v2_st {
+ pub func: CUfunction,
+ pub gridDimX: ::std::os::raw::c_uint,
+ pub gridDimY: ::std::os::raw::c_uint,
+ pub gridDimZ: ::std::os::raw::c_uint,
+ pub blockDimX: ::std::os::raw::c_uint,
+ pub blockDimY: ::std::os::raw::c_uint,
+ pub blockDimZ: ::std::os::raw::c_uint,
+ pub sharedMemBytes: ::std::os::raw::c_uint,
+ pub kernelParams: *mut *mut ::std::os::raw::c_void,
+ pub extra: *mut *mut ::std::os::raw::c_void,
+ pub kern: CUkernel,
+ pub ctx: CUcontext,
+}
+pub type CUDA_KERNEL_NODE_PARAMS_v2 = CUDA_KERNEL_NODE_PARAMS_v2_st;
+pub type CUDA_KERNEL_NODE_PARAMS = CUDA_KERNEL_NODE_PARAMS_v2;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_KERNEL_NODE_PARAMS_v3_st {
+ pub func: CUfunction,
+ pub gridDimX: ::std::os::raw::c_uint,
+ pub gridDimY: ::std::os::raw::c_uint,
+ pub gridDimZ: ::std::os::raw::c_uint,
+ pub blockDimX: ::std::os::raw::c_uint,
+ pub blockDimY: ::std::os::raw::c_uint,
+ pub blockDimZ: ::std::os::raw::c_uint,
+ pub sharedMemBytes: ::std::os::raw::c_uint,
+ pub kernelParams: *mut *mut ::std::os::raw::c_void,
+ pub extra: *mut *mut ::std::os::raw::c_void,
+ pub kern: CUkernel,
+ pub ctx: CUcontext,
+}
+pub type CUDA_KERNEL_NODE_PARAMS_v3 = CUDA_KERNEL_NODE_PARAMS_v3_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEMSET_NODE_PARAMS_st {
+ pub dst: CUdeviceptr,
+ pub pitch: usize,
+ pub value: ::std::os::raw::c_uint,
+ pub elementSize: ::std::os::raw::c_uint,
+ pub width: usize,
+ pub height: usize,
+}
+pub type CUDA_MEMSET_NODE_PARAMS_v1 = CUDA_MEMSET_NODE_PARAMS_st;
+pub type CUDA_MEMSET_NODE_PARAMS = CUDA_MEMSET_NODE_PARAMS_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEMSET_NODE_PARAMS_v2_st {
+ pub dst: CUdeviceptr,
+ pub pitch: usize,
+ pub value: ::std::os::raw::c_uint,
+ pub elementSize: ::std::os::raw::c_uint,
+ pub width: usize,
+ pub height: usize,
+ pub ctx: CUcontext,
+}
+pub type CUDA_MEMSET_NODE_PARAMS_v2 = CUDA_MEMSET_NODE_PARAMS_v2_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUDA_HOST_NODE_PARAMS_st {
+ pub fn_: CUhostFn,
+ pub userData: *mut ::std::os::raw::c_void,
+}
+pub type CUDA_HOST_NODE_PARAMS_v1 = CUDA_HOST_NODE_PARAMS_st;
+pub type CUDA_HOST_NODE_PARAMS = CUDA_HOST_NODE_PARAMS_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_HOST_NODE_PARAMS_v2_st {
+ pub fn_: CUhostFn,
+ pub userData: *mut ::std::os::raw::c_void,
+}
+pub type CUDA_HOST_NODE_PARAMS_v2 = CUDA_HOST_NODE_PARAMS_v2_st;
+impl CUgraphConditionalNodeType_enum {
+ pub const CU_GRAPH_COND_TYPE_IF: CUgraphConditionalNodeType_enum =
+ CUgraphConditionalNodeType_enum(0);
+}
+impl CUgraphConditionalNodeType_enum {
+ pub const CU_GRAPH_COND_TYPE_WHILE: CUgraphConditionalNodeType_enum =
+ CUgraphConditionalNodeType_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphConditionalNodeType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphConditionalNodeType_enum as CUgraphConditionalNodeType;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_CONDITIONAL_NODE_PARAMS {
+ pub handle: CUgraphConditionalHandle,
+ pub type_: CUgraphConditionalNodeType,
+ pub size: ::std::os::raw::c_uint,
+ pub phGraph_out: *mut CUgraph,
+ pub ctx: CUcontext,
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_KERNEL: CUgraphNodeType_enum = CUgraphNodeType_enum(0);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_MEMCPY: CUgraphNodeType_enum = CUgraphNodeType_enum(1);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_MEMSET: CUgraphNodeType_enum = CUgraphNodeType_enum(2);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_HOST: CUgraphNodeType_enum = CUgraphNodeType_enum(3);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_GRAPH: CUgraphNodeType_enum = CUgraphNodeType_enum(4);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_EMPTY: CUgraphNodeType_enum = CUgraphNodeType_enum(5);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_WAIT_EVENT: CUgraphNodeType_enum = CUgraphNodeType_enum(6);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_EVENT_RECORD: CUgraphNodeType_enum = CUgraphNodeType_enum(7);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_EXT_SEMAS_SIGNAL: CUgraphNodeType_enum = CUgraphNodeType_enum(8);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_EXT_SEMAS_WAIT: CUgraphNodeType_enum = CUgraphNodeType_enum(9);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_MEM_ALLOC: CUgraphNodeType_enum = CUgraphNodeType_enum(10);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_MEM_FREE: CUgraphNodeType_enum = CUgraphNodeType_enum(11);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_BATCH_MEM_OP: CUgraphNodeType_enum = CUgraphNodeType_enum(12);
+}
+impl CUgraphNodeType_enum {
+ pub const CU_GRAPH_NODE_TYPE_CONDITIONAL: CUgraphNodeType_enum = CUgraphNodeType_enum(13);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphNodeType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphNodeType_enum as CUgraphNodeType;
+impl CUgraphDependencyType_enum {
+ pub const CU_GRAPH_DEPENDENCY_TYPE_DEFAULT: CUgraphDependencyType_enum =
+ CUgraphDependencyType_enum(0);
+}
+impl CUgraphDependencyType_enum {
+ pub const CU_GRAPH_DEPENDENCY_TYPE_PROGRAMMATIC: CUgraphDependencyType_enum =
+ CUgraphDependencyType_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphDependencyType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphDependencyType_enum as CUgraphDependencyType;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUgraphEdgeData_st {
+ pub from_port: ::std::os::raw::c_uchar,
+ pub to_port: ::std::os::raw::c_uchar,
+ pub type_: ::std::os::raw::c_uchar,
+ pub reserved: [::std::os::raw::c_uchar; 5usize],
+}
+pub type CUgraphEdgeData = CUgraphEdgeData_st;
+impl CUgraphInstantiateResult_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_SUCCESS: CUgraphInstantiateResult_enum =
+ CUgraphInstantiateResult_enum(0);
+}
+impl CUgraphInstantiateResult_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_ERROR: CUgraphInstantiateResult_enum =
+ CUgraphInstantiateResult_enum(1);
+}
+impl CUgraphInstantiateResult_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_INVALID_STRUCTURE: CUgraphInstantiateResult_enum =
+ CUgraphInstantiateResult_enum(2);
+}
+impl CUgraphInstantiateResult_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_NODE_OPERATION_NOT_SUPPORTED: CUgraphInstantiateResult_enum =
+ CUgraphInstantiateResult_enum(3);
+}
+impl CUgraphInstantiateResult_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_MULTIPLE_CTXS_NOT_SUPPORTED: CUgraphInstantiateResult_enum =
+ CUgraphInstantiateResult_enum(4);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphInstantiateResult_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphInstantiateResult_enum as CUgraphInstantiateResult;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_GRAPH_INSTANTIATE_PARAMS_st {
+ pub flags: cuuint64_t,
+ pub hUploadStream: CUstream,
+ pub hErrNode_out: CUgraphNode,
+ pub result_out: CUgraphInstantiateResult,
+}
+pub type CUDA_GRAPH_INSTANTIATE_PARAMS = CUDA_GRAPH_INSTANTIATE_PARAMS_st;
+impl CUsynchronizationPolicy_enum {
+ pub const CU_SYNC_POLICY_AUTO: CUsynchronizationPolicy_enum = CUsynchronizationPolicy_enum(1);
+}
+impl CUsynchronizationPolicy_enum {
+ pub const CU_SYNC_POLICY_SPIN: CUsynchronizationPolicy_enum = CUsynchronizationPolicy_enum(2);
+}
+impl CUsynchronizationPolicy_enum {
+ pub const CU_SYNC_POLICY_YIELD: CUsynchronizationPolicy_enum = CUsynchronizationPolicy_enum(3);
+}
+impl CUsynchronizationPolicy_enum {
+ pub const CU_SYNC_POLICY_BLOCKING_SYNC: CUsynchronizationPolicy_enum =
+ CUsynchronizationPolicy_enum(4);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUsynchronizationPolicy_enum(pub ::std::os::raw::c_uint);
+pub use self::CUsynchronizationPolicy_enum as CUsynchronizationPolicy;
+impl CUclusterSchedulingPolicy_enum {
+ pub const CU_CLUSTER_SCHEDULING_POLICY_DEFAULT: CUclusterSchedulingPolicy_enum =
+ CUclusterSchedulingPolicy_enum(0);
+}
+impl CUclusterSchedulingPolicy_enum {
+ pub const CU_CLUSTER_SCHEDULING_POLICY_SPREAD: CUclusterSchedulingPolicy_enum =
+ CUclusterSchedulingPolicy_enum(1);
+}
+impl CUclusterSchedulingPolicy_enum {
+ pub const CU_CLUSTER_SCHEDULING_POLICY_LOAD_BALANCING: CUclusterSchedulingPolicy_enum =
+ CUclusterSchedulingPolicy_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUclusterSchedulingPolicy_enum(pub ::std::os::raw::c_uint);
+pub use self::CUclusterSchedulingPolicy_enum as CUclusterSchedulingPolicy;
+impl CUlaunchMemSyncDomain_enum {
+ pub const CU_LAUNCH_MEM_SYNC_DOMAIN_DEFAULT: CUlaunchMemSyncDomain_enum =
+ CUlaunchMemSyncDomain_enum(0);
+}
+impl CUlaunchMemSyncDomain_enum {
+ pub const CU_LAUNCH_MEM_SYNC_DOMAIN_REMOTE: CUlaunchMemSyncDomain_enum =
+ CUlaunchMemSyncDomain_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUlaunchMemSyncDomain_enum(pub ::std::os::raw::c_uint);
+pub use self::CUlaunchMemSyncDomain_enum as CUlaunchMemSyncDomain;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUlaunchMemSyncDomainMap_st {
+ pub default_: ::std::os::raw::c_uchar,
+ pub remote: ::std::os::raw::c_uchar,
+}
+pub type CUlaunchMemSyncDomainMap = CUlaunchMemSyncDomainMap_st;
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_IGNORE: CUlaunchAttributeID_enum = CUlaunchAttributeID_enum(0);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_ACCESS_POLICY_WINDOW: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(1);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_COOPERATIVE: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(2);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_SYNCHRONIZATION_POLICY: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(3);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_CLUSTER_DIMENSION: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(4);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(5);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_PROGRAMMATIC_STREAM_SERIALIZATION: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(6);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_PROGRAMMATIC_EVENT: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(7);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_PRIORITY: CUlaunchAttributeID_enum = CUlaunchAttributeID_enum(8);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(9);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_MEM_SYNC_DOMAIN: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(10);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_LAUNCH_COMPLETION_EVENT: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(12);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_DEVICE_UPDATABLE_KERNEL_NODE: CUlaunchAttributeID_enum =
+ CUlaunchAttributeID_enum(13);
+}
+impl CUlaunchAttributeID_enum {
+ pub const CU_LAUNCH_ATTRIBUTE_MAX: CUlaunchAttributeID_enum = CUlaunchAttributeID_enum(14);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUlaunchAttributeID_enum(pub ::std::os::raw::c_uint);
+pub use self::CUlaunchAttributeID_enum as CUlaunchAttributeID;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUlaunchAttributeValue_union {
+ pub pad: [::std::os::raw::c_char; 64usize],
+ pub accessPolicyWindow: CUaccessPolicyWindow,
+ pub cooperative: ::std::os::raw::c_int,
+ pub syncPolicy: CUsynchronizationPolicy,
+ pub clusterDim: CUlaunchAttributeValue_union__bindgen_ty_1,
+ pub clusterSchedulingPolicyPreference: CUclusterSchedulingPolicy,
+ pub programmaticStreamSerializationAllowed: ::std::os::raw::c_int,
+ pub programmaticEvent: CUlaunchAttributeValue_union__bindgen_ty_2,
+ pub launchCompletionEvent: CUlaunchAttributeValue_union__bindgen_ty_3,
+ pub priority: ::std::os::raw::c_int,
+ pub memSyncDomainMap: CUlaunchMemSyncDomainMap,
+ pub memSyncDomain: CUlaunchMemSyncDomain,
+ pub deviceUpdatableKernelNode: CUlaunchAttributeValue_union__bindgen_ty_4,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUlaunchAttributeValue_union__bindgen_ty_1 {
+ pub x: ::std::os::raw::c_uint,
+ pub y: ::std::os::raw::c_uint,
+ pub z: ::std::os::raw::c_uint,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUlaunchAttributeValue_union__bindgen_ty_2 {
+ pub event: CUevent,
+ pub flags: ::std::os::raw::c_int,
+ pub triggerAtBlockStart: ::std::os::raw::c_int,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUlaunchAttributeValue_union__bindgen_ty_3 {
+ pub event: CUevent,
+ pub flags: ::std::os::raw::c_int,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUlaunchAttributeValue_union__bindgen_ty_4 {
+ pub deviceUpdatable: ::std::os::raw::c_int,
+ pub devNode: CUgraphDeviceNode,
+}
+pub type CUlaunchAttributeValue = CUlaunchAttributeValue_union;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUlaunchAttribute_st {
+ pub id: CUlaunchAttributeID,
+ pub pad: [::std::os::raw::c_char; 4usize],
+ pub value: CUlaunchAttributeValue,
+}
+pub type CUlaunchAttribute = CUlaunchAttribute_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUlaunchConfig_st {
+ pub gridDimX: ::std::os::raw::c_uint,
+ pub gridDimY: ::std::os::raw::c_uint,
+ pub gridDimZ: ::std::os::raw::c_uint,
+ pub blockDimX: ::std::os::raw::c_uint,
+ pub blockDimY: ::std::os::raw::c_uint,
+ pub blockDimZ: ::std::os::raw::c_uint,
+ pub sharedMemBytes: ::std::os::raw::c_uint,
+ pub hStream: CUstream,
+ pub attrs: *mut CUlaunchAttribute,
+ pub numAttrs: ::std::os::raw::c_uint,
+}
+pub type CUlaunchConfig = CUlaunchConfig_st;
+pub use self::CUlaunchAttributeID as CUkernelNodeAttrID;
+pub type CUkernelNodeAttrValue_v1 = CUlaunchAttributeValue;
+pub type CUkernelNodeAttrValue = CUkernelNodeAttrValue_v1;
+impl CUstreamCaptureStatus_enum {
+ pub const CU_STREAM_CAPTURE_STATUS_NONE: CUstreamCaptureStatus_enum =
+ CUstreamCaptureStatus_enum(0);
+}
+impl CUstreamCaptureStatus_enum {
+ pub const CU_STREAM_CAPTURE_STATUS_ACTIVE: CUstreamCaptureStatus_enum =
+ CUstreamCaptureStatus_enum(1);
+}
+impl CUstreamCaptureStatus_enum {
+ pub const CU_STREAM_CAPTURE_STATUS_INVALIDATED: CUstreamCaptureStatus_enum =
+ CUstreamCaptureStatus_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUstreamCaptureStatus_enum(pub ::std::os::raw::c_uint);
+pub use self::CUstreamCaptureStatus_enum as CUstreamCaptureStatus;
+impl CUstreamCaptureMode_enum {
+ pub const CU_STREAM_CAPTURE_MODE_GLOBAL: CUstreamCaptureMode_enum = CUstreamCaptureMode_enum(0);
+}
+impl CUstreamCaptureMode_enum {
+ pub const CU_STREAM_CAPTURE_MODE_THREAD_LOCAL: CUstreamCaptureMode_enum =
+ CUstreamCaptureMode_enum(1);
+}
+impl CUstreamCaptureMode_enum {
+ pub const CU_STREAM_CAPTURE_MODE_RELAXED: CUstreamCaptureMode_enum =
+ CUstreamCaptureMode_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUstreamCaptureMode_enum(pub ::std::os::raw::c_uint);
+pub use self::CUlaunchAttributeID as CUstreamAttrID;
+pub use self::CUstreamCaptureMode_enum as CUstreamCaptureMode;
+pub type CUstreamAttrValue_v1 = CUlaunchAttributeValue;
+pub type CUstreamAttrValue = CUstreamAttrValue_v1;
+impl CUdriverProcAddress_flags_enum {
+ pub const CU_GET_PROC_ADDRESS_DEFAULT: CUdriverProcAddress_flags_enum =
+ CUdriverProcAddress_flags_enum(0);
+}
+impl CUdriverProcAddress_flags_enum {
+ pub const CU_GET_PROC_ADDRESS_LEGACY_STREAM: CUdriverProcAddress_flags_enum =
+ CUdriverProcAddress_flags_enum(1);
+}
+impl CUdriverProcAddress_flags_enum {
+ pub const CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM: CUdriverProcAddress_flags_enum =
+ CUdriverProcAddress_flags_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUdriverProcAddress_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUdriverProcAddress_flags_enum as CUdriverProcAddress_flags;
+impl CUdriverProcAddressQueryResult_enum {
+ pub const CU_GET_PROC_ADDRESS_SUCCESS: CUdriverProcAddressQueryResult_enum =
+ CUdriverProcAddressQueryResult_enum(0);
+}
+impl CUdriverProcAddressQueryResult_enum {
+ pub const CU_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND: CUdriverProcAddressQueryResult_enum =
+ CUdriverProcAddressQueryResult_enum(1);
+}
+impl CUdriverProcAddressQueryResult_enum {
+ pub const CU_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT: CUdriverProcAddressQueryResult_enum =
+ CUdriverProcAddressQueryResult_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUdriverProcAddressQueryResult_enum(pub ::std::os::raw::c_uint);
+pub use self::CUdriverProcAddressQueryResult_enum as CUdriverProcAddressQueryResult;
+impl CUexecAffinityType_enum {
+ pub const CU_EXEC_AFFINITY_TYPE_SM_COUNT: CUexecAffinityType_enum = CUexecAffinityType_enum(0);
+}
+impl CUexecAffinityType_enum {
+ pub const CU_EXEC_AFFINITY_TYPE_MAX: CUexecAffinityType_enum = CUexecAffinityType_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUexecAffinityType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUexecAffinityType_enum as CUexecAffinityType;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUexecAffinitySmCount_st {
+ pub val: ::std::os::raw::c_uint,
+}
+pub type CUexecAffinitySmCount_v1 = CUexecAffinitySmCount_st;
+pub type CUexecAffinitySmCount = CUexecAffinitySmCount_v1;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUexecAffinityParam_st {
+ pub type_: CUexecAffinityType,
+ pub param: CUexecAffinityParam_st__bindgen_ty_1,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUexecAffinityParam_st__bindgen_ty_1 {
+ pub smCount: CUexecAffinitySmCount,
+}
+pub type CUexecAffinityParam_v1 = CUexecAffinityParam_st;
+pub type CUexecAffinityParam = CUexecAffinityParam_v1;
+impl CUlibraryOption_enum {
+ pub const CU_LIBRARY_HOST_UNIVERSAL_FUNCTION_AND_DATA_TABLE: CUlibraryOption_enum =
+ CUlibraryOption_enum(0);
+}
+impl CUlibraryOption_enum {
+ pub const CU_LIBRARY_BINARY_IS_PRESERVED: CUlibraryOption_enum = CUlibraryOption_enum(1);
+}
+impl CUlibraryOption_enum {
+ pub const CU_LIBRARY_NUM_OPTIONS: CUlibraryOption_enum = CUlibraryOption_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUlibraryOption_enum(pub ::std::os::raw::c_uint);
+pub use self::CUlibraryOption_enum as CUlibraryOption;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUlibraryHostUniversalFunctionAndDataTable_st {
+ pub functionTable: *mut ::std::os::raw::c_void,
+ pub functionWindowSize: usize,
+ pub dataTable: *mut ::std::os::raw::c_void,
+ pub dataWindowSize: usize,
+}
+pub type CUlibraryHostUniversalFunctionAndDataTable = CUlibraryHostUniversalFunctionAndDataTable_st;
+impl cudaError_enum {
+ pub const CUDA_SUCCESS: cudaError_enum = cudaError_enum(0);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_VALUE: cudaError_enum = cudaError_enum(1);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_OUT_OF_MEMORY: cudaError_enum = cudaError_enum(2);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NOT_INITIALIZED: cudaError_enum = cudaError_enum(3);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_DEINITIALIZED: cudaError_enum = cudaError_enum(4);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_PROFILER_DISABLED: cudaError_enum = cudaError_enum(5);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_PROFILER_NOT_INITIALIZED: cudaError_enum = cudaError_enum(6);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_PROFILER_ALREADY_STARTED: cudaError_enum = cudaError_enum(7);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_PROFILER_ALREADY_STOPPED: cudaError_enum = cudaError_enum(8);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STUB_LIBRARY: cudaError_enum = cudaError_enum(34);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_DEVICE_UNAVAILABLE: cudaError_enum = cudaError_enum(46);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NO_DEVICE: cudaError_enum = cudaError_enum(100);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_DEVICE: cudaError_enum = cudaError_enum(101);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_DEVICE_NOT_LICENSED: cudaError_enum = cudaError_enum(102);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_IMAGE: cudaError_enum = cudaError_enum(200);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_CONTEXT: cudaError_enum = cudaError_enum(201);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_CONTEXT_ALREADY_CURRENT: cudaError_enum = cudaError_enum(202);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_MAP_FAILED: cudaError_enum = cudaError_enum(205);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_UNMAP_FAILED: cudaError_enum = cudaError_enum(206);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_ARRAY_IS_MAPPED: cudaError_enum = cudaError_enum(207);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_ALREADY_MAPPED: cudaError_enum = cudaError_enum(208);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NO_BINARY_FOR_GPU: cudaError_enum = cudaError_enum(209);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_ALREADY_ACQUIRED: cudaError_enum = cudaError_enum(210);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NOT_MAPPED: cudaError_enum = cudaError_enum(211);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NOT_MAPPED_AS_ARRAY: cudaError_enum = cudaError_enum(212);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NOT_MAPPED_AS_POINTER: cudaError_enum = cudaError_enum(213);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_ECC_UNCORRECTABLE: cudaError_enum = cudaError_enum(214);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_UNSUPPORTED_LIMIT: cudaError_enum = cudaError_enum(215);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_CONTEXT_ALREADY_IN_USE: cudaError_enum = cudaError_enum(216);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_PEER_ACCESS_UNSUPPORTED: cudaError_enum = cudaError_enum(217);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_PTX: cudaError_enum = cudaError_enum(218);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_GRAPHICS_CONTEXT: cudaError_enum = cudaError_enum(219);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NVLINK_UNCORRECTABLE: cudaError_enum = cudaError_enum(220);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_JIT_COMPILER_NOT_FOUND: cudaError_enum = cudaError_enum(221);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_UNSUPPORTED_PTX_VERSION: cudaError_enum = cudaError_enum(222);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_JIT_COMPILATION_DISABLED: cudaError_enum = cudaError_enum(223);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_UNSUPPORTED_EXEC_AFFINITY: cudaError_enum = cudaError_enum(224);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_UNSUPPORTED_DEVSIDE_SYNC: cudaError_enum = cudaError_enum(225);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_SOURCE: cudaError_enum = cudaError_enum(300);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_FILE_NOT_FOUND: cudaError_enum = cudaError_enum(301);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND: cudaError_enum = cudaError_enum(302);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_SHARED_OBJECT_INIT_FAILED: cudaError_enum = cudaError_enum(303);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_OPERATING_SYSTEM: cudaError_enum = cudaError_enum(304);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_HANDLE: cudaError_enum = cudaError_enum(400);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_ILLEGAL_STATE: cudaError_enum = cudaError_enum(401);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_LOSSY_QUERY: cudaError_enum = cudaError_enum(402);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NOT_FOUND: cudaError_enum = cudaError_enum(500);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NOT_READY: cudaError_enum = cudaError_enum(600);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_ILLEGAL_ADDRESS: cudaError_enum = cudaError_enum(700);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES: cudaError_enum = cudaError_enum(701);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_LAUNCH_TIMEOUT: cudaError_enum = cudaError_enum(702);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING: cudaError_enum = cudaError_enum(703);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED: cudaError_enum = cudaError_enum(704);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_PEER_ACCESS_NOT_ENABLED: cudaError_enum = cudaError_enum(705);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE: cudaError_enum = cudaError_enum(708);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_CONTEXT_IS_DESTROYED: cudaError_enum = cudaError_enum(709);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_ASSERT: cudaError_enum = cudaError_enum(710);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_TOO_MANY_PEERS: cudaError_enum = cudaError_enum(711);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED: cudaError_enum = cudaError_enum(712);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED: cudaError_enum = cudaError_enum(713);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_HARDWARE_STACK_ERROR: cudaError_enum = cudaError_enum(714);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_ILLEGAL_INSTRUCTION: cudaError_enum = cudaError_enum(715);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_MISALIGNED_ADDRESS: cudaError_enum = cudaError_enum(716);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_ADDRESS_SPACE: cudaError_enum = cudaError_enum(717);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_PC: cudaError_enum = cudaError_enum(718);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_LAUNCH_FAILED: cudaError_enum = cudaError_enum(719);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_COOPERATIVE_LAUNCH_TOO_LARGE: cudaError_enum = cudaError_enum(720);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NOT_PERMITTED: cudaError_enum = cudaError_enum(800);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_NOT_SUPPORTED: cudaError_enum = cudaError_enum(801);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_SYSTEM_NOT_READY: cudaError_enum = cudaError_enum(802);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_SYSTEM_DRIVER_MISMATCH: cudaError_enum = cudaError_enum(803);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_COMPAT_NOT_SUPPORTED_ON_DEVICE: cudaError_enum = cudaError_enum(804);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_MPS_CONNECTION_FAILED: cudaError_enum = cudaError_enum(805);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_MPS_RPC_FAILURE: cudaError_enum = cudaError_enum(806);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_MPS_SERVER_NOT_READY: cudaError_enum = cudaError_enum(807);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_MPS_MAX_CLIENTS_REACHED: cudaError_enum = cudaError_enum(808);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_MPS_MAX_CONNECTIONS_REACHED: cudaError_enum = cudaError_enum(809);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_MPS_CLIENT_TERMINATED: cudaError_enum = cudaError_enum(810);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_CDP_NOT_SUPPORTED: cudaError_enum = cudaError_enum(811);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_CDP_VERSION_MISMATCH: cudaError_enum = cudaError_enum(812);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STREAM_CAPTURE_UNSUPPORTED: cudaError_enum = cudaError_enum(900);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STREAM_CAPTURE_INVALIDATED: cudaError_enum = cudaError_enum(901);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STREAM_CAPTURE_MERGE: cudaError_enum = cudaError_enum(902);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STREAM_CAPTURE_UNMATCHED: cudaError_enum = cudaError_enum(903);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STREAM_CAPTURE_UNJOINED: cudaError_enum = cudaError_enum(904);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STREAM_CAPTURE_ISOLATION: cudaError_enum = cudaError_enum(905);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STREAM_CAPTURE_IMPLICIT: cudaError_enum = cudaError_enum(906);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_CAPTURED_EVENT: cudaError_enum = cudaError_enum(907);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_STREAM_CAPTURE_WRONG_THREAD: cudaError_enum = cudaError_enum(908);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_TIMEOUT: cudaError_enum = cudaError_enum(909);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_GRAPH_EXEC_UPDATE_FAILURE: cudaError_enum = cudaError_enum(910);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_EXTERNAL_DEVICE: cudaError_enum = cudaError_enum(911);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_CLUSTER_SIZE: cudaError_enum = cudaError_enum(912);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_FUNCTION_NOT_LOADED: cudaError_enum = cudaError_enum(913);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_RESOURCE_TYPE: cudaError_enum = cudaError_enum(914);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_INVALID_RESOURCE_CONFIGURATION: cudaError_enum = cudaError_enum(915);
+}
+impl cudaError_enum {
+ pub const CUDA_ERROR_UNKNOWN: cudaError_enum = cudaError_enum(999);
+}
+#[repr(transparent)]
+#[must_use]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct cudaError_enum(pub ::std::os::raw::c_uint);
+pub use self::cudaError_enum as CUresult;
+impl CUdevice_P2PAttribute_enum {
+ pub const CU_DEVICE_P2P_ATTRIBUTE_PERFORMANCE_RANK: CUdevice_P2PAttribute_enum =
+ CUdevice_P2PAttribute_enum(1);
+}
+impl CUdevice_P2PAttribute_enum {
+ pub const CU_DEVICE_P2P_ATTRIBUTE_ACCESS_SUPPORTED: CUdevice_P2PAttribute_enum =
+ CUdevice_P2PAttribute_enum(2);
+}
+impl CUdevice_P2PAttribute_enum {
+ pub const CU_DEVICE_P2P_ATTRIBUTE_NATIVE_ATOMIC_SUPPORTED: CUdevice_P2PAttribute_enum =
+ CUdevice_P2PAttribute_enum(3);
+}
+impl CUdevice_P2PAttribute_enum {
+ pub const CU_DEVICE_P2P_ATTRIBUTE_ACCESS_ACCESS_SUPPORTED: CUdevice_P2PAttribute_enum =
+ CUdevice_P2PAttribute_enum(4);
+}
+impl CUdevice_P2PAttribute_enum {
+ pub const CU_DEVICE_P2P_ATTRIBUTE_CUDA_ARRAY_ACCESS_SUPPORTED: CUdevice_P2PAttribute_enum =
+ CUdevice_P2PAttribute_enum(4);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUdevice_P2PAttribute_enum(pub ::std::os::raw::c_uint);
+pub use self::CUdevice_P2PAttribute_enum as CUdevice_P2PAttribute;
+pub type CUstreamCallback = ::std::option::Option<
+ unsafe extern "C" fn(
+ hStream: CUstream,
+ status: CUresult,
+ userData: *mut ::std::os::raw::c_void,
+ ),
+>;
+pub type CUoccupancyB2DSize =
+ ::std::option::Option<unsafe extern "C" fn(blockSize: ::std::os::raw::c_int) -> usize>;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEMCPY2D_st {
+ pub srcXInBytes: usize,
+ pub srcY: usize,
+ pub srcMemoryType: CUmemorytype,
+ pub srcHost: *const ::std::os::raw::c_void,
+ pub srcDevice: CUdeviceptr,
+ pub srcArray: CUarray,
+ pub srcPitch: usize,
+ pub dstXInBytes: usize,
+ pub dstY: usize,
+ pub dstMemoryType: CUmemorytype,
+ pub dstHost: *mut ::std::os::raw::c_void,
+ pub dstDevice: CUdeviceptr,
+ pub dstArray: CUarray,
+ pub dstPitch: usize,
+ pub WidthInBytes: usize,
+ pub Height: usize,
+}
+pub type CUDA_MEMCPY2D_v2 = CUDA_MEMCPY2D_st;
+pub type CUDA_MEMCPY2D = CUDA_MEMCPY2D_v2;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEMCPY3D_st {
+ pub srcXInBytes: usize,
+ pub srcY: usize,
+ pub srcZ: usize,
+ pub srcLOD: usize,
+ pub srcMemoryType: CUmemorytype,
+ pub srcHost: *const ::std::os::raw::c_void,
+ pub srcDevice: CUdeviceptr,
+ pub srcArray: CUarray,
+ pub reserved0: *mut ::std::os::raw::c_void,
+ pub srcPitch: usize,
+ pub srcHeight: usize,
+ pub dstXInBytes: usize,
+ pub dstY: usize,
+ pub dstZ: usize,
+ pub dstLOD: usize,
+ pub dstMemoryType: CUmemorytype,
+ pub dstHost: *mut ::std::os::raw::c_void,
+ pub dstDevice: CUdeviceptr,
+ pub dstArray: CUarray,
+ pub reserved1: *mut ::std::os::raw::c_void,
+ pub dstPitch: usize,
+ pub dstHeight: usize,
+ pub WidthInBytes: usize,
+ pub Height: usize,
+ pub Depth: usize,
+}
+pub type CUDA_MEMCPY3D_v2 = CUDA_MEMCPY3D_st;
+pub type CUDA_MEMCPY3D = CUDA_MEMCPY3D_v2;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEMCPY3D_PEER_st {
+ pub srcXInBytes: usize,
+ pub srcY: usize,
+ pub srcZ: usize,
+ pub srcLOD: usize,
+ pub srcMemoryType: CUmemorytype,
+ pub srcHost: *const ::std::os::raw::c_void,
+ pub srcDevice: CUdeviceptr,
+ pub srcArray: CUarray,
+ pub srcContext: CUcontext,
+ pub srcPitch: usize,
+ pub srcHeight: usize,
+ pub dstXInBytes: usize,
+ pub dstY: usize,
+ pub dstZ: usize,
+ pub dstLOD: usize,
+ pub dstMemoryType: CUmemorytype,
+ pub dstHost: *mut ::std::os::raw::c_void,
+ pub dstDevice: CUdeviceptr,
+ pub dstArray: CUarray,
+ pub dstContext: CUcontext,
+ pub dstPitch: usize,
+ pub dstHeight: usize,
+ pub WidthInBytes: usize,
+ pub Height: usize,
+ pub Depth: usize,
+}
+pub type CUDA_MEMCPY3D_PEER_v1 = CUDA_MEMCPY3D_PEER_st;
+pub type CUDA_MEMCPY3D_PEER = CUDA_MEMCPY3D_PEER_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEMCPY_NODE_PARAMS_st {
+ pub flags: ::std::os::raw::c_int,
+ pub reserved: ::std::os::raw::c_int,
+ pub copyCtx: CUcontext,
+ pub copyParams: CUDA_MEMCPY3D,
+}
+pub type CUDA_MEMCPY_NODE_PARAMS = CUDA_MEMCPY_NODE_PARAMS_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_ARRAY_DESCRIPTOR_st {
+ pub Width: usize,
+ pub Height: usize,
+ pub Format: CUarray_format,
+ pub NumChannels: ::std::os::raw::c_uint,
+}
+pub type CUDA_ARRAY_DESCRIPTOR_v2 = CUDA_ARRAY_DESCRIPTOR_st;
+pub type CUDA_ARRAY_DESCRIPTOR = CUDA_ARRAY_DESCRIPTOR_v2;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_ARRAY3D_DESCRIPTOR_st {
+ pub Width: usize,
+ pub Height: usize,
+ pub Depth: usize,
+ pub Format: CUarray_format,
+ pub NumChannels: ::std::os::raw::c_uint,
+ pub Flags: ::std::os::raw::c_uint,
+}
+pub type CUDA_ARRAY3D_DESCRIPTOR_v2 = CUDA_ARRAY3D_DESCRIPTOR_st;
+pub type CUDA_ARRAY3D_DESCRIPTOR = CUDA_ARRAY3D_DESCRIPTOR_v2;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_ARRAY_SPARSE_PROPERTIES_st {
+ pub tileExtent: CUDA_ARRAY_SPARSE_PROPERTIES_st__bindgen_ty_1,
+ pub miptailFirstLevel: ::std::os::raw::c_uint,
+ pub miptailSize: ::std::os::raw::c_ulonglong,
+ pub flags: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 4usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_ARRAY_SPARSE_PROPERTIES_st__bindgen_ty_1 {
+ pub width: ::std::os::raw::c_uint,
+ pub height: ::std::os::raw::c_uint,
+ pub depth: ::std::os::raw::c_uint,
+}
+pub type CUDA_ARRAY_SPARSE_PROPERTIES_v1 = CUDA_ARRAY_SPARSE_PROPERTIES_st;
+pub type CUDA_ARRAY_SPARSE_PROPERTIES = CUDA_ARRAY_SPARSE_PROPERTIES_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_ARRAY_MEMORY_REQUIREMENTS_st {
+ pub size: usize,
+ pub alignment: usize,
+ pub reserved: [::std::os::raw::c_uint; 4usize],
+}
+pub type CUDA_ARRAY_MEMORY_REQUIREMENTS_v1 = CUDA_ARRAY_MEMORY_REQUIREMENTS_st;
+pub type CUDA_ARRAY_MEMORY_REQUIREMENTS = CUDA_ARRAY_MEMORY_REQUIREMENTS_v1;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUDA_RESOURCE_DESC_st {
+ pub resType: CUresourcetype,
+ pub res: CUDA_RESOURCE_DESC_st__bindgen_ty_1,
+ pub flags: ::std::os::raw::c_uint,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUDA_RESOURCE_DESC_st__bindgen_ty_1 {
+ pub array: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_1,
+ pub mipmap: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_2,
+ pub linear: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_3,
+ pub pitch2D: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_4,
+ pub reserved: CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_5,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_1 {
+ pub hArray: CUarray,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_2 {
+ pub hMipmappedArray: CUmipmappedArray,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_3 {
+ pub devPtr: CUdeviceptr,
+ pub format: CUarray_format,
+ pub numChannels: ::std::os::raw::c_uint,
+ pub sizeInBytes: usize,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_4 {
+ pub devPtr: CUdeviceptr,
+ pub format: CUarray_format,
+ pub numChannels: ::std::os::raw::c_uint,
+ pub width: usize,
+ pub height: usize,
+ pub pitchInBytes: usize,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_RESOURCE_DESC_st__bindgen_ty_1__bindgen_ty_5 {
+ pub reserved: [::std::os::raw::c_int; 32usize],
+}
+pub type CUDA_RESOURCE_DESC_v1 = CUDA_RESOURCE_DESC_st;
+pub type CUDA_RESOURCE_DESC = CUDA_RESOURCE_DESC_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq)]
+pub struct CUDA_TEXTURE_DESC_st {
+ pub addressMode: [CUaddress_mode; 3usize],
+ pub filterMode: CUfilter_mode,
+ pub flags: ::std::os::raw::c_uint,
+ pub maxAnisotropy: ::std::os::raw::c_uint,
+ pub mipmapFilterMode: CUfilter_mode,
+ pub mipmapLevelBias: f32,
+ pub minMipmapLevelClamp: f32,
+ pub maxMipmapLevelClamp: f32,
+ pub borderColor: [f32; 4usize],
+ pub reserved: [::std::os::raw::c_int; 12usize],
+}
+pub type CUDA_TEXTURE_DESC_v1 = CUDA_TEXTURE_DESC_st;
+pub type CUDA_TEXTURE_DESC = CUDA_TEXTURE_DESC_v1;
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_NONE: CUresourceViewFormat_enum = CUresourceViewFormat_enum(0);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_1X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(1);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_2X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(2);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_4X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(3);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_1X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(4);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_2X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(5);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_4X8: CUresourceViewFormat_enum = CUresourceViewFormat_enum(6);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_1X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(7);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_2X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(8);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_4X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(9);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_1X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(10);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_2X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(11);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_4X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(12);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_1X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(13);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_2X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(14);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UINT_4X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(15);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_1X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(16);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_2X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(17);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SINT_4X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(18);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_FLOAT_1X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(19);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_FLOAT_2X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(20);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_FLOAT_4X16: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(21);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_FLOAT_1X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(22);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_FLOAT_2X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(23);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_FLOAT_4X32: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(24);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC1: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(25);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC2: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(26);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC3: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(27);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC4: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(28);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SIGNED_BC4: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(29);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC5: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(30);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SIGNED_BC5: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(31);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC6H: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(32);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_SIGNED_BC6H: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(33);
+}
+impl CUresourceViewFormat_enum {
+ pub const CU_RES_VIEW_FORMAT_UNSIGNED_BC7: CUresourceViewFormat_enum =
+ CUresourceViewFormat_enum(34);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUresourceViewFormat_enum(pub ::std::os::raw::c_uint);
+pub use self::CUresourceViewFormat_enum as CUresourceViewFormat;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_RESOURCE_VIEW_DESC_st {
+ pub format: CUresourceViewFormat,
+ pub width: usize,
+ pub height: usize,
+ pub depth: usize,
+ pub firstMipmapLevel: ::std::os::raw::c_uint,
+ pub lastMipmapLevel: ::std::os::raw::c_uint,
+ pub firstLayer: ::std::os::raw::c_uint,
+ pub lastLayer: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 16usize],
+}
+pub type CUDA_RESOURCE_VIEW_DESC_v1 = CUDA_RESOURCE_VIEW_DESC_st;
+pub type CUDA_RESOURCE_VIEW_DESC = CUDA_RESOURCE_VIEW_DESC_v1;
+#[repr(C)]
+#[repr(align(64))]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUtensorMap_st {
+ pub opaque: [cuuint64_t; 16usize],
+}
+pub type CUtensorMap = CUtensorMap_st;
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_UINT8: CUtensorMapDataType_enum = CUtensorMapDataType_enum(0);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_UINT16: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(1);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_UINT32: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(2);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_INT32: CUtensorMapDataType_enum = CUtensorMapDataType_enum(3);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_UINT64: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(4);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_INT64: CUtensorMapDataType_enum = CUtensorMapDataType_enum(5);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_FLOAT16: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(6);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_FLOAT32: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(7);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_FLOAT64: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(8);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_BFLOAT16: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(9);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_FLOAT32_FTZ: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(10);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_TFLOAT32: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(11);
+}
+impl CUtensorMapDataType_enum {
+ pub const CU_TENSOR_MAP_DATA_TYPE_TFLOAT32_FTZ: CUtensorMapDataType_enum =
+ CUtensorMapDataType_enum(12);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUtensorMapDataType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUtensorMapDataType_enum as CUtensorMapDataType;
+impl CUtensorMapInterleave_enum {
+ pub const CU_TENSOR_MAP_INTERLEAVE_NONE: CUtensorMapInterleave_enum =
+ CUtensorMapInterleave_enum(0);
+}
+impl CUtensorMapInterleave_enum {
+ pub const CU_TENSOR_MAP_INTERLEAVE_16B: CUtensorMapInterleave_enum =
+ CUtensorMapInterleave_enum(1);
+}
+impl CUtensorMapInterleave_enum {
+ pub const CU_TENSOR_MAP_INTERLEAVE_32B: CUtensorMapInterleave_enum =
+ CUtensorMapInterleave_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUtensorMapInterleave_enum(pub ::std::os::raw::c_uint);
+pub use self::CUtensorMapInterleave_enum as CUtensorMapInterleave;
+impl CUtensorMapSwizzle_enum {
+ pub const CU_TENSOR_MAP_SWIZZLE_NONE: CUtensorMapSwizzle_enum = CUtensorMapSwizzle_enum(0);
+}
+impl CUtensorMapSwizzle_enum {
+ pub const CU_TENSOR_MAP_SWIZZLE_32B: CUtensorMapSwizzle_enum = CUtensorMapSwizzle_enum(1);
+}
+impl CUtensorMapSwizzle_enum {
+ pub const CU_TENSOR_MAP_SWIZZLE_64B: CUtensorMapSwizzle_enum = CUtensorMapSwizzle_enum(2);
+}
+impl CUtensorMapSwizzle_enum {
+ pub const CU_TENSOR_MAP_SWIZZLE_128B: CUtensorMapSwizzle_enum = CUtensorMapSwizzle_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUtensorMapSwizzle_enum(pub ::std::os::raw::c_uint);
+pub use self::CUtensorMapSwizzle_enum as CUtensorMapSwizzle;
+impl CUtensorMapL2promotion_enum {
+ pub const CU_TENSOR_MAP_L2_PROMOTION_NONE: CUtensorMapL2promotion_enum =
+ CUtensorMapL2promotion_enum(0);
+}
+impl CUtensorMapL2promotion_enum {
+ pub const CU_TENSOR_MAP_L2_PROMOTION_L2_64B: CUtensorMapL2promotion_enum =
+ CUtensorMapL2promotion_enum(1);
+}
+impl CUtensorMapL2promotion_enum {
+ pub const CU_TENSOR_MAP_L2_PROMOTION_L2_128B: CUtensorMapL2promotion_enum =
+ CUtensorMapL2promotion_enum(2);
+}
+impl CUtensorMapL2promotion_enum {
+ pub const CU_TENSOR_MAP_L2_PROMOTION_L2_256B: CUtensorMapL2promotion_enum =
+ CUtensorMapL2promotion_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUtensorMapL2promotion_enum(pub ::std::os::raw::c_uint);
+pub use self::CUtensorMapL2promotion_enum as CUtensorMapL2promotion;
+impl CUtensorMapFloatOOBfill_enum {
+ pub const CU_TENSOR_MAP_FLOAT_OOB_FILL_NONE: CUtensorMapFloatOOBfill_enum =
+ CUtensorMapFloatOOBfill_enum(0);
+}
+impl CUtensorMapFloatOOBfill_enum {
+ pub const CU_TENSOR_MAP_FLOAT_OOB_FILL_NAN_REQUEST_ZERO_FMA: CUtensorMapFloatOOBfill_enum =
+ CUtensorMapFloatOOBfill_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUtensorMapFloatOOBfill_enum(pub ::std::os::raw::c_uint);
+pub use self::CUtensorMapFloatOOBfill_enum as CUtensorMapFloatOOBfill;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_POINTER_ATTRIBUTE_P2P_TOKENS_st {
+ pub p2pToken: ::std::os::raw::c_ulonglong,
+ pub vaSpaceToken: ::std::os::raw::c_uint,
+}
+pub type CUDA_POINTER_ATTRIBUTE_P2P_TOKENS_v1 = CUDA_POINTER_ATTRIBUTE_P2P_TOKENS_st;
+pub type CUDA_POINTER_ATTRIBUTE_P2P_TOKENS = CUDA_POINTER_ATTRIBUTE_P2P_TOKENS_v1;
+impl CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum {
+ pub const CU_POINTER_ATTRIBUTE_ACCESS_FLAG_NONE: CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum =
+ CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum(0);
+}
+impl CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum {
+ pub const CU_POINTER_ATTRIBUTE_ACCESS_FLAG_READ: CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum =
+ CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum(1);
+}
+impl CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum {
+ pub const CU_POINTER_ATTRIBUTE_ACCESS_FLAG_READWRITE: CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum =
+ CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum(pub ::std::os::raw::c_uint);
+pub use self::CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum as CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_LAUNCH_PARAMS_st {
+ pub function: CUfunction,
+ pub gridDimX: ::std::os::raw::c_uint,
+ pub gridDimY: ::std::os::raw::c_uint,
+ pub gridDimZ: ::std::os::raw::c_uint,
+ pub blockDimX: ::std::os::raw::c_uint,
+ pub blockDimY: ::std::os::raw::c_uint,
+ pub blockDimZ: ::std::os::raw::c_uint,
+ pub sharedMemBytes: ::std::os::raw::c_uint,
+ pub hStream: CUstream,
+ pub kernelParams: *mut *mut ::std::os::raw::c_void,
+}
+pub type CUDA_LAUNCH_PARAMS_v1 = CUDA_LAUNCH_PARAMS_st;
+pub type CUDA_LAUNCH_PARAMS = CUDA_LAUNCH_PARAMS_v1;
+impl CUexternalMemoryHandleType_enum {
+ pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD: CUexternalMemoryHandleType_enum =
+ CUexternalMemoryHandleType_enum(1);
+}
+impl CUexternalMemoryHandleType_enum {
+ pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32: CUexternalMemoryHandleType_enum =
+ CUexternalMemoryHandleType_enum(2);
+}
+impl CUexternalMemoryHandleType_enum {
+ pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT: CUexternalMemoryHandleType_enum =
+ CUexternalMemoryHandleType_enum(3);
+}
+impl CUexternalMemoryHandleType_enum {
+ pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP: CUexternalMemoryHandleType_enum =
+ CUexternalMemoryHandleType_enum(4);
+}
+impl CUexternalMemoryHandleType_enum {
+ pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE: CUexternalMemoryHandleType_enum =
+ CUexternalMemoryHandleType_enum(5);
+}
+impl CUexternalMemoryHandleType_enum {
+ pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_RESOURCE: CUexternalMemoryHandleType_enum =
+ CUexternalMemoryHandleType_enum(6);
+}
+impl CUexternalMemoryHandleType_enum {
+ pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_RESOURCE_KMT: CUexternalMemoryHandleType_enum =
+ CUexternalMemoryHandleType_enum(7);
+}
+impl CUexternalMemoryHandleType_enum {
+ pub const CU_EXTERNAL_MEMORY_HANDLE_TYPE_NVSCIBUF: CUexternalMemoryHandleType_enum =
+ CUexternalMemoryHandleType_enum(8);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUexternalMemoryHandleType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUexternalMemoryHandleType_enum as CUexternalMemoryHandleType;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st {
+ pub type_: CUexternalMemoryHandleType,
+ pub handle: CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st__bindgen_ty_1,
+ pub size: ::std::os::raw::c_ulonglong,
+ pub flags: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 16usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st__bindgen_ty_1 {
+ pub fd: ::std::os::raw::c_int,
+ pub win32: CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st__bindgen_ty_1__bindgen_ty_1,
+ pub nvSciBufObject: *const ::std::os::raw::c_void,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st__bindgen_ty_1__bindgen_ty_1 {
+ pub handle: *mut ::std::os::raw::c_void,
+ pub name: *const ::std::os::raw::c_void,
+}
+pub type CUDA_EXTERNAL_MEMORY_HANDLE_DESC_v1 = CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st;
+pub type CUDA_EXTERNAL_MEMORY_HANDLE_DESC = CUDA_EXTERNAL_MEMORY_HANDLE_DESC_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXTERNAL_MEMORY_BUFFER_DESC_st {
+ pub offset: ::std::os::raw::c_ulonglong,
+ pub size: ::std::os::raw::c_ulonglong,
+ pub flags: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 16usize],
+}
+pub type CUDA_EXTERNAL_MEMORY_BUFFER_DESC_v1 = CUDA_EXTERNAL_MEMORY_BUFFER_DESC_st;
+pub type CUDA_EXTERNAL_MEMORY_BUFFER_DESC = CUDA_EXTERNAL_MEMORY_BUFFER_DESC_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_st {
+ pub offset: ::std::os::raw::c_ulonglong,
+ pub arrayDesc: CUDA_ARRAY3D_DESCRIPTOR,
+ pub numLevels: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 16usize],
+}
+pub type CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_v1 =
+ CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_st;
+pub type CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC = CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_v1;
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD: CUexternalSemaphoreHandleType_enum =
+ CUexternalSemaphoreHandleType_enum(1);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32: CUexternalSemaphoreHandleType_enum =
+ CUexternalSemaphoreHandleType_enum(2);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT:
+ CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(3);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE: CUexternalSemaphoreHandleType_enum =
+ CUexternalSemaphoreHandleType_enum(4);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE: CUexternalSemaphoreHandleType_enum =
+ CUexternalSemaphoreHandleType_enum(5);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_NVSCISYNC: CUexternalSemaphoreHandleType_enum =
+ CUexternalSemaphoreHandleType_enum(6);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_KEYED_MUTEX:
+ CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(7);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_KEYED_MUTEX_KMT:
+ CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(8);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_TIMELINE_SEMAPHORE_FD:
+ CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(9);
+}
+impl CUexternalSemaphoreHandleType_enum {
+ pub const CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_TIMELINE_SEMAPHORE_WIN32:
+ CUexternalSemaphoreHandleType_enum = CUexternalSemaphoreHandleType_enum(10);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUexternalSemaphoreHandleType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUexternalSemaphoreHandleType_enum as CUexternalSemaphoreHandleType;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st {
+ pub type_: CUexternalSemaphoreHandleType,
+ pub handle: CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st__bindgen_ty_1,
+ pub flags: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 16usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st__bindgen_ty_1 {
+ pub fd: ::std::os::raw::c_int,
+ pub win32: CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st__bindgen_ty_1__bindgen_ty_1,
+ pub nvSciSyncObj: *const ::std::os::raw::c_void,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st__bindgen_ty_1__bindgen_ty_1 {
+ pub handle: *mut ::std::os::raw::c_void,
+ pub name: *const ::std::os::raw::c_void,
+}
+pub type CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_v1 = CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st;
+pub type CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC = CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_v1;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st {
+ pub params: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1,
+ pub flags: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 16usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1 {
+ pub fence: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_1,
+ pub nvSciSync: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_2,
+ pub keyedMutex: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_3,
+ pub reserved: [::std::os::raw::c_uint; 12usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_1 {
+ pub value: ::std::os::raw::c_ulonglong,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_2 {
+ pub fence: *mut ::std::os::raw::c_void,
+ pub reserved: ::std::os::raw::c_ulonglong,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st__bindgen_ty_1__bindgen_ty_3 {
+ pub key: ::std::os::raw::c_ulonglong,
+}
+pub type CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_v1 = CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st;
+pub type CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS = CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_v1;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st {
+ pub params: CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1,
+ pub flags: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 16usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1 {
+ pub fence: CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_1,
+ pub nvSciSync: CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_2,
+ pub keyedMutex: CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_3,
+ pub reserved: [::std::os::raw::c_uint; 10usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_1 {
+ pub value: ::std::os::raw::c_ulonglong,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_2 {
+ pub fence: *mut ::std::os::raw::c_void,
+ pub reserved: ::std::os::raw::c_ulonglong,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st__bindgen_ty_1__bindgen_ty_3 {
+ pub key: ::std::os::raw::c_ulonglong,
+ pub timeoutMs: ::std::os::raw::c_uint,
+}
+pub type CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_v1 = CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st;
+pub type CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS = CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_st {
+ pub extSemArray: *mut CUexternalSemaphore,
+ pub paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS,
+ pub numExtSems: ::std::os::raw::c_uint,
+}
+pub type CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v1 = CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_st;
+pub type CUDA_EXT_SEM_SIGNAL_NODE_PARAMS = CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2_st {
+ pub extSemArray: *mut CUexternalSemaphore,
+ pub paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS,
+ pub numExtSems: ::std::os::raw::c_uint,
+}
+pub type CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2 = CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXT_SEM_WAIT_NODE_PARAMS_st {
+ pub extSemArray: *mut CUexternalSemaphore,
+ pub paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS,
+ pub numExtSems: ::std::os::raw::c_uint,
+}
+pub type CUDA_EXT_SEM_WAIT_NODE_PARAMS_v1 = CUDA_EXT_SEM_WAIT_NODE_PARAMS_st;
+pub type CUDA_EXT_SEM_WAIT_NODE_PARAMS = CUDA_EXT_SEM_WAIT_NODE_PARAMS_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2_st {
+ pub extSemArray: *mut CUexternalSemaphore,
+ pub paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS,
+ pub numExtSems: ::std::os::raw::c_uint,
+}
+pub type CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2 = CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2_st;
+pub type CUmemGenericAllocationHandle_v1 = ::std::os::raw::c_ulonglong;
+pub type CUmemGenericAllocationHandle = CUmemGenericAllocationHandle_v1;
+impl CUmemAllocationHandleType_enum {
+ pub const CU_MEM_HANDLE_TYPE_NONE: CUmemAllocationHandleType_enum =
+ CUmemAllocationHandleType_enum(0);
+}
+impl CUmemAllocationHandleType_enum {
+ pub const CU_MEM_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR: CUmemAllocationHandleType_enum =
+ CUmemAllocationHandleType_enum(1);
+}
+impl CUmemAllocationHandleType_enum {
+ pub const CU_MEM_HANDLE_TYPE_WIN32: CUmemAllocationHandleType_enum =
+ CUmemAllocationHandleType_enum(2);
+}
+impl CUmemAllocationHandleType_enum {
+ pub const CU_MEM_HANDLE_TYPE_WIN32_KMT: CUmemAllocationHandleType_enum =
+ CUmemAllocationHandleType_enum(4);
+}
+impl CUmemAllocationHandleType_enum {
+ pub const CU_MEM_HANDLE_TYPE_FABRIC: CUmemAllocationHandleType_enum =
+ CUmemAllocationHandleType_enum(8);
+}
+impl CUmemAllocationHandleType_enum {
+ pub const CU_MEM_HANDLE_TYPE_MAX: CUmemAllocationHandleType_enum =
+ CUmemAllocationHandleType_enum(2147483647);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemAllocationHandleType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemAllocationHandleType_enum as CUmemAllocationHandleType;
+impl CUmemAccess_flags_enum {
+ pub const CU_MEM_ACCESS_FLAGS_PROT_NONE: CUmemAccess_flags_enum = CUmemAccess_flags_enum(0);
+}
+impl CUmemAccess_flags_enum {
+ pub const CU_MEM_ACCESS_FLAGS_PROT_READ: CUmemAccess_flags_enum = CUmemAccess_flags_enum(1);
+}
+impl CUmemAccess_flags_enum {
+ pub const CU_MEM_ACCESS_FLAGS_PROT_READWRITE: CUmemAccess_flags_enum =
+ CUmemAccess_flags_enum(3);
+}
+impl CUmemAccess_flags_enum {
+ pub const CU_MEM_ACCESS_FLAGS_PROT_MAX: CUmemAccess_flags_enum =
+ CUmemAccess_flags_enum(2147483647);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemAccess_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemAccess_flags_enum as CUmemAccess_flags;
+impl CUmemLocationType_enum {
+ pub const CU_MEM_LOCATION_TYPE_INVALID: CUmemLocationType_enum = CUmemLocationType_enum(0);
+}
+impl CUmemLocationType_enum {
+ pub const CU_MEM_LOCATION_TYPE_DEVICE: CUmemLocationType_enum = CUmemLocationType_enum(1);
+}
+impl CUmemLocationType_enum {
+ pub const CU_MEM_LOCATION_TYPE_HOST: CUmemLocationType_enum = CUmemLocationType_enum(2);
+}
+impl CUmemLocationType_enum {
+ pub const CU_MEM_LOCATION_TYPE_HOST_NUMA: CUmemLocationType_enum = CUmemLocationType_enum(3);
+}
+impl CUmemLocationType_enum {
+ pub const CU_MEM_LOCATION_TYPE_HOST_NUMA_CURRENT: CUmemLocationType_enum =
+ CUmemLocationType_enum(4);
+}
+impl CUmemLocationType_enum {
+ pub const CU_MEM_LOCATION_TYPE_MAX: CUmemLocationType_enum = CUmemLocationType_enum(2147483647);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemLocationType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemLocationType_enum as CUmemLocationType;
+impl CUmemAllocationType_enum {
+ pub const CU_MEM_ALLOCATION_TYPE_INVALID: CUmemAllocationType_enum =
+ CUmemAllocationType_enum(0);
+}
+impl CUmemAllocationType_enum {
+ pub const CU_MEM_ALLOCATION_TYPE_PINNED: CUmemAllocationType_enum = CUmemAllocationType_enum(1);
+}
+impl CUmemAllocationType_enum {
+ pub const CU_MEM_ALLOCATION_TYPE_MAX: CUmemAllocationType_enum =
+ CUmemAllocationType_enum(2147483647);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemAllocationType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemAllocationType_enum as CUmemAllocationType;
+impl CUmemAllocationGranularity_flags_enum {
+ pub const CU_MEM_ALLOC_GRANULARITY_MINIMUM: CUmemAllocationGranularity_flags_enum =
+ CUmemAllocationGranularity_flags_enum(0);
+}
+impl CUmemAllocationGranularity_flags_enum {
+ pub const CU_MEM_ALLOC_GRANULARITY_RECOMMENDED: CUmemAllocationGranularity_flags_enum =
+ CUmemAllocationGranularity_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemAllocationGranularity_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemAllocationGranularity_flags_enum as CUmemAllocationGranularity_flags;
+impl CUmemRangeHandleType_enum {
+ pub const CU_MEM_RANGE_HANDLE_TYPE_DMA_BUF_FD: CUmemRangeHandleType_enum =
+ CUmemRangeHandleType_enum(1);
+}
+impl CUmemRangeHandleType_enum {
+ pub const CU_MEM_RANGE_HANDLE_TYPE_MAX: CUmemRangeHandleType_enum =
+ CUmemRangeHandleType_enum(2147483647);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemRangeHandleType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemRangeHandleType_enum as CUmemRangeHandleType;
+impl CUarraySparseSubresourceType_enum {
+ pub const CU_ARRAY_SPARSE_SUBRESOURCE_TYPE_SPARSE_LEVEL: CUarraySparseSubresourceType_enum =
+ CUarraySparseSubresourceType_enum(0);
+}
+impl CUarraySparseSubresourceType_enum {
+ pub const CU_ARRAY_SPARSE_SUBRESOURCE_TYPE_MIPTAIL: CUarraySparseSubresourceType_enum =
+ CUarraySparseSubresourceType_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUarraySparseSubresourceType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUarraySparseSubresourceType_enum as CUarraySparseSubresourceType;
+impl CUmemOperationType_enum {
+ pub const CU_MEM_OPERATION_TYPE_MAP: CUmemOperationType_enum = CUmemOperationType_enum(1);
+}
+impl CUmemOperationType_enum {
+ pub const CU_MEM_OPERATION_TYPE_UNMAP: CUmemOperationType_enum = CUmemOperationType_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemOperationType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemOperationType_enum as CUmemOperationType;
+impl CUmemHandleType_enum {
+ pub const CU_MEM_HANDLE_TYPE_GENERIC: CUmemHandleType_enum = CUmemHandleType_enum(0);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemHandleType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemHandleType_enum as CUmemHandleType;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUarrayMapInfo_st {
+ pub resourceType: CUresourcetype,
+ pub resource: CUarrayMapInfo_st__bindgen_ty_1,
+ pub subresourceType: CUarraySparseSubresourceType,
+ pub subresource: CUarrayMapInfo_st__bindgen_ty_2,
+ pub memOperationType: CUmemOperationType,
+ pub memHandleType: CUmemHandleType,
+ pub memHandle: CUarrayMapInfo_st__bindgen_ty_3,
+ pub offset: ::std::os::raw::c_ulonglong,
+ pub deviceBitMask: ::std::os::raw::c_uint,
+ pub flags: ::std::os::raw::c_uint,
+ pub reserved: [::std::os::raw::c_uint; 2usize],
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUarrayMapInfo_st__bindgen_ty_1 {
+ pub mipmap: CUmipmappedArray,
+ pub array: CUarray,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUarrayMapInfo_st__bindgen_ty_2 {
+ pub sparseLevel: CUarrayMapInfo_st__bindgen_ty_2__bindgen_ty_1,
+ pub miptail: CUarrayMapInfo_st__bindgen_ty_2__bindgen_ty_2,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUarrayMapInfo_st__bindgen_ty_2__bindgen_ty_1 {
+ pub level: ::std::os::raw::c_uint,
+ pub layer: ::std::os::raw::c_uint,
+ pub offsetX: ::std::os::raw::c_uint,
+ pub offsetY: ::std::os::raw::c_uint,
+ pub offsetZ: ::std::os::raw::c_uint,
+ pub extentWidth: ::std::os::raw::c_uint,
+ pub extentHeight: ::std::os::raw::c_uint,
+ pub extentDepth: ::std::os::raw::c_uint,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUarrayMapInfo_st__bindgen_ty_2__bindgen_ty_2 {
+ pub layer: ::std::os::raw::c_uint,
+ pub offset: ::std::os::raw::c_ulonglong,
+ pub size: ::std::os::raw::c_ulonglong,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUarrayMapInfo_st__bindgen_ty_3 {
+ pub memHandle: CUmemGenericAllocationHandle,
+}
+pub type CUarrayMapInfo_v1 = CUarrayMapInfo_st;
+pub type CUarrayMapInfo = CUarrayMapInfo_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUmemLocation_st {
+ pub type_: CUmemLocationType,
+ pub id: ::std::os::raw::c_int,
+}
+pub type CUmemLocation_v1 = CUmemLocation_st;
+pub type CUmemLocation = CUmemLocation_v1;
+impl CUmemAllocationCompType_enum {
+ pub const CU_MEM_ALLOCATION_COMP_NONE: CUmemAllocationCompType_enum =
+ CUmemAllocationCompType_enum(0);
+}
+impl CUmemAllocationCompType_enum {
+ pub const CU_MEM_ALLOCATION_COMP_GENERIC: CUmemAllocationCompType_enum =
+ CUmemAllocationCompType_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemAllocationCompType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemAllocationCompType_enum as CUmemAllocationCompType;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUmemAllocationProp_st {
+ pub type_: CUmemAllocationType,
+ pub requestedHandleTypes: CUmemAllocationHandleType,
+ pub location: CUmemLocation,
+ pub win32HandleMetaData: *mut ::std::os::raw::c_void,
+ pub allocFlags: CUmemAllocationProp_st__bindgen_ty_1,
+}
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUmemAllocationProp_st__bindgen_ty_1 {
+ pub compressionType: ::std::os::raw::c_uchar,
+ pub gpuDirectRDMACapable: ::std::os::raw::c_uchar,
+ pub usage: ::std::os::raw::c_ushort,
+ pub reserved: [::std::os::raw::c_uchar; 4usize],
+}
+pub type CUmemAllocationProp_v1 = CUmemAllocationProp_st;
+pub type CUmemAllocationProp = CUmemAllocationProp_v1;
+impl CUmulticastGranularity_flags_enum {
+ pub const CU_MULTICAST_GRANULARITY_MINIMUM: CUmulticastGranularity_flags_enum =
+ CUmulticastGranularity_flags_enum(0);
+}
+impl CUmulticastGranularity_flags_enum {
+ pub const CU_MULTICAST_GRANULARITY_RECOMMENDED: CUmulticastGranularity_flags_enum =
+ CUmulticastGranularity_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmulticastGranularity_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmulticastGranularity_flags_enum as CUmulticastGranularity_flags;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUmulticastObjectProp_st {
+ pub numDevices: ::std::os::raw::c_uint,
+ pub size: usize,
+ pub handleTypes: ::std::os::raw::c_ulonglong,
+ pub flags: ::std::os::raw::c_ulonglong,
+}
+pub type CUmulticastObjectProp_v1 = CUmulticastObjectProp_st;
+pub type CUmulticastObjectProp = CUmulticastObjectProp_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUmemAccessDesc_st {
+ pub location: CUmemLocation,
+ pub flags: CUmemAccess_flags,
+}
+pub type CUmemAccessDesc_v1 = CUmemAccessDesc_st;
+pub type CUmemAccessDesc = CUmemAccessDesc_v1;
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_SUCCESS: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(0);
+}
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_ERROR: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(1);
+}
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_ERROR_TOPOLOGY_CHANGED: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(2);
+}
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_ERROR_NODE_TYPE_CHANGED: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(3);
+}
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_ERROR_FUNCTION_CHANGED: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(4);
+}
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_ERROR_PARAMETERS_CHANGED: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(5);
+}
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_ERROR_NOT_SUPPORTED: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(6);
+}
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_ERROR_UNSUPPORTED_FUNCTION_CHANGE: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(7);
+}
+impl CUgraphExecUpdateResult_enum {
+ pub const CU_GRAPH_EXEC_UPDATE_ERROR_ATTRIBUTES_CHANGED: CUgraphExecUpdateResult_enum =
+ CUgraphExecUpdateResult_enum(8);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphExecUpdateResult_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphExecUpdateResult_enum as CUgraphExecUpdateResult;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUgraphExecUpdateResultInfo_st {
+ pub result: CUgraphExecUpdateResult,
+ pub errorNode: CUgraphNode,
+ pub errorFromNode: CUgraphNode,
+}
+pub type CUgraphExecUpdateResultInfo_v1 = CUgraphExecUpdateResultInfo_st;
+pub type CUgraphExecUpdateResultInfo = CUgraphExecUpdateResultInfo_v1;
+impl CUmemPool_attribute_enum {
+ pub const CU_MEMPOOL_ATTR_REUSE_FOLLOW_EVENT_DEPENDENCIES: CUmemPool_attribute_enum =
+ CUmemPool_attribute_enum(1);
+}
+impl CUmemPool_attribute_enum {
+ pub const CU_MEMPOOL_ATTR_REUSE_ALLOW_OPPORTUNISTIC: CUmemPool_attribute_enum =
+ CUmemPool_attribute_enum(2);
+}
+impl CUmemPool_attribute_enum {
+ pub const CU_MEMPOOL_ATTR_REUSE_ALLOW_INTERNAL_DEPENDENCIES: CUmemPool_attribute_enum =
+ CUmemPool_attribute_enum(3);
+}
+impl CUmemPool_attribute_enum {
+ pub const CU_MEMPOOL_ATTR_RELEASE_THRESHOLD: CUmemPool_attribute_enum =
+ CUmemPool_attribute_enum(4);
+}
+impl CUmemPool_attribute_enum {
+ pub const CU_MEMPOOL_ATTR_RESERVED_MEM_CURRENT: CUmemPool_attribute_enum =
+ CUmemPool_attribute_enum(5);
+}
+impl CUmemPool_attribute_enum {
+ pub const CU_MEMPOOL_ATTR_RESERVED_MEM_HIGH: CUmemPool_attribute_enum =
+ CUmemPool_attribute_enum(6);
+}
+impl CUmemPool_attribute_enum {
+ pub const CU_MEMPOOL_ATTR_USED_MEM_CURRENT: CUmemPool_attribute_enum =
+ CUmemPool_attribute_enum(7);
+}
+impl CUmemPool_attribute_enum {
+ pub const CU_MEMPOOL_ATTR_USED_MEM_HIGH: CUmemPool_attribute_enum = CUmemPool_attribute_enum(8);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmemPool_attribute_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmemPool_attribute_enum as CUmemPool_attribute;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUmemPoolProps_st {
+ pub allocType: CUmemAllocationType,
+ pub handleTypes: CUmemAllocationHandleType,
+ pub location: CUmemLocation,
+ pub win32SecurityAttributes: *mut ::std::os::raw::c_void,
+ pub maxSize: usize,
+ pub reserved: [::std::os::raw::c_uchar; 56usize],
+}
+pub type CUmemPoolProps_v1 = CUmemPoolProps_st;
+pub type CUmemPoolProps = CUmemPoolProps_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUmemPoolPtrExportData_st {
+ pub reserved: [::std::os::raw::c_uchar; 64usize],
+}
+pub type CUmemPoolPtrExportData_v1 = CUmemPoolPtrExportData_st;
+pub type CUmemPoolPtrExportData = CUmemPoolPtrExportData_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEM_ALLOC_NODE_PARAMS_v1_st {
+ pub poolProps: CUmemPoolProps,
+ pub accessDescs: *const CUmemAccessDesc,
+ pub accessDescCount: usize,
+ pub bytesize: usize,
+ pub dptr: CUdeviceptr,
+}
+pub type CUDA_MEM_ALLOC_NODE_PARAMS_v1 = CUDA_MEM_ALLOC_NODE_PARAMS_v1_st;
+pub type CUDA_MEM_ALLOC_NODE_PARAMS = CUDA_MEM_ALLOC_NODE_PARAMS_v1;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEM_ALLOC_NODE_PARAMS_v2_st {
+ pub poolProps: CUmemPoolProps,
+ pub accessDescs: *const CUmemAccessDesc,
+ pub accessDescCount: usize,
+ pub bytesize: usize,
+ pub dptr: CUdeviceptr,
+}
+pub type CUDA_MEM_ALLOC_NODE_PARAMS_v2 = CUDA_MEM_ALLOC_NODE_PARAMS_v2_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEM_FREE_NODE_PARAMS_st {
+ pub dptr: CUdeviceptr,
+}
+pub type CUDA_MEM_FREE_NODE_PARAMS = CUDA_MEM_FREE_NODE_PARAMS_st;
+impl CUgraphMem_attribute_enum {
+ pub const CU_GRAPH_MEM_ATTR_USED_MEM_CURRENT: CUgraphMem_attribute_enum =
+ CUgraphMem_attribute_enum(0);
+}
+impl CUgraphMem_attribute_enum {
+ pub const CU_GRAPH_MEM_ATTR_USED_MEM_HIGH: CUgraphMem_attribute_enum =
+ CUgraphMem_attribute_enum(1);
+}
+impl CUgraphMem_attribute_enum {
+ pub const CU_GRAPH_MEM_ATTR_RESERVED_MEM_CURRENT: CUgraphMem_attribute_enum =
+ CUgraphMem_attribute_enum(2);
+}
+impl CUgraphMem_attribute_enum {
+ pub const CU_GRAPH_MEM_ATTR_RESERVED_MEM_HIGH: CUgraphMem_attribute_enum =
+ CUgraphMem_attribute_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphMem_attribute_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphMem_attribute_enum as CUgraphMem_attribute;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_CHILD_GRAPH_NODE_PARAMS_st {
+ pub graph: CUgraph,
+}
+pub type CUDA_CHILD_GRAPH_NODE_PARAMS = CUDA_CHILD_GRAPH_NODE_PARAMS_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EVENT_RECORD_NODE_PARAMS_st {
+ pub event: CUevent,
+}
+pub type CUDA_EVENT_RECORD_NODE_PARAMS = CUDA_EVENT_RECORD_NODE_PARAMS_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_EVENT_WAIT_NODE_PARAMS_st {
+ pub event: CUevent,
+}
+pub type CUDA_EVENT_WAIT_NODE_PARAMS = CUDA_EVENT_WAIT_NODE_PARAMS_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUgraphNodeParams_st {
+ pub type_: CUgraphNodeType,
+ pub reserved0: [::std::os::raw::c_int; 3usize],
+ pub __bindgen_anon_1: CUgraphNodeParams_st__bindgen_ty_1,
+ pub reserved2: ::std::os::raw::c_longlong,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUgraphNodeParams_st__bindgen_ty_1 {
+ pub reserved1: [::std::os::raw::c_longlong; 29usize],
+ pub kernel: CUDA_KERNEL_NODE_PARAMS_v3,
+ pub memcpy: CUDA_MEMCPY_NODE_PARAMS,
+ pub memset: CUDA_MEMSET_NODE_PARAMS_v2,
+ pub host: CUDA_HOST_NODE_PARAMS_v2,
+ pub graph: CUDA_CHILD_GRAPH_NODE_PARAMS,
+ pub eventWait: CUDA_EVENT_WAIT_NODE_PARAMS,
+ pub eventRecord: CUDA_EVENT_RECORD_NODE_PARAMS,
+ pub extSemSignal: CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2,
+ pub extSemWait: CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2,
+ pub alloc: CUDA_MEM_ALLOC_NODE_PARAMS_v2,
+ pub free: CUDA_MEM_FREE_NODE_PARAMS,
+ pub memOp: CUDA_BATCH_MEM_OP_NODE_PARAMS_v2,
+ pub conditional: CUDA_CONDITIONAL_NODE_PARAMS,
+}
+pub type CUgraphNodeParams = CUgraphNodeParams_st;
+impl CUflushGPUDirectRDMAWritesOptions_enum {
+ pub const CU_FLUSH_GPU_DIRECT_RDMA_WRITES_OPTION_HOST: CUflushGPUDirectRDMAWritesOptions_enum =
+ CUflushGPUDirectRDMAWritesOptions_enum(1);
+}
+impl CUflushGPUDirectRDMAWritesOptions_enum {
+ pub const CU_FLUSH_GPU_DIRECT_RDMA_WRITES_OPTION_MEMOPS:
+ CUflushGPUDirectRDMAWritesOptions_enum = CUflushGPUDirectRDMAWritesOptions_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUflushGPUDirectRDMAWritesOptions_enum(pub ::std::os::raw::c_uint);
+pub use self::CUflushGPUDirectRDMAWritesOptions_enum as CUflushGPUDirectRDMAWritesOptions;
+impl CUGPUDirectRDMAWritesOrdering_enum {
+ pub const CU_GPU_DIRECT_RDMA_WRITES_ORDERING_NONE: CUGPUDirectRDMAWritesOrdering_enum =
+ CUGPUDirectRDMAWritesOrdering_enum(0);
+}
+impl CUGPUDirectRDMAWritesOrdering_enum {
+ pub const CU_GPU_DIRECT_RDMA_WRITES_ORDERING_OWNER: CUGPUDirectRDMAWritesOrdering_enum =
+ CUGPUDirectRDMAWritesOrdering_enum(100);
+}
+impl CUGPUDirectRDMAWritesOrdering_enum {
+ pub const CU_GPU_DIRECT_RDMA_WRITES_ORDERING_ALL_DEVICES: CUGPUDirectRDMAWritesOrdering_enum =
+ CUGPUDirectRDMAWritesOrdering_enum(200);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUGPUDirectRDMAWritesOrdering_enum(pub ::std::os::raw::c_uint);
+pub use self::CUGPUDirectRDMAWritesOrdering_enum as CUGPUDirectRDMAWritesOrdering;
+impl CUflushGPUDirectRDMAWritesScope_enum {
+ pub const CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TO_OWNER: CUflushGPUDirectRDMAWritesScope_enum =
+ CUflushGPUDirectRDMAWritesScope_enum(100);
+}
+impl CUflushGPUDirectRDMAWritesScope_enum {
+ pub const CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TO_ALL_DEVICES: CUflushGPUDirectRDMAWritesScope_enum =
+ CUflushGPUDirectRDMAWritesScope_enum(200);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUflushGPUDirectRDMAWritesScope_enum(pub ::std::os::raw::c_uint);
+pub use self::CUflushGPUDirectRDMAWritesScope_enum as CUflushGPUDirectRDMAWritesScope;
+impl CUflushGPUDirectRDMAWritesTarget_enum {
+ pub const CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TARGET_CURRENT_CTX:
+ CUflushGPUDirectRDMAWritesTarget_enum = CUflushGPUDirectRDMAWritesTarget_enum(0);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUflushGPUDirectRDMAWritesTarget_enum(pub ::std::os::raw::c_uint);
+pub use self::CUflushGPUDirectRDMAWritesTarget_enum as CUflushGPUDirectRDMAWritesTarget;
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_VERBOSE: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(1);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_RUNTIME_TYPES: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(2);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_KERNEL_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(4);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_MEMCPY_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(8);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_MEMSET_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(16);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_HOST_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(32);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_EVENT_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(64);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_EXT_SEMAS_SIGNAL_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(128);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_EXT_SEMAS_WAIT_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(256);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_KERNEL_NODE_ATTRIBUTES: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(512);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_HANDLES: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(1024);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_MEM_ALLOC_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(2048);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_MEM_FREE_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(4096);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_BATCH_MEM_OP_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(8192);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_EXTRA_TOPO_INFO: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(16384);
+}
+impl CUgraphDebugDot_flags_enum {
+ pub const CU_GRAPH_DEBUG_DOT_FLAGS_CONDITIONAL_NODE_PARAMS: CUgraphDebugDot_flags_enum =
+ CUgraphDebugDot_flags_enum(32768);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphDebugDot_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphDebugDot_flags_enum as CUgraphDebugDot_flags;
+impl CUuserObject_flags_enum {
+ pub const CU_USER_OBJECT_NO_DESTRUCTOR_SYNC: CUuserObject_flags_enum =
+ CUuserObject_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUuserObject_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUuserObject_flags_enum as CUuserObject_flags;
+impl CUuserObjectRetain_flags_enum {
+ pub const CU_GRAPH_USER_OBJECT_MOVE: CUuserObjectRetain_flags_enum =
+ CUuserObjectRetain_flags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUuserObjectRetain_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUuserObjectRetain_flags_enum as CUuserObjectRetain_flags;
+impl CUgraphInstantiate_flags_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_FLAG_AUTO_FREE_ON_LAUNCH: CUgraphInstantiate_flags_enum =
+ CUgraphInstantiate_flags_enum(1);
+}
+impl CUgraphInstantiate_flags_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_FLAG_UPLOAD: CUgraphInstantiate_flags_enum =
+ CUgraphInstantiate_flags_enum(2);
+}
+impl CUgraphInstantiate_flags_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_FLAG_DEVICE_LAUNCH: CUgraphInstantiate_flags_enum =
+ CUgraphInstantiate_flags_enum(4);
+}
+impl CUgraphInstantiate_flags_enum {
+ pub const CUDA_GRAPH_INSTANTIATE_FLAG_USE_NODE_PRIORITY: CUgraphInstantiate_flags_enum =
+ CUgraphInstantiate_flags_enum(8);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgraphInstantiate_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUgraphInstantiate_flags_enum as CUgraphInstantiate_flags;
+impl CUdeviceNumaConfig_enum {
+ pub const CU_DEVICE_NUMA_CONFIG_NONE: CUdeviceNumaConfig_enum = CUdeviceNumaConfig_enum(0);
+}
+impl CUdeviceNumaConfig_enum {
+ pub const CU_DEVICE_NUMA_CONFIG_NUMA_NODE: CUdeviceNumaConfig_enum = CUdeviceNumaConfig_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUdeviceNumaConfig_enum(pub ::std::os::raw::c_uint);
+pub use self::CUdeviceNumaConfig_enum as CUdeviceNumaConfig;
+extern "C" {
+ pub fn cuGetErrorString(error: CUresult, pStr: *mut *const ::std::os::raw::c_char) -> CUresult;
+}
+extern "C" {
+ pub fn cuGetErrorName(error: CUresult, pStr: *mut *const ::std::os::raw::c_char) -> CUresult;
+}
+extern "C" {
+ pub fn cuInit(Flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuDriverGetVersion(driverVersion: *mut ::std::os::raw::c_int) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGet(device: *mut CUdevice, ordinal: ::std::os::raw::c_int) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetCount(count: *mut ::std::os::raw::c_int) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetName(
+ name: *mut ::std::os::raw::c_char,
+ len: ::std::os::raw::c_int,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetUuid(uuid: *mut CUuuid, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetUuid_v2(uuid: *mut CUuuid, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetLuid(
+ luid: *mut ::std::os::raw::c_char,
+ deviceNodeMask: *mut ::std::os::raw::c_uint,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceTotalMem_v2(bytes: *mut usize, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetTexture1DLinearMaxWidth(
+ maxWidthInElements: *mut usize,
+ format: CUarray_format,
+ numChannels: ::std::os::raw::c_uint,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetAttribute(
+ pi: *mut ::std::os::raw::c_int,
+ attrib: CUdevice_attribute,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetNvSciSyncAttributes(
+ nvSciSyncAttrList: *mut ::std::os::raw::c_void,
+ dev: CUdevice,
+ flags: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceSetMemPool(dev: CUdevice, pool: CUmemoryPool) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetMemPool(pool: *mut CUmemoryPool, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetDefaultMemPool(pool_out: *mut CUmemoryPool, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetExecAffinitySupport(
+ pi: *mut ::std::os::raw::c_int,
+ type_: CUexecAffinityType,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuFlushGPUDirectRDMAWrites(
+ target: CUflushGPUDirectRDMAWritesTarget,
+ scope: CUflushGPUDirectRDMAWritesScope,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetProperties(prop: *mut CUdevprop, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceComputeCapability(
+ major: *mut ::std::os::raw::c_int,
+ minor: *mut ::std::os::raw::c_int,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevicePrimaryCtxRetain(pctx: *mut CUcontext, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevicePrimaryCtxRelease_v2(dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevicePrimaryCtxSetFlags_v2(dev: CUdevice, flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevicePrimaryCtxGetState(
+ dev: CUdevice,
+ flags: *mut ::std::os::raw::c_uint,
+ active: *mut ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevicePrimaryCtxReset_v2(dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxCreate_v2(
+ pctx: *mut CUcontext,
+ flags: ::std::os::raw::c_uint,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxCreate_v3(
+ pctx: *mut CUcontext,
+ paramsArray: *mut CUexecAffinityParam,
+ numParams: ::std::os::raw::c_int,
+ flags: ::std::os::raw::c_uint,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxDestroy_v2(ctx: CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxPushCurrent_v2(ctx: CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxPopCurrent_v2(pctx: *mut CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxSetCurrent(ctx: CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetCurrent(pctx: *mut CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetDevice(device: *mut CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetFlags(flags: *mut ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxSetFlags(flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetId(ctx: CUcontext, ctxId: *mut ::std::os::raw::c_ulonglong) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxSynchronize() -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxSetLimit(limit: CUlimit, value: usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetLimit(pvalue: *mut usize, limit: CUlimit) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetCacheConfig(pconfig: *mut CUfunc_cache) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxSetCacheConfig(config: CUfunc_cache) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetApiVersion(ctx: CUcontext, version: *mut ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetStreamPriorityRange(
+ leastPriority: *mut ::std::os::raw::c_int,
+ greatestPriority: *mut ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxResetPersistingL2Cache() -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetExecAffinity(
+ pExecAffinity: *mut CUexecAffinityParam,
+ type_: CUexecAffinityType,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxAttach(pctx: *mut CUcontext, flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxDetach(ctx: CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetSharedMemConfig(pConfig: *mut CUsharedconfig) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxSetSharedMemConfig(config: CUsharedconfig) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleLoad(module: *mut CUmodule, fname: *const ::std::os::raw::c_char) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleLoadData(
+ module: *mut CUmodule,
+ image: *const ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleLoadDataEx(
+ module: *mut CUmodule,
+ image: *const ::std::os::raw::c_void,
+ numOptions: ::std::os::raw::c_uint,
+ options: *mut CUjit_option,
+ optionValues: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleLoadFatBinary(
+ module: *mut CUmodule,
+ fatCubin: *const ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleUnload(hmod: CUmodule) -> CUresult;
+}
+impl CUmoduleLoadingMode_enum {
+ pub const CU_MODULE_EAGER_LOADING: CUmoduleLoadingMode_enum = CUmoduleLoadingMode_enum(1);
+}
+impl CUmoduleLoadingMode_enum {
+ pub const CU_MODULE_LAZY_LOADING: CUmoduleLoadingMode_enum = CUmoduleLoadingMode_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUmoduleLoadingMode_enum(pub ::std::os::raw::c_uint);
+pub use self::CUmoduleLoadingMode_enum as CUmoduleLoadingMode;
+extern "C" {
+ pub fn cuModuleGetLoadingMode(mode: *mut CUmoduleLoadingMode) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleGetFunction(
+ hfunc: *mut CUfunction,
+ hmod: CUmodule,
+ name: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleGetFunctionCount(count: *mut ::std::os::raw::c_uint, mod_: CUmodule)
+ -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleEnumerateFunctions(
+ functions: *mut CUfunction,
+ numFunctions: ::std::os::raw::c_uint,
+ mod_: CUmodule,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleGetGlobal_v2(
+ dptr: *mut CUdeviceptr,
+ bytes: *mut usize,
+ hmod: CUmodule,
+ name: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLinkCreate_v2(
+ numOptions: ::std::os::raw::c_uint,
+ options: *mut CUjit_option,
+ optionValues: *mut *mut ::std::os::raw::c_void,
+ stateOut: *mut CUlinkState,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLinkAddData_v2(
+ state: CUlinkState,
+ type_: CUjitInputType,
+ data: *mut ::std::os::raw::c_void,
+ size: usize,
+ name: *const ::std::os::raw::c_char,
+ numOptions: ::std::os::raw::c_uint,
+ options: *mut CUjit_option,
+ optionValues: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLinkAddFile_v2(
+ state: CUlinkState,
+ type_: CUjitInputType,
+ path: *const ::std::os::raw::c_char,
+ numOptions: ::std::os::raw::c_uint,
+ options: *mut CUjit_option,
+ optionValues: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLinkComplete(
+ state: CUlinkState,
+ cubinOut: *mut *mut ::std::os::raw::c_void,
+ sizeOut: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLinkDestroy(state: CUlinkState) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleGetTexRef(
+ pTexRef: *mut CUtexref,
+ hmod: CUmodule,
+ name: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleGetSurfRef(
+ pSurfRef: *mut CUsurfref,
+ hmod: CUmodule,
+ name: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryLoadData(
+ library: *mut CUlibrary,
+ code: *const ::std::os::raw::c_void,
+ jitOptions: *mut CUjit_option,
+ jitOptionsValues: *mut *mut ::std::os::raw::c_void,
+ numJitOptions: ::std::os::raw::c_uint,
+ libraryOptions: *mut CUlibraryOption,
+ libraryOptionValues: *mut *mut ::std::os::raw::c_void,
+ numLibraryOptions: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryLoadFromFile(
+ library: *mut CUlibrary,
+ fileName: *const ::std::os::raw::c_char,
+ jitOptions: *mut CUjit_option,
+ jitOptionsValues: *mut *mut ::std::os::raw::c_void,
+ numJitOptions: ::std::os::raw::c_uint,
+ libraryOptions: *mut CUlibraryOption,
+ libraryOptionValues: *mut *mut ::std::os::raw::c_void,
+ numLibraryOptions: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryUnload(library: CUlibrary) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryGetKernel(
+ pKernel: *mut CUkernel,
+ library: CUlibrary,
+ name: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryGetKernelCount(count: *mut ::std::os::raw::c_uint, lib: CUlibrary) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryEnumerateKernels(
+ kernels: *mut CUkernel,
+ numKernels: ::std::os::raw::c_uint,
+ lib: CUlibrary,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryGetModule(pMod: *mut CUmodule, library: CUlibrary) -> CUresult;
+}
+extern "C" {
+ pub fn cuKernelGetFunction(pFunc: *mut CUfunction, kernel: CUkernel) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryGetGlobal(
+ dptr: *mut CUdeviceptr,
+ bytes: *mut usize,
+ library: CUlibrary,
+ name: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryGetManaged(
+ dptr: *mut CUdeviceptr,
+ bytes: *mut usize,
+ library: CUlibrary,
+ name: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLibraryGetUnifiedFunction(
+ fptr: *mut *mut ::std::os::raw::c_void,
+ library: CUlibrary,
+ symbol: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuKernelGetAttribute(
+ pi: *mut ::std::os::raw::c_int,
+ attrib: CUfunction_attribute,
+ kernel: CUkernel,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuKernelSetAttribute(
+ attrib: CUfunction_attribute,
+ val: ::std::os::raw::c_int,
+ kernel: CUkernel,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuKernelSetCacheConfig(
+ kernel: CUkernel,
+ config: CUfunc_cache,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuKernelGetName(name: *mut *const ::std::os::raw::c_char, hfunc: CUkernel) -> CUresult;
+}
+extern "C" {
+ pub fn cuKernelGetParamInfo(
+ kernel: CUkernel,
+ paramIndex: usize,
+ paramOffset: *mut usize,
+ paramSize: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemGetInfo_v2(free: *mut usize, total: *mut usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAlloc_v2(dptr: *mut CUdeviceptr, bytesize: usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocPitch_v2(
+ dptr: *mut CUdeviceptr,
+ pPitch: *mut usize,
+ WidthInBytes: usize,
+ Height: usize,
+ ElementSizeBytes: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemFree_v2(dptr: CUdeviceptr) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemGetAddressRange_v2(
+ pbase: *mut CUdeviceptr,
+ psize: *mut usize,
+ dptr: CUdeviceptr,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocHost_v2(pp: *mut *mut ::std::os::raw::c_void, bytesize: usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemFreeHost(p: *mut ::std::os::raw::c_void) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemHostAlloc(
+ pp: *mut *mut ::std::os::raw::c_void,
+ bytesize: usize,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemHostGetDevicePointer_v2(
+ pdptr: *mut CUdeviceptr,
+ p: *mut ::std::os::raw::c_void,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemHostGetFlags(
+ pFlags: *mut ::std::os::raw::c_uint,
+ p: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocManaged(
+ dptr: *mut CUdeviceptr,
+ bytesize: usize,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceRegisterAsyncNotification(
+ device: CUdevice,
+ callbackFunc: CUasyncCallback,
+ userData: *mut ::std::os::raw::c_void,
+ callback: *mut CUasyncCallbackHandle,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceUnregisterAsyncNotification(
+ device: CUdevice,
+ callback: CUasyncCallbackHandle,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetByPCIBusId(
+ dev: *mut CUdevice,
+ pciBusId: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetPCIBusId(
+ pciBusId: *mut ::std::os::raw::c_char,
+ len: ::std::os::raw::c_int,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuIpcGetEventHandle(pHandle: *mut CUipcEventHandle, event: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuIpcOpenEventHandle(phEvent: *mut CUevent, handle: CUipcEventHandle) -> CUresult;
+}
+extern "C" {
+ pub fn cuIpcGetMemHandle(pHandle: *mut CUipcMemHandle, dptr: CUdeviceptr) -> CUresult;
+}
+extern "C" {
+ pub fn cuIpcOpenMemHandle_v2(
+ pdptr: *mut CUdeviceptr,
+ handle: CUipcMemHandle,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuIpcCloseMemHandle(dptr: CUdeviceptr) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemHostRegister_v2(
+ p: *mut ::std::os::raw::c_void,
+ bytesize: usize,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemHostUnregister(p: *mut ::std::os::raw::c_void) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy_ptds(dst: CUdeviceptr, src: CUdeviceptr, ByteCount: usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyPeer_ptds(
+ dstDevice: CUdeviceptr,
+ dstContext: CUcontext,
+ srcDevice: CUdeviceptr,
+ srcContext: CUcontext,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoD_v2_ptds(
+ dstDevice: CUdeviceptr,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoH_v2_ptds(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoD_v2_ptds(
+ dstDevice: CUdeviceptr,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoA_v2_ptds(
+ dstArray: CUarray,
+ dstOffset: usize,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoD_v2_ptds(
+ dstDevice: CUdeviceptr,
+ srcArray: CUarray,
+ srcOffset: usize,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoA_v2_ptds(
+ dstArray: CUarray,
+ dstOffset: usize,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoH_v2_ptds(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcArray: CUarray,
+ srcOffset: usize,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoA_v2_ptds(
+ dstArray: CUarray,
+ dstOffset: usize,
+ srcArray: CUarray,
+ srcOffset: usize,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2D_v2_ptds(pCopy: *const CUDA_MEMCPY2D) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2DUnaligned_v2_ptds(pCopy: *const CUDA_MEMCPY2D) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3D_v2_ptds(pCopy: *const CUDA_MEMCPY3D) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3DPeer_ptds(pCopy: *const CUDA_MEMCPY3D_PEER) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAsync_ptsz(
+ dst: CUdeviceptr,
+ src: CUdeviceptr,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyPeerAsync_ptsz(
+ dstDevice: CUdeviceptr,
+ dstContext: CUcontext,
+ srcDevice: CUdeviceptr,
+ srcContext: CUcontext,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoDAsync_v2_ptsz(
+ dstDevice: CUdeviceptr,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoHAsync_v2_ptsz(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoDAsync_v2_ptsz(
+ dstDevice: CUdeviceptr,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoAAsync_v2_ptsz(
+ dstArray: CUarray,
+ dstOffset: usize,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoHAsync_v2_ptsz(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcArray: CUarray,
+ srcOffset: usize,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2DAsync_v2_ptsz(pCopy: *const CUDA_MEMCPY2D, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3DAsync_v2_ptsz(pCopy: *const CUDA_MEMCPY3D, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3DPeerAsync_ptsz(
+ pCopy: *const CUDA_MEMCPY3D_PEER,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD8_v2_ptds(
+ dstDevice: CUdeviceptr,
+ uc: ::std::os::raw::c_uchar,
+ N: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD16_v2_ptds(
+ dstDevice: CUdeviceptr,
+ us: ::std::os::raw::c_ushort,
+ N: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD32_v2_ptds(
+ dstDevice: CUdeviceptr,
+ ui: ::std::os::raw::c_uint,
+ N: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D8_v2_ptds(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ uc: ::std::os::raw::c_uchar,
+ Width: usize,
+ Height: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D16_v2_ptds(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ us: ::std::os::raw::c_ushort,
+ Width: usize,
+ Height: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D32_v2_ptds(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ ui: ::std::os::raw::c_uint,
+ Width: usize,
+ Height: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD8Async_ptsz(
+ dstDevice: CUdeviceptr,
+ uc: ::std::os::raw::c_uchar,
+ N: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD16Async_ptsz(
+ dstDevice: CUdeviceptr,
+ us: ::std::os::raw::c_ushort,
+ N: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD32Async_ptsz(
+ dstDevice: CUdeviceptr,
+ ui: ::std::os::raw::c_uint,
+ N: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D8Async_ptsz(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ uc: ::std::os::raw::c_uchar,
+ Width: usize,
+ Height: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D16Async_ptsz(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ us: ::std::os::raw::c_ushort,
+ Width: usize,
+ Height: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D32Async_ptsz(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ ui: ::std::os::raw::c_uint,
+ Width: usize,
+ Height: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArrayCreate_v2(
+ pHandle: *mut CUarray,
+ pAllocateArray: *const CUDA_ARRAY_DESCRIPTOR,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArrayGetDescriptor_v2(
+ pArrayDescriptor: *mut CUDA_ARRAY_DESCRIPTOR,
+ hArray: CUarray,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArrayGetSparseProperties(
+ sparseProperties: *mut CUDA_ARRAY_SPARSE_PROPERTIES,
+ array: CUarray,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMipmappedArrayGetSparseProperties(
+ sparseProperties: *mut CUDA_ARRAY_SPARSE_PROPERTIES,
+ mipmap: CUmipmappedArray,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArrayGetMemoryRequirements(
+ memoryRequirements: *mut CUDA_ARRAY_MEMORY_REQUIREMENTS,
+ array: CUarray,
+ device: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMipmappedArrayGetMemoryRequirements(
+ memoryRequirements: *mut CUDA_ARRAY_MEMORY_REQUIREMENTS,
+ mipmap: CUmipmappedArray,
+ device: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArrayGetPlane(
+ pPlaneArray: *mut CUarray,
+ hArray: CUarray,
+ planeIdx: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArrayDestroy(hArray: CUarray) -> CUresult;
+}
+extern "C" {
+ pub fn cuArray3DCreate_v2(
+ pHandle: *mut CUarray,
+ pAllocateArray: *const CUDA_ARRAY3D_DESCRIPTOR,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArray3DGetDescriptor_v2(
+ pArrayDescriptor: *mut CUDA_ARRAY3D_DESCRIPTOR,
+ hArray: CUarray,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMipmappedArrayCreate(
+ pHandle: *mut CUmipmappedArray,
+ pMipmappedArrayDesc: *const CUDA_ARRAY3D_DESCRIPTOR,
+ numMipmapLevels: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMipmappedArrayGetLevel(
+ pLevelArray: *mut CUarray,
+ hMipmappedArray: CUmipmappedArray,
+ level: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMipmappedArrayDestroy(hMipmappedArray: CUmipmappedArray) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemGetHandleForAddressRange(
+ handle: *mut ::std::os::raw::c_void,
+ dptr: CUdeviceptr,
+ size: usize,
+ handleType: CUmemRangeHandleType,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAddressReserve(
+ ptr: *mut CUdeviceptr,
+ size: usize,
+ alignment: usize,
+ addr: CUdeviceptr,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAddressFree(ptr: CUdeviceptr, size: usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemCreate(
+ handle: *mut CUmemGenericAllocationHandle,
+ size: usize,
+ prop: *const CUmemAllocationProp,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemRelease(handle: CUmemGenericAllocationHandle) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemMap(
+ ptr: CUdeviceptr,
+ size: usize,
+ offset: usize,
+ handle: CUmemGenericAllocationHandle,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemMapArrayAsync_ptsz(
+ mapInfoList: *mut CUarrayMapInfo,
+ count: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemUnmap(ptr: CUdeviceptr, size: usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemSetAccess(
+ ptr: CUdeviceptr,
+ size: usize,
+ desc: *const CUmemAccessDesc,
+ count: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemGetAccess(
+ flags: *mut ::std::os::raw::c_ulonglong,
+ location: *const CUmemLocation,
+ ptr: CUdeviceptr,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemExportToShareableHandle(
+ shareableHandle: *mut ::std::os::raw::c_void,
+ handle: CUmemGenericAllocationHandle,
+ handleType: CUmemAllocationHandleType,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemImportFromShareableHandle(
+ handle: *mut CUmemGenericAllocationHandle,
+ osHandle: *mut ::std::os::raw::c_void,
+ shHandleType: CUmemAllocationHandleType,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemGetAllocationGranularity(
+ granularity: *mut usize,
+ prop: *const CUmemAllocationProp,
+ option: CUmemAllocationGranularity_flags,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemGetAllocationPropertiesFromHandle(
+ prop: *mut CUmemAllocationProp,
+ handle: CUmemGenericAllocationHandle,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemRetainAllocationHandle(
+ handle: *mut CUmemGenericAllocationHandle,
+ addr: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemFreeAsync_ptsz(dptr: CUdeviceptr, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocAsync_ptsz(
+ dptr: *mut CUdeviceptr,
+ bytesize: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolTrimTo(pool: CUmemoryPool, minBytesToKeep: usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolSetAttribute(
+ pool: CUmemoryPool,
+ attr: CUmemPool_attribute,
+ value: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolGetAttribute(
+ pool: CUmemoryPool,
+ attr: CUmemPool_attribute,
+ value: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolSetAccess(
+ pool: CUmemoryPool,
+ map: *const CUmemAccessDesc,
+ count: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolGetAccess(
+ flags: *mut CUmemAccess_flags,
+ memPool: CUmemoryPool,
+ location: *mut CUmemLocation,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolCreate(pool: *mut CUmemoryPool, poolProps: *const CUmemPoolProps) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolDestroy(pool: CUmemoryPool) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocFromPoolAsync_ptsz(
+ dptr: *mut CUdeviceptr,
+ bytesize: usize,
+ pool: CUmemoryPool,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolExportToShareableHandle(
+ handle_out: *mut ::std::os::raw::c_void,
+ pool: CUmemoryPool,
+ handleType: CUmemAllocationHandleType,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolImportFromShareableHandle(
+ pool_out: *mut CUmemoryPool,
+ handle: *mut ::std::os::raw::c_void,
+ handleType: CUmemAllocationHandleType,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolExportPointer(
+ shareData_out: *mut CUmemPoolPtrExportData,
+ ptr: CUdeviceptr,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPoolImportPointer(
+ ptr_out: *mut CUdeviceptr,
+ pool: CUmemoryPool,
+ shareData: *mut CUmemPoolPtrExportData,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMulticastCreate(
+ mcHandle: *mut CUmemGenericAllocationHandle,
+ prop: *const CUmulticastObjectProp,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMulticastAddDevice(mcHandle: CUmemGenericAllocationHandle, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuMulticastBindMem(
+ mcHandle: CUmemGenericAllocationHandle,
+ mcOffset: usize,
+ memHandle: CUmemGenericAllocationHandle,
+ memOffset: usize,
+ size: usize,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMulticastBindAddr(
+ mcHandle: CUmemGenericAllocationHandle,
+ mcOffset: usize,
+ memptr: CUdeviceptr,
+ size: usize,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMulticastUnbind(
+ mcHandle: CUmemGenericAllocationHandle,
+ dev: CUdevice,
+ mcOffset: usize,
+ size: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMulticastGetGranularity(
+ granularity: *mut usize,
+ prop: *const CUmulticastObjectProp,
+ option: CUmulticastGranularity_flags,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuPointerGetAttribute(
+ data: *mut ::std::os::raw::c_void,
+ attribute: CUpointer_attribute,
+ ptr: CUdeviceptr,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPrefetchAsync_ptsz(
+ devPtr: CUdeviceptr,
+ count: usize,
+ dstDevice: CUdevice,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPrefetchAsync_v2_ptsz(
+ devPtr: CUdeviceptr,
+ count: usize,
+ location: CUmemLocation,
+ flags: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAdvise(
+ devPtr: CUdeviceptr,
+ count: usize,
+ advice: CUmem_advise,
+ device: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAdvise_v2(
+ devPtr: CUdeviceptr,
+ count: usize,
+ advice: CUmem_advise,
+ location: CUmemLocation,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemRangeGetAttribute(
+ data: *mut ::std::os::raw::c_void,
+ dataSize: usize,
+ attribute: CUmem_range_attribute,
+ devPtr: CUdeviceptr,
+ count: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemRangeGetAttributes(
+ data: *mut *mut ::std::os::raw::c_void,
+ dataSizes: *mut usize,
+ attributes: *mut CUmem_range_attribute,
+ numAttributes: usize,
+ devPtr: CUdeviceptr,
+ count: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuPointerSetAttribute(
+ value: *const ::std::os::raw::c_void,
+ attribute: CUpointer_attribute,
+ ptr: CUdeviceptr,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuPointerGetAttributes(
+ numAttributes: ::std::os::raw::c_uint,
+ attributes: *mut CUpointer_attribute,
+ data: *mut *mut ::std::os::raw::c_void,
+ ptr: CUdeviceptr,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamCreate(phStream: *mut CUstream, Flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamCreateWithPriority(
+ phStream: *mut CUstream,
+ flags: ::std::os::raw::c_uint,
+ priority: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetPriority_ptsz(
+ hStream: CUstream,
+ priority: *mut ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetFlags_ptsz(hStream: CUstream, flags: *mut ::std::os::raw::c_uint)
+ -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetId_ptsz(
+ hStream: CUstream,
+ streamId: *mut ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetCtx_ptsz(hStream: CUstream, pctx: *mut CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitEvent_ptsz(
+ hStream: CUstream,
+ hEvent: CUevent,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamAddCallback_ptsz(
+ hStream: CUstream,
+ callback: CUstreamCallback,
+ userData: *mut ::std::os::raw::c_void,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBeginCapture_v2_ptsz(hStream: CUstream, mode: CUstreamCaptureMode) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBeginCaptureToGraph_ptsz(
+ hStream: CUstream,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ dependencyData: *const CUgraphEdgeData,
+ numDependencies: usize,
+ mode: CUstreamCaptureMode,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuThreadExchangeStreamCaptureMode(mode: *mut CUstreamCaptureMode) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamEndCapture_ptsz(hStream: CUstream, phGraph: *mut CUgraph) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamIsCapturing_ptsz(
+ hStream: CUstream,
+ captureStatus: *mut CUstreamCaptureStatus,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetCaptureInfo_v2_ptsz(
+ hStream: CUstream,
+ captureStatus_out: *mut CUstreamCaptureStatus,
+ id_out: *mut cuuint64_t,
+ graph_out: *mut CUgraph,
+ dependencies_out: *mut *const CUgraphNode,
+ numDependencies_out: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetCaptureInfo_v3_ptsz(
+ hStream: CUstream,
+ captureStatus_out: *mut CUstreamCaptureStatus,
+ id_out: *mut cuuint64_t,
+ graph_out: *mut CUgraph,
+ dependencies_out: *mut *const CUgraphNode,
+ edgeData_out: *mut *const CUgraphEdgeData,
+ numDependencies_out: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamUpdateCaptureDependencies_ptsz(
+ hStream: CUstream,
+ dependencies: *mut CUgraphNode,
+ numDependencies: usize,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamUpdateCaptureDependencies_v2_ptsz(
+ hStream: CUstream,
+ dependencies: *mut CUgraphNode,
+ dependencyData: *const CUgraphEdgeData,
+ numDependencies: usize,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamAttachMemAsync_ptsz(
+ hStream: CUstream,
+ dptr: CUdeviceptr,
+ length: usize,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamQuery_ptsz(hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamSynchronize_ptsz(hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamDestroy_v2(hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamCopyAttributes_ptsz(dst: CUstream, src: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetAttribute_ptsz(
+ hStream: CUstream,
+ attr: CUstreamAttrID,
+ value_out: *mut CUstreamAttrValue,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamSetAttribute_ptsz(
+ hStream: CUstream,
+ attr: CUstreamAttrID,
+ value: *const CUstreamAttrValue,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventCreate(phEvent: *mut CUevent, Flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventRecord_ptsz(hEvent: CUevent, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventRecordWithFlags_ptsz(
+ hEvent: CUevent,
+ hStream: CUstream,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventQuery(hEvent: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventSynchronize(hEvent: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventDestroy_v2(hEvent: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventElapsedTime(pMilliseconds: *mut f32, hStart: CUevent, hEnd: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuImportExternalMemory(
+ extMem_out: *mut CUexternalMemory,
+ memHandleDesc: *const CUDA_EXTERNAL_MEMORY_HANDLE_DESC,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuExternalMemoryGetMappedBuffer(
+ devPtr: *mut CUdeviceptr,
+ extMem: CUexternalMemory,
+ bufferDesc: *const CUDA_EXTERNAL_MEMORY_BUFFER_DESC,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuExternalMemoryGetMappedMipmappedArray(
+ mipmap: *mut CUmipmappedArray,
+ extMem: CUexternalMemory,
+ mipmapDesc: *const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDestroyExternalMemory(extMem: CUexternalMemory) -> CUresult;
+}
+extern "C" {
+ pub fn cuImportExternalSemaphore(
+ extSem_out: *mut CUexternalSemaphore,
+ semHandleDesc: *const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuSignalExternalSemaphoresAsync_ptsz(
+ extSemArray: *const CUexternalSemaphore,
+ paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS,
+ numExtSems: ::std::os::raw::c_uint,
+ stream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuWaitExternalSemaphoresAsync_ptsz(
+ extSemArray: *const CUexternalSemaphore,
+ paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS,
+ numExtSems: ::std::os::raw::c_uint,
+ stream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDestroyExternalSemaphore(extSem: CUexternalSemaphore) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitValue32_v2_ptsz(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint32_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitValue64_v2_ptsz(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint64_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWriteValue32_v2_ptsz(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint32_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWriteValue64_v2_ptsz(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint64_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBatchMemOp_v2_ptsz(
+ stream: CUstream,
+ count: ::std::os::raw::c_uint,
+ paramArray: *mut CUstreamBatchMemOpParams,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncGetAttribute(
+ pi: *mut ::std::os::raw::c_int,
+ attrib: CUfunction_attribute,
+ hfunc: CUfunction,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncSetAttribute(
+ hfunc: CUfunction,
+ attrib: CUfunction_attribute,
+ value: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncSetCacheConfig(hfunc: CUfunction, config: CUfunc_cache) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncGetModule(hmod: *mut CUmodule, hfunc: CUfunction) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncGetName(name: *mut *const ::std::os::raw::c_char, hfunc: CUfunction) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncGetParamInfo(
+ func: CUfunction,
+ paramIndex: usize,
+ paramOffset: *mut usize,
+ paramSize: *mut usize,
+ ) -> CUresult;
+}
+impl CUfunctionLoadingState_enum {
+ pub const CU_FUNCTION_LOADING_STATE_UNLOADED: CUfunctionLoadingState_enum =
+ CUfunctionLoadingState_enum(0);
+}
+impl CUfunctionLoadingState_enum {
+ pub const CU_FUNCTION_LOADING_STATE_LOADED: CUfunctionLoadingState_enum =
+ CUfunctionLoadingState_enum(1);
+}
+impl CUfunctionLoadingState_enum {
+ pub const CU_FUNCTION_LOADING_STATE_MAX: CUfunctionLoadingState_enum =
+ CUfunctionLoadingState_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUfunctionLoadingState_enum(pub ::std::os::raw::c_uint);
+pub use self::CUfunctionLoadingState_enum as CUfunctionLoadingState;
+extern "C" {
+ pub fn cuFuncIsLoaded(state: *mut CUfunctionLoadingState, function: CUfunction) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncLoad(function: CUfunction) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchKernel_ptsz(
+ f: CUfunction,
+ gridDimX: ::std::os::raw::c_uint,
+ gridDimY: ::std::os::raw::c_uint,
+ gridDimZ: ::std::os::raw::c_uint,
+ blockDimX: ::std::os::raw::c_uint,
+ blockDimY: ::std::os::raw::c_uint,
+ blockDimZ: ::std::os::raw::c_uint,
+ sharedMemBytes: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ kernelParams: *mut *mut ::std::os::raw::c_void,
+ extra: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchKernelEx_ptsz(
+ config: *const CUlaunchConfig,
+ f: CUfunction,
+ kernelParams: *mut *mut ::std::os::raw::c_void,
+ extra: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchCooperativeKernel_ptsz(
+ f: CUfunction,
+ gridDimX: ::std::os::raw::c_uint,
+ gridDimY: ::std::os::raw::c_uint,
+ gridDimZ: ::std::os::raw::c_uint,
+ blockDimX: ::std::os::raw::c_uint,
+ blockDimY: ::std::os::raw::c_uint,
+ blockDimZ: ::std::os::raw::c_uint,
+ sharedMemBytes: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ kernelParams: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchCooperativeKernelMultiDevice(
+ launchParamsList: *mut CUDA_LAUNCH_PARAMS,
+ numDevices: ::std::os::raw::c_uint,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchHostFunc_ptsz(
+ hStream: CUstream,
+ fn_: CUhostFn,
+ userData: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncSetBlockShape(
+ hfunc: CUfunction,
+ x: ::std::os::raw::c_int,
+ y: ::std::os::raw::c_int,
+ z: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncSetSharedSize(hfunc: CUfunction, bytes: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuParamSetSize(hfunc: CUfunction, numbytes: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuParamSeti(
+ hfunc: CUfunction,
+ offset: ::std::os::raw::c_int,
+ value: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuParamSetf(hfunc: CUfunction, offset: ::std::os::raw::c_int, value: f32) -> CUresult;
+}
+extern "C" {
+ pub fn cuParamSetv(
+ hfunc: CUfunction,
+ offset: ::std::os::raw::c_int,
+ ptr: *mut ::std::os::raw::c_void,
+ numbytes: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunch(f: CUfunction) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchGrid(
+ f: CUfunction,
+ grid_width: ::std::os::raw::c_int,
+ grid_height: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchGridAsync(
+ f: CUfunction,
+ grid_width: ::std::os::raw::c_int,
+ grid_height: ::std::os::raw::c_int,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuParamSetTexRef(
+ hfunc: CUfunction,
+ texunit: ::std::os::raw::c_int,
+ hTexRef: CUtexref,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuFuncSetSharedMemConfig(hfunc: CUfunction, config: CUsharedconfig) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphCreate(phGraph: *mut CUgraph, flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddKernelNode_v2(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ nodeParams: *const CUDA_KERNEL_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphKernelNodeGetParams_v2(
+ hNode: CUgraphNode,
+ nodeParams: *mut CUDA_KERNEL_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphKernelNodeSetParams_v2(
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_KERNEL_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddMemcpyNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ copyParams: *const CUDA_MEMCPY3D,
+ ctx: CUcontext,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphMemcpyNodeGetParams(
+ hNode: CUgraphNode,
+ nodeParams: *mut CUDA_MEMCPY3D,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphMemcpyNodeSetParams(
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_MEMCPY3D,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddMemsetNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ memsetParams: *const CUDA_MEMSET_NODE_PARAMS,
+ ctx: CUcontext,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphMemsetNodeGetParams(
+ hNode: CUgraphNode,
+ nodeParams: *mut CUDA_MEMSET_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphMemsetNodeSetParams(
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_MEMSET_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddHostNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ nodeParams: *const CUDA_HOST_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphHostNodeGetParams(
+ hNode: CUgraphNode,
+ nodeParams: *mut CUDA_HOST_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphHostNodeSetParams(
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_HOST_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddChildGraphNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ childGraph: CUgraph,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphChildGraphNodeGetGraph(hNode: CUgraphNode, phGraph: *mut CUgraph) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddEmptyNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddEventRecordNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ event: CUevent,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphEventRecordNodeGetEvent(hNode: CUgraphNode, event_out: *mut CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphEventRecordNodeSetEvent(hNode: CUgraphNode, event: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddEventWaitNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ event: CUevent,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphEventWaitNodeGetEvent(hNode: CUgraphNode, event_out: *mut CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphEventWaitNodeSetEvent(hNode: CUgraphNode, event: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddExternalSemaphoresSignalNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ nodeParams: *const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExternalSemaphoresSignalNodeGetParams(
+ hNode: CUgraphNode,
+ params_out: *mut CUDA_EXT_SEM_SIGNAL_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExternalSemaphoresSignalNodeSetParams(
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddExternalSemaphoresWaitNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ nodeParams: *const CUDA_EXT_SEM_WAIT_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExternalSemaphoresWaitNodeGetParams(
+ hNode: CUgraphNode,
+ params_out: *mut CUDA_EXT_SEM_WAIT_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExternalSemaphoresWaitNodeSetParams(
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_EXT_SEM_WAIT_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddBatchMemOpNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ nodeParams: *const CUDA_BATCH_MEM_OP_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphBatchMemOpNodeGetParams(
+ hNode: CUgraphNode,
+ nodeParams_out: *mut CUDA_BATCH_MEM_OP_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphBatchMemOpNodeSetParams(
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_BATCH_MEM_OP_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecBatchMemOpNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_BATCH_MEM_OP_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddMemAllocNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ nodeParams: *mut CUDA_MEM_ALLOC_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphMemAllocNodeGetParams(
+ hNode: CUgraphNode,
+ params_out: *mut CUDA_MEM_ALLOC_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddMemFreeNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ dptr: CUdeviceptr,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphMemFreeNodeGetParams(hNode: CUgraphNode, dptr_out: *mut CUdeviceptr) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGraphMemTrim(device: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetGraphMemAttribute(
+ device: CUdevice,
+ attr: CUgraphMem_attribute,
+ value: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceSetGraphMemAttribute(
+ device: CUdevice,
+ attr: CUgraphMem_attribute,
+ value: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphClone(phGraphClone: *mut CUgraph, originalGraph: CUgraph) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeFindInClone(
+ phNode: *mut CUgraphNode,
+ hOriginalNode: CUgraphNode,
+ hClonedGraph: CUgraph,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeGetType(hNode: CUgraphNode, type_: *mut CUgraphNodeType) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphGetNodes(
+ hGraph: CUgraph,
+ nodes: *mut CUgraphNode,
+ numNodes: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphGetRootNodes(
+ hGraph: CUgraph,
+ rootNodes: *mut CUgraphNode,
+ numRootNodes: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphGetEdges(
+ hGraph: CUgraph,
+ from: *mut CUgraphNode,
+ to: *mut CUgraphNode,
+ numEdges: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphGetEdges_v2(
+ hGraph: CUgraph,
+ from: *mut CUgraphNode,
+ to: *mut CUgraphNode,
+ edgeData: *mut CUgraphEdgeData,
+ numEdges: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeGetDependencies(
+ hNode: CUgraphNode,
+ dependencies: *mut CUgraphNode,
+ numDependencies: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeGetDependencies_v2(
+ hNode: CUgraphNode,
+ dependencies: *mut CUgraphNode,
+ edgeData: *mut CUgraphEdgeData,
+ numDependencies: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeGetDependentNodes(
+ hNode: CUgraphNode,
+ dependentNodes: *mut CUgraphNode,
+ numDependentNodes: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeGetDependentNodes_v2(
+ hNode: CUgraphNode,
+ dependentNodes: *mut CUgraphNode,
+ edgeData: *mut CUgraphEdgeData,
+ numDependentNodes: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddDependencies(
+ hGraph: CUgraph,
+ from: *const CUgraphNode,
+ to: *const CUgraphNode,
+ numDependencies: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddDependencies_v2(
+ hGraph: CUgraph,
+ from: *const CUgraphNode,
+ to: *const CUgraphNode,
+ edgeData: *const CUgraphEdgeData,
+ numDependencies: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphRemoveDependencies(
+ hGraph: CUgraph,
+ from: *const CUgraphNode,
+ to: *const CUgraphNode,
+ numDependencies: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphRemoveDependencies_v2(
+ hGraph: CUgraph,
+ from: *const CUgraphNode,
+ to: *const CUgraphNode,
+ edgeData: *const CUgraphEdgeData,
+ numDependencies: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphDestroyNode(hNode: CUgraphNode) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphInstantiateWithFlags(
+ phGraphExec: *mut CUgraphExec,
+ hGraph: CUgraph,
+ flags: ::std::os::raw::c_ulonglong,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphInstantiateWithParams_ptsz(
+ phGraphExec: *mut CUgraphExec,
+ hGraph: CUgraph,
+ instantiateParams: *mut CUDA_GRAPH_INSTANTIATE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecGetFlags(hGraphExec: CUgraphExec, flags: *mut cuuint64_t) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecKernelNodeSetParams_v2(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_KERNEL_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecMemcpyNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ copyParams: *const CUDA_MEMCPY3D,
+ ctx: CUcontext,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecMemsetNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ memsetParams: *const CUDA_MEMSET_NODE_PARAMS,
+ ctx: CUcontext,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecHostNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_HOST_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecChildGraphNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ childGraph: CUgraph,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecEventRecordNodeSetEvent(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ event: CUevent,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecEventWaitNodeSetEvent(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ event: CUevent,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecExternalSemaphoresSignalNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecExternalSemaphoresWaitNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_EXT_SEM_WAIT_NODE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeSetEnabled(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ isEnabled: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeGetEnabled(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ isEnabled: *mut ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphUpload_ptsz(hGraphExec: CUgraphExec, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphLaunch_ptsz(hGraphExec: CUgraphExec, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecDestroy(hGraphExec: CUgraphExec) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphDestroy(hGraph: CUgraph) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecUpdate_v2(
+ hGraphExec: CUgraphExec,
+ hGraph: CUgraph,
+ resultInfo: *mut CUgraphExecUpdateResultInfo,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphKernelNodeCopyAttributes(dst: CUgraphNode, src: CUgraphNode) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphKernelNodeGetAttribute(
+ hNode: CUgraphNode,
+ attr: CUkernelNodeAttrID,
+ value_out: *mut CUkernelNodeAttrValue,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphKernelNodeSetAttribute(
+ hNode: CUgraphNode,
+ attr: CUkernelNodeAttrID,
+ value: *const CUkernelNodeAttrValue,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphDebugDotPrint(
+ hGraph: CUgraph,
+ path: *const ::std::os::raw::c_char,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuUserObjectCreate(
+ object_out: *mut CUuserObject,
+ ptr: *mut ::std::os::raw::c_void,
+ destroy: CUhostFn,
+ initialRefcount: ::std::os::raw::c_uint,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuUserObjectRetain(object: CUuserObject, count: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuUserObjectRelease(object: CUuserObject, count: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphRetainUserObject(
+ graph: CUgraph,
+ object: CUuserObject,
+ count: ::std::os::raw::c_uint,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphReleaseUserObject(
+ graph: CUgraph,
+ object: CUuserObject,
+ count: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ nodeParams: *mut CUgraphNodeParams,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddNode_v2(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ dependencyData: *const CUgraphEdgeData,
+ numDependencies: usize,
+ nodeParams: *mut CUgraphNodeParams,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphNodeSetParams(hNode: CUgraphNode, nodeParams: *mut CUgraphNodeParams)
+ -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ nodeParams: *mut CUgraphNodeParams,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphConditionalHandleCreate(
+ pHandle_out: *mut CUgraphConditionalHandle,
+ hGraph: CUgraph,
+ ctx: CUcontext,
+ defaultLaunchValue: ::std::os::raw::c_uint,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuOccupancyMaxActiveBlocksPerMultiprocessor(
+ numBlocks: *mut ::std::os::raw::c_int,
+ func: CUfunction,
+ blockSize: ::std::os::raw::c_int,
+ dynamicSMemSize: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(
+ numBlocks: *mut ::std::os::raw::c_int,
+ func: CUfunction,
+ blockSize: ::std::os::raw::c_int,
+ dynamicSMemSize: usize,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuOccupancyMaxPotentialBlockSize(
+ minGridSize: *mut ::std::os::raw::c_int,
+ blockSize: *mut ::std::os::raw::c_int,
+ func: CUfunction,
+ blockSizeToDynamicSMemSize: CUoccupancyB2DSize,
+ dynamicSMemSize: usize,
+ blockSizeLimit: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuOccupancyMaxPotentialBlockSizeWithFlags(
+ minGridSize: *mut ::std::os::raw::c_int,
+ blockSize: *mut ::std::os::raw::c_int,
+ func: CUfunction,
+ blockSizeToDynamicSMemSize: CUoccupancyB2DSize,
+ dynamicSMemSize: usize,
+ blockSizeLimit: ::std::os::raw::c_int,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuOccupancyAvailableDynamicSMemPerBlock(
+ dynamicSmemSize: *mut usize,
+ func: CUfunction,
+ numBlocks: ::std::os::raw::c_int,
+ blockSize: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuOccupancyMaxPotentialClusterSize(
+ clusterSize: *mut ::std::os::raw::c_int,
+ func: CUfunction,
+ config: *const CUlaunchConfig,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuOccupancyMaxActiveClusters(
+ numClusters: *mut ::std::os::raw::c_int,
+ func: CUfunction,
+ config: *const CUlaunchConfig,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetArray(
+ hTexRef: CUtexref,
+ hArray: CUarray,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetMipmappedArray(
+ hTexRef: CUtexref,
+ hMipmappedArray: CUmipmappedArray,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetAddress_v2(
+ ByteOffset: *mut usize,
+ hTexRef: CUtexref,
+ dptr: CUdeviceptr,
+ bytes: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetAddress2D_v3(
+ hTexRef: CUtexref,
+ desc: *const CUDA_ARRAY_DESCRIPTOR,
+ dptr: CUdeviceptr,
+ Pitch: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetFormat(
+ hTexRef: CUtexref,
+ fmt: CUarray_format,
+ NumPackedComponents: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetAddressMode(
+ hTexRef: CUtexref,
+ dim: ::std::os::raw::c_int,
+ am: CUaddress_mode,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetFilterMode(hTexRef: CUtexref, fm: CUfilter_mode) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetMipmapFilterMode(hTexRef: CUtexref, fm: CUfilter_mode) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetMipmapLevelBias(hTexRef: CUtexref, bias: f32) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetMipmapLevelClamp(
+ hTexRef: CUtexref,
+ minMipmapLevelClamp: f32,
+ maxMipmapLevelClamp: f32,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetMaxAnisotropy(
+ hTexRef: CUtexref,
+ maxAniso: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetBorderColor(hTexRef: CUtexref, pBorderColor: *mut f32) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetFlags(hTexRef: CUtexref, Flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetAddress_v2(pdptr: *mut CUdeviceptr, hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetArray(phArray: *mut CUarray, hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetMipmappedArray(
+ phMipmappedArray: *mut CUmipmappedArray,
+ hTexRef: CUtexref,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetAddressMode(
+ pam: *mut CUaddress_mode,
+ hTexRef: CUtexref,
+ dim: ::std::os::raw::c_int,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetFilterMode(pfm: *mut CUfilter_mode, hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetFormat(
+ pFormat: *mut CUarray_format,
+ pNumChannels: *mut ::std::os::raw::c_int,
+ hTexRef: CUtexref,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetMipmapFilterMode(pfm: *mut CUfilter_mode, hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetMipmapLevelBias(pbias: *mut f32, hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetMipmapLevelClamp(
+ pminMipmapLevelClamp: *mut f32,
+ pmaxMipmapLevelClamp: *mut f32,
+ hTexRef: CUtexref,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetMaxAnisotropy(
+ pmaxAniso: *mut ::std::os::raw::c_int,
+ hTexRef: CUtexref,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetBorderColor(pBorderColor: *mut f32, hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetFlags(pFlags: *mut ::std::os::raw::c_uint, hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefCreate(pTexRef: *mut CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefDestroy(hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuSurfRefSetArray(
+ hSurfRef: CUsurfref,
+ hArray: CUarray,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuSurfRefGetArray(phArray: *mut CUarray, hSurfRef: CUsurfref) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexObjectCreate(
+ pTexObject: *mut CUtexObject,
+ pResDesc: *const CUDA_RESOURCE_DESC,
+ pTexDesc: *const CUDA_TEXTURE_DESC,
+ pResViewDesc: *const CUDA_RESOURCE_VIEW_DESC,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexObjectDestroy(texObject: CUtexObject) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexObjectGetResourceDesc(
+ pResDesc: *mut CUDA_RESOURCE_DESC,
+ texObject: CUtexObject,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexObjectGetTextureDesc(
+ pTexDesc: *mut CUDA_TEXTURE_DESC,
+ texObject: CUtexObject,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexObjectGetResourceViewDesc(
+ pResViewDesc: *mut CUDA_RESOURCE_VIEW_DESC,
+ texObject: CUtexObject,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuSurfObjectCreate(
+ pSurfObject: *mut CUsurfObject,
+ pResDesc: *const CUDA_RESOURCE_DESC,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuSurfObjectDestroy(surfObject: CUsurfObject) -> CUresult;
+}
+extern "C" {
+ pub fn cuSurfObjectGetResourceDesc(
+ pResDesc: *mut CUDA_RESOURCE_DESC,
+ surfObject: CUsurfObject,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTensorMapEncodeTiled(
+ tensorMap: *mut CUtensorMap,
+ tensorDataType: CUtensorMapDataType,
+ tensorRank: cuuint32_t,
+ globalAddress: *mut ::std::os::raw::c_void,
+ globalDim: *const cuuint64_t,
+ globalStrides: *const cuuint64_t,
+ boxDim: *const cuuint32_t,
+ elementStrides: *const cuuint32_t,
+ interleave: CUtensorMapInterleave,
+ swizzle: CUtensorMapSwizzle,
+ l2Promotion: CUtensorMapL2promotion,
+ oobFill: CUtensorMapFloatOOBfill,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTensorMapEncodeIm2col(
+ tensorMap: *mut CUtensorMap,
+ tensorDataType: CUtensorMapDataType,
+ tensorRank: cuuint32_t,
+ globalAddress: *mut ::std::os::raw::c_void,
+ globalDim: *const cuuint64_t,
+ globalStrides: *const cuuint64_t,
+ pixelBoxLowerCorner: *const ::std::os::raw::c_int,
+ pixelBoxUpperCorner: *const ::std::os::raw::c_int,
+ channelsPerPixel: cuuint32_t,
+ pixelsPerColumn: cuuint32_t,
+ elementStrides: *const cuuint32_t,
+ interleave: CUtensorMapInterleave,
+ swizzle: CUtensorMapSwizzle,
+ l2Promotion: CUtensorMapL2promotion,
+ oobFill: CUtensorMapFloatOOBfill,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTensorMapReplaceAddress(
+ tensorMap: *mut CUtensorMap,
+ globalAddress: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceCanAccessPeer(
+ canAccessPeer: *mut ::std::os::raw::c_int,
+ dev: CUdevice,
+ peerDev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxEnablePeerAccess(peerContext: CUcontext, Flags: ::std::os::raw::c_uint)
+ -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxDisablePeerAccess(peerContext: CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetP2PAttribute(
+ value: *mut ::std::os::raw::c_int,
+ attrib: CUdevice_P2PAttribute,
+ srcDevice: CUdevice,
+ dstDevice: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsUnregisterResource(resource: CUgraphicsResource) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsSubResourceGetMappedArray(
+ pArray: *mut CUarray,
+ resource: CUgraphicsResource,
+ arrayIndex: ::std::os::raw::c_uint,
+ mipLevel: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsResourceGetMappedMipmappedArray(
+ pMipmappedArray: *mut CUmipmappedArray,
+ resource: CUgraphicsResource,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsResourceGetMappedPointer_v2(
+ pDevPtr: *mut CUdeviceptr,
+ pSize: *mut usize,
+ resource: CUgraphicsResource,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsResourceSetMapFlags_v2(
+ resource: CUgraphicsResource,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsMapResources_ptsz(
+ count: ::std::os::raw::c_uint,
+ resources: *mut CUgraphicsResource,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsUnmapResources_ptsz(
+ count: ::std::os::raw::c_uint,
+ resources: *mut CUgraphicsResource,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGetProcAddress_v2(
+ symbol: *const ::std::os::raw::c_char,
+ pfn: *mut *mut ::std::os::raw::c_void,
+ cudaVersion: ::std::os::raw::c_int,
+ flags: cuuint64_t,
+ symbolStatus: *mut CUdriverProcAddressQueryResult,
+ ) -> CUresult;
+}
+impl CUcoredumpSettings_enum {
+ pub const CU_COREDUMP_ENABLE_ON_EXCEPTION: CUcoredumpSettings_enum = CUcoredumpSettings_enum(1);
+}
+impl CUcoredumpSettings_enum {
+ pub const CU_COREDUMP_TRIGGER_HOST: CUcoredumpSettings_enum = CUcoredumpSettings_enum(2);
+}
+impl CUcoredumpSettings_enum {
+ pub const CU_COREDUMP_LIGHTWEIGHT: CUcoredumpSettings_enum = CUcoredumpSettings_enum(3);
+}
+impl CUcoredumpSettings_enum {
+ pub const CU_COREDUMP_ENABLE_USER_TRIGGER: CUcoredumpSettings_enum = CUcoredumpSettings_enum(4);
+}
+impl CUcoredumpSettings_enum {
+ pub const CU_COREDUMP_FILE: CUcoredumpSettings_enum = CUcoredumpSettings_enum(5);
+}
+impl CUcoredumpSettings_enum {
+ pub const CU_COREDUMP_PIPE: CUcoredumpSettings_enum = CUcoredumpSettings_enum(6);
+}
+impl CUcoredumpSettings_enum {
+ pub const CU_COREDUMP_MAX: CUcoredumpSettings_enum = CUcoredumpSettings_enum(7);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUcoredumpSettings_enum(pub ::std::os::raw::c_uint);
+pub use self::CUcoredumpSettings_enum as CUcoredumpSettings;
+extern "C" {
+ pub fn cuCoredumpGetAttribute(
+ attrib: CUcoredumpSettings,
+ value: *mut ::std::os::raw::c_void,
+ size: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCoredumpGetAttributeGlobal(
+ attrib: CUcoredumpSettings,
+ value: *mut ::std::os::raw::c_void,
+ size: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCoredumpSetAttribute(
+ attrib: CUcoredumpSettings,
+ value: *mut ::std::os::raw::c_void,
+ size: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCoredumpSetAttributeGlobal(
+ attrib: CUcoredumpSettings,
+ value: *mut ::std::os::raw::c_void,
+ size: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGetExportTable(
+ ppExportTable: *mut *const ::std::os::raw::c_void,
+ pExportTableId: *const CUuuid,
+ ) -> CUresult;
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUgreenCtx_st {
+ _unused: [u8; 0],
+}
+pub type CUgreenCtx = *mut CUgreenCtx_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUdevResourceDesc_st {
+ _unused: [u8; 0],
+}
+pub type CUdevResourceDesc = *mut CUdevResourceDesc_st;
+impl CUgreenCtxCreate_flags {
+ pub const CU_GREEN_CTX_DEFAULT_STREAM: CUgreenCtxCreate_flags = CUgreenCtxCreate_flags(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUgreenCtxCreate_flags(pub ::std::os::raw::c_uint);
+impl CUdevResourceType {
+ pub const CU_DEV_RESOURCE_TYPE_INVALID: CUdevResourceType = CUdevResourceType(0);
+}
+impl CUdevResourceType {
+ pub const CU_DEV_RESOURCE_TYPE_SM: CUdevResourceType = CUdevResourceType(1);
+}
+impl CUdevResourceType {
+ pub const CU_DEV_RESOURCE_TYPE_MAX: CUdevResourceType = CUdevResourceType(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUdevResourceType(pub ::std::os::raw::c_uint);
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUdevSmResource_st {
+ pub smCount: ::std::os::raw::c_uint,
+}
+pub type CUdevSmResource = CUdevSmResource_st;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUdevResource_st {
+ pub type_: CUdevResourceType,
+ pub _internal_padding: [::std::os::raw::c_uchar; 92usize],
+ pub __bindgen_anon_1: CUdevResource_st__bindgen_ty_1,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUdevResource_st__bindgen_ty_1 {
+ pub sm: CUdevSmResource,
+ pub _oversize: [::std::os::raw::c_uchar; 48usize],
+}
+pub type CUdevResource_v1 = CUdevResource_st;
+pub type CUdevResource = CUdevResource_v1;
+extern "C" {
+ pub fn cuGreenCtxCreate(
+ phCtx: *mut CUgreenCtx,
+ desc: CUdevResourceDesc,
+ dev: CUdevice,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGreenCtxDestroy(hCtx: CUgreenCtx) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxFromGreenCtx(pContext: *mut CUcontext, hCtx: CUgreenCtx) -> CUresult;
+}
+extern "C" {
+ pub fn cuDeviceGetDevResource(
+ device: CUdevice,
+ resource: *mut CUdevResource,
+ type_: CUdevResourceType,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxGetDevResource(
+ hCtx: CUcontext,
+ resource: *mut CUdevResource,
+ type_: CUdevResourceType,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGreenCtxGetDevResource(
+ hCtx: CUgreenCtx,
+ resource: *mut CUdevResource,
+ type_: CUdevResourceType,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevSmResourceSplitByCount(
+ result: *mut CUdevResource,
+ nbGroups: *mut ::std::os::raw::c_uint,
+ input: *const CUdevResource,
+ remaining: *mut CUdevResource,
+ useFlags: ::std::os::raw::c_uint,
+ minCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevResourceGenerateDesc(
+ phDesc: *mut CUdevResourceDesc,
+ resources: *mut CUdevResource,
+ nbResources: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGreenCtxRecordEvent(hCtx: CUgreenCtx, hEvent: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuGreenCtxWaitEvent(hCtx: CUgreenCtx, hEvent: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetGreenCtx(hStream: CUstream, phCtx: *mut CUgreenCtx) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemHostRegister(
+ p: *mut ::std::os::raw::c_void,
+ bytesize: usize,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsResourceSetMapFlags(
+ resource: CUgraphicsResource,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLinkCreate(
+ numOptions: ::std::os::raw::c_uint,
+ options: *mut CUjit_option,
+ optionValues: *mut *mut ::std::os::raw::c_void,
+ stateOut: *mut CUlinkState,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLinkAddData(
+ state: CUlinkState,
+ type_: CUjitInputType,
+ data: *mut ::std::os::raw::c_void,
+ size: usize,
+ name: *const ::std::os::raw::c_char,
+ numOptions: ::std::os::raw::c_uint,
+ options: *mut CUjit_option,
+ optionValues: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLinkAddFile(
+ state: CUlinkState,
+ type_: CUjitInputType,
+ path: *const ::std::os::raw::c_char,
+ numOptions: ::std::os::raw::c_uint,
+ options: *mut CUjit_option,
+ optionValues: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetAddress2D_v2(
+ hTexRef: CUtexref,
+ desc: *const CUDA_ARRAY_DESCRIPTOR,
+ dptr: CUdeviceptr,
+ Pitch: usize,
+ ) -> CUresult;
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUdeviceptr_v1(pub ::std::os::raw::c_uint);
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEMCPY2D_v1_st {
+ pub srcXInBytes: ::std::os::raw::c_uint,
+ pub srcY: ::std::os::raw::c_uint,
+ pub srcMemoryType: CUmemorytype,
+ pub srcHost: *const ::std::os::raw::c_void,
+ pub srcDevice: CUdeviceptr_v1,
+ pub srcArray: CUarray,
+ pub srcPitch: ::std::os::raw::c_uint,
+ pub dstXInBytes: ::std::os::raw::c_uint,
+ pub dstY: ::std::os::raw::c_uint,
+ pub dstMemoryType: CUmemorytype,
+ pub dstHost: *mut ::std::os::raw::c_void,
+ pub dstDevice: CUdeviceptr_v1,
+ pub dstArray: CUarray,
+ pub dstPitch: ::std::os::raw::c_uint,
+ pub WidthInBytes: ::std::os::raw::c_uint,
+ pub Height: ::std::os::raw::c_uint,
+}
+pub type CUDA_MEMCPY2D_v1 = CUDA_MEMCPY2D_v1_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_MEMCPY3D_v1_st {
+ pub srcXInBytes: ::std::os::raw::c_uint,
+ pub srcY: ::std::os::raw::c_uint,
+ pub srcZ: ::std::os::raw::c_uint,
+ pub srcLOD: ::std::os::raw::c_uint,
+ pub srcMemoryType: CUmemorytype,
+ pub srcHost: *const ::std::os::raw::c_void,
+ pub srcDevice: CUdeviceptr_v1,
+ pub srcArray: CUarray,
+ pub reserved0: *mut ::std::os::raw::c_void,
+ pub srcPitch: ::std::os::raw::c_uint,
+ pub srcHeight: ::std::os::raw::c_uint,
+ pub dstXInBytes: ::std::os::raw::c_uint,
+ pub dstY: ::std::os::raw::c_uint,
+ pub dstZ: ::std::os::raw::c_uint,
+ pub dstLOD: ::std::os::raw::c_uint,
+ pub dstMemoryType: CUmemorytype,
+ pub dstHost: *mut ::std::os::raw::c_void,
+ pub dstDevice: CUdeviceptr_v1,
+ pub dstArray: CUarray,
+ pub reserved1: *mut ::std::os::raw::c_void,
+ pub dstPitch: ::std::os::raw::c_uint,
+ pub dstHeight: ::std::os::raw::c_uint,
+ pub WidthInBytes: ::std::os::raw::c_uint,
+ pub Height: ::std::os::raw::c_uint,
+ pub Depth: ::std::os::raw::c_uint,
+}
+pub type CUDA_MEMCPY3D_v1 = CUDA_MEMCPY3D_v1_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_ARRAY_DESCRIPTOR_v1_st {
+ pub Width: ::std::os::raw::c_uint,
+ pub Height: ::std::os::raw::c_uint,
+ pub Format: CUarray_format,
+ pub NumChannels: ::std::os::raw::c_uint,
+}
+pub type CUDA_ARRAY_DESCRIPTOR_v1 = CUDA_ARRAY_DESCRIPTOR_v1_st;
+#[repr(C)]
+#[derive(Copy, Clone, PartialEq, Eq)]
+pub struct CUDA_ARRAY3D_DESCRIPTOR_v1_st {
+ pub Width: ::std::os::raw::c_uint,
+ pub Height: ::std::os::raw::c_uint,
+ pub Depth: ::std::os::raw::c_uint,
+ pub Format: CUarray_format,
+ pub NumChannels: ::std::os::raw::c_uint,
+ pub Flags: ::std::os::raw::c_uint,
+}
+pub type CUDA_ARRAY3D_DESCRIPTOR_v1 = CUDA_ARRAY3D_DESCRIPTOR_v1_st;
+extern "C" {
+ pub fn cuDeviceTotalMem(bytes: *mut ::std::os::raw::c_uint, dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxCreate(
+ pctx: *mut CUcontext,
+ flags: ::std::os::raw::c_uint,
+ dev: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuModuleGetGlobal(
+ dptr: *mut CUdeviceptr_v1,
+ bytes: *mut ::std::os::raw::c_uint,
+ hmod: CUmodule,
+ name: *const ::std::os::raw::c_char,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemGetInfo(
+ free: *mut ::std::os::raw::c_uint,
+ total: *mut ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAlloc(dptr: *mut CUdeviceptr_v1, bytesize: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocPitch(
+ dptr: *mut CUdeviceptr_v1,
+ pPitch: *mut ::std::os::raw::c_uint,
+ WidthInBytes: ::std::os::raw::c_uint,
+ Height: ::std::os::raw::c_uint,
+ ElementSizeBytes: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemFree(dptr: CUdeviceptr_v1) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemGetAddressRange(
+ pbase: *mut CUdeviceptr_v1,
+ psize: *mut ::std::os::raw::c_uint,
+ dptr: CUdeviceptr_v1,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocHost(
+ pp: *mut *mut ::std::os::raw::c_void,
+ bytesize: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemHostGetDevicePointer(
+ pdptr: *mut CUdeviceptr_v1,
+ p: *mut ::std::os::raw::c_void,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoD(
+ dstDevice: CUdeviceptr_v1,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoH(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcDevice: CUdeviceptr_v1,
+ ByteCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoD(
+ dstDevice: CUdeviceptr_v1,
+ srcDevice: CUdeviceptr_v1,
+ ByteCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoA(
+ dstArray: CUarray,
+ dstOffset: ::std::os::raw::c_uint,
+ srcDevice: CUdeviceptr_v1,
+ ByteCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoD(
+ dstDevice: CUdeviceptr_v1,
+ srcArray: CUarray,
+ srcOffset: ::std::os::raw::c_uint,
+ ByteCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoA(
+ dstArray: CUarray,
+ dstOffset: ::std::os::raw::c_uint,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoH(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcArray: CUarray,
+ srcOffset: ::std::os::raw::c_uint,
+ ByteCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoA(
+ dstArray: CUarray,
+ dstOffset: ::std::os::raw::c_uint,
+ srcArray: CUarray,
+ srcOffset: ::std::os::raw::c_uint,
+ ByteCount: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoAAsync(
+ dstArray: CUarray,
+ dstOffset: ::std::os::raw::c_uint,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoHAsync(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcArray: CUarray,
+ srcOffset: ::std::os::raw::c_uint,
+ ByteCount: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2D(pCopy: *const CUDA_MEMCPY2D_v1) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2DUnaligned(pCopy: *const CUDA_MEMCPY2D_v1) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3D(pCopy: *const CUDA_MEMCPY3D_v1) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoDAsync(
+ dstDevice: CUdeviceptr_v1,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoHAsync(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcDevice: CUdeviceptr_v1,
+ ByteCount: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoDAsync(
+ dstDevice: CUdeviceptr_v1,
+ srcDevice: CUdeviceptr_v1,
+ ByteCount: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2DAsync(pCopy: *const CUDA_MEMCPY2D_v1, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3DAsync(pCopy: *const CUDA_MEMCPY3D_v1, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD8(
+ dstDevice: CUdeviceptr_v1,
+ uc: ::std::os::raw::c_uchar,
+ N: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD16(
+ dstDevice: CUdeviceptr_v1,
+ us: ::std::os::raw::c_ushort,
+ N: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD32(
+ dstDevice: CUdeviceptr_v1,
+ ui: ::std::os::raw::c_uint,
+ N: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D8(
+ dstDevice: CUdeviceptr_v1,
+ dstPitch: ::std::os::raw::c_uint,
+ uc: ::std::os::raw::c_uchar,
+ Width: ::std::os::raw::c_uint,
+ Height: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D16(
+ dstDevice: CUdeviceptr_v1,
+ dstPitch: ::std::os::raw::c_uint,
+ us: ::std::os::raw::c_ushort,
+ Width: ::std::os::raw::c_uint,
+ Height: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D32(
+ dstDevice: CUdeviceptr_v1,
+ dstPitch: ::std::os::raw::c_uint,
+ ui: ::std::os::raw::c_uint,
+ Width: ::std::os::raw::c_uint,
+ Height: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArrayCreate(
+ pHandle: *mut CUarray,
+ pAllocateArray: *const CUDA_ARRAY_DESCRIPTOR_v1,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArrayGetDescriptor(
+ pArrayDescriptor: *mut CUDA_ARRAY_DESCRIPTOR_v1,
+ hArray: CUarray,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArray3DCreate(
+ pHandle: *mut CUarray,
+ pAllocateArray: *const CUDA_ARRAY3D_DESCRIPTOR_v1,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuArray3DGetDescriptor(
+ pArrayDescriptor: *mut CUDA_ARRAY3D_DESCRIPTOR_v1,
+ hArray: CUarray,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetAddress(
+ ByteOffset: *mut ::std::os::raw::c_uint,
+ hTexRef: CUtexref,
+ dptr: CUdeviceptr_v1,
+ bytes: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefSetAddress2D(
+ hTexRef: CUtexref,
+ desc: *const CUDA_ARRAY_DESCRIPTOR_v1,
+ dptr: CUdeviceptr_v1,
+ Pitch: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuTexRefGetAddress(pdptr: *mut CUdeviceptr_v1, hTexRef: CUtexref) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsResourceGetMappedPointer(
+ pDevPtr: *mut CUdeviceptr_v1,
+ pSize: *mut ::std::os::raw::c_uint,
+ resource: CUgraphicsResource,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxDestroy(ctx: CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxPopCurrent(pctx: *mut CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuCtxPushCurrent(ctx: CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamDestroy(hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventDestroy(hEvent: CUevent) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevicePrimaryCtxRelease(dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevicePrimaryCtxReset(dev: CUdevice) -> CUresult;
+}
+extern "C" {
+ pub fn cuDevicePrimaryCtxSetFlags(dev: CUdevice, flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoD_v2(
+ dstDevice: CUdeviceptr,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoH_v2(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoD_v2(
+ dstDevice: CUdeviceptr,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoA_v2(
+ dstArray: CUarray,
+ dstOffset: usize,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoD_v2(
+ dstDevice: CUdeviceptr,
+ srcArray: CUarray,
+ srcOffset: usize,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoA_v2(
+ dstArray: CUarray,
+ dstOffset: usize,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoH_v2(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcArray: CUarray,
+ srcOffset: usize,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoA_v2(
+ dstArray: CUarray,
+ dstOffset: usize,
+ srcArray: CUarray,
+ srcOffset: usize,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoAAsync_v2(
+ dstArray: CUarray,
+ dstOffset: usize,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAtoHAsync_v2(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcArray: CUarray,
+ srcOffset: usize,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2D_v2(pCopy: *const CUDA_MEMCPY2D) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2DUnaligned_v2(pCopy: *const CUDA_MEMCPY2D) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3D_v2(pCopy: *const CUDA_MEMCPY3D) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyHtoDAsync_v2(
+ dstDevice: CUdeviceptr,
+ srcHost: *const ::std::os::raw::c_void,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoHAsync_v2(
+ dstHost: *mut ::std::os::raw::c_void,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyDtoDAsync_v2(
+ dstDevice: CUdeviceptr,
+ srcDevice: CUdeviceptr,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy2DAsync_v2(pCopy: *const CUDA_MEMCPY2D, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3DAsync_v2(pCopy: *const CUDA_MEMCPY3D, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD8_v2(dstDevice: CUdeviceptr, uc: ::std::os::raw::c_uchar, N: usize)
+ -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD16_v2(
+ dstDevice: CUdeviceptr,
+ us: ::std::os::raw::c_ushort,
+ N: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD32_v2(dstDevice: CUdeviceptr, ui: ::std::os::raw::c_uint, N: usize)
+ -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D8_v2(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ uc: ::std::os::raw::c_uchar,
+ Width: usize,
+ Height: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D16_v2(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ us: ::std::os::raw::c_ushort,
+ Width: usize,
+ Height: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D32_v2(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ ui: ::std::os::raw::c_uint,
+ Width: usize,
+ Height: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy(dst: CUdeviceptr, src: CUdeviceptr, ByteCount: usize) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyAsync(
+ dst: CUdeviceptr,
+ src: CUdeviceptr,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyPeer(
+ dstDevice: CUdeviceptr,
+ dstContext: CUcontext,
+ srcDevice: CUdeviceptr,
+ srcContext: CUcontext,
+ ByteCount: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpyPeerAsync(
+ dstDevice: CUdeviceptr,
+ dstContext: CUcontext,
+ srcDevice: CUdeviceptr,
+ srcContext: CUcontext,
+ ByteCount: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3DPeer(pCopy: *const CUDA_MEMCPY3D_PEER) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemcpy3DPeerAsync(pCopy: *const CUDA_MEMCPY3D_PEER, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD8Async(
+ dstDevice: CUdeviceptr,
+ uc: ::std::os::raw::c_uchar,
+ N: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD16Async(
+ dstDevice: CUdeviceptr,
+ us: ::std::os::raw::c_ushort,
+ N: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD32Async(
+ dstDevice: CUdeviceptr,
+ ui: ::std::os::raw::c_uint,
+ N: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D8Async(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ uc: ::std::os::raw::c_uchar,
+ Width: usize,
+ Height: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D16Async(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ us: ::std::os::raw::c_ushort,
+ Width: usize,
+ Height: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemsetD2D32Async(
+ dstDevice: CUdeviceptr,
+ dstPitch: usize,
+ ui: ::std::os::raw::c_uint,
+ Width: usize,
+ Height: usize,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetPriority(hStream: CUstream, priority: *mut ::std::os::raw::c_int)
+ -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetId(hStream: CUstream, streamId: *mut ::std::os::raw::c_ulonglong)
+ -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetFlags(hStream: CUstream, flags: *mut ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetCtx(hStream: CUstream, pctx: *mut CUcontext) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitEvent(
+ hStream: CUstream,
+ hEvent: CUevent,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamAddCallback(
+ hStream: CUstream,
+ callback: CUstreamCallback,
+ userData: *mut ::std::os::raw::c_void,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamAttachMemAsync(
+ hStream: CUstream,
+ dptr: CUdeviceptr,
+ length: usize,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamQuery(hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamSynchronize(hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventRecord(hEvent: CUevent, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventRecordWithFlags(
+ hEvent: CUevent,
+ hStream: CUstream,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchKernel(
+ f: CUfunction,
+ gridDimX: ::std::os::raw::c_uint,
+ gridDimY: ::std::os::raw::c_uint,
+ gridDimZ: ::std::os::raw::c_uint,
+ blockDimX: ::std::os::raw::c_uint,
+ blockDimY: ::std::os::raw::c_uint,
+ blockDimZ: ::std::os::raw::c_uint,
+ sharedMemBytes: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ kernelParams: *mut *mut ::std::os::raw::c_void,
+ extra: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchKernelEx(
+ config: *const CUlaunchConfig,
+ f: CUfunction,
+ kernelParams: *mut *mut ::std::os::raw::c_void,
+ extra: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchHostFunc(
+ hStream: CUstream,
+ fn_: CUhostFn,
+ userData: *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsMapResources(
+ count: ::std::os::raw::c_uint,
+ resources: *mut CUgraphicsResource,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsUnmapResources(
+ count: ::std::os::raw::c_uint,
+ resources: *mut CUgraphicsResource,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWriteValue32(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint32_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitValue32(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint32_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWriteValue64(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint64_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitValue64(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint64_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBatchMemOp(
+ stream: CUstream,
+ count: ::std::os::raw::c_uint,
+ paramArray: *mut CUstreamBatchMemOpParams,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWriteValue32_ptsz(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint32_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitValue32_ptsz(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint32_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWriteValue64_ptsz(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint64_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitValue64_ptsz(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint64_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBatchMemOp_ptsz(
+ stream: CUstream,
+ count: ::std::os::raw::c_uint,
+ paramArray: *mut CUstreamBatchMemOpParams,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWriteValue32_v2(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint32_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitValue32_v2(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint32_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWriteValue64_v2(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint64_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamWaitValue64_v2(
+ stream: CUstream,
+ addr: CUdeviceptr,
+ value: cuuint64_t,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBatchMemOp_v2(
+ stream: CUstream,
+ count: ::std::os::raw::c_uint,
+ paramArray: *mut CUstreamBatchMemOpParams,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPrefetchAsync(
+ devPtr: CUdeviceptr,
+ count: usize,
+ dstDevice: CUdevice,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemPrefetchAsync_v2(
+ devPtr: CUdeviceptr,
+ count: usize,
+ location: CUmemLocation,
+ flags: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuLaunchCooperativeKernel(
+ f: CUfunction,
+ gridDimX: ::std::os::raw::c_uint,
+ gridDimY: ::std::os::raw::c_uint,
+ gridDimZ: ::std::os::raw::c_uint,
+ blockDimX: ::std::os::raw::c_uint,
+ blockDimY: ::std::os::raw::c_uint,
+ blockDimZ: ::std::os::raw::c_uint,
+ sharedMemBytes: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ kernelParams: *mut *mut ::std::os::raw::c_void,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuSignalExternalSemaphoresAsync(
+ extSemArray: *const CUexternalSemaphore,
+ paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS,
+ numExtSems: ::std::os::raw::c_uint,
+ stream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuWaitExternalSemaphoresAsync(
+ extSemArray: *const CUexternalSemaphore,
+ paramsArray: *const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS,
+ numExtSems: ::std::os::raw::c_uint,
+ stream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBeginCapture(hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBeginCapture_ptsz(hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBeginCapture_v2(hStream: CUstream, mode: CUstreamCaptureMode) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamBeginCaptureToGraph(
+ hStream: CUstream,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ dependencyData: *const CUgraphEdgeData,
+ numDependencies: usize,
+ mode: CUstreamCaptureMode,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamEndCapture(hStream: CUstream, phGraph: *mut CUgraph) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamIsCapturing(
+ hStream: CUstream,
+ captureStatus: *mut CUstreamCaptureStatus,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetCaptureInfo(
+ hStream: CUstream,
+ captureStatus_out: *mut CUstreamCaptureStatus,
+ id_out: *mut cuuint64_t,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetCaptureInfo_ptsz(
+ hStream: CUstream,
+ captureStatus_out: *mut CUstreamCaptureStatus,
+ id_out: *mut cuuint64_t,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetCaptureInfo_v2(
+ hStream: CUstream,
+ captureStatus_out: *mut CUstreamCaptureStatus,
+ id_out: *mut cuuint64_t,
+ graph_out: *mut CUgraph,
+ dependencies_out: *mut *const CUgraphNode,
+ numDependencies_out: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetCaptureInfo_v3(
+ hStream: CUstream,
+ captureStatus_out: *mut CUstreamCaptureStatus,
+ id_out: *mut cuuint64_t,
+ graph_out: *mut CUgraph,
+ dependencies_out: *mut *const CUgraphNode,
+ edgeData_out: *mut *const CUgraphEdgeData,
+ numDependencies_out: *mut usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphAddKernelNode(
+ phGraphNode: *mut CUgraphNode,
+ hGraph: CUgraph,
+ dependencies: *const CUgraphNode,
+ numDependencies: usize,
+ nodeParams: *const CUDA_KERNEL_NODE_PARAMS_v1,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphKernelNodeGetParams(
+ hNode: CUgraphNode,
+ nodeParams: *mut CUDA_KERNEL_NODE_PARAMS_v1,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphKernelNodeSetParams(
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_KERNEL_NODE_PARAMS_v1,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecKernelNodeSetParams(
+ hGraphExec: CUgraphExec,
+ hNode: CUgraphNode,
+ nodeParams: *const CUDA_KERNEL_NODE_PARAMS_v1,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphInstantiateWithParams(
+ phGraphExec: *mut CUgraphExec,
+ hGraph: CUgraph,
+ instantiateParams: *mut CUDA_GRAPH_INSTANTIATE_PARAMS,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphExecUpdate(
+ hGraphExec: CUgraphExec,
+ hGraph: CUgraph,
+ hErrorNode_out: *mut CUgraphNode,
+ updateResult_out: *mut CUgraphExecUpdateResult,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphUpload(hGraph: CUgraphExec, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphLaunch(hGraph: CUgraphExec, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamCopyAttributes(dstStream: CUstream, srcStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamGetAttribute(
+ hStream: CUstream,
+ attr: CUstreamAttrID,
+ value: *mut CUstreamAttrValue,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamSetAttribute(
+ hStream: CUstream,
+ attr: CUstreamAttrID,
+ param: *const CUstreamAttrValue,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuIpcOpenMemHandle(
+ pdptr: *mut CUdeviceptr,
+ handle: CUipcMemHandle,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphInstantiate(
+ phGraphExec: *mut CUgraphExec,
+ hGraph: CUgraph,
+ phErrorNode: *mut CUgraphNode,
+ logBuffer: *mut ::std::os::raw::c_char,
+ bufferSize: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphInstantiate_v2(
+ phGraphExec: *mut CUgraphExec,
+ hGraph: CUgraph,
+ phErrorNode: *mut CUgraphNode,
+ logBuffer: *mut ::std::os::raw::c_char,
+ bufferSize: usize,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemMapArrayAsync(
+ mapInfoList: *mut CUarrayMapInfo,
+ count: ::std::os::raw::c_uint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemFreeAsync(dptr: CUdeviceptr, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocAsync(dptr: *mut CUdeviceptr, bytesize: usize, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuMemAllocFromPoolAsync(
+ dptr: *mut CUdeviceptr,
+ bytesize: usize,
+ pool: CUmemoryPool,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamUpdateCaptureDependencies(
+ hStream: CUstream,
+ dependencies: *mut CUgraphNode,
+ numDependencies: usize,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuStreamUpdateCaptureDependencies_v2(
+ hStream: CUstream,
+ dependencies: *mut CUgraphNode,
+ dependencyData: *const CUgraphEdgeData,
+ numDependencies: usize,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGetProcAddress(
+ symbol: *const ::std::os::raw::c_char,
+ pfn: *mut *mut ::std::os::raw::c_void,
+ cudaVersion: ::std::os::raw::c_int,
+ flags: cuuint64_t,
+ ) -> CUresult;
+}
+impl CUoutput_mode_enum {
+ pub const CU_OUT_KEY_VALUE_PAIR: CUoutput_mode_enum = CUoutput_mode_enum(0);
+}
+impl CUoutput_mode_enum {
+ pub const CU_OUT_CSV: CUoutput_mode_enum = CUoutput_mode_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUoutput_mode_enum(pub ::std::os::raw::c_uint);
+pub use self::CUoutput_mode_enum as CUoutput_mode;
+extern "C" {
+ pub fn cuProfilerInitialize(
+ configFile: *const ::std::os::raw::c_char,
+ outputFile: *const ::std::os::raw::c_char,
+ outputMode: CUoutput_mode,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuProfilerStart() -> CUresult;
+}
+extern "C" {
+ pub fn cuProfilerStop() -> CUresult;
+}
+pub type GLenum = ::std::os::raw::c_uint;
+pub type GLuint = ::std::os::raw::c_uint;
+pub type khronos_int32_t = i32;
+extern "C" {
+ pub fn cuGraphicsGLRegisterBuffer(
+ pCudaResource: *mut CUgraphicsResource,
+ buffer: GLuint,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsGLRegisterImage(
+ pCudaResource: *mut CUgraphicsResource,
+ image: GLuint,
+ target: GLenum,
+ Flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+impl CUGLDeviceList_enum {
+ pub const CU_GL_DEVICE_LIST_ALL: CUGLDeviceList_enum = CUGLDeviceList_enum(1);
+}
+impl CUGLDeviceList_enum {
+ pub const CU_GL_DEVICE_LIST_CURRENT_FRAME: CUGLDeviceList_enum = CUGLDeviceList_enum(2);
+}
+impl CUGLDeviceList_enum {
+ pub const CU_GL_DEVICE_LIST_NEXT_FRAME: CUGLDeviceList_enum = CUGLDeviceList_enum(3);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUGLDeviceList_enum(pub ::std::os::raw::c_uint);
+pub use self::CUGLDeviceList_enum as CUGLDeviceList;
+extern "C" {
+ pub fn cuGLGetDevices_v2(
+ pCudaDeviceCount: *mut ::std::os::raw::c_uint,
+ pCudaDevices: *mut CUdevice,
+ cudaDeviceCount: ::std::os::raw::c_uint,
+ deviceList: CUGLDeviceList,
+ ) -> CUresult;
+}
+impl CUGLmap_flags_enum {
+ pub const CU_GL_MAP_RESOURCE_FLAGS_NONE: CUGLmap_flags_enum = CUGLmap_flags_enum(0);
+}
+impl CUGLmap_flags_enum {
+ pub const CU_GL_MAP_RESOURCE_FLAGS_READ_ONLY: CUGLmap_flags_enum = CUGLmap_flags_enum(1);
+}
+impl CUGLmap_flags_enum {
+ pub const CU_GL_MAP_RESOURCE_FLAGS_WRITE_DISCARD: CUGLmap_flags_enum = CUGLmap_flags_enum(2);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUGLmap_flags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUGLmap_flags_enum as CUGLmap_flags;
+extern "C" {
+ pub fn cuGLCtxCreate_v2(
+ pCtx: *mut CUcontext,
+ Flags: ::std::os::raw::c_uint,
+ device: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLInit() -> CUresult;
+}
+extern "C" {
+ pub fn cuGLRegisterBufferObject(buffer: GLuint) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLMapBufferObject_v2_ptds(
+ dptr: *mut CUdeviceptr,
+ size: *mut usize,
+ buffer: GLuint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLUnmapBufferObject(buffer: GLuint) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLUnregisterBufferObject(buffer: GLuint) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLSetBufferObjectMapFlags(buffer: GLuint, Flags: ::std::os::raw::c_uint) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLMapBufferObjectAsync_v2_ptsz(
+ dptr: *mut CUdeviceptr,
+ size: *mut usize,
+ buffer: GLuint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLUnmapBufferObjectAsync(buffer: GLuint, hStream: CUstream) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLGetDevices(
+ pCudaDeviceCount: *mut ::std::os::raw::c_uint,
+ pCudaDevices: *mut CUdevice,
+ cudaDeviceCount: ::std::os::raw::c_uint,
+ deviceList: CUGLDeviceList,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLMapBufferObject_v2(
+ dptr: *mut CUdeviceptr,
+ size: *mut usize,
+ buffer: GLuint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLMapBufferObjectAsync_v2(
+ dptr: *mut CUdeviceptr,
+ size: *mut usize,
+ buffer: GLuint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLCtxCreate(
+ pCtx: *mut CUcontext,
+ Flags: ::std::os::raw::c_uint,
+ device: CUdevice,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLMapBufferObject(
+ dptr: *mut CUdeviceptr_v1,
+ size: *mut ::std::os::raw::c_uint,
+ buffer: GLuint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGLMapBufferObjectAsync(
+ dptr: *mut CUdeviceptr_v1,
+ size: *mut ::std::os::raw::c_uint,
+ buffer: GLuint,
+ hStream: CUstream,
+ ) -> CUresult;
+}
+pub type EGLint = khronos_int32_t;
+pub type EGLSyncKHR = *mut ::std::os::raw::c_void;
+pub type EGLImageKHR = *mut ::std::os::raw::c_void;
+pub type EGLStreamKHR = *mut ::std::os::raw::c_void;
+impl CUeglFrameType_enum {
+ pub const CU_EGL_FRAME_TYPE_ARRAY: CUeglFrameType_enum = CUeglFrameType_enum(0);
+}
+impl CUeglFrameType_enum {
+ pub const CU_EGL_FRAME_TYPE_PITCH: CUeglFrameType_enum = CUeglFrameType_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUeglFrameType_enum(pub ::std::os::raw::c_uint);
+pub use self::CUeglFrameType_enum as CUeglFrameType;
+impl CUeglResourceLocationFlags_enum {
+ pub const CU_EGL_RESOURCE_LOCATION_SYSMEM: CUeglResourceLocationFlags_enum =
+ CUeglResourceLocationFlags_enum(0);
+}
+impl CUeglResourceLocationFlags_enum {
+ pub const CU_EGL_RESOURCE_LOCATION_VIDMEM: CUeglResourceLocationFlags_enum =
+ CUeglResourceLocationFlags_enum(1);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUeglResourceLocationFlags_enum(pub ::std::os::raw::c_uint);
+pub use self::CUeglResourceLocationFlags_enum as CUeglResourceLocationFlags;
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV420_PLANAR: CUeglColorFormat_enum = CUeglColorFormat_enum(0);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(1);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV422_PLANAR: CUeglColorFormat_enum = CUeglColorFormat_enum(2);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV422_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(3);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_RGB: CUeglColorFormat_enum = CUeglColorFormat_enum(4);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BGR: CUeglColorFormat_enum = CUeglColorFormat_enum(5);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_ARGB: CUeglColorFormat_enum = CUeglColorFormat_enum(6);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_RGBA: CUeglColorFormat_enum = CUeglColorFormat_enum(7);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_L: CUeglColorFormat_enum = CUeglColorFormat_enum(8);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_R: CUeglColorFormat_enum = CUeglColorFormat_enum(9);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV444_PLANAR: CUeglColorFormat_enum = CUeglColorFormat_enum(10);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV444_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(11);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUYV_422: CUeglColorFormat_enum = CUeglColorFormat_enum(12);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_UYVY_422: CUeglColorFormat_enum = CUeglColorFormat_enum(13);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_ABGR: CUeglColorFormat_enum = CUeglColorFormat_enum(14);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BGRA: CUeglColorFormat_enum = CUeglColorFormat_enum(15);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_A: CUeglColorFormat_enum = CUeglColorFormat_enum(16);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_RG: CUeglColorFormat_enum = CUeglColorFormat_enum(17);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_AYUV: CUeglColorFormat_enum = CUeglColorFormat_enum(18);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU444_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(19);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU422_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(20);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(21);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_444_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(22);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(23);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y12V12U12_444_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(24);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y12V12U12_420_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(25);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_VYUY_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(26);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_UYVY_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(27);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUYV_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(28);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVYU_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(29);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(30);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUVA_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(31);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_AYUV_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(32);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV444_PLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(33);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV422_PLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(34);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV420_PLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(35);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV444_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(36);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV422_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(37);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(38);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU444_PLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(39);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU422_PLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(40);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU420_PLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(41);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU444_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(42);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU422_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(43);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(44);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_RGGB: CUeglColorFormat_enum = CUeglColorFormat_enum(45);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_BGGR: CUeglColorFormat_enum = CUeglColorFormat_enum(46);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_GRBG: CUeglColorFormat_enum = CUeglColorFormat_enum(47);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_GBRG: CUeglColorFormat_enum = CUeglColorFormat_enum(48);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER10_RGGB: CUeglColorFormat_enum = CUeglColorFormat_enum(49);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER10_BGGR: CUeglColorFormat_enum = CUeglColorFormat_enum(50);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER10_GRBG: CUeglColorFormat_enum = CUeglColorFormat_enum(51);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER10_GBRG: CUeglColorFormat_enum = CUeglColorFormat_enum(52);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_RGGB: CUeglColorFormat_enum = CUeglColorFormat_enum(53);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_BGGR: CUeglColorFormat_enum = CUeglColorFormat_enum(54);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_GRBG: CUeglColorFormat_enum = CUeglColorFormat_enum(55);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_GBRG: CUeglColorFormat_enum = CUeglColorFormat_enum(56);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER14_RGGB: CUeglColorFormat_enum = CUeglColorFormat_enum(57);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER14_BGGR: CUeglColorFormat_enum = CUeglColorFormat_enum(58);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER14_GRBG: CUeglColorFormat_enum = CUeglColorFormat_enum(59);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER14_GBRG: CUeglColorFormat_enum = CUeglColorFormat_enum(60);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER20_RGGB: CUeglColorFormat_enum = CUeglColorFormat_enum(61);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER20_BGGR: CUeglColorFormat_enum = CUeglColorFormat_enum(62);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER20_GRBG: CUeglColorFormat_enum = CUeglColorFormat_enum(63);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER20_GBRG: CUeglColorFormat_enum = CUeglColorFormat_enum(64);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU444_PLANAR: CUeglColorFormat_enum = CUeglColorFormat_enum(65);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU422_PLANAR: CUeglColorFormat_enum = CUeglColorFormat_enum(66);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU420_PLANAR: CUeglColorFormat_enum = CUeglColorFormat_enum(67);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_ISP_RGGB: CUeglColorFormat_enum = CUeglColorFormat_enum(68);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_ISP_BGGR: CUeglColorFormat_enum = CUeglColorFormat_enum(69);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_ISP_GRBG: CUeglColorFormat_enum = CUeglColorFormat_enum(70);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_ISP_GBRG: CUeglColorFormat_enum = CUeglColorFormat_enum(71);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_BCCR: CUeglColorFormat_enum = CUeglColorFormat_enum(72);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_RCCB: CUeglColorFormat_enum = CUeglColorFormat_enum(73);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_CRBC: CUeglColorFormat_enum = CUeglColorFormat_enum(74);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER_CBRC: CUeglColorFormat_enum = CUeglColorFormat_enum(75);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER10_CCCC: CUeglColorFormat_enum = CUeglColorFormat_enum(76);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_BCCR: CUeglColorFormat_enum = CUeglColorFormat_enum(77);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_RCCB: CUeglColorFormat_enum = CUeglColorFormat_enum(78);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_CRBC: CUeglColorFormat_enum = CUeglColorFormat_enum(79);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_CBRC: CUeglColorFormat_enum = CUeglColorFormat_enum(80);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_BAYER12_CCCC: CUeglColorFormat_enum = CUeglColorFormat_enum(81);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y: CUeglColorFormat_enum = CUeglColorFormat_enum(82);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR_2020: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(83);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR_2020: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(84);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV420_PLANAR_2020: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(85);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU420_PLANAR_2020: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(86);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR_709: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(87);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR_709: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(88);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV420_PLANAR_709: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(89);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVU420_PLANAR_709: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(90);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR_709: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(91);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR_2020: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(92);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_422_SEMIPLANAR_2020: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(93);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_422_SEMIPLANAR: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(94);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_422_SEMIPLANAR_709: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(95);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(96);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y_709_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(97);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(98);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10_709_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(99);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y12_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(100);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y12_709_ER: CUeglColorFormat_enum = CUeglColorFormat_enum(101);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUVA: CUeglColorFormat_enum = CUeglColorFormat_enum(102);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YUV: CUeglColorFormat_enum = CUeglColorFormat_enum(103);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_YVYU: CUeglColorFormat_enum = CUeglColorFormat_enum(104);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_VYUY: CUeglColorFormat_enum = CUeglColorFormat_enum(105);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(106);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR_709_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(107);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_444_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(108);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y10V10U10_444_SEMIPLANAR_709_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(109);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y12V12U12_420_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(110);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y12V12U12_420_SEMIPLANAR_709_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(111);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y12V12U12_444_SEMIPLANAR_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(112);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_Y12V12U12_444_SEMIPLANAR_709_ER: CUeglColorFormat_enum =
+ CUeglColorFormat_enum(113);
+}
+impl CUeglColorFormat_enum {
+ pub const CU_EGL_COLOR_FORMAT_MAX: CUeglColorFormat_enum = CUeglColorFormat_enum(114);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct CUeglColorFormat_enum(pub ::std::os::raw::c_uint);
+pub use self::CUeglColorFormat_enum as CUeglColorFormat;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUeglFrame_st {
+ pub frame: CUeglFrame_st__bindgen_ty_1,
+ pub width: ::std::os::raw::c_uint,
+ pub height: ::std::os::raw::c_uint,
+ pub depth: ::std::os::raw::c_uint,
+ pub pitch: ::std::os::raw::c_uint,
+ pub planeCount: ::std::os::raw::c_uint,
+ pub numChannels: ::std::os::raw::c_uint,
+ pub frameType: CUeglFrameType,
+ pub eglColorFormat: CUeglColorFormat,
+ pub cuFormat: CUarray_format,
+}
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub union CUeglFrame_st__bindgen_ty_1 {
+ pub pArray: [CUarray; 3usize],
+ pub pPitch: [*mut ::std::os::raw::c_void; 3usize],
+}
+pub type CUeglFrame_v1 = CUeglFrame_st;
+pub type CUeglFrame = CUeglFrame_v1;
+#[repr(C)]
+#[derive(Copy, Clone)]
+pub struct CUeglStreamConnection_st {
+ _unused: [u8; 0],
+}
+pub type CUeglStreamConnection = *mut CUeglStreamConnection_st;
+extern "C" {
+ pub fn cuGraphicsEGLRegisterImage(
+ pCudaResource: *mut CUgraphicsResource,
+ image: EGLImageKHR,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamConsumerConnect(
+ conn: *mut CUeglStreamConnection,
+ stream: EGLStreamKHR,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamConsumerConnectWithFlags(
+ conn: *mut CUeglStreamConnection,
+ stream: EGLStreamKHR,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamConsumerDisconnect(conn: *mut CUeglStreamConnection) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamConsumerAcquireFrame(
+ conn: *mut CUeglStreamConnection,
+ pCudaResource: *mut CUgraphicsResource,
+ pStream: *mut CUstream,
+ timeout: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamConsumerReleaseFrame(
+ conn: *mut CUeglStreamConnection,
+ pCudaResource: CUgraphicsResource,
+ pStream: *mut CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamProducerConnect(
+ conn: *mut CUeglStreamConnection,
+ stream: EGLStreamKHR,
+ width: EGLint,
+ height: EGLint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamProducerDisconnect(conn: *mut CUeglStreamConnection) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamProducerPresentFrame(
+ conn: *mut CUeglStreamConnection,
+ eglframe: CUeglFrame,
+ pStream: *mut CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEGLStreamProducerReturnFrame(
+ conn: *mut CUeglStreamConnection,
+ eglframe: *mut CUeglFrame,
+ pStream: *mut CUstream,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsResourceGetMappedEglFrame(
+ eglFrame: *mut CUeglFrame,
+ resource: CUgraphicsResource,
+ index: ::std::os::raw::c_uint,
+ mipLevel: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuEventCreateFromEGLSync(
+ phEvent: *mut CUevent,
+ eglSync: EGLSyncKHR,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+impl VdpStatus {
+ pub const VDP_STATUS_OK: VdpStatus = VdpStatus(0);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_NO_IMPLEMENTATION: VdpStatus = VdpStatus(1);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_DISPLAY_PREEMPTED: VdpStatus = VdpStatus(2);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_HANDLE: VdpStatus = VdpStatus(3);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_POINTER: VdpStatus = VdpStatus(4);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_CHROMA_TYPE: VdpStatus = VdpStatus(5);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_Y_CB_CR_FORMAT: VdpStatus = VdpStatus(6);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_RGBA_FORMAT: VdpStatus = VdpStatus(7);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_INDEXED_FORMAT: VdpStatus = VdpStatus(8);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_COLOR_STANDARD: VdpStatus = VdpStatus(9);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_COLOR_TABLE_FORMAT: VdpStatus = VdpStatus(10);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_BLEND_FACTOR: VdpStatus = VdpStatus(11);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_BLEND_EQUATION: VdpStatus = VdpStatus(12);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_FLAG: VdpStatus = VdpStatus(13);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_DECODER_PROFILE: VdpStatus = VdpStatus(14);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_VIDEO_MIXER_FEATURE: VdpStatus = VdpStatus(15);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_VIDEO_MIXER_PARAMETER: VdpStatus = VdpStatus(16);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_VIDEO_MIXER_ATTRIBUTE: VdpStatus = VdpStatus(17);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_VIDEO_MIXER_PICTURE_STRUCTURE: VdpStatus = VdpStatus(18);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_FUNC_ID: VdpStatus = VdpStatus(19);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_SIZE: VdpStatus = VdpStatus(20);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_VALUE: VdpStatus = VdpStatus(21);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_INVALID_STRUCT_VERSION: VdpStatus = VdpStatus(22);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_RESOURCES: VdpStatus = VdpStatus(23);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_HANDLE_DEVICE_MISMATCH: VdpStatus = VdpStatus(24);
+}
+impl VdpStatus {
+ pub const VDP_STATUS_ERROR: VdpStatus = VdpStatus(25);
+}
+#[repr(transparent)]
+#[derive(Copy, Clone, Hash, PartialEq, Eq)]
+pub struct VdpStatus(pub ::std::os::raw::c_uint);
+pub type VdpDevice = u32;
+pub type VdpVideoSurface = u32;
+pub type VdpOutputSurface = u32;
+pub type VdpFuncId = u32;
+pub type VdpGetProcAddress = ::std::option::Option<
+ unsafe extern "C" fn(
+ device: VdpDevice,
+ function_id: VdpFuncId,
+ function_pointer: *mut *mut ::std::os::raw::c_void,
+ ) -> VdpStatus,
+>;
+extern "C" {
+ pub fn cuVDPAUGetDevice(
+ pDevice: *mut CUdevice,
+ vdpDevice: VdpDevice,
+ vdpGetProcAddress: VdpGetProcAddress,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuVDPAUCtxCreate_v2(
+ pCtx: *mut CUcontext,
+ flags: ::std::os::raw::c_uint,
+ device: CUdevice,
+ vdpDevice: VdpDevice,
+ vdpGetProcAddress: VdpGetProcAddress,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsVDPAURegisterVideoSurface(
+ pCudaResource: *mut CUgraphicsResource,
+ vdpSurface: VdpVideoSurface,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuGraphicsVDPAURegisterOutputSurface(
+ pCudaResource: *mut CUgraphicsResource,
+ vdpSurface: VdpOutputSurface,
+ flags: ::std::os::raw::c_uint,
+ ) -> CUresult;
+}
+extern "C" {
+ pub fn cuVDPAUCtxCreate(
+ pCtx: *mut CUcontext,
+ flags: ::std::os::raw::c_uint,
+ device: CUdevice,
+ vdpDevice: VdpDevice,
+ vdpGetProcAddress: VdpGetProcAddress,
+ ) -> CUresult;
+}
diff --git a/cuda_base/src/lib.rs b/cuda_base/src/lib.rs
index 3f6f779..b7ebe41 100644
--- a/cuda_base/src/lib.rs
+++ b/cuda_base/src/lib.rs
@@ -216,6 +216,8 @@ fn prepend_cuda_path_to_path(base_path: &Path, path: Path) -> Path {
if ident.starts_with("CU")
|| ident.starts_with("cu")
|| ident.starts_with("GL")
+ || ident.starts_with("EGL")
+ || ident.starts_with("Vdp")
|| ident == "HGPUNV"
{
let mut base_path = base_path.clone();
@@ -343,11 +345,10 @@ fn cuda_derive_display_trait_for_item(
None
}
Item::Struct(item_struct) => {
- let item_struct_name = item_struct.ident.to_string();
if state.ignore_types.contains(&item_struct.ident) {
return None;
}
- if item_struct_name.ends_with("_enum") {
+ if state.enums.contains_key(&item_struct.ident) {
let enum_ = &item_struct.ident;
let enum_iter = iter::repeat(&item_struct.ident);
let variants = state.enums.get(&item_struct.ident).unwrap().iter();
diff --git a/ptx_parser/src/lib.rs b/ptx_parser/src/lib.rs
index 1ea2d71..f2c376d 100644
--- a/ptx_parser/src/lib.rs
+++ b/ptx_parser/src/lib.rs
@@ -284,20 +284,40 @@ fn immediate_value<'a, 'input>(stream: &mut PtxParser<'a, 'input>) -> PResult<as
.parse_next(stream)
}
-pub fn parse_module_unchecked<'input>(text: &'input str) -> Option<ast::Module<'input>> {
- let input = lex_with_span(text).ok()?;
- let mut errors = Vec::new();
- let state = PtxParserState::new(text, &mut errors);
- let parser = PtxParser {
- state,
- input: &input[..],
+pub fn parse_for_errors<'input>(text: &'input str) -> Vec<PtxError> {
+ let (tokens, mut errors) = lex_with_span_unchecked(text);
+ let parse_result = {
+ let state = PtxParserState::new(text, &mut errors);
+ let parser = PtxParser {
+ state,
+ input: &tokens[..],
+ };
+ module
+ .parse(parser)
+ .map_err(|err| PtxError::Parser(err.into_inner()))
};
- let parsing_result = module.parse(parser).ok();
- if !errors.is_empty() {
- None
- } else {
- parsing_result
+ match parse_result {
+ Ok(_) => {}
+ Err(err) => {
+ errors.push(err);
+ }
}
+ errors
+}
+
+fn lex_with_span_unchecked<'input>(
+ text: &'input str,
+) -> (Vec<(Token<'input>, logos::Span)>, Vec<PtxError>) {
+ let lexer = Token::lexer(text);
+ let mut result = Vec::new();
+ let mut errors = Vec::new();
+ for (token, span) in lexer.spanned() {
+ match token {
+ Ok(t) => result.push((t, span)),
+ Err(err) => errors.push(PtxError::Lexer { source: err }),
+ }
+ }
+ (result, errors)
}
pub fn parse_module_checked<'input>(
@@ -342,17 +362,6 @@ pub fn parse_module_checked<'input>(
}
}
-fn lex_with_span<'input>(
- text: &'input str,
-) -> Result<Vec<(Token<'input>, logos::Span)>, TokenError> {
- let lexer = Token::lexer(text);
- let mut result = Vec::new();
- for (token, span) in lexer.spanned() {
- result.push((token?, span));
- }
- Ok(result)
-}
-
fn module<'a, 'input>(stream: &mut PtxParser<'a, 'input>) -> PResult<ast::Module<'input>> {
(
version,
diff --git a/zluda_dump/Cargo.toml b/zluda_dump/Cargo.toml
index 79f7b76..50e7c2a 100644
--- a/zluda_dump/Cargo.toml
+++ b/zluda_dump/Cargo.toml
@@ -2,7 +2,7 @@
name = "zluda_dump"
version = "0.0.0"
authors = ["Andrzej Janik <[email protected]>"]
-edition = "2018"
+edition = "2021"
[lib]
name = "zluda_dump"
@@ -10,6 +10,7 @@ crate-type = ["cdylib"]
[dependencies]
ptx = { path = "../ptx" }
+ptx_parser = { path = "../ptx_parser" }
lz4-sys = "1.9"
regex = "1.4"
dynasm = "1.2"
diff --git a/zluda_dump/src/format.rs b/zluda_dump/src/format.rs
index 380e52d..7bfa060 100644
--- a/zluda_dump/src/format.rs
+++ b/zluda_dump/src/format.rs
@@ -1,11 +1,10 @@
+use cuda_base::cuda_derive_display_trait;
use std::{
ffi::{c_void, CStr},
fmt::LowerHex,
mem, ptr, slice,
};
-use cuda_base::cuda_derive_display_trait;
-
pub(crate) trait CudaDisplay {
fn write(
&self,
@@ -494,6 +493,59 @@ impl CudaDisplay
}
}
+impl CudaDisplay for cuda_types::CUgraphNodeParams_st {
+ fn write(
+ &self,
+ _fn_name: &'static str,
+ _index: usize,
+ _writer: &mut (impl std::io::Write + ?Sized),
+ ) -> std::io::Result<()> {
+ todo!()
+ }
+}
+
+impl CudaDisplay for cuda_types::CUlaunchConfig_st {
+ fn write(
+ &self,
+ _fn_name: &'static str,
+ _index: usize,
+ _writer: &mut (impl std::io::Write + ?Sized),
+ ) -> std::io::Result<()> {
+ todo!()
+ }
+}
+
+impl CudaDisplay for cuda_types::CUeglFrame_st {
+ fn write(
+ &self,
+ _fn_name: &'static str,
+ _index: usize,
+ _writer: &mut (impl std::io::Write + ?Sized),
+ ) -> std::io::Result<()> {
+ todo!()
+ }
+}
+
+impl CudaDisplay for cuda_types::CUdevResource_st {
+ fn write(
+ &self,
+ _fn_name: &'static str,
+ _index: usize,
+ _writer: &mut (impl std::io::Write + ?Sized),
+ ) -> std::io::Result<()> {
+ todo!()
+ }
+}
+impl CudaDisplay for cuda_types::CUlaunchAttribute_st {
+ fn write(
+ &self,
+ _fn_name: &'static str,
+ _index: usize,
+ _writer: &mut (impl std::io::Write + ?Sized),
+ ) -> std::io::Result<()> {
+ todo!()
+ }
+}
impl<T: CudaDisplay> CudaDisplay for *mut T {
fn write(
&self,
@@ -585,27 +637,7 @@ pub fn write_cuGraphKernelNodeGetAttribute(
CudaDisplay::write(&hNode, "cuGraphKernelNodeGetAttribute", 0, writer)?;
writer.write_all(b", attr: ")?;
CudaDisplay::write(&attr, "cuGraphKernelNodeGetAttribute", 1, writer)?;
- match attr {
- cuda_types::CUkernelNodeAttrID::CU_KERNEL_NODE_ATTRIBUTE_ACCESS_POLICY_WINDOW => {
- writer.write_all(b", value_out: ")?;
- CudaDisplay::write(
- unsafe { &(*value_out).accessPolicyWindow },
- "cuGraphKernelNodeGetAttribute",
- 2,
- writer,
- )?;
- }
- cuda_types::CUkernelNodeAttrID::CU_KERNEL_NODE_ATTRIBUTE_COOPERATIVE => {
- writer.write_all(b", value_out: ")?;
- CudaDisplay::write(
- unsafe { &(*value_out).cooperative },
- "cuGraphKernelNodeGetAttribute",
- 2,
- writer,
- )?;
- }
- _ => return writer.write_all(b", ...) "),
- }
+ write_launch_attribute(writer, "cuGraphKernelNodeGetAttribute", 2, attr, value_out)?;
writer.write_all(b") ")
}
@@ -630,28 +662,73 @@ pub fn write_cuStreamGetAttribute(
CudaDisplay::write(&hStream, "cuStreamGetAttribute", 0, writer)?;
writer.write_all(b", attr: ")?;
CudaDisplay::write(&attr, "cuStreamGetAttribute", 1, writer)?;
- match attr {
- cuda_types::CUstreamAttrID::CU_STREAM_ATTRIBUTE_ACCESS_POLICY_WINDOW => {
+ write_launch_attribute(writer, "cuStreamGetAttribute", 2, attr, value_out)?;
+ writer.write_all(b") ")
+}
+
+fn write_launch_attribute(
+ writer: &mut (impl std::io::Write + ?Sized),
+ fn_name: &'static str,
+ index: usize,
+ attribute: cuda_types::CUlaunchAttributeID,
+ value_out: *mut cuda_types::CUstreamAttrValue,
+) -> std::io::Result<()> {
+ match attribute {
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_ACCESS_POLICY_WINDOW => {
writer.write_all(b", value_out: ")?;
CudaDisplay::write(
unsafe { &(*value_out).accessPolicyWindow },
- "cuStreamGetAttribute",
- 2,
+ fn_name,
+ index,
writer,
- )?;
+ )
}
- cuda_types::CUstreamAttrID::CU_STREAM_ATTRIBUTE_SYNCHRONIZATION_POLICY => {
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_COOPERATIVE => {
writer.write_all(b", value_out: ")?;
- CudaDisplay::write(
- unsafe { &(*value_out).syncPolicy },
- "cuStreamGetAttribute",
- 2,
- writer,
- )?;
+ CudaDisplay::write(unsafe { &(*value_out).cooperative }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_SYNCHRONIZATION_POLICY => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).syncPolicy }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_CLUSTER_DIMENSION => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).clusterDim }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).clusterSchedulingPolicyPreference }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_PROGRAMMATIC_STREAM_SERIALIZATION => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).programmaticStreamSerializationAllowed }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_PROGRAMMATIC_EVENT => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).programmaticEvent }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_PRIORITY => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).priority }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).memSyncDomainMap }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_MEM_SYNC_DOMAIN => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).memSyncDomain }, fn_name, index, writer)
}
- _ => return writer.write_all(b", ...) "),
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_LAUNCH_COMPLETION_EVENT => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).launchCompletionEvent }, fn_name, index, writer)
+ }
+ cuda_types::CUlaunchAttributeID::CU_LAUNCH_ATTRIBUTE_DEVICE_UPDATABLE_KERNEL_NODE => {
+ writer.write_all(b", value_out: ")?;
+ CudaDisplay::write(unsafe { &(*value_out).deviceUpdatableKernelNode }, fn_name, index, writer)
+ }
+ _ => writer.write_all(b", ... "),
}
- writer.write_all(b") ")
}
#[allow(non_snake_case)]
@@ -737,7 +814,17 @@ cuda_derive_display_trait!(
CUstreamBatchMemOpParams_union_CUstreamMemOpWaitValueParams_st,
CUstreamBatchMemOpParams_union_CUstreamMemOpWriteValueParams_st,
CUuuid_st,
- HGPUNV
+ HGPUNV,
+ EGLint,
+ EGLSyncKHR,
+ EGLImageKHR,
+ EGLStreamKHR,
+ CUasyncNotificationInfo_st,
+ CUgraphNodeParams_st,
+ CUeglFrame_st,
+ CUdevResource_st,
+ CUlaunchAttribute_st,
+ CUlaunchConfig_st
],
[
cuCtxCreate_v3,
diff --git a/zluda_dump/src/lib.rs b/zluda_dump/src/lib.rs
index 04fc36e..f3801b8 100644
--- a/zluda_dump/src/lib.rs
+++ b/zluda_dump/src/lib.rs
@@ -1,6 +1,4 @@
-use cuda_types::{
- CUdevice, CUdevice_attribute, CUfunction, CUjit_option, CUmodule, CUresult, CUuuid,
-};
+use cuda_types::*;
use paste::paste;
use side_by_side::CudaDynamicFns;
use std::io;
@@ -205,10 +203,10 @@ impl Settings {
}
};
let libcuda_path = match env::var("ZLUDA_CUDA_LIB") {
- Err(env::VarError::NotPresent) => os::LIBCUDA_DEFAULT_PATH.to_owned(),
+ Err(env::VarError::NotPresent) => os::LIBCUDA_DEFAULT_PATH.to_string(),
Err(e) => {
logger.log(log::LogEntry::ErrorBox(Box::new(e) as _));
- os::LIBCUDA_DEFAULT_PATH.to_owned()
+ os::LIBCUDA_DEFAULT_PATH.to_string()
}
Ok(env_string) => env_string,
};
diff --git a/zluda_dump/src/os_unix.rs b/zluda_dump/src/os_unix.rs
index e1e516b..a4f29b2 100644
--- a/zluda_dump/src/os_unix.rs
+++ b/zluda_dump/src/os_unix.rs
@@ -1,8 +1,8 @@
-use crate::cuda::CUuuid;
+use cuda_types::CUuuid;
use std::ffi::{c_void, CStr, CString};
use std::mem;
-pub(crate) const LIBCUDA_DEFAULT_PATH: &'static str = b"/usr/lib/x86_64-linux-gnu/libcuda.so.1\0";
+pub(crate) const LIBCUDA_DEFAULT_PATH: &str = "/usr/lib/x86_64-linux-gnu/libcuda.so.1";
pub unsafe fn load_library(libcuda_path: &str) -> *mut c_void {
let libcuda_path = CString::new(libcuda_path).unwrap();
diff --git a/zluda_dump/src/trace.rs b/zluda_dump/src/trace.rs
index 59a0a0f..9002aca 100644
--- a/zluda_dump/src/trace.rs
+++ b/zluda_dump/src/trace.rs
@@ -1,6 +1,3 @@
-use ptx::{ast::PtxError, Token};
-use ptx::{DisplayParseError, ModuleParserExt};
-
use crate::{dark_api, log, Settings};
use cuda_types::CUmodule;
use std::{
@@ -172,7 +169,7 @@ impl StateTracker {
submodule_index: Option<usize>,
module_text: &str,
) {
- let (_ast, errors) = ptx::ModuleParser::parse_unchecked(module_text);
+ let errors = ptx_parser::parse_for_errors(module_text);
if !errors.is_empty() {
fn_logger.log(log::LogEntry::ModuleParsingError(
DumpWriter::get_file_name(module_index, version, submodule_index, "log"),
@@ -232,7 +229,7 @@ impl DumpWriter {
module_index: usize,
version: Option<usize>,
submodule_index: Option<usize>,
- errors: &[ptx::ParseError<usize, Token<'input>, PtxError>],
+ errors: &[ptx_parser::PtxError<'input>],
) -> io::Result<()> {
let mut log_file = match &self.dump_dir {
None => return Ok(()),
@@ -246,8 +243,7 @@ impl DumpWriter {
));
let mut file = File::create(log_file)?;
for error in errors {
- let pretty_print_error = unsafe { DisplayParseError::new(error, module_text) };
- writeln!(file, "{}", pretty_print_error)?;
+ writeln!(file, "{}", error)?;
}
Ok(())
}