Skip to main content

cudarc/runtime/sys/
mod.rs

1#![cfg_attr(feature = "no-std", no_std)]
2#![allow(non_camel_case_types)]
3#![allow(non_snake_case)]
4#![allow(dead_code)]
5#[cfg(feature = "no-std")]
6extern crate alloc;
7#[cfg(feature = "no-std")]
8extern crate no_std_compat as std;
9#[cfg(any(
10    feature = "cuda-12040",
11    feature = "cuda-12050",
12    feature = "cuda-12060",
13    feature = "cuda-12080",
14    feature = "cuda-12090",
15    feature = "cuda-13000",
16    feature = "cuda-13010",
17    feature = "cuda-13020"
18))]
19pub use self::cudaAsyncNotificationType_enum as cudaAsyncNotificationType;
20pub use self::cudaDataType_t as cudaDataType;
21#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
22pub use self::cudaEmulationMantissaControl_t as cudaEmulationMantissaControl;
23#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
24pub use self::cudaEmulationSpecialValuesSupport_t as cudaEmulationSpecialValuesSupport;
25#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
26pub use self::cudaEmulationStrategy_t as cudaEmulationStrategy;
27pub use self::cudaError as cudaError_t;
28#[cfg(any(
29    feature = "cuda-12030",
30    feature = "cuda-12040",
31    feature = "cuda-12050",
32    feature = "cuda-12060",
33    feature = "cuda-12080",
34    feature = "cuda-12090",
35    feature = "cuda-13000",
36    feature = "cuda-13010",
37    feature = "cuda-13020"
38))]
39pub use self::cudaGraphDependencyType_enum as cudaGraphDependencyType;
40#[cfg(any(
41    feature = "cuda-11040",
42    feature = "cuda-11050",
43    feature = "cuda-11060",
44    feature = "cuda-11070",
45    feature = "cuda-11080"
46))]
47pub use self::cudaOutputMode as cudaOutputMode_t;
48#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
49pub use self::CUDAlogLevel_enum as cudaLogLevel;
50#[cfg(any(feature = "cuda-11040"))]
51pub const CUDART_VERSION: u32 = 11040;
52#[cfg(any(feature = "cuda-11050"))]
53pub const CUDART_VERSION: u32 = 11050;
54#[cfg(any(feature = "cuda-11060"))]
55pub const CUDART_VERSION: u32 = 11060;
56#[cfg(any(feature = "cuda-11070"))]
57pub const CUDART_VERSION: u32 = 11070;
58#[cfg(any(feature = "cuda-11080"))]
59pub const CUDART_VERSION: u32 = 11080;
60#[cfg(any(feature = "cuda-12000"))]
61pub const CUDART_VERSION: u32 = 12000;
62#[cfg(any(feature = "cuda-12010"))]
63pub const CUDART_VERSION: u32 = 12010;
64#[cfg(any(feature = "cuda-12020"))]
65pub const CUDART_VERSION: u32 = 12020;
66#[cfg(any(feature = "cuda-12030"))]
67pub const CUDART_VERSION: u32 = 12030;
68#[cfg(any(feature = "cuda-12040"))]
69pub const CUDART_VERSION: u32 = 12040;
70#[cfg(any(feature = "cuda-12050"))]
71pub const CUDART_VERSION: u32 = 12050;
72#[cfg(any(feature = "cuda-12060"))]
73pub const CUDART_VERSION: u32 = 12060;
74#[cfg(any(feature = "cuda-12080"))]
75pub const CUDART_VERSION: u32 = 12080;
76#[cfg(any(feature = "cuda-12090"))]
77pub const CUDART_VERSION: u32 = 12090;
78#[cfg(any(feature = "cuda-13000"))]
79pub const CUDART_VERSION: u32 = 13000;
80#[cfg(any(feature = "cuda-13010"))]
81pub const CUDART_VERSION: u32 = 13010;
82#[cfg(any(feature = "cuda-13020"))]
83pub const CUDART_VERSION: u32 = 13020;
84pub const CUDA_IPC_HANDLE_SIZE: u32 = 64;
85pub const cudaArrayColorAttachment: u32 = 32;
86pub const cudaArrayCubemap: u32 = 4;
87pub const cudaArrayDefault: u32 = 0;
88#[cfg(any(
89    feature = "cuda-11060",
90    feature = "cuda-11070",
91    feature = "cuda-11080",
92    feature = "cuda-12000",
93    feature = "cuda-12010",
94    feature = "cuda-12020",
95    feature = "cuda-12030",
96    feature = "cuda-12040",
97    feature = "cuda-12050",
98    feature = "cuda-12060",
99    feature = "cuda-12080",
100    feature = "cuda-12090",
101    feature = "cuda-13000",
102    feature = "cuda-13010",
103    feature = "cuda-13020"
104))]
105pub const cudaArrayDeferredMapping: u32 = 128;
106pub const cudaArrayLayered: u32 = 1;
107pub const cudaArraySparse: u32 = 64;
108pub const cudaArraySparsePropertiesSingleMipTail: u32 = 1;
109pub const cudaArraySurfaceLoadStore: u32 = 2;
110pub const cudaArrayTextureGather: u32 = 8;
111#[cfg(any(
112    feature = "cuda-11040",
113    feature = "cuda-11050",
114    feature = "cuda-11060",
115    feature = "cuda-11070",
116    feature = "cuda-11080",
117    feature = "cuda-12000",
118    feature = "cuda-12010",
119    feature = "cuda-12020",
120    feature = "cuda-12030",
121    feature = "cuda-12040",
122    feature = "cuda-12050",
123    feature = "cuda-12060",
124    feature = "cuda-12080",
125    feature = "cuda-12090"
126))]
127pub const cudaCooperativeLaunchMultiDeviceNoPostSync: u32 = 2;
128#[cfg(any(
129    feature = "cuda-11040",
130    feature = "cuda-11050",
131    feature = "cuda-11060",
132    feature = "cuda-11070",
133    feature = "cuda-11080",
134    feature = "cuda-12000",
135    feature = "cuda-12010",
136    feature = "cuda-12020",
137    feature = "cuda-12030",
138    feature = "cuda-12040",
139    feature = "cuda-12050",
140    feature = "cuda-12060",
141    feature = "cuda-12080",
142    feature = "cuda-12090"
143))]
144pub const cudaCooperativeLaunchMultiDeviceNoPreSync: u32 = 1;
145pub const cudaDeviceBlockingSync: u32 = 4;
146pub const cudaDeviceLmemResizeToMax: u32 = 16;
147pub const cudaDeviceMapHost: u32 = 8;
148#[cfg(any(
149    feature = "cuda-11040",
150    feature = "cuda-11050",
151    feature = "cuda-11060",
152    feature = "cuda-11070",
153    feature = "cuda-11080",
154    feature = "cuda-12000"
155))]
156pub const cudaDeviceMask: u32 = 31;
157#[cfg(any(
158    feature = "cuda-12010",
159    feature = "cuda-12020",
160    feature = "cuda-12030",
161    feature = "cuda-12040",
162    feature = "cuda-12050",
163    feature = "cuda-12060",
164    feature = "cuda-12080",
165    feature = "cuda-12090",
166    feature = "cuda-13000",
167    feature = "cuda-13010",
168    feature = "cuda-13020"
169))]
170pub const cudaDeviceMask: u32 = 255;
171pub const cudaDeviceScheduleAuto: u32 = 0;
172pub const cudaDeviceScheduleBlockingSync: u32 = 4;
173pub const cudaDeviceScheduleMask: u32 = 7;
174pub const cudaDeviceScheduleSpin: u32 = 1;
175pub const cudaDeviceScheduleYield: u32 = 2;
176#[cfg(any(
177    feature = "cuda-12010",
178    feature = "cuda-12020",
179    feature = "cuda-12030",
180    feature = "cuda-12040",
181    feature = "cuda-12050",
182    feature = "cuda-12060",
183    feature = "cuda-12080",
184    feature = "cuda-12090",
185    feature = "cuda-13000",
186    feature = "cuda-13010",
187    feature = "cuda-13020"
188))]
189pub const cudaDeviceSyncMemops: u32 = 128;
190pub const cudaEventBlockingSync: u32 = 1;
191pub const cudaEventDefault: u32 = 0;
192pub const cudaEventDisableTiming: u32 = 2;
193pub const cudaEventInterprocess: u32 = 4;
194pub const cudaEventRecordDefault: u32 = 0;
195pub const cudaEventRecordExternal: u32 = 1;
196pub const cudaEventWaitDefault: u32 = 0;
197pub const cudaEventWaitExternal: u32 = 1;
198pub const cudaExternalMemoryDedicated: u32 = 1;
199pub const cudaExternalSemaphoreSignalSkipNvSciBufMemSync: u32 = 1;
200pub const cudaExternalSemaphoreWaitSkipNvSciBufMemSync: u32 = 2;
201#[cfg(any(
202    feature = "cuda-12030",
203    feature = "cuda-12040",
204    feature = "cuda-12050",
205    feature = "cuda-12060",
206    feature = "cuda-12080",
207    feature = "cuda-12090",
208    feature = "cuda-13000",
209    feature = "cuda-13010",
210    feature = "cuda-13020"
211))]
212pub const cudaGraphKernelNodePortDefault: u32 = 0;
213#[cfg(any(
214    feature = "cuda-12030",
215    feature = "cuda-12040",
216    feature = "cuda-12050",
217    feature = "cuda-12060",
218    feature = "cuda-12080",
219    feature = "cuda-12090",
220    feature = "cuda-13000",
221    feature = "cuda-13010",
222    feature = "cuda-13020"
223))]
224pub const cudaGraphKernelNodePortLaunchCompletion: u32 = 2;
225#[cfg(any(
226    feature = "cuda-12030",
227    feature = "cuda-12040",
228    feature = "cuda-12050",
229    feature = "cuda-12060",
230    feature = "cuda-12080",
231    feature = "cuda-12090",
232    feature = "cuda-13000",
233    feature = "cuda-13010",
234    feature = "cuda-13020"
235))]
236pub const cudaGraphKernelNodePortProgrammatic: u32 = 1;
237pub const cudaHostAllocDefault: u32 = 0;
238pub const cudaHostAllocMapped: u32 = 2;
239pub const cudaHostAllocPortable: u32 = 1;
240pub const cudaHostAllocWriteCombined: u32 = 4;
241pub const cudaHostRegisterDefault: u32 = 0;
242pub const cudaHostRegisterIoMemory: u32 = 4;
243pub const cudaHostRegisterMapped: u32 = 2;
244pub const cudaHostRegisterPortable: u32 = 1;
245pub const cudaHostRegisterReadOnly: u32 = 8;
246#[cfg(any(
247    feature = "cuda-12000",
248    feature = "cuda-12010",
249    feature = "cuda-12020",
250    feature = "cuda-12030",
251    feature = "cuda-12040",
252    feature = "cuda-12050",
253    feature = "cuda-12060",
254    feature = "cuda-12080",
255    feature = "cuda-12090",
256    feature = "cuda-13000",
257    feature = "cuda-13010",
258    feature = "cuda-13020"
259))]
260pub const cudaInitDeviceFlagsAreValid: u32 = 1;
261pub const cudaIpcMemLazyEnablePeerAccess: u32 = 1;
262pub const cudaMemAttachGlobal: u32 = 1;
263pub const cudaMemAttachHost: u32 = 2;
264pub const cudaMemAttachSingle: u32 = 4;
265#[cfg(any(
266    feature = "cuda-12080",
267    feature = "cuda-12090",
268    feature = "cuda-13000",
269    feature = "cuda-13010",
270    feature = "cuda-13020"
271))]
272pub const cudaMemPoolCreateUsageHwDecompress: u32 = 2;
273pub const cudaNvSciSyncAttrSignal: u32 = 1;
274pub const cudaNvSciSyncAttrWait: u32 = 2;
275pub const cudaOccupancyDefault: u32 = 0;
276pub const cudaOccupancyDisableCachingOverride: u32 = 1;
277pub const cudaPeerAccessDefault: u32 = 0;
278pub const cudaStreamDefault: u32 = 0;
279pub const cudaStreamNonBlocking: u32 = 1;
280pub const cudaSurfaceType1D: u32 = 1;
281pub const cudaSurfaceType1DLayered: u32 = 241;
282pub const cudaSurfaceType2D: u32 = 2;
283pub const cudaSurfaceType2DLayered: u32 = 242;
284pub const cudaSurfaceType3D: u32 = 3;
285pub const cudaSurfaceTypeCubemap: u32 = 12;
286pub const cudaSurfaceTypeCubemapLayered: u32 = 252;
287pub const cudaTextureType1D: u32 = 1;
288pub const cudaTextureType1DLayered: u32 = 241;
289pub const cudaTextureType2D: u32 = 2;
290pub const cudaTextureType2DLayered: u32 = 242;
291pub const cudaTextureType3D: u32 = 3;
292pub const cudaTextureTypeCubemap: u32 = 12;
293pub const cudaTextureTypeCubemapLayered: u32 = 252;
294pub type cudaArray_const_t = *const cudaArray;
295pub type cudaArray_t = *mut cudaArray;
296#[cfg(any(
297    feature = "cuda-12040",
298    feature = "cuda-12050",
299    feature = "cuda-12060",
300    feature = "cuda-12080",
301    feature = "cuda-12090",
302    feature = "cuda-13000",
303    feature = "cuda-13010",
304    feature = "cuda-13020"
305))]
306pub type cudaAsyncCallback = ::core::option::Option<
307    unsafe extern "C" fn(
308        arg1: *mut cudaAsyncNotificationInfo_t,
309        arg2: *mut ::core::ffi::c_void,
310        arg3: cudaAsyncCallbackHandle_t,
311    ),
312>;
313#[cfg(any(
314    feature = "cuda-12040",
315    feature = "cuda-12050",
316    feature = "cuda-12060",
317    feature = "cuda-12080",
318    feature = "cuda-12090",
319    feature = "cuda-13000",
320    feature = "cuda-13010",
321    feature = "cuda-13020"
322))]
323pub type cudaAsyncCallbackHandle_t = *mut cudaAsyncCallbackEntry;
324#[cfg(any(
325    feature = "cuda-12040",
326    feature = "cuda-12050",
327    feature = "cuda-12060",
328    feature = "cuda-12080",
329    feature = "cuda-12090",
330    feature = "cuda-13000",
331    feature = "cuda-13010",
332    feature = "cuda-13020"
333))]
334pub type cudaAsyncNotificationInfo_t = cudaAsyncNotificationInfo;
335#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
336pub type cudaDevResource = cudaDevResource_st;
337#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
338pub type cudaDevResourceDesc_t = *mut CUdevResourceDesc_st;
339#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
340pub type cudaDevSmResourceGroupParams = cudaDevSmResourceGroupParams_st;
341pub type cudaEvent_t = *mut CUevent_st;
342#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
343pub type cudaExecutionContext_t = *mut cudaExecutionContext_st;
344pub type cudaExternalMemory_t = *mut CUexternalMemory_st;
345pub type cudaExternalSemaphore_t = *mut CUexternalSemaphore_st;
346pub type cudaFunction_t = *mut CUfunc_st;
347#[cfg(any(
348    feature = "cuda-12030",
349    feature = "cuda-12040",
350    feature = "cuda-12050",
351    feature = "cuda-12060",
352    feature = "cuda-12080",
353    feature = "cuda-12090",
354    feature = "cuda-13000",
355    feature = "cuda-13010",
356    feature = "cuda-13020"
357))]
358pub type cudaGraphConditionalHandle = ::core::ffi::c_ulonglong;
359#[cfg(any(
360    feature = "cuda-12040",
361    feature = "cuda-12050",
362    feature = "cuda-12060",
363    feature = "cuda-12080",
364    feature = "cuda-12090",
365    feature = "cuda-13000",
366    feature = "cuda-13010",
367    feature = "cuda-13020"
368))]
369pub type cudaGraphDeviceNode_t = *mut CUgraphDeviceUpdatableNode_st;
370#[cfg(any(
371    feature = "cuda-12030",
372    feature = "cuda-12040",
373    feature = "cuda-12050",
374    feature = "cuda-12060",
375    feature = "cuda-12080",
376    feature = "cuda-12090",
377    feature = "cuda-13000",
378    feature = "cuda-13010",
379    feature = "cuda-13020"
380))]
381pub type cudaGraphEdgeData = cudaGraphEdgeData_st;
382#[cfg(any(
383    feature = "cuda-12000",
384    feature = "cuda-12010",
385    feature = "cuda-12020",
386    feature = "cuda-12030",
387    feature = "cuda-12040",
388    feature = "cuda-12050",
389    feature = "cuda-12060",
390    feature = "cuda-12080",
391    feature = "cuda-12090",
392    feature = "cuda-13000",
393    feature = "cuda-13010",
394    feature = "cuda-13020"
395))]
396pub type cudaGraphExecUpdateResultInfo = cudaGraphExecUpdateResultInfo_st;
397pub type cudaGraphExec_t = *mut CUgraphExec_st;
398#[cfg(any(
399    feature = "cuda-12000",
400    feature = "cuda-12010",
401    feature = "cuda-12020",
402    feature = "cuda-12030",
403    feature = "cuda-12040",
404    feature = "cuda-12050",
405    feature = "cuda-12060",
406    feature = "cuda-12080",
407    feature = "cuda-12090",
408    feature = "cuda-13000",
409    feature = "cuda-13010",
410    feature = "cuda-13020"
411))]
412pub type cudaGraphInstantiateParams = cudaGraphInstantiateParams_st;
413pub type cudaGraphNode_t = *mut CUgraphNode_st;
414pub type cudaGraph_t = *mut CUgraph_st;
415pub type cudaGraphicsResource_t = *mut cudaGraphicsResource;
416pub type cudaHostFn_t =
417    ::core::option::Option<unsafe extern "C" fn(userData: *mut ::core::ffi::c_void)>;
418pub type cudaIpcEventHandle_t = cudaIpcEventHandle_st;
419pub type cudaIpcMemHandle_t = cudaIpcMemHandle_st;
420#[cfg(any(
421    feature = "cuda-12010",
422    feature = "cuda-12020",
423    feature = "cuda-12030",
424    feature = "cuda-12040",
425    feature = "cuda-12050",
426    feature = "cuda-12060",
427    feature = "cuda-12080",
428    feature = "cuda-12090",
429    feature = "cuda-13000",
430    feature = "cuda-13010",
431    feature = "cuda-13020"
432))]
433pub type cudaKernel_t = *mut CUkern_st;
434#[cfg(any(
435    feature = "cuda-11080",
436    feature = "cuda-12000",
437    feature = "cuda-12010",
438    feature = "cuda-12020",
439    feature = "cuda-12030",
440    feature = "cuda-12040",
441    feature = "cuda-12050",
442    feature = "cuda-12060",
443    feature = "cuda-12080",
444    feature = "cuda-12090",
445    feature = "cuda-13000",
446    feature = "cuda-13010",
447    feature = "cuda-13020"
448))]
449pub type cudaLaunchAttribute = cudaLaunchAttribute_st;
450#[cfg(any(
451    feature = "cuda-11080",
452    feature = "cuda-12000",
453    feature = "cuda-12010",
454    feature = "cuda-12020",
455    feature = "cuda-12030",
456    feature = "cuda-12040",
457    feature = "cuda-12050",
458    feature = "cuda-12060",
459    feature = "cuda-12080",
460    feature = "cuda-12090",
461    feature = "cuda-13000",
462    feature = "cuda-13010",
463    feature = "cuda-13020"
464))]
465pub type cudaLaunchConfig_t = cudaLaunchConfig_st;
466#[cfg(any(
467    feature = "cuda-12000",
468    feature = "cuda-12010",
469    feature = "cuda-12020",
470    feature = "cuda-12030",
471    feature = "cuda-12040",
472    feature = "cuda-12050",
473    feature = "cuda-12060",
474    feature = "cuda-12080",
475    feature = "cuda-12090",
476    feature = "cuda-13000",
477    feature = "cuda-13010",
478    feature = "cuda-13020"
479))]
480pub type cudaLaunchMemSyncDomainMap = cudaLaunchMemSyncDomainMap_st;
481#[cfg(any(
482    feature = "cuda-12080",
483    feature = "cuda-12090",
484    feature = "cuda-13000",
485    feature = "cuda-13010",
486    feature = "cuda-13020"
487))]
488pub type cudaLibrary_t = *mut CUlib_st;
489#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
490pub type cudaLogIterator = ::core::ffi::c_uint;
491#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
492pub type cudaLogsCallbackHandle = *mut CUlogsCallbackEntry_st;
493#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
494pub type cudaLogsCallback_t = ::core::option::Option<
495    unsafe extern "C" fn(
496        data: *mut ::core::ffi::c_void,
497        logLevel: cudaLogLevel,
498        message: *mut ::core::ffi::c_char,
499        length: usize,
500    ),
501>;
502#[cfg(any(
503    feature = "cuda-12030",
504    feature = "cuda-12040",
505    feature = "cuda-12050",
506    feature = "cuda-12060",
507    feature = "cuda-12080",
508    feature = "cuda-12090",
509    feature = "cuda-13000",
510    feature = "cuda-13010",
511    feature = "cuda-13020"
512))]
513pub type cudaMemFabricHandle_t = cudaMemFabricHandle_st;
514pub type cudaMemPool_t = *mut CUmemPoolHandle_st;
515pub type cudaMipmappedArray_const_t = *const cudaMipmappedArray;
516pub type cudaMipmappedArray_t = *mut cudaMipmappedArray;
517pub type cudaStreamCallback_t = ::core::option::Option<
518    unsafe extern "C" fn(
519        stream: cudaStream_t,
520        status: cudaError_t,
521        userData: *mut ::core::ffi::c_void,
522    ),
523>;
524pub type cudaStream_t = *mut CUstream_st;
525pub type cudaSurfaceObject_t = ::core::ffi::c_ulonglong;
526pub type cudaTextureObject_t = ::core::ffi::c_ulonglong;
527pub type cudaUUID_t = CUuuid_st;
528pub type cudaUserObject_t = *mut CUuserObject_st;
529#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
530#[repr(u32)]
531#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
532pub enum CUDAlogLevel_enum {
533    cudaLogLevelError = 0,
534    cudaLogLevelWarning = 1,
535}
536#[repr(u32)]
537#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
538pub enum cudaAccessProperty {
539    cudaAccessPropertyNormal = 0,
540    cudaAccessPropertyStreaming = 1,
541    cudaAccessPropertyPersisting = 2,
542}
543#[cfg(any(
544    feature = "cuda-12040",
545    feature = "cuda-12050",
546    feature = "cuda-12060",
547    feature = "cuda-12080",
548    feature = "cuda-12090",
549    feature = "cuda-13000",
550    feature = "cuda-13010",
551    feature = "cuda-13020"
552))]
553#[repr(u32)]
554#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
555pub enum cudaAsyncNotificationType_enum {
556    cudaAsyncNotificationTypeOverBudget = 1,
557}
558#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
559#[repr(u32)]
560#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
561pub enum cudaAtomicOperation {
562    cudaAtomicOperationIntegerAdd = 0,
563    cudaAtomicOperationIntegerMin = 1,
564    cudaAtomicOperationIntegerMax = 2,
565    cudaAtomicOperationIntegerIncrement = 3,
566    cudaAtomicOperationIntegerDecrement = 4,
567    cudaAtomicOperationAnd = 5,
568    cudaAtomicOperationOr = 6,
569    cudaAtomicOperationXOR = 7,
570    cudaAtomicOperationExchange = 8,
571    cudaAtomicOperationCAS = 9,
572    cudaAtomicOperationFloatAdd = 10,
573    cudaAtomicOperationFloatMin = 11,
574    cudaAtomicOperationFloatMax = 12,
575}
576#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
577#[repr(u32)]
578#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
579pub enum cudaAtomicOperationCapability {
580    cudaAtomicCapabilitySigned = 1,
581    cudaAtomicCapabilityUnsigned = 2,
582    cudaAtomicCapabilityReduction = 4,
583    cudaAtomicCapabilityScalar32 = 8,
584    cudaAtomicCapabilityScalar64 = 16,
585    cudaAtomicCapabilityScalar128 = 32,
586    cudaAtomicCapabilityVector32x4 = 64,
587}
588#[cfg(any(
589    feature = "cuda-11040",
590    feature = "cuda-11050",
591    feature = "cuda-11060",
592    feature = "cuda-11070",
593    feature = "cuda-11080",
594    feature = "cuda-12000",
595    feature = "cuda-12010",
596    feature = "cuda-12020",
597    feature = "cuda-12030",
598    feature = "cuda-12040",
599    feature = "cuda-12050",
600    feature = "cuda-12060",
601    feature = "cuda-12080",
602    feature = "cuda-12090"
603))]
604#[repr(u32)]
605#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
606pub enum cudaCGScope {
607    cudaCGScopeInvalid = 0,
608    cudaCGScopeGrid = 1,
609    cudaCGScopeMultiGrid = 2,
610}
611#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
612#[repr(u32)]
613#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
614pub enum cudaCGScope {
615    cudaCGScopeInvalid = 0,
616    cudaCGScopeGrid = 1,
617    cudaCGScopeReserved = 2,
618}
619#[cfg(any(feature = "cuda-11040"))]
620#[repr(u32)]
621#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
622pub enum cudaChannelFormatKind {
623    cudaChannelFormatKindSigned = 0,
624    cudaChannelFormatKindUnsigned = 1,
625    cudaChannelFormatKindFloat = 2,
626    cudaChannelFormatKindNone = 3,
627    cudaChannelFormatKindNV12 = 4,
628}
629#[cfg(any(
630    feature = "cuda-11050",
631    feature = "cuda-11060",
632    feature = "cuda-11070",
633    feature = "cuda-11080",
634    feature = "cuda-12000",
635    feature = "cuda-12010",
636    feature = "cuda-12020",
637    feature = "cuda-12030",
638    feature = "cuda-12040",
639    feature = "cuda-12050",
640    feature = "cuda-12060"
641))]
642#[repr(u32)]
643#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
644pub enum cudaChannelFormatKind {
645    cudaChannelFormatKindSigned = 0,
646    cudaChannelFormatKindUnsigned = 1,
647    cudaChannelFormatKindFloat = 2,
648    cudaChannelFormatKindNone = 3,
649    cudaChannelFormatKindNV12 = 4,
650    cudaChannelFormatKindUnsignedNormalized8X1 = 5,
651    cudaChannelFormatKindUnsignedNormalized8X2 = 6,
652    cudaChannelFormatKindUnsignedNormalized8X4 = 7,
653    cudaChannelFormatKindUnsignedNormalized16X1 = 8,
654    cudaChannelFormatKindUnsignedNormalized16X2 = 9,
655    cudaChannelFormatKindUnsignedNormalized16X4 = 10,
656    cudaChannelFormatKindSignedNormalized8X1 = 11,
657    cudaChannelFormatKindSignedNormalized8X2 = 12,
658    cudaChannelFormatKindSignedNormalized8X4 = 13,
659    cudaChannelFormatKindSignedNormalized16X1 = 14,
660    cudaChannelFormatKindSignedNormalized16X2 = 15,
661    cudaChannelFormatKindSignedNormalized16X4 = 16,
662    cudaChannelFormatKindUnsignedBlockCompressed1 = 17,
663    cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18,
664    cudaChannelFormatKindUnsignedBlockCompressed2 = 19,
665    cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20,
666    cudaChannelFormatKindUnsignedBlockCompressed3 = 21,
667    cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22,
668    cudaChannelFormatKindUnsignedBlockCompressed4 = 23,
669    cudaChannelFormatKindSignedBlockCompressed4 = 24,
670    cudaChannelFormatKindUnsignedBlockCompressed5 = 25,
671    cudaChannelFormatKindSignedBlockCompressed5 = 26,
672    cudaChannelFormatKindUnsignedBlockCompressed6H = 27,
673    cudaChannelFormatKindSignedBlockCompressed6H = 28,
674    cudaChannelFormatKindUnsignedBlockCompressed7 = 29,
675    cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30,
676}
677#[cfg(any(
678    feature = "cuda-12080",
679    feature = "cuda-12090",
680    feature = "cuda-13000",
681    feature = "cuda-13010",
682    feature = "cuda-13020"
683))]
684#[repr(u32)]
685#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
686pub enum cudaChannelFormatKind {
687    cudaChannelFormatKindSigned = 0,
688    cudaChannelFormatKindUnsigned = 1,
689    cudaChannelFormatKindFloat = 2,
690    cudaChannelFormatKindNone = 3,
691    cudaChannelFormatKindNV12 = 4,
692    cudaChannelFormatKindUnsignedNormalized8X1 = 5,
693    cudaChannelFormatKindUnsignedNormalized8X2 = 6,
694    cudaChannelFormatKindUnsignedNormalized8X4 = 7,
695    cudaChannelFormatKindUnsignedNormalized16X1 = 8,
696    cudaChannelFormatKindUnsignedNormalized16X2 = 9,
697    cudaChannelFormatKindUnsignedNormalized16X4 = 10,
698    cudaChannelFormatKindSignedNormalized8X1 = 11,
699    cudaChannelFormatKindSignedNormalized8X2 = 12,
700    cudaChannelFormatKindSignedNormalized8X4 = 13,
701    cudaChannelFormatKindSignedNormalized16X1 = 14,
702    cudaChannelFormatKindSignedNormalized16X2 = 15,
703    cudaChannelFormatKindSignedNormalized16X4 = 16,
704    cudaChannelFormatKindUnsignedBlockCompressed1 = 17,
705    cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18,
706    cudaChannelFormatKindUnsignedBlockCompressed2 = 19,
707    cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20,
708    cudaChannelFormatKindUnsignedBlockCompressed3 = 21,
709    cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22,
710    cudaChannelFormatKindUnsignedBlockCompressed4 = 23,
711    cudaChannelFormatKindSignedBlockCompressed4 = 24,
712    cudaChannelFormatKindUnsignedBlockCompressed5 = 25,
713    cudaChannelFormatKindSignedBlockCompressed5 = 26,
714    cudaChannelFormatKindUnsignedBlockCompressed6H = 27,
715    cudaChannelFormatKindSignedBlockCompressed6H = 28,
716    cudaChannelFormatKindUnsignedBlockCompressed7 = 29,
717    cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30,
718    cudaChannelFormatKindUnsignedNormalized1010102 = 31,
719}
720#[cfg(any(
721    feature = "cuda-11080",
722    feature = "cuda-12000",
723    feature = "cuda-12010",
724    feature = "cuda-12020",
725    feature = "cuda-12030",
726    feature = "cuda-12040",
727    feature = "cuda-12050",
728    feature = "cuda-12060",
729    feature = "cuda-12080",
730    feature = "cuda-12090",
731    feature = "cuda-13000",
732    feature = "cuda-13010",
733    feature = "cuda-13020"
734))]
735#[repr(u32)]
736#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
737pub enum cudaClusterSchedulingPolicy {
738    cudaClusterSchedulingPolicyDefault = 0,
739    cudaClusterSchedulingPolicySpread = 1,
740    cudaClusterSchedulingPolicyLoadBalancing = 2,
741}
742#[repr(u32)]
743#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
744pub enum cudaComputeMode {
745    cudaComputeModeDefault = 0,
746    cudaComputeModeExclusive = 1,
747    cudaComputeModeProhibited = 2,
748    cudaComputeModeExclusiveProcess = 3,
749}
750#[cfg(any(
751    feature = "cuda-11040",
752    feature = "cuda-11050",
753    feature = "cuda-11060",
754    feature = "cuda-11070"
755))]
756#[repr(u32)]
757#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
758pub enum cudaDataType_t {
759    CUDA_R_16F = 2,
760    CUDA_C_16F = 6,
761    CUDA_R_16BF = 14,
762    CUDA_C_16BF = 15,
763    CUDA_R_32F = 0,
764    CUDA_C_32F = 4,
765    CUDA_R_64F = 1,
766    CUDA_C_64F = 5,
767    CUDA_R_4I = 16,
768    CUDA_C_4I = 17,
769    CUDA_R_4U = 18,
770    CUDA_C_4U = 19,
771    CUDA_R_8I = 3,
772    CUDA_C_8I = 7,
773    CUDA_R_8U = 8,
774    CUDA_C_8U = 9,
775    CUDA_R_16I = 20,
776    CUDA_C_16I = 21,
777    CUDA_R_16U = 22,
778    CUDA_C_16U = 23,
779    CUDA_R_32I = 10,
780    CUDA_C_32I = 11,
781    CUDA_R_32U = 12,
782    CUDA_C_32U = 13,
783    CUDA_R_64I = 24,
784    CUDA_C_64I = 25,
785    CUDA_R_64U = 26,
786    CUDA_C_64U = 27,
787}
788#[cfg(any(
789    feature = "cuda-11080",
790    feature = "cuda-12000",
791    feature = "cuda-12010",
792    feature = "cuda-12020",
793    feature = "cuda-12030",
794    feature = "cuda-12040",
795    feature = "cuda-12050",
796    feature = "cuda-12060"
797))]
798#[repr(u32)]
799#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
800pub enum cudaDataType_t {
801    CUDA_R_16F = 2,
802    CUDA_C_16F = 6,
803    CUDA_R_16BF = 14,
804    CUDA_C_16BF = 15,
805    CUDA_R_32F = 0,
806    CUDA_C_32F = 4,
807    CUDA_R_64F = 1,
808    CUDA_C_64F = 5,
809    CUDA_R_4I = 16,
810    CUDA_C_4I = 17,
811    CUDA_R_4U = 18,
812    CUDA_C_4U = 19,
813    CUDA_R_8I = 3,
814    CUDA_C_8I = 7,
815    CUDA_R_8U = 8,
816    CUDA_C_8U = 9,
817    CUDA_R_16I = 20,
818    CUDA_C_16I = 21,
819    CUDA_R_16U = 22,
820    CUDA_C_16U = 23,
821    CUDA_R_32I = 10,
822    CUDA_C_32I = 11,
823    CUDA_R_32U = 12,
824    CUDA_C_32U = 13,
825    CUDA_R_64I = 24,
826    CUDA_C_64I = 25,
827    CUDA_R_64U = 26,
828    CUDA_C_64U = 27,
829    CUDA_R_8F_E4M3 = 28,
830    CUDA_R_8F_E5M2 = 29,
831}
832#[cfg(any(
833    feature = "cuda-12080",
834    feature = "cuda-12090",
835    feature = "cuda-13000",
836    feature = "cuda-13010",
837    feature = "cuda-13020"
838))]
839#[repr(u32)]
840#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
841pub enum cudaDataType_t {
842    CUDA_R_16F = 2,
843    CUDA_C_16F = 6,
844    CUDA_R_16BF = 14,
845    CUDA_C_16BF = 15,
846    CUDA_R_32F = 0,
847    CUDA_C_32F = 4,
848    CUDA_R_64F = 1,
849    CUDA_C_64F = 5,
850    CUDA_R_4I = 16,
851    CUDA_C_4I = 17,
852    CUDA_R_4U = 18,
853    CUDA_C_4U = 19,
854    CUDA_R_8I = 3,
855    CUDA_C_8I = 7,
856    CUDA_R_8U = 8,
857    CUDA_C_8U = 9,
858    CUDA_R_16I = 20,
859    CUDA_C_16I = 21,
860    CUDA_R_16U = 22,
861    CUDA_C_16U = 23,
862    CUDA_R_32I = 10,
863    CUDA_C_32I = 11,
864    CUDA_R_32U = 12,
865    CUDA_C_32U = 13,
866    CUDA_R_64I = 24,
867    CUDA_C_64I = 25,
868    CUDA_R_64U = 26,
869    CUDA_C_64U = 27,
870    CUDA_R_8F_E4M3 = 28,
871    CUDA_R_8F_E5M2 = 29,
872    CUDA_R_8F_UE8M0 = 30,
873    CUDA_R_6F_E2M3 = 31,
874    CUDA_R_6F_E3M2 = 32,
875    CUDA_R_4F_E2M1 = 33,
876}
877#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
878#[repr(u32)]
879#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
880pub enum cudaDevResourceType {
881    cudaDevResourceTypeInvalid = 0,
882    cudaDevResourceTypeSm = 1,
883    cudaDevResourceTypeWorkqueueConfig = 1000,
884    cudaDevResourceTypeWorkqueue = 10000,
885}
886#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
887#[repr(u32)]
888#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
889pub enum cudaDevSmResourceGroup_flags {
890    cudaDevSmResourceGroupDefault = 0,
891    cudaDevSmResourceGroupBackfill = 1,
892}
893#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
894#[repr(u32)]
895#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
896pub enum cudaDevSmResourceSplitByCount_flags {
897    cudaDevSmResourceSplitIgnoreSmCoscheduling = 1,
898    cudaDevSmResourceSplitMaxPotentialClusterSize = 2,
899}
900#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
901#[repr(u32)]
902#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
903pub enum cudaDevWorkqueueConfigScope {
904    cudaDevWorkqueueConfigScopeDeviceCtx = 0,
905    cudaDevWorkqueueConfigScopeGreenCtxBalanced = 1,
906}
907#[cfg(any(feature = "cuda-11040"))]
908#[repr(u32)]
909#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
910pub enum cudaDeviceAttr {
911    cudaDevAttrMaxThreadsPerBlock = 1,
912    cudaDevAttrMaxBlockDimX = 2,
913    cudaDevAttrMaxBlockDimY = 3,
914    cudaDevAttrMaxBlockDimZ = 4,
915    cudaDevAttrMaxGridDimX = 5,
916    cudaDevAttrMaxGridDimY = 6,
917    cudaDevAttrMaxGridDimZ = 7,
918    cudaDevAttrMaxSharedMemoryPerBlock = 8,
919    cudaDevAttrTotalConstantMemory = 9,
920    cudaDevAttrWarpSize = 10,
921    cudaDevAttrMaxPitch = 11,
922    cudaDevAttrMaxRegistersPerBlock = 12,
923    cudaDevAttrClockRate = 13,
924    cudaDevAttrTextureAlignment = 14,
925    cudaDevAttrGpuOverlap = 15,
926    cudaDevAttrMultiProcessorCount = 16,
927    cudaDevAttrKernelExecTimeout = 17,
928    cudaDevAttrIntegrated = 18,
929    cudaDevAttrCanMapHostMemory = 19,
930    cudaDevAttrComputeMode = 20,
931    cudaDevAttrMaxTexture1DWidth = 21,
932    cudaDevAttrMaxTexture2DWidth = 22,
933    cudaDevAttrMaxTexture2DHeight = 23,
934    cudaDevAttrMaxTexture3DWidth = 24,
935    cudaDevAttrMaxTexture3DHeight = 25,
936    cudaDevAttrMaxTexture3DDepth = 26,
937    cudaDevAttrMaxTexture2DLayeredWidth = 27,
938    cudaDevAttrMaxTexture2DLayeredHeight = 28,
939    cudaDevAttrMaxTexture2DLayeredLayers = 29,
940    cudaDevAttrSurfaceAlignment = 30,
941    cudaDevAttrConcurrentKernels = 31,
942    cudaDevAttrEccEnabled = 32,
943    cudaDevAttrPciBusId = 33,
944    cudaDevAttrPciDeviceId = 34,
945    cudaDevAttrTccDriver = 35,
946    cudaDevAttrMemoryClockRate = 36,
947    cudaDevAttrGlobalMemoryBusWidth = 37,
948    cudaDevAttrL2CacheSize = 38,
949    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
950    cudaDevAttrAsyncEngineCount = 40,
951    cudaDevAttrUnifiedAddressing = 41,
952    cudaDevAttrMaxTexture1DLayeredWidth = 42,
953    cudaDevAttrMaxTexture1DLayeredLayers = 43,
954    cudaDevAttrMaxTexture2DGatherWidth = 45,
955    cudaDevAttrMaxTexture2DGatherHeight = 46,
956    cudaDevAttrMaxTexture3DWidthAlt = 47,
957    cudaDevAttrMaxTexture3DHeightAlt = 48,
958    cudaDevAttrMaxTexture3DDepthAlt = 49,
959    cudaDevAttrPciDomainId = 50,
960    cudaDevAttrTexturePitchAlignment = 51,
961    cudaDevAttrMaxTextureCubemapWidth = 52,
962    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
963    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
964    cudaDevAttrMaxSurface1DWidth = 55,
965    cudaDevAttrMaxSurface2DWidth = 56,
966    cudaDevAttrMaxSurface2DHeight = 57,
967    cudaDevAttrMaxSurface3DWidth = 58,
968    cudaDevAttrMaxSurface3DHeight = 59,
969    cudaDevAttrMaxSurface3DDepth = 60,
970    cudaDevAttrMaxSurface1DLayeredWidth = 61,
971    cudaDevAttrMaxSurface1DLayeredLayers = 62,
972    cudaDevAttrMaxSurface2DLayeredWidth = 63,
973    cudaDevAttrMaxSurface2DLayeredHeight = 64,
974    cudaDevAttrMaxSurface2DLayeredLayers = 65,
975    cudaDevAttrMaxSurfaceCubemapWidth = 66,
976    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
977    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
978    cudaDevAttrMaxTexture1DLinearWidth = 69,
979    cudaDevAttrMaxTexture2DLinearWidth = 70,
980    cudaDevAttrMaxTexture2DLinearHeight = 71,
981    cudaDevAttrMaxTexture2DLinearPitch = 72,
982    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
983    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
984    cudaDevAttrComputeCapabilityMajor = 75,
985    cudaDevAttrComputeCapabilityMinor = 76,
986    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
987    cudaDevAttrStreamPrioritiesSupported = 78,
988    cudaDevAttrGlobalL1CacheSupported = 79,
989    cudaDevAttrLocalL1CacheSupported = 80,
990    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
991    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
992    cudaDevAttrManagedMemory = 83,
993    cudaDevAttrIsMultiGpuBoard = 84,
994    cudaDevAttrMultiGpuBoardGroupID = 85,
995    cudaDevAttrHostNativeAtomicSupported = 86,
996    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
997    cudaDevAttrPageableMemoryAccess = 88,
998    cudaDevAttrConcurrentManagedAccess = 89,
999    cudaDevAttrComputePreemptionSupported = 90,
1000    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1001    cudaDevAttrReserved92 = 92,
1002    cudaDevAttrReserved93 = 93,
1003    cudaDevAttrReserved94 = 94,
1004    cudaDevAttrCooperativeLaunch = 95,
1005    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
1006    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
1007    cudaDevAttrCanFlushRemoteWrites = 98,
1008    cudaDevAttrHostRegisterSupported = 99,
1009    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
1010    cudaDevAttrDirectManagedMemAccessFromHost = 101,
1011    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
1012    cudaDevAttrMaxPersistingL2CacheSize = 108,
1013    cudaDevAttrMaxAccessPolicyWindowSize = 109,
1014    cudaDevAttrReservedSharedMemoryPerBlock = 111,
1015    cudaDevAttrSparseCudaArraySupported = 112,
1016    cudaDevAttrHostRegisterReadOnlySupported = 113,
1017    cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114,
1018    cudaDevAttrMemoryPoolsSupported = 115,
1019    cudaDevAttrGPUDirectRDMASupported = 116,
1020    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
1021    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
1022    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
1023    cudaDevAttrMax = 120,
1024}
1025#[cfg(any(feature = "cuda-11050"))]
1026#[repr(u32)]
1027#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1028pub enum cudaDeviceAttr {
1029    cudaDevAttrMaxThreadsPerBlock = 1,
1030    cudaDevAttrMaxBlockDimX = 2,
1031    cudaDevAttrMaxBlockDimY = 3,
1032    cudaDevAttrMaxBlockDimZ = 4,
1033    cudaDevAttrMaxGridDimX = 5,
1034    cudaDevAttrMaxGridDimY = 6,
1035    cudaDevAttrMaxGridDimZ = 7,
1036    cudaDevAttrMaxSharedMemoryPerBlock = 8,
1037    cudaDevAttrTotalConstantMemory = 9,
1038    cudaDevAttrWarpSize = 10,
1039    cudaDevAttrMaxPitch = 11,
1040    cudaDevAttrMaxRegistersPerBlock = 12,
1041    cudaDevAttrClockRate = 13,
1042    cudaDevAttrTextureAlignment = 14,
1043    cudaDevAttrGpuOverlap = 15,
1044    cudaDevAttrMultiProcessorCount = 16,
1045    cudaDevAttrKernelExecTimeout = 17,
1046    cudaDevAttrIntegrated = 18,
1047    cudaDevAttrCanMapHostMemory = 19,
1048    cudaDevAttrComputeMode = 20,
1049    cudaDevAttrMaxTexture1DWidth = 21,
1050    cudaDevAttrMaxTexture2DWidth = 22,
1051    cudaDevAttrMaxTexture2DHeight = 23,
1052    cudaDevAttrMaxTexture3DWidth = 24,
1053    cudaDevAttrMaxTexture3DHeight = 25,
1054    cudaDevAttrMaxTexture3DDepth = 26,
1055    cudaDevAttrMaxTexture2DLayeredWidth = 27,
1056    cudaDevAttrMaxTexture2DLayeredHeight = 28,
1057    cudaDevAttrMaxTexture2DLayeredLayers = 29,
1058    cudaDevAttrSurfaceAlignment = 30,
1059    cudaDevAttrConcurrentKernels = 31,
1060    cudaDevAttrEccEnabled = 32,
1061    cudaDevAttrPciBusId = 33,
1062    cudaDevAttrPciDeviceId = 34,
1063    cudaDevAttrTccDriver = 35,
1064    cudaDevAttrMemoryClockRate = 36,
1065    cudaDevAttrGlobalMemoryBusWidth = 37,
1066    cudaDevAttrL2CacheSize = 38,
1067    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
1068    cudaDevAttrAsyncEngineCount = 40,
1069    cudaDevAttrUnifiedAddressing = 41,
1070    cudaDevAttrMaxTexture1DLayeredWidth = 42,
1071    cudaDevAttrMaxTexture1DLayeredLayers = 43,
1072    cudaDevAttrMaxTexture2DGatherWidth = 45,
1073    cudaDevAttrMaxTexture2DGatherHeight = 46,
1074    cudaDevAttrMaxTexture3DWidthAlt = 47,
1075    cudaDevAttrMaxTexture3DHeightAlt = 48,
1076    cudaDevAttrMaxTexture3DDepthAlt = 49,
1077    cudaDevAttrPciDomainId = 50,
1078    cudaDevAttrTexturePitchAlignment = 51,
1079    cudaDevAttrMaxTextureCubemapWidth = 52,
1080    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
1081    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
1082    cudaDevAttrMaxSurface1DWidth = 55,
1083    cudaDevAttrMaxSurface2DWidth = 56,
1084    cudaDevAttrMaxSurface2DHeight = 57,
1085    cudaDevAttrMaxSurface3DWidth = 58,
1086    cudaDevAttrMaxSurface3DHeight = 59,
1087    cudaDevAttrMaxSurface3DDepth = 60,
1088    cudaDevAttrMaxSurface1DLayeredWidth = 61,
1089    cudaDevAttrMaxSurface1DLayeredLayers = 62,
1090    cudaDevAttrMaxSurface2DLayeredWidth = 63,
1091    cudaDevAttrMaxSurface2DLayeredHeight = 64,
1092    cudaDevAttrMaxSurface2DLayeredLayers = 65,
1093    cudaDevAttrMaxSurfaceCubemapWidth = 66,
1094    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
1095    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
1096    cudaDevAttrMaxTexture1DLinearWidth = 69,
1097    cudaDevAttrMaxTexture2DLinearWidth = 70,
1098    cudaDevAttrMaxTexture2DLinearHeight = 71,
1099    cudaDevAttrMaxTexture2DLinearPitch = 72,
1100    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
1101    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
1102    cudaDevAttrComputeCapabilityMajor = 75,
1103    cudaDevAttrComputeCapabilityMinor = 76,
1104    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
1105    cudaDevAttrStreamPrioritiesSupported = 78,
1106    cudaDevAttrGlobalL1CacheSupported = 79,
1107    cudaDevAttrLocalL1CacheSupported = 80,
1108    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
1109    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
1110    cudaDevAttrManagedMemory = 83,
1111    cudaDevAttrIsMultiGpuBoard = 84,
1112    cudaDevAttrMultiGpuBoardGroupID = 85,
1113    cudaDevAttrHostNativeAtomicSupported = 86,
1114    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
1115    cudaDevAttrPageableMemoryAccess = 88,
1116    cudaDevAttrConcurrentManagedAccess = 89,
1117    cudaDevAttrComputePreemptionSupported = 90,
1118    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1119    cudaDevAttrReserved92 = 92,
1120    cudaDevAttrReserved93 = 93,
1121    cudaDevAttrReserved94 = 94,
1122    cudaDevAttrCooperativeLaunch = 95,
1123    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
1124    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
1125    cudaDevAttrCanFlushRemoteWrites = 98,
1126    cudaDevAttrHostRegisterSupported = 99,
1127    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
1128    cudaDevAttrDirectManagedMemAccessFromHost = 101,
1129    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
1130    cudaDevAttrMaxPersistingL2CacheSize = 108,
1131    cudaDevAttrMaxAccessPolicyWindowSize = 109,
1132    cudaDevAttrReservedSharedMemoryPerBlock = 111,
1133    cudaDevAttrSparseCudaArraySupported = 112,
1134    cudaDevAttrHostRegisterReadOnlySupported = 113,
1135    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
1136    cudaDevAttrMemoryPoolsSupported = 115,
1137    cudaDevAttrGPUDirectRDMASupported = 116,
1138    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
1139    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
1140    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
1141    cudaDevAttrMax = 120,
1142}
1143#[cfg(any(feature = "cuda-11060", feature = "cuda-11070"))]
1144#[repr(u32)]
1145#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1146pub enum cudaDeviceAttr {
1147    cudaDevAttrMaxThreadsPerBlock = 1,
1148    cudaDevAttrMaxBlockDimX = 2,
1149    cudaDevAttrMaxBlockDimY = 3,
1150    cudaDevAttrMaxBlockDimZ = 4,
1151    cudaDevAttrMaxGridDimX = 5,
1152    cudaDevAttrMaxGridDimY = 6,
1153    cudaDevAttrMaxGridDimZ = 7,
1154    cudaDevAttrMaxSharedMemoryPerBlock = 8,
1155    cudaDevAttrTotalConstantMemory = 9,
1156    cudaDevAttrWarpSize = 10,
1157    cudaDevAttrMaxPitch = 11,
1158    cudaDevAttrMaxRegistersPerBlock = 12,
1159    cudaDevAttrClockRate = 13,
1160    cudaDevAttrTextureAlignment = 14,
1161    cudaDevAttrGpuOverlap = 15,
1162    cudaDevAttrMultiProcessorCount = 16,
1163    cudaDevAttrKernelExecTimeout = 17,
1164    cudaDevAttrIntegrated = 18,
1165    cudaDevAttrCanMapHostMemory = 19,
1166    cudaDevAttrComputeMode = 20,
1167    cudaDevAttrMaxTexture1DWidth = 21,
1168    cudaDevAttrMaxTexture2DWidth = 22,
1169    cudaDevAttrMaxTexture2DHeight = 23,
1170    cudaDevAttrMaxTexture3DWidth = 24,
1171    cudaDevAttrMaxTexture3DHeight = 25,
1172    cudaDevAttrMaxTexture3DDepth = 26,
1173    cudaDevAttrMaxTexture2DLayeredWidth = 27,
1174    cudaDevAttrMaxTexture2DLayeredHeight = 28,
1175    cudaDevAttrMaxTexture2DLayeredLayers = 29,
1176    cudaDevAttrSurfaceAlignment = 30,
1177    cudaDevAttrConcurrentKernels = 31,
1178    cudaDevAttrEccEnabled = 32,
1179    cudaDevAttrPciBusId = 33,
1180    cudaDevAttrPciDeviceId = 34,
1181    cudaDevAttrTccDriver = 35,
1182    cudaDevAttrMemoryClockRate = 36,
1183    cudaDevAttrGlobalMemoryBusWidth = 37,
1184    cudaDevAttrL2CacheSize = 38,
1185    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
1186    cudaDevAttrAsyncEngineCount = 40,
1187    cudaDevAttrUnifiedAddressing = 41,
1188    cudaDevAttrMaxTexture1DLayeredWidth = 42,
1189    cudaDevAttrMaxTexture1DLayeredLayers = 43,
1190    cudaDevAttrMaxTexture2DGatherWidth = 45,
1191    cudaDevAttrMaxTexture2DGatherHeight = 46,
1192    cudaDevAttrMaxTexture3DWidthAlt = 47,
1193    cudaDevAttrMaxTexture3DHeightAlt = 48,
1194    cudaDevAttrMaxTexture3DDepthAlt = 49,
1195    cudaDevAttrPciDomainId = 50,
1196    cudaDevAttrTexturePitchAlignment = 51,
1197    cudaDevAttrMaxTextureCubemapWidth = 52,
1198    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
1199    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
1200    cudaDevAttrMaxSurface1DWidth = 55,
1201    cudaDevAttrMaxSurface2DWidth = 56,
1202    cudaDevAttrMaxSurface2DHeight = 57,
1203    cudaDevAttrMaxSurface3DWidth = 58,
1204    cudaDevAttrMaxSurface3DHeight = 59,
1205    cudaDevAttrMaxSurface3DDepth = 60,
1206    cudaDevAttrMaxSurface1DLayeredWidth = 61,
1207    cudaDevAttrMaxSurface1DLayeredLayers = 62,
1208    cudaDevAttrMaxSurface2DLayeredWidth = 63,
1209    cudaDevAttrMaxSurface2DLayeredHeight = 64,
1210    cudaDevAttrMaxSurface2DLayeredLayers = 65,
1211    cudaDevAttrMaxSurfaceCubemapWidth = 66,
1212    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
1213    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
1214    cudaDevAttrMaxTexture1DLinearWidth = 69,
1215    cudaDevAttrMaxTexture2DLinearWidth = 70,
1216    cudaDevAttrMaxTexture2DLinearHeight = 71,
1217    cudaDevAttrMaxTexture2DLinearPitch = 72,
1218    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
1219    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
1220    cudaDevAttrComputeCapabilityMajor = 75,
1221    cudaDevAttrComputeCapabilityMinor = 76,
1222    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
1223    cudaDevAttrStreamPrioritiesSupported = 78,
1224    cudaDevAttrGlobalL1CacheSupported = 79,
1225    cudaDevAttrLocalL1CacheSupported = 80,
1226    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
1227    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
1228    cudaDevAttrManagedMemory = 83,
1229    cudaDevAttrIsMultiGpuBoard = 84,
1230    cudaDevAttrMultiGpuBoardGroupID = 85,
1231    cudaDevAttrHostNativeAtomicSupported = 86,
1232    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
1233    cudaDevAttrPageableMemoryAccess = 88,
1234    cudaDevAttrConcurrentManagedAccess = 89,
1235    cudaDevAttrComputePreemptionSupported = 90,
1236    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1237    cudaDevAttrReserved92 = 92,
1238    cudaDevAttrReserved93 = 93,
1239    cudaDevAttrReserved94 = 94,
1240    cudaDevAttrCooperativeLaunch = 95,
1241    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
1242    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
1243    cudaDevAttrCanFlushRemoteWrites = 98,
1244    cudaDevAttrHostRegisterSupported = 99,
1245    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
1246    cudaDevAttrDirectManagedMemAccessFromHost = 101,
1247    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
1248    cudaDevAttrMaxPersistingL2CacheSize = 108,
1249    cudaDevAttrMaxAccessPolicyWindowSize = 109,
1250    cudaDevAttrReservedSharedMemoryPerBlock = 111,
1251    cudaDevAttrSparseCudaArraySupported = 112,
1252    cudaDevAttrHostRegisterReadOnlySupported = 113,
1253    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
1254    cudaDevAttrMemoryPoolsSupported = 115,
1255    cudaDevAttrGPUDirectRDMASupported = 116,
1256    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
1257    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
1258    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
1259    cudaDevAttrDeferredMappingCudaArraySupported = 121,
1260    cudaDevAttrMax = 122,
1261}
1262#[cfg(any(feature = "cuda-11080"))]
1263#[repr(u32)]
1264#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1265pub enum cudaDeviceAttr {
1266    cudaDevAttrMaxThreadsPerBlock = 1,
1267    cudaDevAttrMaxBlockDimX = 2,
1268    cudaDevAttrMaxBlockDimY = 3,
1269    cudaDevAttrMaxBlockDimZ = 4,
1270    cudaDevAttrMaxGridDimX = 5,
1271    cudaDevAttrMaxGridDimY = 6,
1272    cudaDevAttrMaxGridDimZ = 7,
1273    cudaDevAttrMaxSharedMemoryPerBlock = 8,
1274    cudaDevAttrTotalConstantMemory = 9,
1275    cudaDevAttrWarpSize = 10,
1276    cudaDevAttrMaxPitch = 11,
1277    cudaDevAttrMaxRegistersPerBlock = 12,
1278    cudaDevAttrClockRate = 13,
1279    cudaDevAttrTextureAlignment = 14,
1280    cudaDevAttrGpuOverlap = 15,
1281    cudaDevAttrMultiProcessorCount = 16,
1282    cudaDevAttrKernelExecTimeout = 17,
1283    cudaDevAttrIntegrated = 18,
1284    cudaDevAttrCanMapHostMemory = 19,
1285    cudaDevAttrComputeMode = 20,
1286    cudaDevAttrMaxTexture1DWidth = 21,
1287    cudaDevAttrMaxTexture2DWidth = 22,
1288    cudaDevAttrMaxTexture2DHeight = 23,
1289    cudaDevAttrMaxTexture3DWidth = 24,
1290    cudaDevAttrMaxTexture3DHeight = 25,
1291    cudaDevAttrMaxTexture3DDepth = 26,
1292    cudaDevAttrMaxTexture2DLayeredWidth = 27,
1293    cudaDevAttrMaxTexture2DLayeredHeight = 28,
1294    cudaDevAttrMaxTexture2DLayeredLayers = 29,
1295    cudaDevAttrSurfaceAlignment = 30,
1296    cudaDevAttrConcurrentKernels = 31,
1297    cudaDevAttrEccEnabled = 32,
1298    cudaDevAttrPciBusId = 33,
1299    cudaDevAttrPciDeviceId = 34,
1300    cudaDevAttrTccDriver = 35,
1301    cudaDevAttrMemoryClockRate = 36,
1302    cudaDevAttrGlobalMemoryBusWidth = 37,
1303    cudaDevAttrL2CacheSize = 38,
1304    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
1305    cudaDevAttrAsyncEngineCount = 40,
1306    cudaDevAttrUnifiedAddressing = 41,
1307    cudaDevAttrMaxTexture1DLayeredWidth = 42,
1308    cudaDevAttrMaxTexture1DLayeredLayers = 43,
1309    cudaDevAttrMaxTexture2DGatherWidth = 45,
1310    cudaDevAttrMaxTexture2DGatherHeight = 46,
1311    cudaDevAttrMaxTexture3DWidthAlt = 47,
1312    cudaDevAttrMaxTexture3DHeightAlt = 48,
1313    cudaDevAttrMaxTexture3DDepthAlt = 49,
1314    cudaDevAttrPciDomainId = 50,
1315    cudaDevAttrTexturePitchAlignment = 51,
1316    cudaDevAttrMaxTextureCubemapWidth = 52,
1317    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
1318    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
1319    cudaDevAttrMaxSurface1DWidth = 55,
1320    cudaDevAttrMaxSurface2DWidth = 56,
1321    cudaDevAttrMaxSurface2DHeight = 57,
1322    cudaDevAttrMaxSurface3DWidth = 58,
1323    cudaDevAttrMaxSurface3DHeight = 59,
1324    cudaDevAttrMaxSurface3DDepth = 60,
1325    cudaDevAttrMaxSurface1DLayeredWidth = 61,
1326    cudaDevAttrMaxSurface1DLayeredLayers = 62,
1327    cudaDevAttrMaxSurface2DLayeredWidth = 63,
1328    cudaDevAttrMaxSurface2DLayeredHeight = 64,
1329    cudaDevAttrMaxSurface2DLayeredLayers = 65,
1330    cudaDevAttrMaxSurfaceCubemapWidth = 66,
1331    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
1332    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
1333    cudaDevAttrMaxTexture1DLinearWidth = 69,
1334    cudaDevAttrMaxTexture2DLinearWidth = 70,
1335    cudaDevAttrMaxTexture2DLinearHeight = 71,
1336    cudaDevAttrMaxTexture2DLinearPitch = 72,
1337    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
1338    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
1339    cudaDevAttrComputeCapabilityMajor = 75,
1340    cudaDevAttrComputeCapabilityMinor = 76,
1341    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
1342    cudaDevAttrStreamPrioritiesSupported = 78,
1343    cudaDevAttrGlobalL1CacheSupported = 79,
1344    cudaDevAttrLocalL1CacheSupported = 80,
1345    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
1346    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
1347    cudaDevAttrManagedMemory = 83,
1348    cudaDevAttrIsMultiGpuBoard = 84,
1349    cudaDevAttrMultiGpuBoardGroupID = 85,
1350    cudaDevAttrHostNativeAtomicSupported = 86,
1351    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
1352    cudaDevAttrPageableMemoryAccess = 88,
1353    cudaDevAttrConcurrentManagedAccess = 89,
1354    cudaDevAttrComputePreemptionSupported = 90,
1355    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1356    cudaDevAttrReserved92 = 92,
1357    cudaDevAttrReserved93 = 93,
1358    cudaDevAttrReserved94 = 94,
1359    cudaDevAttrCooperativeLaunch = 95,
1360    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
1361    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
1362    cudaDevAttrCanFlushRemoteWrites = 98,
1363    cudaDevAttrHostRegisterSupported = 99,
1364    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
1365    cudaDevAttrDirectManagedMemAccessFromHost = 101,
1366    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
1367    cudaDevAttrMaxPersistingL2CacheSize = 108,
1368    cudaDevAttrMaxAccessPolicyWindowSize = 109,
1369    cudaDevAttrReservedSharedMemoryPerBlock = 111,
1370    cudaDevAttrSparseCudaArraySupported = 112,
1371    cudaDevAttrHostRegisterReadOnlySupported = 113,
1372    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
1373    cudaDevAttrMemoryPoolsSupported = 115,
1374    cudaDevAttrGPUDirectRDMASupported = 116,
1375    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
1376    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
1377    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
1378    cudaDevAttrClusterLaunch = 120,
1379    cudaDevAttrDeferredMappingCudaArraySupported = 121,
1380    cudaDevAttrMax = 122,
1381}
1382#[cfg(any(feature = "cuda-12000"))]
1383#[repr(u32)]
1384#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1385pub enum cudaDeviceAttr {
1386    cudaDevAttrMaxThreadsPerBlock = 1,
1387    cudaDevAttrMaxBlockDimX = 2,
1388    cudaDevAttrMaxBlockDimY = 3,
1389    cudaDevAttrMaxBlockDimZ = 4,
1390    cudaDevAttrMaxGridDimX = 5,
1391    cudaDevAttrMaxGridDimY = 6,
1392    cudaDevAttrMaxGridDimZ = 7,
1393    cudaDevAttrMaxSharedMemoryPerBlock = 8,
1394    cudaDevAttrTotalConstantMemory = 9,
1395    cudaDevAttrWarpSize = 10,
1396    cudaDevAttrMaxPitch = 11,
1397    cudaDevAttrMaxRegistersPerBlock = 12,
1398    cudaDevAttrClockRate = 13,
1399    cudaDevAttrTextureAlignment = 14,
1400    cudaDevAttrGpuOverlap = 15,
1401    cudaDevAttrMultiProcessorCount = 16,
1402    cudaDevAttrKernelExecTimeout = 17,
1403    cudaDevAttrIntegrated = 18,
1404    cudaDevAttrCanMapHostMemory = 19,
1405    cudaDevAttrComputeMode = 20,
1406    cudaDevAttrMaxTexture1DWidth = 21,
1407    cudaDevAttrMaxTexture2DWidth = 22,
1408    cudaDevAttrMaxTexture2DHeight = 23,
1409    cudaDevAttrMaxTexture3DWidth = 24,
1410    cudaDevAttrMaxTexture3DHeight = 25,
1411    cudaDevAttrMaxTexture3DDepth = 26,
1412    cudaDevAttrMaxTexture2DLayeredWidth = 27,
1413    cudaDevAttrMaxTexture2DLayeredHeight = 28,
1414    cudaDevAttrMaxTexture2DLayeredLayers = 29,
1415    cudaDevAttrSurfaceAlignment = 30,
1416    cudaDevAttrConcurrentKernels = 31,
1417    cudaDevAttrEccEnabled = 32,
1418    cudaDevAttrPciBusId = 33,
1419    cudaDevAttrPciDeviceId = 34,
1420    cudaDevAttrTccDriver = 35,
1421    cudaDevAttrMemoryClockRate = 36,
1422    cudaDevAttrGlobalMemoryBusWidth = 37,
1423    cudaDevAttrL2CacheSize = 38,
1424    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
1425    cudaDevAttrAsyncEngineCount = 40,
1426    cudaDevAttrUnifiedAddressing = 41,
1427    cudaDevAttrMaxTexture1DLayeredWidth = 42,
1428    cudaDevAttrMaxTexture1DLayeredLayers = 43,
1429    cudaDevAttrMaxTexture2DGatherWidth = 45,
1430    cudaDevAttrMaxTexture2DGatherHeight = 46,
1431    cudaDevAttrMaxTexture3DWidthAlt = 47,
1432    cudaDevAttrMaxTexture3DHeightAlt = 48,
1433    cudaDevAttrMaxTexture3DDepthAlt = 49,
1434    cudaDevAttrPciDomainId = 50,
1435    cudaDevAttrTexturePitchAlignment = 51,
1436    cudaDevAttrMaxTextureCubemapWidth = 52,
1437    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
1438    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
1439    cudaDevAttrMaxSurface1DWidth = 55,
1440    cudaDevAttrMaxSurface2DWidth = 56,
1441    cudaDevAttrMaxSurface2DHeight = 57,
1442    cudaDevAttrMaxSurface3DWidth = 58,
1443    cudaDevAttrMaxSurface3DHeight = 59,
1444    cudaDevAttrMaxSurface3DDepth = 60,
1445    cudaDevAttrMaxSurface1DLayeredWidth = 61,
1446    cudaDevAttrMaxSurface1DLayeredLayers = 62,
1447    cudaDevAttrMaxSurface2DLayeredWidth = 63,
1448    cudaDevAttrMaxSurface2DLayeredHeight = 64,
1449    cudaDevAttrMaxSurface2DLayeredLayers = 65,
1450    cudaDevAttrMaxSurfaceCubemapWidth = 66,
1451    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
1452    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
1453    cudaDevAttrMaxTexture1DLinearWidth = 69,
1454    cudaDevAttrMaxTexture2DLinearWidth = 70,
1455    cudaDevAttrMaxTexture2DLinearHeight = 71,
1456    cudaDevAttrMaxTexture2DLinearPitch = 72,
1457    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
1458    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
1459    cudaDevAttrComputeCapabilityMajor = 75,
1460    cudaDevAttrComputeCapabilityMinor = 76,
1461    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
1462    cudaDevAttrStreamPrioritiesSupported = 78,
1463    cudaDevAttrGlobalL1CacheSupported = 79,
1464    cudaDevAttrLocalL1CacheSupported = 80,
1465    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
1466    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
1467    cudaDevAttrManagedMemory = 83,
1468    cudaDevAttrIsMultiGpuBoard = 84,
1469    cudaDevAttrMultiGpuBoardGroupID = 85,
1470    cudaDevAttrHostNativeAtomicSupported = 86,
1471    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
1472    cudaDevAttrPageableMemoryAccess = 88,
1473    cudaDevAttrConcurrentManagedAccess = 89,
1474    cudaDevAttrComputePreemptionSupported = 90,
1475    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1476    cudaDevAttrReserved92 = 92,
1477    cudaDevAttrReserved93 = 93,
1478    cudaDevAttrReserved94 = 94,
1479    cudaDevAttrCooperativeLaunch = 95,
1480    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
1481    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
1482    cudaDevAttrCanFlushRemoteWrites = 98,
1483    cudaDevAttrHostRegisterSupported = 99,
1484    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
1485    cudaDevAttrDirectManagedMemAccessFromHost = 101,
1486    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
1487    cudaDevAttrMaxPersistingL2CacheSize = 108,
1488    cudaDevAttrMaxAccessPolicyWindowSize = 109,
1489    cudaDevAttrReservedSharedMemoryPerBlock = 111,
1490    cudaDevAttrSparseCudaArraySupported = 112,
1491    cudaDevAttrHostRegisterReadOnlySupported = 113,
1492    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
1493    cudaDevAttrMemoryPoolsSupported = 115,
1494    cudaDevAttrGPUDirectRDMASupported = 116,
1495    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
1496    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
1497    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
1498    cudaDevAttrClusterLaunch = 120,
1499    cudaDevAttrDeferredMappingCudaArraySupported = 121,
1500    cudaDevAttrReserved122 = 122,
1501    cudaDevAttrReserved123 = 123,
1502    cudaDevAttrReserved124 = 124,
1503    cudaDevAttrIpcEventSupport = 125,
1504    cudaDevAttrMemSyncDomainCount = 126,
1505    cudaDevAttrMax = 127,
1506}
1507#[cfg(any(feature = "cuda-12010"))]
1508#[repr(u32)]
1509#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1510pub enum cudaDeviceAttr {
1511    cudaDevAttrMaxThreadsPerBlock = 1,
1512    cudaDevAttrMaxBlockDimX = 2,
1513    cudaDevAttrMaxBlockDimY = 3,
1514    cudaDevAttrMaxBlockDimZ = 4,
1515    cudaDevAttrMaxGridDimX = 5,
1516    cudaDevAttrMaxGridDimY = 6,
1517    cudaDevAttrMaxGridDimZ = 7,
1518    cudaDevAttrMaxSharedMemoryPerBlock = 8,
1519    cudaDevAttrTotalConstantMemory = 9,
1520    cudaDevAttrWarpSize = 10,
1521    cudaDevAttrMaxPitch = 11,
1522    cudaDevAttrMaxRegistersPerBlock = 12,
1523    cudaDevAttrClockRate = 13,
1524    cudaDevAttrTextureAlignment = 14,
1525    cudaDevAttrGpuOverlap = 15,
1526    cudaDevAttrMultiProcessorCount = 16,
1527    cudaDevAttrKernelExecTimeout = 17,
1528    cudaDevAttrIntegrated = 18,
1529    cudaDevAttrCanMapHostMemory = 19,
1530    cudaDevAttrComputeMode = 20,
1531    cudaDevAttrMaxTexture1DWidth = 21,
1532    cudaDevAttrMaxTexture2DWidth = 22,
1533    cudaDevAttrMaxTexture2DHeight = 23,
1534    cudaDevAttrMaxTexture3DWidth = 24,
1535    cudaDevAttrMaxTexture3DHeight = 25,
1536    cudaDevAttrMaxTexture3DDepth = 26,
1537    cudaDevAttrMaxTexture2DLayeredWidth = 27,
1538    cudaDevAttrMaxTexture2DLayeredHeight = 28,
1539    cudaDevAttrMaxTexture2DLayeredLayers = 29,
1540    cudaDevAttrSurfaceAlignment = 30,
1541    cudaDevAttrConcurrentKernels = 31,
1542    cudaDevAttrEccEnabled = 32,
1543    cudaDevAttrPciBusId = 33,
1544    cudaDevAttrPciDeviceId = 34,
1545    cudaDevAttrTccDriver = 35,
1546    cudaDevAttrMemoryClockRate = 36,
1547    cudaDevAttrGlobalMemoryBusWidth = 37,
1548    cudaDevAttrL2CacheSize = 38,
1549    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
1550    cudaDevAttrAsyncEngineCount = 40,
1551    cudaDevAttrUnifiedAddressing = 41,
1552    cudaDevAttrMaxTexture1DLayeredWidth = 42,
1553    cudaDevAttrMaxTexture1DLayeredLayers = 43,
1554    cudaDevAttrMaxTexture2DGatherWidth = 45,
1555    cudaDevAttrMaxTexture2DGatherHeight = 46,
1556    cudaDevAttrMaxTexture3DWidthAlt = 47,
1557    cudaDevAttrMaxTexture3DHeightAlt = 48,
1558    cudaDevAttrMaxTexture3DDepthAlt = 49,
1559    cudaDevAttrPciDomainId = 50,
1560    cudaDevAttrTexturePitchAlignment = 51,
1561    cudaDevAttrMaxTextureCubemapWidth = 52,
1562    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
1563    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
1564    cudaDevAttrMaxSurface1DWidth = 55,
1565    cudaDevAttrMaxSurface2DWidth = 56,
1566    cudaDevAttrMaxSurface2DHeight = 57,
1567    cudaDevAttrMaxSurface3DWidth = 58,
1568    cudaDevAttrMaxSurface3DHeight = 59,
1569    cudaDevAttrMaxSurface3DDepth = 60,
1570    cudaDevAttrMaxSurface1DLayeredWidth = 61,
1571    cudaDevAttrMaxSurface1DLayeredLayers = 62,
1572    cudaDevAttrMaxSurface2DLayeredWidth = 63,
1573    cudaDevAttrMaxSurface2DLayeredHeight = 64,
1574    cudaDevAttrMaxSurface2DLayeredLayers = 65,
1575    cudaDevAttrMaxSurfaceCubemapWidth = 66,
1576    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
1577    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
1578    cudaDevAttrMaxTexture1DLinearWidth = 69,
1579    cudaDevAttrMaxTexture2DLinearWidth = 70,
1580    cudaDevAttrMaxTexture2DLinearHeight = 71,
1581    cudaDevAttrMaxTexture2DLinearPitch = 72,
1582    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
1583    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
1584    cudaDevAttrComputeCapabilityMajor = 75,
1585    cudaDevAttrComputeCapabilityMinor = 76,
1586    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
1587    cudaDevAttrStreamPrioritiesSupported = 78,
1588    cudaDevAttrGlobalL1CacheSupported = 79,
1589    cudaDevAttrLocalL1CacheSupported = 80,
1590    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
1591    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
1592    cudaDevAttrManagedMemory = 83,
1593    cudaDevAttrIsMultiGpuBoard = 84,
1594    cudaDevAttrMultiGpuBoardGroupID = 85,
1595    cudaDevAttrHostNativeAtomicSupported = 86,
1596    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
1597    cudaDevAttrPageableMemoryAccess = 88,
1598    cudaDevAttrConcurrentManagedAccess = 89,
1599    cudaDevAttrComputePreemptionSupported = 90,
1600    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1601    cudaDevAttrReserved92 = 92,
1602    cudaDevAttrReserved93 = 93,
1603    cudaDevAttrReserved94 = 94,
1604    cudaDevAttrCooperativeLaunch = 95,
1605    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
1606    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
1607    cudaDevAttrCanFlushRemoteWrites = 98,
1608    cudaDevAttrHostRegisterSupported = 99,
1609    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
1610    cudaDevAttrDirectManagedMemAccessFromHost = 101,
1611    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
1612    cudaDevAttrMaxPersistingL2CacheSize = 108,
1613    cudaDevAttrMaxAccessPolicyWindowSize = 109,
1614    cudaDevAttrReservedSharedMemoryPerBlock = 111,
1615    cudaDevAttrSparseCudaArraySupported = 112,
1616    cudaDevAttrHostRegisterReadOnlySupported = 113,
1617    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
1618    cudaDevAttrMemoryPoolsSupported = 115,
1619    cudaDevAttrGPUDirectRDMASupported = 116,
1620    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
1621    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
1622    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
1623    cudaDevAttrClusterLaunch = 120,
1624    cudaDevAttrDeferredMappingCudaArraySupported = 121,
1625    cudaDevAttrReserved122 = 122,
1626    cudaDevAttrReserved123 = 123,
1627    cudaDevAttrReserved124 = 124,
1628    cudaDevAttrIpcEventSupport = 125,
1629    cudaDevAttrMemSyncDomainCount = 126,
1630    cudaDevAttrReserved127 = 127,
1631    cudaDevAttrReserved128 = 128,
1632    cudaDevAttrReserved129 = 129,
1633    cudaDevAttrReserved132 = 132,
1634    cudaDevAttrMax = 133,
1635}
1636#[cfg(any(feature = "cuda-12020"))]
1637#[repr(u32)]
1638#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1639pub enum cudaDeviceAttr {
1640    cudaDevAttrMaxThreadsPerBlock = 1,
1641    cudaDevAttrMaxBlockDimX = 2,
1642    cudaDevAttrMaxBlockDimY = 3,
1643    cudaDevAttrMaxBlockDimZ = 4,
1644    cudaDevAttrMaxGridDimX = 5,
1645    cudaDevAttrMaxGridDimY = 6,
1646    cudaDevAttrMaxGridDimZ = 7,
1647    cudaDevAttrMaxSharedMemoryPerBlock = 8,
1648    cudaDevAttrTotalConstantMemory = 9,
1649    cudaDevAttrWarpSize = 10,
1650    cudaDevAttrMaxPitch = 11,
1651    cudaDevAttrMaxRegistersPerBlock = 12,
1652    cudaDevAttrClockRate = 13,
1653    cudaDevAttrTextureAlignment = 14,
1654    cudaDevAttrGpuOverlap = 15,
1655    cudaDevAttrMultiProcessorCount = 16,
1656    cudaDevAttrKernelExecTimeout = 17,
1657    cudaDevAttrIntegrated = 18,
1658    cudaDevAttrCanMapHostMemory = 19,
1659    cudaDevAttrComputeMode = 20,
1660    cudaDevAttrMaxTexture1DWidth = 21,
1661    cudaDevAttrMaxTexture2DWidth = 22,
1662    cudaDevAttrMaxTexture2DHeight = 23,
1663    cudaDevAttrMaxTexture3DWidth = 24,
1664    cudaDevAttrMaxTexture3DHeight = 25,
1665    cudaDevAttrMaxTexture3DDepth = 26,
1666    cudaDevAttrMaxTexture2DLayeredWidth = 27,
1667    cudaDevAttrMaxTexture2DLayeredHeight = 28,
1668    cudaDevAttrMaxTexture2DLayeredLayers = 29,
1669    cudaDevAttrSurfaceAlignment = 30,
1670    cudaDevAttrConcurrentKernels = 31,
1671    cudaDevAttrEccEnabled = 32,
1672    cudaDevAttrPciBusId = 33,
1673    cudaDevAttrPciDeviceId = 34,
1674    cudaDevAttrTccDriver = 35,
1675    cudaDevAttrMemoryClockRate = 36,
1676    cudaDevAttrGlobalMemoryBusWidth = 37,
1677    cudaDevAttrL2CacheSize = 38,
1678    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
1679    cudaDevAttrAsyncEngineCount = 40,
1680    cudaDevAttrUnifiedAddressing = 41,
1681    cudaDevAttrMaxTexture1DLayeredWidth = 42,
1682    cudaDevAttrMaxTexture1DLayeredLayers = 43,
1683    cudaDevAttrMaxTexture2DGatherWidth = 45,
1684    cudaDevAttrMaxTexture2DGatherHeight = 46,
1685    cudaDevAttrMaxTexture3DWidthAlt = 47,
1686    cudaDevAttrMaxTexture3DHeightAlt = 48,
1687    cudaDevAttrMaxTexture3DDepthAlt = 49,
1688    cudaDevAttrPciDomainId = 50,
1689    cudaDevAttrTexturePitchAlignment = 51,
1690    cudaDevAttrMaxTextureCubemapWidth = 52,
1691    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
1692    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
1693    cudaDevAttrMaxSurface1DWidth = 55,
1694    cudaDevAttrMaxSurface2DWidth = 56,
1695    cudaDevAttrMaxSurface2DHeight = 57,
1696    cudaDevAttrMaxSurface3DWidth = 58,
1697    cudaDevAttrMaxSurface3DHeight = 59,
1698    cudaDevAttrMaxSurface3DDepth = 60,
1699    cudaDevAttrMaxSurface1DLayeredWidth = 61,
1700    cudaDevAttrMaxSurface1DLayeredLayers = 62,
1701    cudaDevAttrMaxSurface2DLayeredWidth = 63,
1702    cudaDevAttrMaxSurface2DLayeredHeight = 64,
1703    cudaDevAttrMaxSurface2DLayeredLayers = 65,
1704    cudaDevAttrMaxSurfaceCubemapWidth = 66,
1705    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
1706    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
1707    cudaDevAttrMaxTexture1DLinearWidth = 69,
1708    cudaDevAttrMaxTexture2DLinearWidth = 70,
1709    cudaDevAttrMaxTexture2DLinearHeight = 71,
1710    cudaDevAttrMaxTexture2DLinearPitch = 72,
1711    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
1712    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
1713    cudaDevAttrComputeCapabilityMajor = 75,
1714    cudaDevAttrComputeCapabilityMinor = 76,
1715    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
1716    cudaDevAttrStreamPrioritiesSupported = 78,
1717    cudaDevAttrGlobalL1CacheSupported = 79,
1718    cudaDevAttrLocalL1CacheSupported = 80,
1719    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
1720    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
1721    cudaDevAttrManagedMemory = 83,
1722    cudaDevAttrIsMultiGpuBoard = 84,
1723    cudaDevAttrMultiGpuBoardGroupID = 85,
1724    cudaDevAttrHostNativeAtomicSupported = 86,
1725    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
1726    cudaDevAttrPageableMemoryAccess = 88,
1727    cudaDevAttrConcurrentManagedAccess = 89,
1728    cudaDevAttrComputePreemptionSupported = 90,
1729    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1730    cudaDevAttrReserved92 = 92,
1731    cudaDevAttrReserved93 = 93,
1732    cudaDevAttrReserved94 = 94,
1733    cudaDevAttrCooperativeLaunch = 95,
1734    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
1735    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
1736    cudaDevAttrCanFlushRemoteWrites = 98,
1737    cudaDevAttrHostRegisterSupported = 99,
1738    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
1739    cudaDevAttrDirectManagedMemAccessFromHost = 101,
1740    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
1741    cudaDevAttrMaxPersistingL2CacheSize = 108,
1742    cudaDevAttrMaxAccessPolicyWindowSize = 109,
1743    cudaDevAttrReservedSharedMemoryPerBlock = 111,
1744    cudaDevAttrSparseCudaArraySupported = 112,
1745    cudaDevAttrHostRegisterReadOnlySupported = 113,
1746    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
1747    cudaDevAttrMemoryPoolsSupported = 115,
1748    cudaDevAttrGPUDirectRDMASupported = 116,
1749    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
1750    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
1751    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
1752    cudaDevAttrClusterLaunch = 120,
1753    cudaDevAttrDeferredMappingCudaArraySupported = 121,
1754    cudaDevAttrReserved122 = 122,
1755    cudaDevAttrReserved123 = 123,
1756    cudaDevAttrReserved124 = 124,
1757    cudaDevAttrIpcEventSupport = 125,
1758    cudaDevAttrMemSyncDomainCount = 126,
1759    cudaDevAttrReserved127 = 127,
1760    cudaDevAttrReserved128 = 128,
1761    cudaDevAttrReserved129 = 129,
1762    cudaDevAttrNumaConfig = 130,
1763    cudaDevAttrNumaId = 131,
1764    cudaDevAttrReserved132 = 132,
1765    cudaDevAttrHostNumaId = 134,
1766    cudaDevAttrMax = 135,
1767}
1768#[cfg(any(feature = "cuda-12030", feature = "cuda-12040"))]
1769#[repr(u32)]
1770#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1771pub enum cudaDeviceAttr {
1772    cudaDevAttrMaxThreadsPerBlock = 1,
1773    cudaDevAttrMaxBlockDimX = 2,
1774    cudaDevAttrMaxBlockDimY = 3,
1775    cudaDevAttrMaxBlockDimZ = 4,
1776    cudaDevAttrMaxGridDimX = 5,
1777    cudaDevAttrMaxGridDimY = 6,
1778    cudaDevAttrMaxGridDimZ = 7,
1779    cudaDevAttrMaxSharedMemoryPerBlock = 8,
1780    cudaDevAttrTotalConstantMemory = 9,
1781    cudaDevAttrWarpSize = 10,
1782    cudaDevAttrMaxPitch = 11,
1783    cudaDevAttrMaxRegistersPerBlock = 12,
1784    cudaDevAttrClockRate = 13,
1785    cudaDevAttrTextureAlignment = 14,
1786    cudaDevAttrGpuOverlap = 15,
1787    cudaDevAttrMultiProcessorCount = 16,
1788    cudaDevAttrKernelExecTimeout = 17,
1789    cudaDevAttrIntegrated = 18,
1790    cudaDevAttrCanMapHostMemory = 19,
1791    cudaDevAttrComputeMode = 20,
1792    cudaDevAttrMaxTexture1DWidth = 21,
1793    cudaDevAttrMaxTexture2DWidth = 22,
1794    cudaDevAttrMaxTexture2DHeight = 23,
1795    cudaDevAttrMaxTexture3DWidth = 24,
1796    cudaDevAttrMaxTexture3DHeight = 25,
1797    cudaDevAttrMaxTexture3DDepth = 26,
1798    cudaDevAttrMaxTexture2DLayeredWidth = 27,
1799    cudaDevAttrMaxTexture2DLayeredHeight = 28,
1800    cudaDevAttrMaxTexture2DLayeredLayers = 29,
1801    cudaDevAttrSurfaceAlignment = 30,
1802    cudaDevAttrConcurrentKernels = 31,
1803    cudaDevAttrEccEnabled = 32,
1804    cudaDevAttrPciBusId = 33,
1805    cudaDevAttrPciDeviceId = 34,
1806    cudaDevAttrTccDriver = 35,
1807    cudaDevAttrMemoryClockRate = 36,
1808    cudaDevAttrGlobalMemoryBusWidth = 37,
1809    cudaDevAttrL2CacheSize = 38,
1810    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
1811    cudaDevAttrAsyncEngineCount = 40,
1812    cudaDevAttrUnifiedAddressing = 41,
1813    cudaDevAttrMaxTexture1DLayeredWidth = 42,
1814    cudaDevAttrMaxTexture1DLayeredLayers = 43,
1815    cudaDevAttrMaxTexture2DGatherWidth = 45,
1816    cudaDevAttrMaxTexture2DGatherHeight = 46,
1817    cudaDevAttrMaxTexture3DWidthAlt = 47,
1818    cudaDevAttrMaxTexture3DHeightAlt = 48,
1819    cudaDevAttrMaxTexture3DDepthAlt = 49,
1820    cudaDevAttrPciDomainId = 50,
1821    cudaDevAttrTexturePitchAlignment = 51,
1822    cudaDevAttrMaxTextureCubemapWidth = 52,
1823    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
1824    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
1825    cudaDevAttrMaxSurface1DWidth = 55,
1826    cudaDevAttrMaxSurface2DWidth = 56,
1827    cudaDevAttrMaxSurface2DHeight = 57,
1828    cudaDevAttrMaxSurface3DWidth = 58,
1829    cudaDevAttrMaxSurface3DHeight = 59,
1830    cudaDevAttrMaxSurface3DDepth = 60,
1831    cudaDevAttrMaxSurface1DLayeredWidth = 61,
1832    cudaDevAttrMaxSurface1DLayeredLayers = 62,
1833    cudaDevAttrMaxSurface2DLayeredWidth = 63,
1834    cudaDevAttrMaxSurface2DLayeredHeight = 64,
1835    cudaDevAttrMaxSurface2DLayeredLayers = 65,
1836    cudaDevAttrMaxSurfaceCubemapWidth = 66,
1837    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
1838    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
1839    cudaDevAttrMaxTexture1DLinearWidth = 69,
1840    cudaDevAttrMaxTexture2DLinearWidth = 70,
1841    cudaDevAttrMaxTexture2DLinearHeight = 71,
1842    cudaDevAttrMaxTexture2DLinearPitch = 72,
1843    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
1844    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
1845    cudaDevAttrComputeCapabilityMajor = 75,
1846    cudaDevAttrComputeCapabilityMinor = 76,
1847    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
1848    cudaDevAttrStreamPrioritiesSupported = 78,
1849    cudaDevAttrGlobalL1CacheSupported = 79,
1850    cudaDevAttrLocalL1CacheSupported = 80,
1851    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
1852    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
1853    cudaDevAttrManagedMemory = 83,
1854    cudaDevAttrIsMultiGpuBoard = 84,
1855    cudaDevAttrMultiGpuBoardGroupID = 85,
1856    cudaDevAttrHostNativeAtomicSupported = 86,
1857    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
1858    cudaDevAttrPageableMemoryAccess = 88,
1859    cudaDevAttrConcurrentManagedAccess = 89,
1860    cudaDevAttrComputePreemptionSupported = 90,
1861    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1862    cudaDevAttrReserved92 = 92,
1863    cudaDevAttrReserved93 = 93,
1864    cudaDevAttrReserved94 = 94,
1865    cudaDevAttrCooperativeLaunch = 95,
1866    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
1867    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
1868    cudaDevAttrCanFlushRemoteWrites = 98,
1869    cudaDevAttrHostRegisterSupported = 99,
1870    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
1871    cudaDevAttrDirectManagedMemAccessFromHost = 101,
1872    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
1873    cudaDevAttrMaxPersistingL2CacheSize = 108,
1874    cudaDevAttrMaxAccessPolicyWindowSize = 109,
1875    cudaDevAttrReservedSharedMemoryPerBlock = 111,
1876    cudaDevAttrSparseCudaArraySupported = 112,
1877    cudaDevAttrHostRegisterReadOnlySupported = 113,
1878    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
1879    cudaDevAttrMemoryPoolsSupported = 115,
1880    cudaDevAttrGPUDirectRDMASupported = 116,
1881    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
1882    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
1883    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
1884    cudaDevAttrClusterLaunch = 120,
1885    cudaDevAttrDeferredMappingCudaArraySupported = 121,
1886    cudaDevAttrReserved122 = 122,
1887    cudaDevAttrReserved123 = 123,
1888    cudaDevAttrReserved124 = 124,
1889    cudaDevAttrIpcEventSupport = 125,
1890    cudaDevAttrMemSyncDomainCount = 126,
1891    cudaDevAttrReserved127 = 127,
1892    cudaDevAttrReserved128 = 128,
1893    cudaDevAttrReserved129 = 129,
1894    cudaDevAttrNumaConfig = 130,
1895    cudaDevAttrNumaId = 131,
1896    cudaDevAttrReserved132 = 132,
1897    cudaDevAttrMpsEnabled = 133,
1898    cudaDevAttrHostNumaId = 134,
1899    cudaDevAttrMax = 135,
1900}
1901#[cfg(any(feature = "cuda-12050", feature = "cuda-12060"))]
1902#[repr(u32)]
1903#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
1904pub enum cudaDeviceAttr {
1905    cudaDevAttrMaxThreadsPerBlock = 1,
1906    cudaDevAttrMaxBlockDimX = 2,
1907    cudaDevAttrMaxBlockDimY = 3,
1908    cudaDevAttrMaxBlockDimZ = 4,
1909    cudaDevAttrMaxGridDimX = 5,
1910    cudaDevAttrMaxGridDimY = 6,
1911    cudaDevAttrMaxGridDimZ = 7,
1912    cudaDevAttrMaxSharedMemoryPerBlock = 8,
1913    cudaDevAttrTotalConstantMemory = 9,
1914    cudaDevAttrWarpSize = 10,
1915    cudaDevAttrMaxPitch = 11,
1916    cudaDevAttrMaxRegistersPerBlock = 12,
1917    cudaDevAttrClockRate = 13,
1918    cudaDevAttrTextureAlignment = 14,
1919    cudaDevAttrGpuOverlap = 15,
1920    cudaDevAttrMultiProcessorCount = 16,
1921    cudaDevAttrKernelExecTimeout = 17,
1922    cudaDevAttrIntegrated = 18,
1923    cudaDevAttrCanMapHostMemory = 19,
1924    cudaDevAttrComputeMode = 20,
1925    cudaDevAttrMaxTexture1DWidth = 21,
1926    cudaDevAttrMaxTexture2DWidth = 22,
1927    cudaDevAttrMaxTexture2DHeight = 23,
1928    cudaDevAttrMaxTexture3DWidth = 24,
1929    cudaDevAttrMaxTexture3DHeight = 25,
1930    cudaDevAttrMaxTexture3DDepth = 26,
1931    cudaDevAttrMaxTexture2DLayeredWidth = 27,
1932    cudaDevAttrMaxTexture2DLayeredHeight = 28,
1933    cudaDevAttrMaxTexture2DLayeredLayers = 29,
1934    cudaDevAttrSurfaceAlignment = 30,
1935    cudaDevAttrConcurrentKernels = 31,
1936    cudaDevAttrEccEnabled = 32,
1937    cudaDevAttrPciBusId = 33,
1938    cudaDevAttrPciDeviceId = 34,
1939    cudaDevAttrTccDriver = 35,
1940    cudaDevAttrMemoryClockRate = 36,
1941    cudaDevAttrGlobalMemoryBusWidth = 37,
1942    cudaDevAttrL2CacheSize = 38,
1943    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
1944    cudaDevAttrAsyncEngineCount = 40,
1945    cudaDevAttrUnifiedAddressing = 41,
1946    cudaDevAttrMaxTexture1DLayeredWidth = 42,
1947    cudaDevAttrMaxTexture1DLayeredLayers = 43,
1948    cudaDevAttrMaxTexture2DGatherWidth = 45,
1949    cudaDevAttrMaxTexture2DGatherHeight = 46,
1950    cudaDevAttrMaxTexture3DWidthAlt = 47,
1951    cudaDevAttrMaxTexture3DHeightAlt = 48,
1952    cudaDevAttrMaxTexture3DDepthAlt = 49,
1953    cudaDevAttrPciDomainId = 50,
1954    cudaDevAttrTexturePitchAlignment = 51,
1955    cudaDevAttrMaxTextureCubemapWidth = 52,
1956    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
1957    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
1958    cudaDevAttrMaxSurface1DWidth = 55,
1959    cudaDevAttrMaxSurface2DWidth = 56,
1960    cudaDevAttrMaxSurface2DHeight = 57,
1961    cudaDevAttrMaxSurface3DWidth = 58,
1962    cudaDevAttrMaxSurface3DHeight = 59,
1963    cudaDevAttrMaxSurface3DDepth = 60,
1964    cudaDevAttrMaxSurface1DLayeredWidth = 61,
1965    cudaDevAttrMaxSurface1DLayeredLayers = 62,
1966    cudaDevAttrMaxSurface2DLayeredWidth = 63,
1967    cudaDevAttrMaxSurface2DLayeredHeight = 64,
1968    cudaDevAttrMaxSurface2DLayeredLayers = 65,
1969    cudaDevAttrMaxSurfaceCubemapWidth = 66,
1970    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
1971    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
1972    cudaDevAttrMaxTexture1DLinearWidth = 69,
1973    cudaDevAttrMaxTexture2DLinearWidth = 70,
1974    cudaDevAttrMaxTexture2DLinearHeight = 71,
1975    cudaDevAttrMaxTexture2DLinearPitch = 72,
1976    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
1977    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
1978    cudaDevAttrComputeCapabilityMajor = 75,
1979    cudaDevAttrComputeCapabilityMinor = 76,
1980    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
1981    cudaDevAttrStreamPrioritiesSupported = 78,
1982    cudaDevAttrGlobalL1CacheSupported = 79,
1983    cudaDevAttrLocalL1CacheSupported = 80,
1984    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
1985    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
1986    cudaDevAttrManagedMemory = 83,
1987    cudaDevAttrIsMultiGpuBoard = 84,
1988    cudaDevAttrMultiGpuBoardGroupID = 85,
1989    cudaDevAttrHostNativeAtomicSupported = 86,
1990    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
1991    cudaDevAttrPageableMemoryAccess = 88,
1992    cudaDevAttrConcurrentManagedAccess = 89,
1993    cudaDevAttrComputePreemptionSupported = 90,
1994    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
1995    cudaDevAttrReserved92 = 92,
1996    cudaDevAttrReserved93 = 93,
1997    cudaDevAttrReserved94 = 94,
1998    cudaDevAttrCooperativeLaunch = 95,
1999    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
2000    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
2001    cudaDevAttrCanFlushRemoteWrites = 98,
2002    cudaDevAttrHostRegisterSupported = 99,
2003    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
2004    cudaDevAttrDirectManagedMemAccessFromHost = 101,
2005    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
2006    cudaDevAttrMaxPersistingL2CacheSize = 108,
2007    cudaDevAttrMaxAccessPolicyWindowSize = 109,
2008    cudaDevAttrReservedSharedMemoryPerBlock = 111,
2009    cudaDevAttrSparseCudaArraySupported = 112,
2010    cudaDevAttrHostRegisterReadOnlySupported = 113,
2011    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
2012    cudaDevAttrMemoryPoolsSupported = 115,
2013    cudaDevAttrGPUDirectRDMASupported = 116,
2014    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
2015    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
2016    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
2017    cudaDevAttrClusterLaunch = 120,
2018    cudaDevAttrDeferredMappingCudaArraySupported = 121,
2019    cudaDevAttrReserved122 = 122,
2020    cudaDevAttrReserved123 = 123,
2021    cudaDevAttrReserved124 = 124,
2022    cudaDevAttrIpcEventSupport = 125,
2023    cudaDevAttrMemSyncDomainCount = 126,
2024    cudaDevAttrReserved127 = 127,
2025    cudaDevAttrReserved128 = 128,
2026    cudaDevAttrReserved129 = 129,
2027    cudaDevAttrNumaConfig = 130,
2028    cudaDevAttrNumaId = 131,
2029    cudaDevAttrReserved132 = 132,
2030    cudaDevAttrMpsEnabled = 133,
2031    cudaDevAttrHostNumaId = 134,
2032    cudaDevAttrD3D12CigSupported = 135,
2033    cudaDevAttrMax = 136,
2034}
2035#[cfg(any(feature = "cuda-12080"))]
2036#[repr(u32)]
2037#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2038pub enum cudaDeviceAttr {
2039    cudaDevAttrMaxThreadsPerBlock = 1,
2040    cudaDevAttrMaxBlockDimX = 2,
2041    cudaDevAttrMaxBlockDimY = 3,
2042    cudaDevAttrMaxBlockDimZ = 4,
2043    cudaDevAttrMaxGridDimX = 5,
2044    cudaDevAttrMaxGridDimY = 6,
2045    cudaDevAttrMaxGridDimZ = 7,
2046    cudaDevAttrMaxSharedMemoryPerBlock = 8,
2047    cudaDevAttrTotalConstantMemory = 9,
2048    cudaDevAttrWarpSize = 10,
2049    cudaDevAttrMaxPitch = 11,
2050    cudaDevAttrMaxRegistersPerBlock = 12,
2051    cudaDevAttrClockRate = 13,
2052    cudaDevAttrTextureAlignment = 14,
2053    cudaDevAttrGpuOverlap = 15,
2054    cudaDevAttrMultiProcessorCount = 16,
2055    cudaDevAttrKernelExecTimeout = 17,
2056    cudaDevAttrIntegrated = 18,
2057    cudaDevAttrCanMapHostMemory = 19,
2058    cudaDevAttrComputeMode = 20,
2059    cudaDevAttrMaxTexture1DWidth = 21,
2060    cudaDevAttrMaxTexture2DWidth = 22,
2061    cudaDevAttrMaxTexture2DHeight = 23,
2062    cudaDevAttrMaxTexture3DWidth = 24,
2063    cudaDevAttrMaxTexture3DHeight = 25,
2064    cudaDevAttrMaxTexture3DDepth = 26,
2065    cudaDevAttrMaxTexture2DLayeredWidth = 27,
2066    cudaDevAttrMaxTexture2DLayeredHeight = 28,
2067    cudaDevAttrMaxTexture2DLayeredLayers = 29,
2068    cudaDevAttrSurfaceAlignment = 30,
2069    cudaDevAttrConcurrentKernels = 31,
2070    cudaDevAttrEccEnabled = 32,
2071    cudaDevAttrPciBusId = 33,
2072    cudaDevAttrPciDeviceId = 34,
2073    cudaDevAttrTccDriver = 35,
2074    cudaDevAttrMemoryClockRate = 36,
2075    cudaDevAttrGlobalMemoryBusWidth = 37,
2076    cudaDevAttrL2CacheSize = 38,
2077    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
2078    cudaDevAttrAsyncEngineCount = 40,
2079    cudaDevAttrUnifiedAddressing = 41,
2080    cudaDevAttrMaxTexture1DLayeredWidth = 42,
2081    cudaDevAttrMaxTexture1DLayeredLayers = 43,
2082    cudaDevAttrMaxTexture2DGatherWidth = 45,
2083    cudaDevAttrMaxTexture2DGatherHeight = 46,
2084    cudaDevAttrMaxTexture3DWidthAlt = 47,
2085    cudaDevAttrMaxTexture3DHeightAlt = 48,
2086    cudaDevAttrMaxTexture3DDepthAlt = 49,
2087    cudaDevAttrPciDomainId = 50,
2088    cudaDevAttrTexturePitchAlignment = 51,
2089    cudaDevAttrMaxTextureCubemapWidth = 52,
2090    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
2091    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
2092    cudaDevAttrMaxSurface1DWidth = 55,
2093    cudaDevAttrMaxSurface2DWidth = 56,
2094    cudaDevAttrMaxSurface2DHeight = 57,
2095    cudaDevAttrMaxSurface3DWidth = 58,
2096    cudaDevAttrMaxSurface3DHeight = 59,
2097    cudaDevAttrMaxSurface3DDepth = 60,
2098    cudaDevAttrMaxSurface1DLayeredWidth = 61,
2099    cudaDevAttrMaxSurface1DLayeredLayers = 62,
2100    cudaDevAttrMaxSurface2DLayeredWidth = 63,
2101    cudaDevAttrMaxSurface2DLayeredHeight = 64,
2102    cudaDevAttrMaxSurface2DLayeredLayers = 65,
2103    cudaDevAttrMaxSurfaceCubemapWidth = 66,
2104    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
2105    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
2106    cudaDevAttrMaxTexture1DLinearWidth = 69,
2107    cudaDevAttrMaxTexture2DLinearWidth = 70,
2108    cudaDevAttrMaxTexture2DLinearHeight = 71,
2109    cudaDevAttrMaxTexture2DLinearPitch = 72,
2110    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
2111    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
2112    cudaDevAttrComputeCapabilityMajor = 75,
2113    cudaDevAttrComputeCapabilityMinor = 76,
2114    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
2115    cudaDevAttrStreamPrioritiesSupported = 78,
2116    cudaDevAttrGlobalL1CacheSupported = 79,
2117    cudaDevAttrLocalL1CacheSupported = 80,
2118    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
2119    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
2120    cudaDevAttrManagedMemory = 83,
2121    cudaDevAttrIsMultiGpuBoard = 84,
2122    cudaDevAttrMultiGpuBoardGroupID = 85,
2123    cudaDevAttrHostNativeAtomicSupported = 86,
2124    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
2125    cudaDevAttrPageableMemoryAccess = 88,
2126    cudaDevAttrConcurrentManagedAccess = 89,
2127    cudaDevAttrComputePreemptionSupported = 90,
2128    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
2129    cudaDevAttrReserved92 = 92,
2130    cudaDevAttrReserved93 = 93,
2131    cudaDevAttrReserved94 = 94,
2132    cudaDevAttrCooperativeLaunch = 95,
2133    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
2134    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
2135    cudaDevAttrCanFlushRemoteWrites = 98,
2136    cudaDevAttrHostRegisterSupported = 99,
2137    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
2138    cudaDevAttrDirectManagedMemAccessFromHost = 101,
2139    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
2140    cudaDevAttrMaxPersistingL2CacheSize = 108,
2141    cudaDevAttrMaxAccessPolicyWindowSize = 109,
2142    cudaDevAttrReservedSharedMemoryPerBlock = 111,
2143    cudaDevAttrSparseCudaArraySupported = 112,
2144    cudaDevAttrHostRegisterReadOnlySupported = 113,
2145    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
2146    cudaDevAttrMemoryPoolsSupported = 115,
2147    cudaDevAttrGPUDirectRDMASupported = 116,
2148    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
2149    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
2150    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
2151    cudaDevAttrClusterLaunch = 120,
2152    cudaDevAttrDeferredMappingCudaArraySupported = 121,
2153    cudaDevAttrReserved122 = 122,
2154    cudaDevAttrReserved123 = 123,
2155    cudaDevAttrReserved124 = 124,
2156    cudaDevAttrIpcEventSupport = 125,
2157    cudaDevAttrMemSyncDomainCount = 126,
2158    cudaDevAttrReserved127 = 127,
2159    cudaDevAttrReserved128 = 128,
2160    cudaDevAttrReserved129 = 129,
2161    cudaDevAttrNumaConfig = 130,
2162    cudaDevAttrNumaId = 131,
2163    cudaDevAttrReserved132 = 132,
2164    cudaDevAttrMpsEnabled = 133,
2165    cudaDevAttrHostNumaId = 134,
2166    cudaDevAttrD3D12CigSupported = 135,
2167    cudaDevAttrGpuPciDeviceId = 139,
2168    cudaDevAttrGpuPciSubsystemId = 140,
2169    cudaDevAttrHostNumaMultinodeIpcSupported = 143,
2170    cudaDevAttrMax = 144,
2171}
2172#[cfg(any(feature = "cuda-12090"))]
2173#[repr(u32)]
2174#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2175pub enum cudaDeviceAttr {
2176    cudaDevAttrMaxThreadsPerBlock = 1,
2177    cudaDevAttrMaxBlockDimX = 2,
2178    cudaDevAttrMaxBlockDimY = 3,
2179    cudaDevAttrMaxBlockDimZ = 4,
2180    cudaDevAttrMaxGridDimX = 5,
2181    cudaDevAttrMaxGridDimY = 6,
2182    cudaDevAttrMaxGridDimZ = 7,
2183    cudaDevAttrMaxSharedMemoryPerBlock = 8,
2184    cudaDevAttrTotalConstantMemory = 9,
2185    cudaDevAttrWarpSize = 10,
2186    cudaDevAttrMaxPitch = 11,
2187    cudaDevAttrMaxRegistersPerBlock = 12,
2188    cudaDevAttrClockRate = 13,
2189    cudaDevAttrTextureAlignment = 14,
2190    cudaDevAttrGpuOverlap = 15,
2191    cudaDevAttrMultiProcessorCount = 16,
2192    cudaDevAttrKernelExecTimeout = 17,
2193    cudaDevAttrIntegrated = 18,
2194    cudaDevAttrCanMapHostMemory = 19,
2195    cudaDevAttrComputeMode = 20,
2196    cudaDevAttrMaxTexture1DWidth = 21,
2197    cudaDevAttrMaxTexture2DWidth = 22,
2198    cudaDevAttrMaxTexture2DHeight = 23,
2199    cudaDevAttrMaxTexture3DWidth = 24,
2200    cudaDevAttrMaxTexture3DHeight = 25,
2201    cudaDevAttrMaxTexture3DDepth = 26,
2202    cudaDevAttrMaxTexture2DLayeredWidth = 27,
2203    cudaDevAttrMaxTexture2DLayeredHeight = 28,
2204    cudaDevAttrMaxTexture2DLayeredLayers = 29,
2205    cudaDevAttrSurfaceAlignment = 30,
2206    cudaDevAttrConcurrentKernels = 31,
2207    cudaDevAttrEccEnabled = 32,
2208    cudaDevAttrPciBusId = 33,
2209    cudaDevAttrPciDeviceId = 34,
2210    cudaDevAttrTccDriver = 35,
2211    cudaDevAttrMemoryClockRate = 36,
2212    cudaDevAttrGlobalMemoryBusWidth = 37,
2213    cudaDevAttrL2CacheSize = 38,
2214    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
2215    cudaDevAttrAsyncEngineCount = 40,
2216    cudaDevAttrUnifiedAddressing = 41,
2217    cudaDevAttrMaxTexture1DLayeredWidth = 42,
2218    cudaDevAttrMaxTexture1DLayeredLayers = 43,
2219    cudaDevAttrMaxTexture2DGatherWidth = 45,
2220    cudaDevAttrMaxTexture2DGatherHeight = 46,
2221    cudaDevAttrMaxTexture3DWidthAlt = 47,
2222    cudaDevAttrMaxTexture3DHeightAlt = 48,
2223    cudaDevAttrMaxTexture3DDepthAlt = 49,
2224    cudaDevAttrPciDomainId = 50,
2225    cudaDevAttrTexturePitchAlignment = 51,
2226    cudaDevAttrMaxTextureCubemapWidth = 52,
2227    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
2228    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
2229    cudaDevAttrMaxSurface1DWidth = 55,
2230    cudaDevAttrMaxSurface2DWidth = 56,
2231    cudaDevAttrMaxSurface2DHeight = 57,
2232    cudaDevAttrMaxSurface3DWidth = 58,
2233    cudaDevAttrMaxSurface3DHeight = 59,
2234    cudaDevAttrMaxSurface3DDepth = 60,
2235    cudaDevAttrMaxSurface1DLayeredWidth = 61,
2236    cudaDevAttrMaxSurface1DLayeredLayers = 62,
2237    cudaDevAttrMaxSurface2DLayeredWidth = 63,
2238    cudaDevAttrMaxSurface2DLayeredHeight = 64,
2239    cudaDevAttrMaxSurface2DLayeredLayers = 65,
2240    cudaDevAttrMaxSurfaceCubemapWidth = 66,
2241    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
2242    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
2243    cudaDevAttrMaxTexture1DLinearWidth = 69,
2244    cudaDevAttrMaxTexture2DLinearWidth = 70,
2245    cudaDevAttrMaxTexture2DLinearHeight = 71,
2246    cudaDevAttrMaxTexture2DLinearPitch = 72,
2247    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
2248    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
2249    cudaDevAttrComputeCapabilityMajor = 75,
2250    cudaDevAttrComputeCapabilityMinor = 76,
2251    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
2252    cudaDevAttrStreamPrioritiesSupported = 78,
2253    cudaDevAttrGlobalL1CacheSupported = 79,
2254    cudaDevAttrLocalL1CacheSupported = 80,
2255    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
2256    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
2257    cudaDevAttrManagedMemory = 83,
2258    cudaDevAttrIsMultiGpuBoard = 84,
2259    cudaDevAttrMultiGpuBoardGroupID = 85,
2260    cudaDevAttrHostNativeAtomicSupported = 86,
2261    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
2262    cudaDevAttrPageableMemoryAccess = 88,
2263    cudaDevAttrConcurrentManagedAccess = 89,
2264    cudaDevAttrComputePreemptionSupported = 90,
2265    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
2266    cudaDevAttrReserved92 = 92,
2267    cudaDevAttrReserved93 = 93,
2268    cudaDevAttrReserved94 = 94,
2269    cudaDevAttrCooperativeLaunch = 95,
2270    cudaDevAttrCooperativeMultiDeviceLaunch = 96,
2271    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
2272    cudaDevAttrCanFlushRemoteWrites = 98,
2273    cudaDevAttrHostRegisterSupported = 99,
2274    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
2275    cudaDevAttrDirectManagedMemAccessFromHost = 101,
2276    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
2277    cudaDevAttrMaxPersistingL2CacheSize = 108,
2278    cudaDevAttrMaxAccessPolicyWindowSize = 109,
2279    cudaDevAttrReservedSharedMemoryPerBlock = 111,
2280    cudaDevAttrSparseCudaArraySupported = 112,
2281    cudaDevAttrHostRegisterReadOnlySupported = 113,
2282    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
2283    cudaDevAttrMemoryPoolsSupported = 115,
2284    cudaDevAttrGPUDirectRDMASupported = 116,
2285    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
2286    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
2287    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
2288    cudaDevAttrClusterLaunch = 120,
2289    cudaDevAttrDeferredMappingCudaArraySupported = 121,
2290    cudaDevAttrReserved122 = 122,
2291    cudaDevAttrReserved123 = 123,
2292    cudaDevAttrReserved124 = 124,
2293    cudaDevAttrIpcEventSupport = 125,
2294    cudaDevAttrMemSyncDomainCount = 126,
2295    cudaDevAttrReserved127 = 127,
2296    cudaDevAttrReserved128 = 128,
2297    cudaDevAttrReserved129 = 129,
2298    cudaDevAttrNumaConfig = 130,
2299    cudaDevAttrNumaId = 131,
2300    cudaDevAttrReserved132 = 132,
2301    cudaDevAttrMpsEnabled = 133,
2302    cudaDevAttrHostNumaId = 134,
2303    cudaDevAttrD3D12CigSupported = 135,
2304    cudaDevAttrVulkanCigSupported = 138,
2305    cudaDevAttrGpuPciDeviceId = 139,
2306    cudaDevAttrGpuPciSubsystemId = 140,
2307    cudaDevAttrReserved141 = 141,
2308    cudaDevAttrHostNumaMemoryPoolsSupported = 142,
2309    cudaDevAttrHostNumaMultinodeIpcSupported = 143,
2310    cudaDevAttrMax = 144,
2311}
2312#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
2313#[repr(u32)]
2314#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2315pub enum cudaDeviceAttr {
2316    cudaDevAttrMaxThreadsPerBlock = 1,
2317    cudaDevAttrMaxBlockDimX = 2,
2318    cudaDevAttrMaxBlockDimY = 3,
2319    cudaDevAttrMaxBlockDimZ = 4,
2320    cudaDevAttrMaxGridDimX = 5,
2321    cudaDevAttrMaxGridDimY = 6,
2322    cudaDevAttrMaxGridDimZ = 7,
2323    cudaDevAttrMaxSharedMemoryPerBlock = 8,
2324    cudaDevAttrTotalConstantMemory = 9,
2325    cudaDevAttrWarpSize = 10,
2326    cudaDevAttrMaxPitch = 11,
2327    cudaDevAttrMaxRegistersPerBlock = 12,
2328    cudaDevAttrClockRate = 13,
2329    cudaDevAttrTextureAlignment = 14,
2330    cudaDevAttrGpuOverlap = 15,
2331    cudaDevAttrMultiProcessorCount = 16,
2332    cudaDevAttrKernelExecTimeout = 17,
2333    cudaDevAttrIntegrated = 18,
2334    cudaDevAttrCanMapHostMemory = 19,
2335    cudaDevAttrComputeMode = 20,
2336    cudaDevAttrMaxTexture1DWidth = 21,
2337    cudaDevAttrMaxTexture2DWidth = 22,
2338    cudaDevAttrMaxTexture2DHeight = 23,
2339    cudaDevAttrMaxTexture3DWidth = 24,
2340    cudaDevAttrMaxTexture3DHeight = 25,
2341    cudaDevAttrMaxTexture3DDepth = 26,
2342    cudaDevAttrMaxTexture2DLayeredWidth = 27,
2343    cudaDevAttrMaxTexture2DLayeredHeight = 28,
2344    cudaDevAttrMaxTexture2DLayeredLayers = 29,
2345    cudaDevAttrSurfaceAlignment = 30,
2346    cudaDevAttrConcurrentKernels = 31,
2347    cudaDevAttrEccEnabled = 32,
2348    cudaDevAttrPciBusId = 33,
2349    cudaDevAttrPciDeviceId = 34,
2350    cudaDevAttrTccDriver = 35,
2351    cudaDevAttrMemoryClockRate = 36,
2352    cudaDevAttrGlobalMemoryBusWidth = 37,
2353    cudaDevAttrL2CacheSize = 38,
2354    cudaDevAttrMaxThreadsPerMultiProcessor = 39,
2355    cudaDevAttrAsyncEngineCount = 40,
2356    cudaDevAttrUnifiedAddressing = 41,
2357    cudaDevAttrMaxTexture1DLayeredWidth = 42,
2358    cudaDevAttrMaxTexture1DLayeredLayers = 43,
2359    cudaDevAttrMaxTexture2DGatherWidth = 45,
2360    cudaDevAttrMaxTexture2DGatherHeight = 46,
2361    cudaDevAttrMaxTexture3DWidthAlt = 47,
2362    cudaDevAttrMaxTexture3DHeightAlt = 48,
2363    cudaDevAttrMaxTexture3DDepthAlt = 49,
2364    cudaDevAttrPciDomainId = 50,
2365    cudaDevAttrTexturePitchAlignment = 51,
2366    cudaDevAttrMaxTextureCubemapWidth = 52,
2367    cudaDevAttrMaxTextureCubemapLayeredWidth = 53,
2368    cudaDevAttrMaxTextureCubemapLayeredLayers = 54,
2369    cudaDevAttrMaxSurface1DWidth = 55,
2370    cudaDevAttrMaxSurface2DWidth = 56,
2371    cudaDevAttrMaxSurface2DHeight = 57,
2372    cudaDevAttrMaxSurface3DWidth = 58,
2373    cudaDevAttrMaxSurface3DHeight = 59,
2374    cudaDevAttrMaxSurface3DDepth = 60,
2375    cudaDevAttrMaxSurface1DLayeredWidth = 61,
2376    cudaDevAttrMaxSurface1DLayeredLayers = 62,
2377    cudaDevAttrMaxSurface2DLayeredWidth = 63,
2378    cudaDevAttrMaxSurface2DLayeredHeight = 64,
2379    cudaDevAttrMaxSurface2DLayeredLayers = 65,
2380    cudaDevAttrMaxSurfaceCubemapWidth = 66,
2381    cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67,
2382    cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68,
2383    cudaDevAttrMaxTexture1DLinearWidth = 69,
2384    cudaDevAttrMaxTexture2DLinearWidth = 70,
2385    cudaDevAttrMaxTexture2DLinearHeight = 71,
2386    cudaDevAttrMaxTexture2DLinearPitch = 72,
2387    cudaDevAttrMaxTexture2DMipmappedWidth = 73,
2388    cudaDevAttrMaxTexture2DMipmappedHeight = 74,
2389    cudaDevAttrComputeCapabilityMajor = 75,
2390    cudaDevAttrComputeCapabilityMinor = 76,
2391    cudaDevAttrMaxTexture1DMipmappedWidth = 77,
2392    cudaDevAttrStreamPrioritiesSupported = 78,
2393    cudaDevAttrGlobalL1CacheSupported = 79,
2394    cudaDevAttrLocalL1CacheSupported = 80,
2395    cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81,
2396    cudaDevAttrMaxRegistersPerMultiprocessor = 82,
2397    cudaDevAttrManagedMemory = 83,
2398    cudaDevAttrIsMultiGpuBoard = 84,
2399    cudaDevAttrMultiGpuBoardGroupID = 85,
2400    cudaDevAttrHostNativeAtomicSupported = 86,
2401    cudaDevAttrSingleToDoublePrecisionPerfRatio = 87,
2402    cudaDevAttrPageableMemoryAccess = 88,
2403    cudaDevAttrConcurrentManagedAccess = 89,
2404    cudaDevAttrComputePreemptionSupported = 90,
2405    cudaDevAttrCanUseHostPointerForRegisteredMem = 91,
2406    cudaDevAttrReserved92 = 92,
2407    cudaDevAttrReserved93 = 93,
2408    cudaDevAttrReserved94 = 94,
2409    cudaDevAttrCooperativeLaunch = 95,
2410    cudaDevAttrReserved96 = 96,
2411    cudaDevAttrMaxSharedMemoryPerBlockOptin = 97,
2412    cudaDevAttrCanFlushRemoteWrites = 98,
2413    cudaDevAttrHostRegisterSupported = 99,
2414    cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100,
2415    cudaDevAttrDirectManagedMemAccessFromHost = 101,
2416    cudaDevAttrMaxBlocksPerMultiprocessor = 106,
2417    cudaDevAttrMaxPersistingL2CacheSize = 108,
2418    cudaDevAttrMaxAccessPolicyWindowSize = 109,
2419    cudaDevAttrReservedSharedMemoryPerBlock = 111,
2420    cudaDevAttrSparseCudaArraySupported = 112,
2421    cudaDevAttrHostRegisterReadOnlySupported = 113,
2422    cudaDevAttrTimelineSemaphoreInteropSupported = 114,
2423    cudaDevAttrMemoryPoolsSupported = 115,
2424    cudaDevAttrGPUDirectRDMASupported = 116,
2425    cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117,
2426    cudaDevAttrGPUDirectRDMAWritesOrdering = 118,
2427    cudaDevAttrMemoryPoolSupportedHandleTypes = 119,
2428    cudaDevAttrClusterLaunch = 120,
2429    cudaDevAttrDeferredMappingCudaArraySupported = 121,
2430    cudaDevAttrReserved122 = 122,
2431    cudaDevAttrReserved123 = 123,
2432    cudaDevAttrReserved124 = 124,
2433    cudaDevAttrIpcEventSupport = 125,
2434    cudaDevAttrMemSyncDomainCount = 126,
2435    cudaDevAttrReserved127 = 127,
2436    cudaDevAttrReserved128 = 128,
2437    cudaDevAttrReserved129 = 129,
2438    cudaDevAttrNumaConfig = 130,
2439    cudaDevAttrNumaId = 131,
2440    cudaDevAttrReserved132 = 132,
2441    cudaDevAttrMpsEnabled = 133,
2442    cudaDevAttrHostNumaId = 134,
2443    cudaDevAttrD3D12CigSupported = 135,
2444    cudaDevAttrVulkanCigSupported = 138,
2445    cudaDevAttrGpuPciDeviceId = 139,
2446    cudaDevAttrGpuPciSubsystemId = 140,
2447    cudaDevAttrReserved141 = 141,
2448    cudaDevAttrHostNumaMemoryPoolsSupported = 142,
2449    cudaDevAttrHostNumaMultinodeIpcSupported = 143,
2450    cudaDevAttrHostMemoryPoolsSupported = 144,
2451    cudaDevAttrReserved145 = 145,
2452    cudaDevAttrOnlyPartialHostNativeAtomicSupported = 147,
2453    cudaDevAttrMax = 148,
2454}
2455#[cfg(any(
2456    feature = "cuda-12020",
2457    feature = "cuda-12030",
2458    feature = "cuda-12040",
2459    feature = "cuda-12050",
2460    feature = "cuda-12060",
2461    feature = "cuda-12080",
2462    feature = "cuda-12090",
2463    feature = "cuda-13000",
2464    feature = "cuda-13010",
2465    feature = "cuda-13020"
2466))]
2467#[repr(u32)]
2468#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2469pub enum cudaDeviceNumaConfig {
2470    cudaDeviceNumaConfigNone = 0,
2471    cudaDeviceNumaConfigNumaNode = 1,
2472}
2473#[cfg(any(
2474    feature = "cuda-11040",
2475    feature = "cuda-11050",
2476    feature = "cuda-11060",
2477    feature = "cuda-11070",
2478    feature = "cuda-11080",
2479    feature = "cuda-12000",
2480    feature = "cuda-12010",
2481    feature = "cuda-12020",
2482    feature = "cuda-12030",
2483    feature = "cuda-12040",
2484    feature = "cuda-12050",
2485    feature = "cuda-12060",
2486    feature = "cuda-12080",
2487    feature = "cuda-12090"
2488))]
2489#[repr(u32)]
2490#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2491pub enum cudaDeviceP2PAttr {
2492    cudaDevP2PAttrPerformanceRank = 1,
2493    cudaDevP2PAttrAccessSupported = 2,
2494    cudaDevP2PAttrNativeAtomicSupported = 3,
2495    cudaDevP2PAttrCudaArrayAccessSupported = 4,
2496}
2497#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
2498#[repr(u32)]
2499#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2500pub enum cudaDeviceP2PAttr {
2501    cudaDevP2PAttrPerformanceRank = 1,
2502    cudaDevP2PAttrAccessSupported = 2,
2503    cudaDevP2PAttrNativeAtomicSupported = 3,
2504    cudaDevP2PAttrCudaArrayAccessSupported = 4,
2505    cudaDevP2PAttrOnlyPartialNativeAtomicSupported = 5,
2506}
2507#[cfg(any(
2508    feature = "cuda-12000",
2509    feature = "cuda-12010",
2510    feature = "cuda-12020",
2511    feature = "cuda-12030",
2512    feature = "cuda-12040",
2513    feature = "cuda-12050",
2514    feature = "cuda-12060",
2515    feature = "cuda-12080",
2516    feature = "cuda-12090",
2517    feature = "cuda-13000",
2518    feature = "cuda-13010",
2519    feature = "cuda-13020"
2520))]
2521#[repr(u32)]
2522#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2523pub enum cudaDriverEntryPointQueryResult {
2524    cudaDriverEntryPointSuccess = 0,
2525    cudaDriverEntryPointSymbolNotFound = 1,
2526    cudaDriverEntryPointVersionNotSufficent = 2,
2527}
2528#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
2529#[repr(u32)]
2530#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2531pub enum cudaEmulationMantissaControl_t {
2532    CUDA_EMULATION_MANTISSA_CONTROL_DYNAMIC = 0,
2533    CUDA_EMULATION_MANTISSA_CONTROL_FIXED = 1,
2534}
2535#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
2536#[repr(u32)]
2537#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2538pub enum cudaEmulationSpecialValuesSupport_t {
2539    CUDA_EMULATION_SPECIAL_VALUES_SUPPORT_DEFAULT = 65535,
2540    CUDA_EMULATION_SPECIAL_VALUES_SUPPORT_NONE = 0,
2541    CUDA_EMULATION_SPECIAL_VALUES_SUPPORT_INFINITY = 1,
2542    CUDA_EMULATION_SPECIAL_VALUES_SUPPORT_NAN = 2,
2543}
2544#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
2545#[repr(u32)]
2546#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2547pub enum cudaEmulationStrategy_t {
2548    CUDA_EMULATION_STRATEGY_DEFAULT = 0,
2549    CUDA_EMULATION_STRATEGY_PERFORMANT = 1,
2550    CUDA_EMULATION_STRATEGY_EAGER = 2,
2551}
2552#[cfg(any(
2553    feature = "cuda-11040",
2554    feature = "cuda-11050",
2555    feature = "cuda-11060",
2556    feature = "cuda-11070"
2557))]
2558#[repr(u32)]
2559#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2560pub enum cudaError {
2561    cudaSuccess = 0,
2562    cudaErrorInvalidValue = 1,
2563    cudaErrorMemoryAllocation = 2,
2564    cudaErrorInitializationError = 3,
2565    cudaErrorCudartUnloading = 4,
2566    cudaErrorProfilerDisabled = 5,
2567    cudaErrorProfilerNotInitialized = 6,
2568    cudaErrorProfilerAlreadyStarted = 7,
2569    cudaErrorProfilerAlreadyStopped = 8,
2570    cudaErrorInvalidConfiguration = 9,
2571    cudaErrorInvalidPitchValue = 12,
2572    cudaErrorInvalidSymbol = 13,
2573    cudaErrorInvalidHostPointer = 16,
2574    cudaErrorInvalidDevicePointer = 17,
2575    cudaErrorInvalidTexture = 18,
2576    cudaErrorInvalidTextureBinding = 19,
2577    cudaErrorInvalidChannelDescriptor = 20,
2578    cudaErrorInvalidMemcpyDirection = 21,
2579    cudaErrorAddressOfConstant = 22,
2580    cudaErrorTextureFetchFailed = 23,
2581    cudaErrorTextureNotBound = 24,
2582    cudaErrorSynchronizationError = 25,
2583    cudaErrorInvalidFilterSetting = 26,
2584    cudaErrorInvalidNormSetting = 27,
2585    cudaErrorMixedDeviceExecution = 28,
2586    cudaErrorNotYetImplemented = 31,
2587    cudaErrorMemoryValueTooLarge = 32,
2588    cudaErrorStubLibrary = 34,
2589    cudaErrorInsufficientDriver = 35,
2590    cudaErrorCallRequiresNewerDriver = 36,
2591    cudaErrorInvalidSurface = 37,
2592    cudaErrorDuplicateVariableName = 43,
2593    cudaErrorDuplicateTextureName = 44,
2594    cudaErrorDuplicateSurfaceName = 45,
2595    cudaErrorDevicesUnavailable = 46,
2596    cudaErrorIncompatibleDriverContext = 49,
2597    cudaErrorMissingConfiguration = 52,
2598    cudaErrorPriorLaunchFailure = 53,
2599    cudaErrorLaunchMaxDepthExceeded = 65,
2600    cudaErrorLaunchFileScopedTex = 66,
2601    cudaErrorLaunchFileScopedSurf = 67,
2602    cudaErrorSyncDepthExceeded = 68,
2603    cudaErrorLaunchPendingCountExceeded = 69,
2604    cudaErrorInvalidDeviceFunction = 98,
2605    cudaErrorNoDevice = 100,
2606    cudaErrorInvalidDevice = 101,
2607    cudaErrorDeviceNotLicensed = 102,
2608    cudaErrorSoftwareValidityNotEstablished = 103,
2609    cudaErrorStartupFailure = 127,
2610    cudaErrorInvalidKernelImage = 200,
2611    cudaErrorDeviceUninitialized = 201,
2612    cudaErrorMapBufferObjectFailed = 205,
2613    cudaErrorUnmapBufferObjectFailed = 206,
2614    cudaErrorArrayIsMapped = 207,
2615    cudaErrorAlreadyMapped = 208,
2616    cudaErrorNoKernelImageForDevice = 209,
2617    cudaErrorAlreadyAcquired = 210,
2618    cudaErrorNotMapped = 211,
2619    cudaErrorNotMappedAsArray = 212,
2620    cudaErrorNotMappedAsPointer = 213,
2621    cudaErrorECCUncorrectable = 214,
2622    cudaErrorUnsupportedLimit = 215,
2623    cudaErrorDeviceAlreadyInUse = 216,
2624    cudaErrorPeerAccessUnsupported = 217,
2625    cudaErrorInvalidPtx = 218,
2626    cudaErrorInvalidGraphicsContext = 219,
2627    cudaErrorNvlinkUncorrectable = 220,
2628    cudaErrorJitCompilerNotFound = 221,
2629    cudaErrorUnsupportedPtxVersion = 222,
2630    cudaErrorJitCompilationDisabled = 223,
2631    cudaErrorUnsupportedExecAffinity = 224,
2632    cudaErrorInvalidSource = 300,
2633    cudaErrorFileNotFound = 301,
2634    cudaErrorSharedObjectSymbolNotFound = 302,
2635    cudaErrorSharedObjectInitFailed = 303,
2636    cudaErrorOperatingSystem = 304,
2637    cudaErrorInvalidResourceHandle = 400,
2638    cudaErrorIllegalState = 401,
2639    cudaErrorSymbolNotFound = 500,
2640    cudaErrorNotReady = 600,
2641    cudaErrorIllegalAddress = 700,
2642    cudaErrorLaunchOutOfResources = 701,
2643    cudaErrorLaunchTimeout = 702,
2644    cudaErrorLaunchIncompatibleTexturing = 703,
2645    cudaErrorPeerAccessAlreadyEnabled = 704,
2646    cudaErrorPeerAccessNotEnabled = 705,
2647    cudaErrorSetOnActiveProcess = 708,
2648    cudaErrorContextIsDestroyed = 709,
2649    cudaErrorAssert = 710,
2650    cudaErrorTooManyPeers = 711,
2651    cudaErrorHostMemoryAlreadyRegistered = 712,
2652    cudaErrorHostMemoryNotRegistered = 713,
2653    cudaErrorHardwareStackError = 714,
2654    cudaErrorIllegalInstruction = 715,
2655    cudaErrorMisalignedAddress = 716,
2656    cudaErrorInvalidAddressSpace = 717,
2657    cudaErrorInvalidPc = 718,
2658    cudaErrorLaunchFailure = 719,
2659    cudaErrorCooperativeLaunchTooLarge = 720,
2660    cudaErrorNotPermitted = 800,
2661    cudaErrorNotSupported = 801,
2662    cudaErrorSystemNotReady = 802,
2663    cudaErrorSystemDriverMismatch = 803,
2664    cudaErrorCompatNotSupportedOnDevice = 804,
2665    cudaErrorMpsConnectionFailed = 805,
2666    cudaErrorMpsRpcFailure = 806,
2667    cudaErrorMpsServerNotReady = 807,
2668    cudaErrorMpsMaxClientsReached = 808,
2669    cudaErrorMpsMaxConnectionsReached = 809,
2670    cudaErrorStreamCaptureUnsupported = 900,
2671    cudaErrorStreamCaptureInvalidated = 901,
2672    cudaErrorStreamCaptureMerge = 902,
2673    cudaErrorStreamCaptureUnmatched = 903,
2674    cudaErrorStreamCaptureUnjoined = 904,
2675    cudaErrorStreamCaptureIsolation = 905,
2676    cudaErrorStreamCaptureImplicit = 906,
2677    cudaErrorCapturedEvent = 907,
2678    cudaErrorStreamCaptureWrongThread = 908,
2679    cudaErrorTimeout = 909,
2680    cudaErrorGraphExecUpdateFailure = 910,
2681    cudaErrorExternalDevice = 911,
2682    cudaErrorUnknown = 999,
2683    cudaErrorApiFailureBase = 10000,
2684}
2685#[cfg(any(feature = "cuda-11080"))]
2686#[repr(u32)]
2687#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2688pub enum cudaError {
2689    cudaSuccess = 0,
2690    cudaErrorInvalidValue = 1,
2691    cudaErrorMemoryAllocation = 2,
2692    cudaErrorInitializationError = 3,
2693    cudaErrorCudartUnloading = 4,
2694    cudaErrorProfilerDisabled = 5,
2695    cudaErrorProfilerNotInitialized = 6,
2696    cudaErrorProfilerAlreadyStarted = 7,
2697    cudaErrorProfilerAlreadyStopped = 8,
2698    cudaErrorInvalidConfiguration = 9,
2699    cudaErrorInvalidPitchValue = 12,
2700    cudaErrorInvalidSymbol = 13,
2701    cudaErrorInvalidHostPointer = 16,
2702    cudaErrorInvalidDevicePointer = 17,
2703    cudaErrorInvalidTexture = 18,
2704    cudaErrorInvalidTextureBinding = 19,
2705    cudaErrorInvalidChannelDescriptor = 20,
2706    cudaErrorInvalidMemcpyDirection = 21,
2707    cudaErrorAddressOfConstant = 22,
2708    cudaErrorTextureFetchFailed = 23,
2709    cudaErrorTextureNotBound = 24,
2710    cudaErrorSynchronizationError = 25,
2711    cudaErrorInvalidFilterSetting = 26,
2712    cudaErrorInvalidNormSetting = 27,
2713    cudaErrorMixedDeviceExecution = 28,
2714    cudaErrorNotYetImplemented = 31,
2715    cudaErrorMemoryValueTooLarge = 32,
2716    cudaErrorStubLibrary = 34,
2717    cudaErrorInsufficientDriver = 35,
2718    cudaErrorCallRequiresNewerDriver = 36,
2719    cudaErrorInvalidSurface = 37,
2720    cudaErrorDuplicateVariableName = 43,
2721    cudaErrorDuplicateTextureName = 44,
2722    cudaErrorDuplicateSurfaceName = 45,
2723    cudaErrorDevicesUnavailable = 46,
2724    cudaErrorIncompatibleDriverContext = 49,
2725    cudaErrorMissingConfiguration = 52,
2726    cudaErrorPriorLaunchFailure = 53,
2727    cudaErrorLaunchMaxDepthExceeded = 65,
2728    cudaErrorLaunchFileScopedTex = 66,
2729    cudaErrorLaunchFileScopedSurf = 67,
2730    cudaErrorSyncDepthExceeded = 68,
2731    cudaErrorLaunchPendingCountExceeded = 69,
2732    cudaErrorInvalidDeviceFunction = 98,
2733    cudaErrorNoDevice = 100,
2734    cudaErrorInvalidDevice = 101,
2735    cudaErrorDeviceNotLicensed = 102,
2736    cudaErrorSoftwareValidityNotEstablished = 103,
2737    cudaErrorStartupFailure = 127,
2738    cudaErrorInvalidKernelImage = 200,
2739    cudaErrorDeviceUninitialized = 201,
2740    cudaErrorMapBufferObjectFailed = 205,
2741    cudaErrorUnmapBufferObjectFailed = 206,
2742    cudaErrorArrayIsMapped = 207,
2743    cudaErrorAlreadyMapped = 208,
2744    cudaErrorNoKernelImageForDevice = 209,
2745    cudaErrorAlreadyAcquired = 210,
2746    cudaErrorNotMapped = 211,
2747    cudaErrorNotMappedAsArray = 212,
2748    cudaErrorNotMappedAsPointer = 213,
2749    cudaErrorECCUncorrectable = 214,
2750    cudaErrorUnsupportedLimit = 215,
2751    cudaErrorDeviceAlreadyInUse = 216,
2752    cudaErrorPeerAccessUnsupported = 217,
2753    cudaErrorInvalidPtx = 218,
2754    cudaErrorInvalidGraphicsContext = 219,
2755    cudaErrorNvlinkUncorrectable = 220,
2756    cudaErrorJitCompilerNotFound = 221,
2757    cudaErrorUnsupportedPtxVersion = 222,
2758    cudaErrorJitCompilationDisabled = 223,
2759    cudaErrorUnsupportedExecAffinity = 224,
2760    cudaErrorInvalidSource = 300,
2761    cudaErrorFileNotFound = 301,
2762    cudaErrorSharedObjectSymbolNotFound = 302,
2763    cudaErrorSharedObjectInitFailed = 303,
2764    cudaErrorOperatingSystem = 304,
2765    cudaErrorInvalidResourceHandle = 400,
2766    cudaErrorIllegalState = 401,
2767    cudaErrorSymbolNotFound = 500,
2768    cudaErrorNotReady = 600,
2769    cudaErrorIllegalAddress = 700,
2770    cudaErrorLaunchOutOfResources = 701,
2771    cudaErrorLaunchTimeout = 702,
2772    cudaErrorLaunchIncompatibleTexturing = 703,
2773    cudaErrorPeerAccessAlreadyEnabled = 704,
2774    cudaErrorPeerAccessNotEnabled = 705,
2775    cudaErrorSetOnActiveProcess = 708,
2776    cudaErrorContextIsDestroyed = 709,
2777    cudaErrorAssert = 710,
2778    cudaErrorTooManyPeers = 711,
2779    cudaErrorHostMemoryAlreadyRegistered = 712,
2780    cudaErrorHostMemoryNotRegistered = 713,
2781    cudaErrorHardwareStackError = 714,
2782    cudaErrorIllegalInstruction = 715,
2783    cudaErrorMisalignedAddress = 716,
2784    cudaErrorInvalidAddressSpace = 717,
2785    cudaErrorInvalidPc = 718,
2786    cudaErrorLaunchFailure = 719,
2787    cudaErrorCooperativeLaunchTooLarge = 720,
2788    cudaErrorNotPermitted = 800,
2789    cudaErrorNotSupported = 801,
2790    cudaErrorSystemNotReady = 802,
2791    cudaErrorSystemDriverMismatch = 803,
2792    cudaErrorCompatNotSupportedOnDevice = 804,
2793    cudaErrorMpsConnectionFailed = 805,
2794    cudaErrorMpsRpcFailure = 806,
2795    cudaErrorMpsServerNotReady = 807,
2796    cudaErrorMpsMaxClientsReached = 808,
2797    cudaErrorMpsMaxConnectionsReached = 809,
2798    cudaErrorMpsClientTerminated = 810,
2799    cudaErrorStreamCaptureUnsupported = 900,
2800    cudaErrorStreamCaptureInvalidated = 901,
2801    cudaErrorStreamCaptureMerge = 902,
2802    cudaErrorStreamCaptureUnmatched = 903,
2803    cudaErrorStreamCaptureUnjoined = 904,
2804    cudaErrorStreamCaptureIsolation = 905,
2805    cudaErrorStreamCaptureImplicit = 906,
2806    cudaErrorCapturedEvent = 907,
2807    cudaErrorStreamCaptureWrongThread = 908,
2808    cudaErrorTimeout = 909,
2809    cudaErrorGraphExecUpdateFailure = 910,
2810    cudaErrorExternalDevice = 911,
2811    cudaErrorInvalidClusterSize = 912,
2812    cudaErrorUnknown = 999,
2813    cudaErrorApiFailureBase = 10000,
2814}
2815#[cfg(any(feature = "cuda-12000"))]
2816#[repr(u32)]
2817#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2818pub enum cudaError {
2819    cudaSuccess = 0,
2820    cudaErrorInvalidValue = 1,
2821    cudaErrorMemoryAllocation = 2,
2822    cudaErrorInitializationError = 3,
2823    cudaErrorCudartUnloading = 4,
2824    cudaErrorProfilerDisabled = 5,
2825    cudaErrorProfilerNotInitialized = 6,
2826    cudaErrorProfilerAlreadyStarted = 7,
2827    cudaErrorProfilerAlreadyStopped = 8,
2828    cudaErrorInvalidConfiguration = 9,
2829    cudaErrorInvalidPitchValue = 12,
2830    cudaErrorInvalidSymbol = 13,
2831    cudaErrorInvalidHostPointer = 16,
2832    cudaErrorInvalidDevicePointer = 17,
2833    cudaErrorInvalidTexture = 18,
2834    cudaErrorInvalidTextureBinding = 19,
2835    cudaErrorInvalidChannelDescriptor = 20,
2836    cudaErrorInvalidMemcpyDirection = 21,
2837    cudaErrorAddressOfConstant = 22,
2838    cudaErrorTextureFetchFailed = 23,
2839    cudaErrorTextureNotBound = 24,
2840    cudaErrorSynchronizationError = 25,
2841    cudaErrorInvalidFilterSetting = 26,
2842    cudaErrorInvalidNormSetting = 27,
2843    cudaErrorMixedDeviceExecution = 28,
2844    cudaErrorNotYetImplemented = 31,
2845    cudaErrorMemoryValueTooLarge = 32,
2846    cudaErrorStubLibrary = 34,
2847    cudaErrorInsufficientDriver = 35,
2848    cudaErrorCallRequiresNewerDriver = 36,
2849    cudaErrorInvalidSurface = 37,
2850    cudaErrorDuplicateVariableName = 43,
2851    cudaErrorDuplicateTextureName = 44,
2852    cudaErrorDuplicateSurfaceName = 45,
2853    cudaErrorDevicesUnavailable = 46,
2854    cudaErrorIncompatibleDriverContext = 49,
2855    cudaErrorMissingConfiguration = 52,
2856    cudaErrorPriorLaunchFailure = 53,
2857    cudaErrorLaunchMaxDepthExceeded = 65,
2858    cudaErrorLaunchFileScopedTex = 66,
2859    cudaErrorLaunchFileScopedSurf = 67,
2860    cudaErrorSyncDepthExceeded = 68,
2861    cudaErrorLaunchPendingCountExceeded = 69,
2862    cudaErrorInvalidDeviceFunction = 98,
2863    cudaErrorNoDevice = 100,
2864    cudaErrorInvalidDevice = 101,
2865    cudaErrorDeviceNotLicensed = 102,
2866    cudaErrorSoftwareValidityNotEstablished = 103,
2867    cudaErrorStartupFailure = 127,
2868    cudaErrorInvalidKernelImage = 200,
2869    cudaErrorDeviceUninitialized = 201,
2870    cudaErrorMapBufferObjectFailed = 205,
2871    cudaErrorUnmapBufferObjectFailed = 206,
2872    cudaErrorArrayIsMapped = 207,
2873    cudaErrorAlreadyMapped = 208,
2874    cudaErrorNoKernelImageForDevice = 209,
2875    cudaErrorAlreadyAcquired = 210,
2876    cudaErrorNotMapped = 211,
2877    cudaErrorNotMappedAsArray = 212,
2878    cudaErrorNotMappedAsPointer = 213,
2879    cudaErrorECCUncorrectable = 214,
2880    cudaErrorUnsupportedLimit = 215,
2881    cudaErrorDeviceAlreadyInUse = 216,
2882    cudaErrorPeerAccessUnsupported = 217,
2883    cudaErrorInvalidPtx = 218,
2884    cudaErrorInvalidGraphicsContext = 219,
2885    cudaErrorNvlinkUncorrectable = 220,
2886    cudaErrorJitCompilerNotFound = 221,
2887    cudaErrorUnsupportedPtxVersion = 222,
2888    cudaErrorJitCompilationDisabled = 223,
2889    cudaErrorUnsupportedExecAffinity = 224,
2890    cudaErrorInvalidSource = 300,
2891    cudaErrorFileNotFound = 301,
2892    cudaErrorSharedObjectSymbolNotFound = 302,
2893    cudaErrorSharedObjectInitFailed = 303,
2894    cudaErrorOperatingSystem = 304,
2895    cudaErrorInvalidResourceHandle = 400,
2896    cudaErrorIllegalState = 401,
2897    cudaErrorSymbolNotFound = 500,
2898    cudaErrorNotReady = 600,
2899    cudaErrorIllegalAddress = 700,
2900    cudaErrorLaunchOutOfResources = 701,
2901    cudaErrorLaunchTimeout = 702,
2902    cudaErrorLaunchIncompatibleTexturing = 703,
2903    cudaErrorPeerAccessAlreadyEnabled = 704,
2904    cudaErrorPeerAccessNotEnabled = 705,
2905    cudaErrorSetOnActiveProcess = 708,
2906    cudaErrorContextIsDestroyed = 709,
2907    cudaErrorAssert = 710,
2908    cudaErrorTooManyPeers = 711,
2909    cudaErrorHostMemoryAlreadyRegistered = 712,
2910    cudaErrorHostMemoryNotRegistered = 713,
2911    cudaErrorHardwareStackError = 714,
2912    cudaErrorIllegalInstruction = 715,
2913    cudaErrorMisalignedAddress = 716,
2914    cudaErrorInvalidAddressSpace = 717,
2915    cudaErrorInvalidPc = 718,
2916    cudaErrorLaunchFailure = 719,
2917    cudaErrorCooperativeLaunchTooLarge = 720,
2918    cudaErrorNotPermitted = 800,
2919    cudaErrorNotSupported = 801,
2920    cudaErrorSystemNotReady = 802,
2921    cudaErrorSystemDriverMismatch = 803,
2922    cudaErrorCompatNotSupportedOnDevice = 804,
2923    cudaErrorMpsConnectionFailed = 805,
2924    cudaErrorMpsRpcFailure = 806,
2925    cudaErrorMpsServerNotReady = 807,
2926    cudaErrorMpsMaxClientsReached = 808,
2927    cudaErrorMpsMaxConnectionsReached = 809,
2928    cudaErrorMpsClientTerminated = 810,
2929    cudaErrorCdpNotSupported = 811,
2930    cudaErrorCdpVersionMismatch = 812,
2931    cudaErrorStreamCaptureUnsupported = 900,
2932    cudaErrorStreamCaptureInvalidated = 901,
2933    cudaErrorStreamCaptureMerge = 902,
2934    cudaErrorStreamCaptureUnmatched = 903,
2935    cudaErrorStreamCaptureUnjoined = 904,
2936    cudaErrorStreamCaptureIsolation = 905,
2937    cudaErrorStreamCaptureImplicit = 906,
2938    cudaErrorCapturedEvent = 907,
2939    cudaErrorStreamCaptureWrongThread = 908,
2940    cudaErrorTimeout = 909,
2941    cudaErrorGraphExecUpdateFailure = 910,
2942    cudaErrorExternalDevice = 911,
2943    cudaErrorInvalidClusterSize = 912,
2944    cudaErrorUnknown = 999,
2945    cudaErrorApiFailureBase = 10000,
2946}
2947#[cfg(any(feature = "cuda-12010", feature = "cuda-12020"))]
2948#[repr(u32)]
2949#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
2950pub enum cudaError {
2951    cudaSuccess = 0,
2952    cudaErrorInvalidValue = 1,
2953    cudaErrorMemoryAllocation = 2,
2954    cudaErrorInitializationError = 3,
2955    cudaErrorCudartUnloading = 4,
2956    cudaErrorProfilerDisabled = 5,
2957    cudaErrorProfilerNotInitialized = 6,
2958    cudaErrorProfilerAlreadyStarted = 7,
2959    cudaErrorProfilerAlreadyStopped = 8,
2960    cudaErrorInvalidConfiguration = 9,
2961    cudaErrorInvalidPitchValue = 12,
2962    cudaErrorInvalidSymbol = 13,
2963    cudaErrorInvalidHostPointer = 16,
2964    cudaErrorInvalidDevicePointer = 17,
2965    cudaErrorInvalidTexture = 18,
2966    cudaErrorInvalidTextureBinding = 19,
2967    cudaErrorInvalidChannelDescriptor = 20,
2968    cudaErrorInvalidMemcpyDirection = 21,
2969    cudaErrorAddressOfConstant = 22,
2970    cudaErrorTextureFetchFailed = 23,
2971    cudaErrorTextureNotBound = 24,
2972    cudaErrorSynchronizationError = 25,
2973    cudaErrorInvalidFilterSetting = 26,
2974    cudaErrorInvalidNormSetting = 27,
2975    cudaErrorMixedDeviceExecution = 28,
2976    cudaErrorNotYetImplemented = 31,
2977    cudaErrorMemoryValueTooLarge = 32,
2978    cudaErrorStubLibrary = 34,
2979    cudaErrorInsufficientDriver = 35,
2980    cudaErrorCallRequiresNewerDriver = 36,
2981    cudaErrorInvalidSurface = 37,
2982    cudaErrorDuplicateVariableName = 43,
2983    cudaErrorDuplicateTextureName = 44,
2984    cudaErrorDuplicateSurfaceName = 45,
2985    cudaErrorDevicesUnavailable = 46,
2986    cudaErrorIncompatibleDriverContext = 49,
2987    cudaErrorMissingConfiguration = 52,
2988    cudaErrorPriorLaunchFailure = 53,
2989    cudaErrorLaunchMaxDepthExceeded = 65,
2990    cudaErrorLaunchFileScopedTex = 66,
2991    cudaErrorLaunchFileScopedSurf = 67,
2992    cudaErrorSyncDepthExceeded = 68,
2993    cudaErrorLaunchPendingCountExceeded = 69,
2994    cudaErrorInvalidDeviceFunction = 98,
2995    cudaErrorNoDevice = 100,
2996    cudaErrorInvalidDevice = 101,
2997    cudaErrorDeviceNotLicensed = 102,
2998    cudaErrorSoftwareValidityNotEstablished = 103,
2999    cudaErrorStartupFailure = 127,
3000    cudaErrorInvalidKernelImage = 200,
3001    cudaErrorDeviceUninitialized = 201,
3002    cudaErrorMapBufferObjectFailed = 205,
3003    cudaErrorUnmapBufferObjectFailed = 206,
3004    cudaErrorArrayIsMapped = 207,
3005    cudaErrorAlreadyMapped = 208,
3006    cudaErrorNoKernelImageForDevice = 209,
3007    cudaErrorAlreadyAcquired = 210,
3008    cudaErrorNotMapped = 211,
3009    cudaErrorNotMappedAsArray = 212,
3010    cudaErrorNotMappedAsPointer = 213,
3011    cudaErrorECCUncorrectable = 214,
3012    cudaErrorUnsupportedLimit = 215,
3013    cudaErrorDeviceAlreadyInUse = 216,
3014    cudaErrorPeerAccessUnsupported = 217,
3015    cudaErrorInvalidPtx = 218,
3016    cudaErrorInvalidGraphicsContext = 219,
3017    cudaErrorNvlinkUncorrectable = 220,
3018    cudaErrorJitCompilerNotFound = 221,
3019    cudaErrorUnsupportedPtxVersion = 222,
3020    cudaErrorJitCompilationDisabled = 223,
3021    cudaErrorUnsupportedExecAffinity = 224,
3022    cudaErrorUnsupportedDevSideSync = 225,
3023    cudaErrorInvalidSource = 300,
3024    cudaErrorFileNotFound = 301,
3025    cudaErrorSharedObjectSymbolNotFound = 302,
3026    cudaErrorSharedObjectInitFailed = 303,
3027    cudaErrorOperatingSystem = 304,
3028    cudaErrorInvalidResourceHandle = 400,
3029    cudaErrorIllegalState = 401,
3030    cudaErrorSymbolNotFound = 500,
3031    cudaErrorNotReady = 600,
3032    cudaErrorIllegalAddress = 700,
3033    cudaErrorLaunchOutOfResources = 701,
3034    cudaErrorLaunchTimeout = 702,
3035    cudaErrorLaunchIncompatibleTexturing = 703,
3036    cudaErrorPeerAccessAlreadyEnabled = 704,
3037    cudaErrorPeerAccessNotEnabled = 705,
3038    cudaErrorSetOnActiveProcess = 708,
3039    cudaErrorContextIsDestroyed = 709,
3040    cudaErrorAssert = 710,
3041    cudaErrorTooManyPeers = 711,
3042    cudaErrorHostMemoryAlreadyRegistered = 712,
3043    cudaErrorHostMemoryNotRegistered = 713,
3044    cudaErrorHardwareStackError = 714,
3045    cudaErrorIllegalInstruction = 715,
3046    cudaErrorMisalignedAddress = 716,
3047    cudaErrorInvalidAddressSpace = 717,
3048    cudaErrorInvalidPc = 718,
3049    cudaErrorLaunchFailure = 719,
3050    cudaErrorCooperativeLaunchTooLarge = 720,
3051    cudaErrorNotPermitted = 800,
3052    cudaErrorNotSupported = 801,
3053    cudaErrorSystemNotReady = 802,
3054    cudaErrorSystemDriverMismatch = 803,
3055    cudaErrorCompatNotSupportedOnDevice = 804,
3056    cudaErrorMpsConnectionFailed = 805,
3057    cudaErrorMpsRpcFailure = 806,
3058    cudaErrorMpsServerNotReady = 807,
3059    cudaErrorMpsMaxClientsReached = 808,
3060    cudaErrorMpsMaxConnectionsReached = 809,
3061    cudaErrorMpsClientTerminated = 810,
3062    cudaErrorCdpNotSupported = 811,
3063    cudaErrorCdpVersionMismatch = 812,
3064    cudaErrorStreamCaptureUnsupported = 900,
3065    cudaErrorStreamCaptureInvalidated = 901,
3066    cudaErrorStreamCaptureMerge = 902,
3067    cudaErrorStreamCaptureUnmatched = 903,
3068    cudaErrorStreamCaptureUnjoined = 904,
3069    cudaErrorStreamCaptureIsolation = 905,
3070    cudaErrorStreamCaptureImplicit = 906,
3071    cudaErrorCapturedEvent = 907,
3072    cudaErrorStreamCaptureWrongThread = 908,
3073    cudaErrorTimeout = 909,
3074    cudaErrorGraphExecUpdateFailure = 910,
3075    cudaErrorExternalDevice = 911,
3076    cudaErrorInvalidClusterSize = 912,
3077    cudaErrorUnknown = 999,
3078    cudaErrorApiFailureBase = 10000,
3079}
3080#[cfg(any(feature = "cuda-12030", feature = "cuda-12040", feature = "cuda-12050"))]
3081#[repr(u32)]
3082#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3083pub enum cudaError {
3084    cudaSuccess = 0,
3085    cudaErrorInvalidValue = 1,
3086    cudaErrorMemoryAllocation = 2,
3087    cudaErrorInitializationError = 3,
3088    cudaErrorCudartUnloading = 4,
3089    cudaErrorProfilerDisabled = 5,
3090    cudaErrorProfilerNotInitialized = 6,
3091    cudaErrorProfilerAlreadyStarted = 7,
3092    cudaErrorProfilerAlreadyStopped = 8,
3093    cudaErrorInvalidConfiguration = 9,
3094    cudaErrorInvalidPitchValue = 12,
3095    cudaErrorInvalidSymbol = 13,
3096    cudaErrorInvalidHostPointer = 16,
3097    cudaErrorInvalidDevicePointer = 17,
3098    cudaErrorInvalidTexture = 18,
3099    cudaErrorInvalidTextureBinding = 19,
3100    cudaErrorInvalidChannelDescriptor = 20,
3101    cudaErrorInvalidMemcpyDirection = 21,
3102    cudaErrorAddressOfConstant = 22,
3103    cudaErrorTextureFetchFailed = 23,
3104    cudaErrorTextureNotBound = 24,
3105    cudaErrorSynchronizationError = 25,
3106    cudaErrorInvalidFilterSetting = 26,
3107    cudaErrorInvalidNormSetting = 27,
3108    cudaErrorMixedDeviceExecution = 28,
3109    cudaErrorNotYetImplemented = 31,
3110    cudaErrorMemoryValueTooLarge = 32,
3111    cudaErrorStubLibrary = 34,
3112    cudaErrorInsufficientDriver = 35,
3113    cudaErrorCallRequiresNewerDriver = 36,
3114    cudaErrorInvalidSurface = 37,
3115    cudaErrorDuplicateVariableName = 43,
3116    cudaErrorDuplicateTextureName = 44,
3117    cudaErrorDuplicateSurfaceName = 45,
3118    cudaErrorDevicesUnavailable = 46,
3119    cudaErrorIncompatibleDriverContext = 49,
3120    cudaErrorMissingConfiguration = 52,
3121    cudaErrorPriorLaunchFailure = 53,
3122    cudaErrorLaunchMaxDepthExceeded = 65,
3123    cudaErrorLaunchFileScopedTex = 66,
3124    cudaErrorLaunchFileScopedSurf = 67,
3125    cudaErrorSyncDepthExceeded = 68,
3126    cudaErrorLaunchPendingCountExceeded = 69,
3127    cudaErrorInvalidDeviceFunction = 98,
3128    cudaErrorNoDevice = 100,
3129    cudaErrorInvalidDevice = 101,
3130    cudaErrorDeviceNotLicensed = 102,
3131    cudaErrorSoftwareValidityNotEstablished = 103,
3132    cudaErrorStartupFailure = 127,
3133    cudaErrorInvalidKernelImage = 200,
3134    cudaErrorDeviceUninitialized = 201,
3135    cudaErrorMapBufferObjectFailed = 205,
3136    cudaErrorUnmapBufferObjectFailed = 206,
3137    cudaErrorArrayIsMapped = 207,
3138    cudaErrorAlreadyMapped = 208,
3139    cudaErrorNoKernelImageForDevice = 209,
3140    cudaErrorAlreadyAcquired = 210,
3141    cudaErrorNotMapped = 211,
3142    cudaErrorNotMappedAsArray = 212,
3143    cudaErrorNotMappedAsPointer = 213,
3144    cudaErrorECCUncorrectable = 214,
3145    cudaErrorUnsupportedLimit = 215,
3146    cudaErrorDeviceAlreadyInUse = 216,
3147    cudaErrorPeerAccessUnsupported = 217,
3148    cudaErrorInvalidPtx = 218,
3149    cudaErrorInvalidGraphicsContext = 219,
3150    cudaErrorNvlinkUncorrectable = 220,
3151    cudaErrorJitCompilerNotFound = 221,
3152    cudaErrorUnsupportedPtxVersion = 222,
3153    cudaErrorJitCompilationDisabled = 223,
3154    cudaErrorUnsupportedExecAffinity = 224,
3155    cudaErrorUnsupportedDevSideSync = 225,
3156    cudaErrorInvalidSource = 300,
3157    cudaErrorFileNotFound = 301,
3158    cudaErrorSharedObjectSymbolNotFound = 302,
3159    cudaErrorSharedObjectInitFailed = 303,
3160    cudaErrorOperatingSystem = 304,
3161    cudaErrorInvalidResourceHandle = 400,
3162    cudaErrorIllegalState = 401,
3163    cudaErrorLossyQuery = 402,
3164    cudaErrorSymbolNotFound = 500,
3165    cudaErrorNotReady = 600,
3166    cudaErrorIllegalAddress = 700,
3167    cudaErrorLaunchOutOfResources = 701,
3168    cudaErrorLaunchTimeout = 702,
3169    cudaErrorLaunchIncompatibleTexturing = 703,
3170    cudaErrorPeerAccessAlreadyEnabled = 704,
3171    cudaErrorPeerAccessNotEnabled = 705,
3172    cudaErrorSetOnActiveProcess = 708,
3173    cudaErrorContextIsDestroyed = 709,
3174    cudaErrorAssert = 710,
3175    cudaErrorTooManyPeers = 711,
3176    cudaErrorHostMemoryAlreadyRegistered = 712,
3177    cudaErrorHostMemoryNotRegistered = 713,
3178    cudaErrorHardwareStackError = 714,
3179    cudaErrorIllegalInstruction = 715,
3180    cudaErrorMisalignedAddress = 716,
3181    cudaErrorInvalidAddressSpace = 717,
3182    cudaErrorInvalidPc = 718,
3183    cudaErrorLaunchFailure = 719,
3184    cudaErrorCooperativeLaunchTooLarge = 720,
3185    cudaErrorNotPermitted = 800,
3186    cudaErrorNotSupported = 801,
3187    cudaErrorSystemNotReady = 802,
3188    cudaErrorSystemDriverMismatch = 803,
3189    cudaErrorCompatNotSupportedOnDevice = 804,
3190    cudaErrorMpsConnectionFailed = 805,
3191    cudaErrorMpsRpcFailure = 806,
3192    cudaErrorMpsServerNotReady = 807,
3193    cudaErrorMpsMaxClientsReached = 808,
3194    cudaErrorMpsMaxConnectionsReached = 809,
3195    cudaErrorMpsClientTerminated = 810,
3196    cudaErrorCdpNotSupported = 811,
3197    cudaErrorCdpVersionMismatch = 812,
3198    cudaErrorStreamCaptureUnsupported = 900,
3199    cudaErrorStreamCaptureInvalidated = 901,
3200    cudaErrorStreamCaptureMerge = 902,
3201    cudaErrorStreamCaptureUnmatched = 903,
3202    cudaErrorStreamCaptureUnjoined = 904,
3203    cudaErrorStreamCaptureIsolation = 905,
3204    cudaErrorStreamCaptureImplicit = 906,
3205    cudaErrorCapturedEvent = 907,
3206    cudaErrorStreamCaptureWrongThread = 908,
3207    cudaErrorTimeout = 909,
3208    cudaErrorGraphExecUpdateFailure = 910,
3209    cudaErrorExternalDevice = 911,
3210    cudaErrorInvalidClusterSize = 912,
3211    cudaErrorUnknown = 999,
3212    cudaErrorApiFailureBase = 10000,
3213}
3214#[cfg(any(feature = "cuda-12060"))]
3215#[repr(u32)]
3216#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3217pub enum cudaError {
3218    cudaSuccess = 0,
3219    cudaErrorInvalidValue = 1,
3220    cudaErrorMemoryAllocation = 2,
3221    cudaErrorInitializationError = 3,
3222    cudaErrorCudartUnloading = 4,
3223    cudaErrorProfilerDisabled = 5,
3224    cudaErrorProfilerNotInitialized = 6,
3225    cudaErrorProfilerAlreadyStarted = 7,
3226    cudaErrorProfilerAlreadyStopped = 8,
3227    cudaErrorInvalidConfiguration = 9,
3228    cudaErrorInvalidPitchValue = 12,
3229    cudaErrorInvalidSymbol = 13,
3230    cudaErrorInvalidHostPointer = 16,
3231    cudaErrorInvalidDevicePointer = 17,
3232    cudaErrorInvalidTexture = 18,
3233    cudaErrorInvalidTextureBinding = 19,
3234    cudaErrorInvalidChannelDescriptor = 20,
3235    cudaErrorInvalidMemcpyDirection = 21,
3236    cudaErrorAddressOfConstant = 22,
3237    cudaErrorTextureFetchFailed = 23,
3238    cudaErrorTextureNotBound = 24,
3239    cudaErrorSynchronizationError = 25,
3240    cudaErrorInvalidFilterSetting = 26,
3241    cudaErrorInvalidNormSetting = 27,
3242    cudaErrorMixedDeviceExecution = 28,
3243    cudaErrorNotYetImplemented = 31,
3244    cudaErrorMemoryValueTooLarge = 32,
3245    cudaErrorStubLibrary = 34,
3246    cudaErrorInsufficientDriver = 35,
3247    cudaErrorCallRequiresNewerDriver = 36,
3248    cudaErrorInvalidSurface = 37,
3249    cudaErrorDuplicateVariableName = 43,
3250    cudaErrorDuplicateTextureName = 44,
3251    cudaErrorDuplicateSurfaceName = 45,
3252    cudaErrorDevicesUnavailable = 46,
3253    cudaErrorIncompatibleDriverContext = 49,
3254    cudaErrorMissingConfiguration = 52,
3255    cudaErrorPriorLaunchFailure = 53,
3256    cudaErrorLaunchMaxDepthExceeded = 65,
3257    cudaErrorLaunchFileScopedTex = 66,
3258    cudaErrorLaunchFileScopedSurf = 67,
3259    cudaErrorSyncDepthExceeded = 68,
3260    cudaErrorLaunchPendingCountExceeded = 69,
3261    cudaErrorInvalidDeviceFunction = 98,
3262    cudaErrorNoDevice = 100,
3263    cudaErrorInvalidDevice = 101,
3264    cudaErrorDeviceNotLicensed = 102,
3265    cudaErrorSoftwareValidityNotEstablished = 103,
3266    cudaErrorStartupFailure = 127,
3267    cudaErrorInvalidKernelImage = 200,
3268    cudaErrorDeviceUninitialized = 201,
3269    cudaErrorMapBufferObjectFailed = 205,
3270    cudaErrorUnmapBufferObjectFailed = 206,
3271    cudaErrorArrayIsMapped = 207,
3272    cudaErrorAlreadyMapped = 208,
3273    cudaErrorNoKernelImageForDevice = 209,
3274    cudaErrorAlreadyAcquired = 210,
3275    cudaErrorNotMapped = 211,
3276    cudaErrorNotMappedAsArray = 212,
3277    cudaErrorNotMappedAsPointer = 213,
3278    cudaErrorECCUncorrectable = 214,
3279    cudaErrorUnsupportedLimit = 215,
3280    cudaErrorDeviceAlreadyInUse = 216,
3281    cudaErrorPeerAccessUnsupported = 217,
3282    cudaErrorInvalidPtx = 218,
3283    cudaErrorInvalidGraphicsContext = 219,
3284    cudaErrorNvlinkUncorrectable = 220,
3285    cudaErrorJitCompilerNotFound = 221,
3286    cudaErrorUnsupportedPtxVersion = 222,
3287    cudaErrorJitCompilationDisabled = 223,
3288    cudaErrorUnsupportedExecAffinity = 224,
3289    cudaErrorUnsupportedDevSideSync = 225,
3290    cudaErrorInvalidSource = 300,
3291    cudaErrorFileNotFound = 301,
3292    cudaErrorSharedObjectSymbolNotFound = 302,
3293    cudaErrorSharedObjectInitFailed = 303,
3294    cudaErrorOperatingSystem = 304,
3295    cudaErrorInvalidResourceHandle = 400,
3296    cudaErrorIllegalState = 401,
3297    cudaErrorLossyQuery = 402,
3298    cudaErrorSymbolNotFound = 500,
3299    cudaErrorNotReady = 600,
3300    cudaErrorIllegalAddress = 700,
3301    cudaErrorLaunchOutOfResources = 701,
3302    cudaErrorLaunchTimeout = 702,
3303    cudaErrorLaunchIncompatibleTexturing = 703,
3304    cudaErrorPeerAccessAlreadyEnabled = 704,
3305    cudaErrorPeerAccessNotEnabled = 705,
3306    cudaErrorSetOnActiveProcess = 708,
3307    cudaErrorContextIsDestroyed = 709,
3308    cudaErrorAssert = 710,
3309    cudaErrorTooManyPeers = 711,
3310    cudaErrorHostMemoryAlreadyRegistered = 712,
3311    cudaErrorHostMemoryNotRegistered = 713,
3312    cudaErrorHardwareStackError = 714,
3313    cudaErrorIllegalInstruction = 715,
3314    cudaErrorMisalignedAddress = 716,
3315    cudaErrorInvalidAddressSpace = 717,
3316    cudaErrorInvalidPc = 718,
3317    cudaErrorLaunchFailure = 719,
3318    cudaErrorCooperativeLaunchTooLarge = 720,
3319    cudaErrorNotPermitted = 800,
3320    cudaErrorNotSupported = 801,
3321    cudaErrorSystemNotReady = 802,
3322    cudaErrorSystemDriverMismatch = 803,
3323    cudaErrorCompatNotSupportedOnDevice = 804,
3324    cudaErrorMpsConnectionFailed = 805,
3325    cudaErrorMpsRpcFailure = 806,
3326    cudaErrorMpsServerNotReady = 807,
3327    cudaErrorMpsMaxClientsReached = 808,
3328    cudaErrorMpsMaxConnectionsReached = 809,
3329    cudaErrorMpsClientTerminated = 810,
3330    cudaErrorCdpNotSupported = 811,
3331    cudaErrorCdpVersionMismatch = 812,
3332    cudaErrorStreamCaptureUnsupported = 900,
3333    cudaErrorStreamCaptureInvalidated = 901,
3334    cudaErrorStreamCaptureMerge = 902,
3335    cudaErrorStreamCaptureUnmatched = 903,
3336    cudaErrorStreamCaptureUnjoined = 904,
3337    cudaErrorStreamCaptureIsolation = 905,
3338    cudaErrorStreamCaptureImplicit = 906,
3339    cudaErrorCapturedEvent = 907,
3340    cudaErrorStreamCaptureWrongThread = 908,
3341    cudaErrorTimeout = 909,
3342    cudaErrorGraphExecUpdateFailure = 910,
3343    cudaErrorExternalDevice = 911,
3344    cudaErrorInvalidClusterSize = 912,
3345    cudaErrorFunctionNotLoaded = 913,
3346    cudaErrorInvalidResourceType = 914,
3347    cudaErrorInvalidResourceConfiguration = 915,
3348    cudaErrorUnknown = 999,
3349    cudaErrorApiFailureBase = 10000,
3350}
3351#[cfg(any(feature = "cuda-12080", feature = "cuda-12090", feature = "cuda-13000"))]
3352#[repr(u32)]
3353#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3354pub enum cudaError {
3355    cudaSuccess = 0,
3356    cudaErrorInvalidValue = 1,
3357    cudaErrorMemoryAllocation = 2,
3358    cudaErrorInitializationError = 3,
3359    cudaErrorCudartUnloading = 4,
3360    cudaErrorProfilerDisabled = 5,
3361    cudaErrorProfilerNotInitialized = 6,
3362    cudaErrorProfilerAlreadyStarted = 7,
3363    cudaErrorProfilerAlreadyStopped = 8,
3364    cudaErrorInvalidConfiguration = 9,
3365    cudaErrorInvalidPitchValue = 12,
3366    cudaErrorInvalidSymbol = 13,
3367    cudaErrorInvalidHostPointer = 16,
3368    cudaErrorInvalidDevicePointer = 17,
3369    cudaErrorInvalidTexture = 18,
3370    cudaErrorInvalidTextureBinding = 19,
3371    cudaErrorInvalidChannelDescriptor = 20,
3372    cudaErrorInvalidMemcpyDirection = 21,
3373    cudaErrorAddressOfConstant = 22,
3374    cudaErrorTextureFetchFailed = 23,
3375    cudaErrorTextureNotBound = 24,
3376    cudaErrorSynchronizationError = 25,
3377    cudaErrorInvalidFilterSetting = 26,
3378    cudaErrorInvalidNormSetting = 27,
3379    cudaErrorMixedDeviceExecution = 28,
3380    cudaErrorNotYetImplemented = 31,
3381    cudaErrorMemoryValueTooLarge = 32,
3382    cudaErrorStubLibrary = 34,
3383    cudaErrorInsufficientDriver = 35,
3384    cudaErrorCallRequiresNewerDriver = 36,
3385    cudaErrorInvalidSurface = 37,
3386    cudaErrorDuplicateVariableName = 43,
3387    cudaErrorDuplicateTextureName = 44,
3388    cudaErrorDuplicateSurfaceName = 45,
3389    cudaErrorDevicesUnavailable = 46,
3390    cudaErrorIncompatibleDriverContext = 49,
3391    cudaErrorMissingConfiguration = 52,
3392    cudaErrorPriorLaunchFailure = 53,
3393    cudaErrorLaunchMaxDepthExceeded = 65,
3394    cudaErrorLaunchFileScopedTex = 66,
3395    cudaErrorLaunchFileScopedSurf = 67,
3396    cudaErrorSyncDepthExceeded = 68,
3397    cudaErrorLaunchPendingCountExceeded = 69,
3398    cudaErrorInvalidDeviceFunction = 98,
3399    cudaErrorNoDevice = 100,
3400    cudaErrorInvalidDevice = 101,
3401    cudaErrorDeviceNotLicensed = 102,
3402    cudaErrorSoftwareValidityNotEstablished = 103,
3403    cudaErrorStartupFailure = 127,
3404    cudaErrorInvalidKernelImage = 200,
3405    cudaErrorDeviceUninitialized = 201,
3406    cudaErrorMapBufferObjectFailed = 205,
3407    cudaErrorUnmapBufferObjectFailed = 206,
3408    cudaErrorArrayIsMapped = 207,
3409    cudaErrorAlreadyMapped = 208,
3410    cudaErrorNoKernelImageForDevice = 209,
3411    cudaErrorAlreadyAcquired = 210,
3412    cudaErrorNotMapped = 211,
3413    cudaErrorNotMappedAsArray = 212,
3414    cudaErrorNotMappedAsPointer = 213,
3415    cudaErrorECCUncorrectable = 214,
3416    cudaErrorUnsupportedLimit = 215,
3417    cudaErrorDeviceAlreadyInUse = 216,
3418    cudaErrorPeerAccessUnsupported = 217,
3419    cudaErrorInvalidPtx = 218,
3420    cudaErrorInvalidGraphicsContext = 219,
3421    cudaErrorNvlinkUncorrectable = 220,
3422    cudaErrorJitCompilerNotFound = 221,
3423    cudaErrorUnsupportedPtxVersion = 222,
3424    cudaErrorJitCompilationDisabled = 223,
3425    cudaErrorUnsupportedExecAffinity = 224,
3426    cudaErrorUnsupportedDevSideSync = 225,
3427    cudaErrorContained = 226,
3428    cudaErrorInvalidSource = 300,
3429    cudaErrorFileNotFound = 301,
3430    cudaErrorSharedObjectSymbolNotFound = 302,
3431    cudaErrorSharedObjectInitFailed = 303,
3432    cudaErrorOperatingSystem = 304,
3433    cudaErrorInvalidResourceHandle = 400,
3434    cudaErrorIllegalState = 401,
3435    cudaErrorLossyQuery = 402,
3436    cudaErrorSymbolNotFound = 500,
3437    cudaErrorNotReady = 600,
3438    cudaErrorIllegalAddress = 700,
3439    cudaErrorLaunchOutOfResources = 701,
3440    cudaErrorLaunchTimeout = 702,
3441    cudaErrorLaunchIncompatibleTexturing = 703,
3442    cudaErrorPeerAccessAlreadyEnabled = 704,
3443    cudaErrorPeerAccessNotEnabled = 705,
3444    cudaErrorSetOnActiveProcess = 708,
3445    cudaErrorContextIsDestroyed = 709,
3446    cudaErrorAssert = 710,
3447    cudaErrorTooManyPeers = 711,
3448    cudaErrorHostMemoryAlreadyRegistered = 712,
3449    cudaErrorHostMemoryNotRegistered = 713,
3450    cudaErrorHardwareStackError = 714,
3451    cudaErrorIllegalInstruction = 715,
3452    cudaErrorMisalignedAddress = 716,
3453    cudaErrorInvalidAddressSpace = 717,
3454    cudaErrorInvalidPc = 718,
3455    cudaErrorLaunchFailure = 719,
3456    cudaErrorCooperativeLaunchTooLarge = 720,
3457    cudaErrorTensorMemoryLeak = 721,
3458    cudaErrorNotPermitted = 800,
3459    cudaErrorNotSupported = 801,
3460    cudaErrorSystemNotReady = 802,
3461    cudaErrorSystemDriverMismatch = 803,
3462    cudaErrorCompatNotSupportedOnDevice = 804,
3463    cudaErrorMpsConnectionFailed = 805,
3464    cudaErrorMpsRpcFailure = 806,
3465    cudaErrorMpsServerNotReady = 807,
3466    cudaErrorMpsMaxClientsReached = 808,
3467    cudaErrorMpsMaxConnectionsReached = 809,
3468    cudaErrorMpsClientTerminated = 810,
3469    cudaErrorCdpNotSupported = 811,
3470    cudaErrorCdpVersionMismatch = 812,
3471    cudaErrorStreamCaptureUnsupported = 900,
3472    cudaErrorStreamCaptureInvalidated = 901,
3473    cudaErrorStreamCaptureMerge = 902,
3474    cudaErrorStreamCaptureUnmatched = 903,
3475    cudaErrorStreamCaptureUnjoined = 904,
3476    cudaErrorStreamCaptureIsolation = 905,
3477    cudaErrorStreamCaptureImplicit = 906,
3478    cudaErrorCapturedEvent = 907,
3479    cudaErrorStreamCaptureWrongThread = 908,
3480    cudaErrorTimeout = 909,
3481    cudaErrorGraphExecUpdateFailure = 910,
3482    cudaErrorExternalDevice = 911,
3483    cudaErrorInvalidClusterSize = 912,
3484    cudaErrorFunctionNotLoaded = 913,
3485    cudaErrorInvalidResourceType = 914,
3486    cudaErrorInvalidResourceConfiguration = 915,
3487    cudaErrorUnknown = 999,
3488    cudaErrorApiFailureBase = 10000,
3489}
3490#[cfg(any(feature = "cuda-13010"))]
3491#[repr(u32)]
3492#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3493pub enum cudaError {
3494    cudaSuccess = 0,
3495    cudaErrorInvalidValue = 1,
3496    cudaErrorMemoryAllocation = 2,
3497    cudaErrorInitializationError = 3,
3498    cudaErrorCudartUnloading = 4,
3499    cudaErrorProfilerDisabled = 5,
3500    cudaErrorProfilerNotInitialized = 6,
3501    cudaErrorProfilerAlreadyStarted = 7,
3502    cudaErrorProfilerAlreadyStopped = 8,
3503    cudaErrorInvalidConfiguration = 9,
3504    cudaErrorInvalidPitchValue = 12,
3505    cudaErrorInvalidSymbol = 13,
3506    cudaErrorInvalidHostPointer = 16,
3507    cudaErrorInvalidDevicePointer = 17,
3508    cudaErrorInvalidTexture = 18,
3509    cudaErrorInvalidTextureBinding = 19,
3510    cudaErrorInvalidChannelDescriptor = 20,
3511    cudaErrorInvalidMemcpyDirection = 21,
3512    cudaErrorAddressOfConstant = 22,
3513    cudaErrorTextureFetchFailed = 23,
3514    cudaErrorTextureNotBound = 24,
3515    cudaErrorSynchronizationError = 25,
3516    cudaErrorInvalidFilterSetting = 26,
3517    cudaErrorInvalidNormSetting = 27,
3518    cudaErrorMixedDeviceExecution = 28,
3519    cudaErrorNotYetImplemented = 31,
3520    cudaErrorMemoryValueTooLarge = 32,
3521    cudaErrorStubLibrary = 34,
3522    cudaErrorInsufficientDriver = 35,
3523    cudaErrorCallRequiresNewerDriver = 36,
3524    cudaErrorInvalidSurface = 37,
3525    cudaErrorDuplicateVariableName = 43,
3526    cudaErrorDuplicateTextureName = 44,
3527    cudaErrorDuplicateSurfaceName = 45,
3528    cudaErrorDevicesUnavailable = 46,
3529    cudaErrorIncompatibleDriverContext = 49,
3530    cudaErrorMissingConfiguration = 52,
3531    cudaErrorPriorLaunchFailure = 53,
3532    cudaErrorLaunchMaxDepthExceeded = 65,
3533    cudaErrorLaunchFileScopedTex = 66,
3534    cudaErrorLaunchFileScopedSurf = 67,
3535    cudaErrorSyncDepthExceeded = 68,
3536    cudaErrorLaunchPendingCountExceeded = 69,
3537    cudaErrorInvalidDeviceFunction = 98,
3538    cudaErrorNoDevice = 100,
3539    cudaErrorInvalidDevice = 101,
3540    cudaErrorDeviceNotLicensed = 102,
3541    cudaErrorSoftwareValidityNotEstablished = 103,
3542    cudaErrorStartupFailure = 127,
3543    cudaErrorInvalidKernelImage = 200,
3544    cudaErrorDeviceUninitialized = 201,
3545    cudaErrorMapBufferObjectFailed = 205,
3546    cudaErrorUnmapBufferObjectFailed = 206,
3547    cudaErrorArrayIsMapped = 207,
3548    cudaErrorAlreadyMapped = 208,
3549    cudaErrorNoKernelImageForDevice = 209,
3550    cudaErrorAlreadyAcquired = 210,
3551    cudaErrorNotMapped = 211,
3552    cudaErrorNotMappedAsArray = 212,
3553    cudaErrorNotMappedAsPointer = 213,
3554    cudaErrorECCUncorrectable = 214,
3555    cudaErrorUnsupportedLimit = 215,
3556    cudaErrorDeviceAlreadyInUse = 216,
3557    cudaErrorPeerAccessUnsupported = 217,
3558    cudaErrorInvalidPtx = 218,
3559    cudaErrorInvalidGraphicsContext = 219,
3560    cudaErrorNvlinkUncorrectable = 220,
3561    cudaErrorJitCompilerNotFound = 221,
3562    cudaErrorUnsupportedPtxVersion = 222,
3563    cudaErrorJitCompilationDisabled = 223,
3564    cudaErrorUnsupportedExecAffinity = 224,
3565    cudaErrorUnsupportedDevSideSync = 225,
3566    cudaErrorContained = 226,
3567    cudaErrorInvalidSource = 300,
3568    cudaErrorFileNotFound = 301,
3569    cudaErrorSharedObjectSymbolNotFound = 302,
3570    cudaErrorSharedObjectInitFailed = 303,
3571    cudaErrorOperatingSystem = 304,
3572    cudaErrorInvalidResourceHandle = 400,
3573    cudaErrorIllegalState = 401,
3574    cudaErrorLossyQuery = 402,
3575    cudaErrorSymbolNotFound = 500,
3576    cudaErrorNotReady = 600,
3577    cudaErrorIllegalAddress = 700,
3578    cudaErrorLaunchOutOfResources = 701,
3579    cudaErrorLaunchTimeout = 702,
3580    cudaErrorLaunchIncompatibleTexturing = 703,
3581    cudaErrorPeerAccessAlreadyEnabled = 704,
3582    cudaErrorPeerAccessNotEnabled = 705,
3583    cudaErrorSetOnActiveProcess = 708,
3584    cudaErrorContextIsDestroyed = 709,
3585    cudaErrorAssert = 710,
3586    cudaErrorTooManyPeers = 711,
3587    cudaErrorHostMemoryAlreadyRegistered = 712,
3588    cudaErrorHostMemoryNotRegistered = 713,
3589    cudaErrorHardwareStackError = 714,
3590    cudaErrorIllegalInstruction = 715,
3591    cudaErrorMisalignedAddress = 716,
3592    cudaErrorInvalidAddressSpace = 717,
3593    cudaErrorInvalidPc = 718,
3594    cudaErrorLaunchFailure = 719,
3595    cudaErrorCooperativeLaunchTooLarge = 720,
3596    cudaErrorTensorMemoryLeak = 721,
3597    cudaErrorNotPermitted = 800,
3598    cudaErrorNotSupported = 801,
3599    cudaErrorSystemNotReady = 802,
3600    cudaErrorSystemDriverMismatch = 803,
3601    cudaErrorCompatNotSupportedOnDevice = 804,
3602    cudaErrorMpsConnectionFailed = 805,
3603    cudaErrorMpsRpcFailure = 806,
3604    cudaErrorMpsServerNotReady = 807,
3605    cudaErrorMpsMaxClientsReached = 808,
3606    cudaErrorMpsMaxConnectionsReached = 809,
3607    cudaErrorMpsClientTerminated = 810,
3608    cudaErrorCdpNotSupported = 811,
3609    cudaErrorCdpVersionMismatch = 812,
3610    cudaErrorStreamCaptureUnsupported = 900,
3611    cudaErrorStreamCaptureInvalidated = 901,
3612    cudaErrorStreamCaptureMerge = 902,
3613    cudaErrorStreamCaptureUnmatched = 903,
3614    cudaErrorStreamCaptureUnjoined = 904,
3615    cudaErrorStreamCaptureIsolation = 905,
3616    cudaErrorStreamCaptureImplicit = 906,
3617    cudaErrorCapturedEvent = 907,
3618    cudaErrorStreamCaptureWrongThread = 908,
3619    cudaErrorTimeout = 909,
3620    cudaErrorGraphExecUpdateFailure = 910,
3621    cudaErrorExternalDevice = 911,
3622    cudaErrorInvalidClusterSize = 912,
3623    cudaErrorFunctionNotLoaded = 913,
3624    cudaErrorInvalidResourceType = 914,
3625    cudaErrorInvalidResourceConfiguration = 915,
3626    cudaErrorStreamDetached = 917,
3627    cudaErrorUnknown = 999,
3628    cudaErrorApiFailureBase = 10000,
3629}
3630#[cfg(any(feature = "cuda-13020"))]
3631#[repr(u32)]
3632#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3633pub enum cudaError {
3634    cudaSuccess = 0,
3635    cudaErrorInvalidValue = 1,
3636    cudaErrorMemoryAllocation = 2,
3637    cudaErrorInitializationError = 3,
3638    cudaErrorCudartUnloading = 4,
3639    cudaErrorProfilerDisabled = 5,
3640    cudaErrorProfilerNotInitialized = 6,
3641    cudaErrorProfilerAlreadyStarted = 7,
3642    cudaErrorProfilerAlreadyStopped = 8,
3643    cudaErrorInvalidConfiguration = 9,
3644    cudaErrorVersionTranslation = 10,
3645    cudaErrorInvalidPitchValue = 12,
3646    cudaErrorInvalidSymbol = 13,
3647    cudaErrorInvalidHostPointer = 16,
3648    cudaErrorInvalidDevicePointer = 17,
3649    cudaErrorInvalidTexture = 18,
3650    cudaErrorInvalidTextureBinding = 19,
3651    cudaErrorInvalidChannelDescriptor = 20,
3652    cudaErrorInvalidMemcpyDirection = 21,
3653    cudaErrorAddressOfConstant = 22,
3654    cudaErrorTextureFetchFailed = 23,
3655    cudaErrorTextureNotBound = 24,
3656    cudaErrorSynchronizationError = 25,
3657    cudaErrorInvalidFilterSetting = 26,
3658    cudaErrorInvalidNormSetting = 27,
3659    cudaErrorMixedDeviceExecution = 28,
3660    cudaErrorNotYetImplemented = 31,
3661    cudaErrorMemoryValueTooLarge = 32,
3662    cudaErrorStubLibrary = 34,
3663    cudaErrorInsufficientDriver = 35,
3664    cudaErrorCallRequiresNewerDriver = 36,
3665    cudaErrorInvalidSurface = 37,
3666    cudaErrorDuplicateVariableName = 43,
3667    cudaErrorDuplicateTextureName = 44,
3668    cudaErrorDuplicateSurfaceName = 45,
3669    cudaErrorDevicesUnavailable = 46,
3670    cudaErrorIncompatibleDriverContext = 49,
3671    cudaErrorMissingConfiguration = 52,
3672    cudaErrorPriorLaunchFailure = 53,
3673    cudaErrorLaunchMaxDepthExceeded = 65,
3674    cudaErrorLaunchFileScopedTex = 66,
3675    cudaErrorLaunchFileScopedSurf = 67,
3676    cudaErrorSyncDepthExceeded = 68,
3677    cudaErrorLaunchPendingCountExceeded = 69,
3678    cudaErrorInvalidDeviceFunction = 98,
3679    cudaErrorNoDevice = 100,
3680    cudaErrorInvalidDevice = 101,
3681    cudaErrorDeviceNotLicensed = 102,
3682    cudaErrorSoftwareValidityNotEstablished = 103,
3683    cudaErrorStartupFailure = 127,
3684    cudaErrorInvalidKernelImage = 200,
3685    cudaErrorDeviceUninitialized = 201,
3686    cudaErrorMapBufferObjectFailed = 205,
3687    cudaErrorUnmapBufferObjectFailed = 206,
3688    cudaErrorArrayIsMapped = 207,
3689    cudaErrorAlreadyMapped = 208,
3690    cudaErrorNoKernelImageForDevice = 209,
3691    cudaErrorAlreadyAcquired = 210,
3692    cudaErrorNotMapped = 211,
3693    cudaErrorNotMappedAsArray = 212,
3694    cudaErrorNotMappedAsPointer = 213,
3695    cudaErrorECCUncorrectable = 214,
3696    cudaErrorUnsupportedLimit = 215,
3697    cudaErrorDeviceAlreadyInUse = 216,
3698    cudaErrorPeerAccessUnsupported = 217,
3699    cudaErrorInvalidPtx = 218,
3700    cudaErrorInvalidGraphicsContext = 219,
3701    cudaErrorNvlinkUncorrectable = 220,
3702    cudaErrorJitCompilerNotFound = 221,
3703    cudaErrorUnsupportedPtxVersion = 222,
3704    cudaErrorJitCompilationDisabled = 223,
3705    cudaErrorUnsupportedExecAffinity = 224,
3706    cudaErrorUnsupportedDevSideSync = 225,
3707    cudaErrorContained = 226,
3708    cudaErrorInvalidSource = 300,
3709    cudaErrorFileNotFound = 301,
3710    cudaErrorSharedObjectSymbolNotFound = 302,
3711    cudaErrorSharedObjectInitFailed = 303,
3712    cudaErrorOperatingSystem = 304,
3713    cudaErrorInvalidResourceHandle = 400,
3714    cudaErrorIllegalState = 401,
3715    cudaErrorLossyQuery = 402,
3716    cudaErrorSymbolNotFound = 500,
3717    cudaErrorNotReady = 600,
3718    cudaErrorIllegalAddress = 700,
3719    cudaErrorLaunchOutOfResources = 701,
3720    cudaErrorLaunchTimeout = 702,
3721    cudaErrorLaunchIncompatibleTexturing = 703,
3722    cudaErrorPeerAccessAlreadyEnabled = 704,
3723    cudaErrorPeerAccessNotEnabled = 705,
3724    cudaErrorSetOnActiveProcess = 708,
3725    cudaErrorContextIsDestroyed = 709,
3726    cudaErrorAssert = 710,
3727    cudaErrorTooManyPeers = 711,
3728    cudaErrorHostMemoryAlreadyRegistered = 712,
3729    cudaErrorHostMemoryNotRegistered = 713,
3730    cudaErrorHardwareStackError = 714,
3731    cudaErrorIllegalInstruction = 715,
3732    cudaErrorMisalignedAddress = 716,
3733    cudaErrorInvalidAddressSpace = 717,
3734    cudaErrorInvalidPc = 718,
3735    cudaErrorLaunchFailure = 719,
3736    cudaErrorCooperativeLaunchTooLarge = 720,
3737    cudaErrorTensorMemoryLeak = 721,
3738    cudaErrorNotPermitted = 800,
3739    cudaErrorNotSupported = 801,
3740    cudaErrorSystemNotReady = 802,
3741    cudaErrorSystemDriverMismatch = 803,
3742    cudaErrorCompatNotSupportedOnDevice = 804,
3743    cudaErrorMpsConnectionFailed = 805,
3744    cudaErrorMpsRpcFailure = 806,
3745    cudaErrorMpsServerNotReady = 807,
3746    cudaErrorMpsMaxClientsReached = 808,
3747    cudaErrorMpsMaxConnectionsReached = 809,
3748    cudaErrorMpsClientTerminated = 810,
3749    cudaErrorCdpNotSupported = 811,
3750    cudaErrorCdpVersionMismatch = 812,
3751    cudaErrorStreamCaptureUnsupported = 900,
3752    cudaErrorStreamCaptureInvalidated = 901,
3753    cudaErrorStreamCaptureMerge = 902,
3754    cudaErrorStreamCaptureUnmatched = 903,
3755    cudaErrorStreamCaptureUnjoined = 904,
3756    cudaErrorStreamCaptureIsolation = 905,
3757    cudaErrorStreamCaptureImplicit = 906,
3758    cudaErrorCapturedEvent = 907,
3759    cudaErrorStreamCaptureWrongThread = 908,
3760    cudaErrorTimeout = 909,
3761    cudaErrorGraphExecUpdateFailure = 910,
3762    cudaErrorExternalDevice = 911,
3763    cudaErrorInvalidClusterSize = 912,
3764    cudaErrorFunctionNotLoaded = 913,
3765    cudaErrorInvalidResourceType = 914,
3766    cudaErrorInvalidResourceConfiguration = 915,
3767    cudaErrorStreamDetached = 917,
3768    cudaErrorUnknown = 999,
3769    cudaErrorApiFailureBase = 10000,
3770}
3771#[repr(u32)]
3772#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3773pub enum cudaExternalMemoryHandleType {
3774    cudaExternalMemoryHandleTypeOpaqueFd = 1,
3775    cudaExternalMemoryHandleTypeOpaqueWin32 = 2,
3776    cudaExternalMemoryHandleTypeOpaqueWin32Kmt = 3,
3777    cudaExternalMemoryHandleTypeD3D12Heap = 4,
3778    cudaExternalMemoryHandleTypeD3D12Resource = 5,
3779    cudaExternalMemoryHandleTypeD3D11Resource = 6,
3780    cudaExternalMemoryHandleTypeD3D11ResourceKmt = 7,
3781    cudaExternalMemoryHandleTypeNvSciBuf = 8,
3782}
3783#[repr(u32)]
3784#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3785pub enum cudaExternalSemaphoreHandleType {
3786    cudaExternalSemaphoreHandleTypeOpaqueFd = 1,
3787    cudaExternalSemaphoreHandleTypeOpaqueWin32 = 2,
3788    cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3,
3789    cudaExternalSemaphoreHandleTypeD3D12Fence = 4,
3790    cudaExternalSemaphoreHandleTypeD3D11Fence = 5,
3791    cudaExternalSemaphoreHandleTypeNvSciSync = 6,
3792    cudaExternalSemaphoreHandleTypeKeyedMutex = 7,
3793    cudaExternalSemaphoreHandleTypeKeyedMutexKmt = 8,
3794    cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd = 9,
3795    cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32 = 10,
3796}
3797#[repr(u32)]
3798#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3799pub enum cudaFlushGPUDirectRDMAWritesOptions {
3800    cudaFlushGPUDirectRDMAWritesOptionHost = 1,
3801    cudaFlushGPUDirectRDMAWritesOptionMemOps = 2,
3802}
3803#[repr(u32)]
3804#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3805pub enum cudaFlushGPUDirectRDMAWritesScope {
3806    cudaFlushGPUDirectRDMAWritesToOwner = 100,
3807    cudaFlushGPUDirectRDMAWritesToAllDevices = 200,
3808}
3809#[repr(u32)]
3810#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3811pub enum cudaFlushGPUDirectRDMAWritesTarget {
3812    cudaFlushGPUDirectRDMAWritesTargetCurrentDevice = 0,
3813}
3814#[cfg(any(
3815    feature = "cuda-11040",
3816    feature = "cuda-11050",
3817    feature = "cuda-11060",
3818    feature = "cuda-11070"
3819))]
3820#[repr(u32)]
3821#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3822pub enum cudaFuncAttribute {
3823    cudaFuncAttributeMaxDynamicSharedMemorySize = 8,
3824    cudaFuncAttributePreferredSharedMemoryCarveout = 9,
3825    cudaFuncAttributeMax = 10,
3826}
3827#[cfg(any(
3828    feature = "cuda-11080",
3829    feature = "cuda-12000",
3830    feature = "cuda-12010",
3831    feature = "cuda-12020",
3832    feature = "cuda-12030",
3833    feature = "cuda-12040",
3834    feature = "cuda-12050",
3835    feature = "cuda-12060",
3836    feature = "cuda-12080",
3837    feature = "cuda-12090",
3838    feature = "cuda-13000",
3839    feature = "cuda-13010",
3840    feature = "cuda-13020"
3841))]
3842#[repr(u32)]
3843#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3844pub enum cudaFuncAttribute {
3845    cudaFuncAttributeMaxDynamicSharedMemorySize = 8,
3846    cudaFuncAttributePreferredSharedMemoryCarveout = 9,
3847    cudaFuncAttributeClusterDimMustBeSet = 10,
3848    cudaFuncAttributeRequiredClusterWidth = 11,
3849    cudaFuncAttributeRequiredClusterHeight = 12,
3850    cudaFuncAttributeRequiredClusterDepth = 13,
3851    cudaFuncAttributeNonPortableClusterSizeAllowed = 14,
3852    cudaFuncAttributeClusterSchedulingPolicyPreference = 15,
3853    cudaFuncAttributeMax = 16,
3854}
3855#[repr(u32)]
3856#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3857pub enum cudaFuncCache {
3858    cudaFuncCachePreferNone = 0,
3859    cudaFuncCachePreferShared = 1,
3860    cudaFuncCachePreferL1 = 2,
3861    cudaFuncCachePreferEqual = 3,
3862}
3863#[repr(u32)]
3864#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3865pub enum cudaGPUDirectRDMAWritesOrdering {
3866    cudaGPUDirectRDMAWritesOrderingNone = 0,
3867    cudaGPUDirectRDMAWritesOrderingOwner = 100,
3868    cudaGPUDirectRDMAWritesOrderingAllDevices = 200,
3869}
3870#[repr(u32)]
3871#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3872pub enum cudaGetDriverEntryPointFlags {
3873    cudaEnableDefault = 0,
3874    cudaEnableLegacyStream = 1,
3875    cudaEnablePerThreadDefaultStream = 2,
3876}
3877#[cfg(any(feature = "cuda-12090", feature = "cuda-13000", feature = "cuda-13010"))]
3878#[repr(u32)]
3879#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3880pub enum cudaGraphChildGraphNodeOwnership {
3881    cudaGraphChildGraphOwnershipClone = 0,
3882    cudaGraphChildGraphOwnershipMove = 1,
3883}
3884#[cfg(any(feature = "cuda-13020"))]
3885#[repr(i32)]
3886#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3887pub enum cudaGraphChildGraphNodeOwnership {
3888    cudaGraphChildGraphOwnershipClone = 0,
3889    cudaGraphChildGraphOwnershipMove = 1,
3890    cudaGraphChildGraphOwnershipInvalid = -1,
3891}
3892#[cfg(any(
3893    feature = "cuda-12030",
3894    feature = "cuda-12040",
3895    feature = "cuda-12050",
3896    feature = "cuda-12060",
3897    feature = "cuda-12080",
3898    feature = "cuda-12090",
3899    feature = "cuda-13000",
3900    feature = "cuda-13010",
3901    feature = "cuda-13020"
3902))]
3903#[repr(u32)]
3904#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3905pub enum cudaGraphConditionalHandleFlags {
3906    cudaGraphCondAssignDefault = 1,
3907}
3908#[cfg(any(
3909    feature = "cuda-12030",
3910    feature = "cuda-12040",
3911    feature = "cuda-12050",
3912    feature = "cuda-12060"
3913))]
3914#[repr(u32)]
3915#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3916pub enum cudaGraphConditionalNodeType {
3917    cudaGraphCondTypeIf = 0,
3918    cudaGraphCondTypeWhile = 1,
3919}
3920#[cfg(any(
3921    feature = "cuda-12080",
3922    feature = "cuda-12090",
3923    feature = "cuda-13000",
3924    feature = "cuda-13010",
3925    feature = "cuda-13020"
3926))]
3927#[repr(u32)]
3928#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3929pub enum cudaGraphConditionalNodeType {
3930    cudaGraphCondTypeIf = 0,
3931    cudaGraphCondTypeWhile = 1,
3932    cudaGraphCondTypeSwitch = 2,
3933}
3934#[cfg(any(
3935    feature = "cuda-11040",
3936    feature = "cuda-11050",
3937    feature = "cuda-11060",
3938    feature = "cuda-11070",
3939    feature = "cuda-11080",
3940    feature = "cuda-12000",
3941    feature = "cuda-12010",
3942    feature = "cuda-12020"
3943))]
3944#[repr(u32)]
3945#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3946pub enum cudaGraphDebugDotFlags {
3947    cudaGraphDebugDotFlagsVerbose = 1,
3948    cudaGraphDebugDotFlagsKernelNodeParams = 4,
3949    cudaGraphDebugDotFlagsMemcpyNodeParams = 8,
3950    cudaGraphDebugDotFlagsMemsetNodeParams = 16,
3951    cudaGraphDebugDotFlagsHostNodeParams = 32,
3952    cudaGraphDebugDotFlagsEventNodeParams = 64,
3953    cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 128,
3954    cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 256,
3955    cudaGraphDebugDotFlagsKernelNodeAttributes = 512,
3956    cudaGraphDebugDotFlagsHandles = 1024,
3957}
3958#[cfg(any(
3959    feature = "cuda-12030",
3960    feature = "cuda-12040",
3961    feature = "cuda-12050",
3962    feature = "cuda-12060",
3963    feature = "cuda-12080",
3964    feature = "cuda-12090",
3965    feature = "cuda-13000",
3966    feature = "cuda-13010",
3967    feature = "cuda-13020"
3968))]
3969#[repr(u32)]
3970#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3971pub enum cudaGraphDebugDotFlags {
3972    cudaGraphDebugDotFlagsVerbose = 1,
3973    cudaGraphDebugDotFlagsKernelNodeParams = 4,
3974    cudaGraphDebugDotFlagsMemcpyNodeParams = 8,
3975    cudaGraphDebugDotFlagsMemsetNodeParams = 16,
3976    cudaGraphDebugDotFlagsHostNodeParams = 32,
3977    cudaGraphDebugDotFlagsEventNodeParams = 64,
3978    cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 128,
3979    cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 256,
3980    cudaGraphDebugDotFlagsKernelNodeAttributes = 512,
3981    cudaGraphDebugDotFlagsHandles = 1024,
3982    cudaGraphDebugDotFlagsConditionalNodeParams = 32768,
3983}
3984#[cfg(any(
3985    feature = "cuda-12030",
3986    feature = "cuda-12040",
3987    feature = "cuda-12050",
3988    feature = "cuda-12060",
3989    feature = "cuda-12080",
3990    feature = "cuda-12090",
3991    feature = "cuda-13000",
3992    feature = "cuda-13010",
3993    feature = "cuda-13020"
3994))]
3995#[repr(u32)]
3996#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
3997pub enum cudaGraphDependencyType_enum {
3998    cudaGraphDependencyTypeDefault = 0,
3999    cudaGraphDependencyTypeProgrammatic = 1,
4000}
4001#[cfg(any(feature = "cuda-11040", feature = "cuda-11050"))]
4002#[repr(u32)]
4003#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4004pub enum cudaGraphExecUpdateResult {
4005    cudaGraphExecUpdateSuccess = 0,
4006    cudaGraphExecUpdateError = 1,
4007    cudaGraphExecUpdateErrorTopologyChanged = 2,
4008    cudaGraphExecUpdateErrorNodeTypeChanged = 3,
4009    cudaGraphExecUpdateErrorFunctionChanged = 4,
4010    cudaGraphExecUpdateErrorParametersChanged = 5,
4011    cudaGraphExecUpdateErrorNotSupported = 6,
4012    cudaGraphExecUpdateErrorUnsupportedFunctionChange = 7,
4013}
4014#[cfg(any(
4015    feature = "cuda-11060",
4016    feature = "cuda-11070",
4017    feature = "cuda-11080",
4018    feature = "cuda-12000",
4019    feature = "cuda-12010",
4020    feature = "cuda-12020",
4021    feature = "cuda-12030",
4022    feature = "cuda-12040",
4023    feature = "cuda-12050",
4024    feature = "cuda-12060",
4025    feature = "cuda-12080",
4026    feature = "cuda-12090",
4027    feature = "cuda-13000",
4028    feature = "cuda-13010",
4029    feature = "cuda-13020"
4030))]
4031#[repr(u32)]
4032#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4033pub enum cudaGraphExecUpdateResult {
4034    cudaGraphExecUpdateSuccess = 0,
4035    cudaGraphExecUpdateError = 1,
4036    cudaGraphExecUpdateErrorTopologyChanged = 2,
4037    cudaGraphExecUpdateErrorNodeTypeChanged = 3,
4038    cudaGraphExecUpdateErrorFunctionChanged = 4,
4039    cudaGraphExecUpdateErrorParametersChanged = 5,
4040    cudaGraphExecUpdateErrorNotSupported = 6,
4041    cudaGraphExecUpdateErrorUnsupportedFunctionChange = 7,
4042    cudaGraphExecUpdateErrorAttributesChanged = 8,
4043}
4044#[cfg(any(feature = "cuda-11040", feature = "cuda-11050", feature = "cuda-11060"))]
4045#[repr(u32)]
4046#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4047pub enum cudaGraphInstantiateFlags {
4048    cudaGraphInstantiateFlagAutoFreeOnLaunch = 1,
4049}
4050#[cfg(any(feature = "cuda-11070", feature = "cuda-11080"))]
4051#[repr(u32)]
4052#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4053pub enum cudaGraphInstantiateFlags {
4054    cudaGraphInstantiateFlagAutoFreeOnLaunch = 1,
4055    cudaGraphInstantiateFlagUseNodePriority = 8,
4056}
4057#[cfg(any(
4058    feature = "cuda-12000",
4059    feature = "cuda-12010",
4060    feature = "cuda-12020",
4061    feature = "cuda-12030",
4062    feature = "cuda-12040",
4063    feature = "cuda-12050",
4064    feature = "cuda-12060",
4065    feature = "cuda-12080",
4066    feature = "cuda-12090",
4067    feature = "cuda-13000",
4068    feature = "cuda-13010",
4069    feature = "cuda-13020"
4070))]
4071#[repr(u32)]
4072#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4073pub enum cudaGraphInstantiateFlags {
4074    cudaGraphInstantiateFlagAutoFreeOnLaunch = 1,
4075    cudaGraphInstantiateFlagUpload = 2,
4076    cudaGraphInstantiateFlagDeviceLaunch = 4,
4077    cudaGraphInstantiateFlagUseNodePriority = 8,
4078}
4079#[cfg(any(
4080    feature = "cuda-12000",
4081    feature = "cuda-12010",
4082    feature = "cuda-12020",
4083    feature = "cuda-12030",
4084    feature = "cuda-12040",
4085    feature = "cuda-12050",
4086    feature = "cuda-12060"
4087))]
4088#[repr(u32)]
4089#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4090pub enum cudaGraphInstantiateResult {
4091    cudaGraphInstantiateSuccess = 0,
4092    cudaGraphInstantiateError = 1,
4093    cudaGraphInstantiateInvalidStructure = 2,
4094    cudaGraphInstantiateNodeOperationNotSupported = 3,
4095    cudaGraphInstantiateMultipleDevicesNotSupported = 4,
4096}
4097#[cfg(any(
4098    feature = "cuda-12080",
4099    feature = "cuda-12090",
4100    feature = "cuda-13000",
4101    feature = "cuda-13010",
4102    feature = "cuda-13020"
4103))]
4104#[repr(u32)]
4105#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4106pub enum cudaGraphInstantiateResult {
4107    cudaGraphInstantiateSuccess = 0,
4108    cudaGraphInstantiateError = 1,
4109    cudaGraphInstantiateInvalidStructure = 2,
4110    cudaGraphInstantiateNodeOperationNotSupported = 3,
4111    cudaGraphInstantiateMultipleDevicesNotSupported = 4,
4112    cudaGraphInstantiateConditionalHandleUnused = 5,
4113}
4114#[cfg(any(
4115    feature = "cuda-12040",
4116    feature = "cuda-12050",
4117    feature = "cuda-12060",
4118    feature = "cuda-12080",
4119    feature = "cuda-12090",
4120    feature = "cuda-13000",
4121    feature = "cuda-13010",
4122    feature = "cuda-13020"
4123))]
4124#[repr(u32)]
4125#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4126pub enum cudaGraphKernelNodeField {
4127    cudaGraphKernelNodeFieldInvalid = 0,
4128    cudaGraphKernelNodeFieldGridDim = 1,
4129    cudaGraphKernelNodeFieldParam = 2,
4130    cudaGraphKernelNodeFieldEnabled = 3,
4131}
4132#[cfg(any(feature = "cuda-11040", feature = "cuda-11050"))]
4133#[repr(u32)]
4134#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4135pub enum cudaGraphMemAttributeType {
4136    cudaGraphMemAttrUsedMemCurrent = 1,
4137    cudaGraphMemAttrUsedMemHigh = 2,
4138    cudaGraphMemAttrReservedMemCurrent = 3,
4139    cudaGraphMemAttrReservedMemHigh = 4,
4140}
4141#[cfg(any(
4142    feature = "cuda-11060",
4143    feature = "cuda-11070",
4144    feature = "cuda-11080",
4145    feature = "cuda-12000",
4146    feature = "cuda-12010",
4147    feature = "cuda-12020",
4148    feature = "cuda-12030",
4149    feature = "cuda-12040",
4150    feature = "cuda-12050",
4151    feature = "cuda-12060",
4152    feature = "cuda-12080",
4153    feature = "cuda-12090",
4154    feature = "cuda-13000",
4155    feature = "cuda-13010",
4156    feature = "cuda-13020"
4157))]
4158#[repr(u32)]
4159#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4160pub enum cudaGraphMemAttributeType {
4161    cudaGraphMemAttrUsedMemCurrent = 0,
4162    cudaGraphMemAttrUsedMemHigh = 1,
4163    cudaGraphMemAttrReservedMemCurrent = 2,
4164    cudaGraphMemAttrReservedMemHigh = 3,
4165}
4166#[cfg(any(
4167    feature = "cuda-11040",
4168    feature = "cuda-11050",
4169    feature = "cuda-11060",
4170    feature = "cuda-11070",
4171    feature = "cuda-11080",
4172    feature = "cuda-12000",
4173    feature = "cuda-12010",
4174    feature = "cuda-12020"
4175))]
4176#[repr(u32)]
4177#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4178pub enum cudaGraphNodeType {
4179    cudaGraphNodeTypeKernel = 0,
4180    cudaGraphNodeTypeMemcpy = 1,
4181    cudaGraphNodeTypeMemset = 2,
4182    cudaGraphNodeTypeHost = 3,
4183    cudaGraphNodeTypeGraph = 4,
4184    cudaGraphNodeTypeEmpty = 5,
4185    cudaGraphNodeTypeWaitEvent = 6,
4186    cudaGraphNodeTypeEventRecord = 7,
4187    cudaGraphNodeTypeExtSemaphoreSignal = 8,
4188    cudaGraphNodeTypeExtSemaphoreWait = 9,
4189    cudaGraphNodeTypeMemAlloc = 10,
4190    cudaGraphNodeTypeMemFree = 11,
4191    cudaGraphNodeTypeCount = 12,
4192}
4193#[cfg(any(
4194    feature = "cuda-12030",
4195    feature = "cuda-12040",
4196    feature = "cuda-12050",
4197    feature = "cuda-12060",
4198    feature = "cuda-12080",
4199    feature = "cuda-12090",
4200    feature = "cuda-13000",
4201    feature = "cuda-13010",
4202    feature = "cuda-13020"
4203))]
4204#[repr(u32)]
4205#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4206pub enum cudaGraphNodeType {
4207    cudaGraphNodeTypeKernel = 0,
4208    cudaGraphNodeTypeMemcpy = 1,
4209    cudaGraphNodeTypeMemset = 2,
4210    cudaGraphNodeTypeHost = 3,
4211    cudaGraphNodeTypeGraph = 4,
4212    cudaGraphNodeTypeEmpty = 5,
4213    cudaGraphNodeTypeWaitEvent = 6,
4214    cudaGraphNodeTypeEventRecord = 7,
4215    cudaGraphNodeTypeExtSemaphoreSignal = 8,
4216    cudaGraphNodeTypeExtSemaphoreWait = 9,
4217    cudaGraphNodeTypeMemAlloc = 10,
4218    cudaGraphNodeTypeMemFree = 11,
4219    cudaGraphNodeTypeConditional = 13,
4220    cudaGraphNodeTypeCount = 14,
4221}
4222#[repr(u32)]
4223#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4224pub enum cudaGraphicsCubeFace {
4225    cudaGraphicsCubeFacePositiveX = 0,
4226    cudaGraphicsCubeFaceNegativeX = 1,
4227    cudaGraphicsCubeFacePositiveY = 2,
4228    cudaGraphicsCubeFaceNegativeY = 3,
4229    cudaGraphicsCubeFacePositiveZ = 4,
4230    cudaGraphicsCubeFaceNegativeZ = 5,
4231}
4232#[repr(u32)]
4233#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4234pub enum cudaGraphicsMapFlags {
4235    cudaGraphicsMapFlagsNone = 0,
4236    cudaGraphicsMapFlagsReadOnly = 1,
4237    cudaGraphicsMapFlagsWriteDiscard = 2,
4238}
4239#[repr(u32)]
4240#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4241pub enum cudaGraphicsRegisterFlags {
4242    cudaGraphicsRegisterFlagsNone = 0,
4243    cudaGraphicsRegisterFlagsReadOnly = 1,
4244    cudaGraphicsRegisterFlagsWriteDiscard = 2,
4245    cudaGraphicsRegisterFlagsSurfaceLoadStore = 4,
4246    cudaGraphicsRegisterFlagsTextureGather = 8,
4247}
4248#[cfg(any(feature = "cuda-13020"))]
4249#[repr(u32)]
4250#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4251pub enum cudaHostTaskSyncMode {
4252    cudaHostTaskBlocking = 0,
4253    cudaHostTaskSpinWait = 1,
4254}
4255#[cfg(any(
4256    feature = "cuda-12080",
4257    feature = "cuda-12090",
4258    feature = "cuda-13000",
4259    feature = "cuda-13010",
4260    feature = "cuda-13020"
4261))]
4262#[repr(u32)]
4263#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4264pub enum cudaJitOption {
4265    cudaJitMaxRegisters = 0,
4266    cudaJitThreadsPerBlock = 1,
4267    cudaJitWallTime = 2,
4268    cudaJitInfoLogBuffer = 3,
4269    cudaJitInfoLogBufferSizeBytes = 4,
4270    cudaJitErrorLogBuffer = 5,
4271    cudaJitErrorLogBufferSizeBytes = 6,
4272    cudaJitOptimizationLevel = 7,
4273    cudaJitFallbackStrategy = 10,
4274    cudaJitGenerateDebugInfo = 11,
4275    cudaJitLogVerbose = 12,
4276    cudaJitGenerateLineInfo = 13,
4277    cudaJitCacheMode = 14,
4278    cudaJitPositionIndependentCode = 30,
4279    cudaJitMinCtaPerSm = 31,
4280    cudaJitMaxThreadsPerBlock = 32,
4281    cudaJitOverrideDirectiveValues = 33,
4282}
4283#[cfg(any(
4284    feature = "cuda-12080",
4285    feature = "cuda-12090",
4286    feature = "cuda-13000",
4287    feature = "cuda-13010",
4288    feature = "cuda-13020"
4289))]
4290#[repr(u32)]
4291#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4292pub enum cudaJit_CacheMode {
4293    cudaJitCacheOptionNone = 0,
4294    cudaJitCacheOptionCG = 1,
4295    cudaJitCacheOptionCA = 2,
4296}
4297#[cfg(any(
4298    feature = "cuda-12080",
4299    feature = "cuda-12090",
4300    feature = "cuda-13000",
4301    feature = "cuda-13010",
4302    feature = "cuda-13020"
4303))]
4304#[repr(u32)]
4305#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4306pub enum cudaJit_Fallback {
4307    cudaPreferPtx = 0,
4308    cudaPreferBinary = 1,
4309}
4310#[cfg(any(feature = "cuda-13020"))]
4311#[repr(u32)]
4312#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4313pub enum cudaKernelFunctionType {
4314    cudaKernelFunctionTypeUnspecified = 0,
4315    cudaKernelFunctionTypeDeviceEntry = 1,
4316    cudaKernelFunctionTypeKernel = 2,
4317    cudaKernelFunctionTypeFunction = 3,
4318}
4319#[cfg(any(feature = "cuda-11040", feature = "cuda-11050", feature = "cuda-11060"))]
4320#[repr(u32)]
4321#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4322pub enum cudaKernelNodeAttrID {
4323    cudaKernelNodeAttributeAccessPolicyWindow = 1,
4324    cudaKernelNodeAttributeCooperative = 2,
4325}
4326#[cfg(any(feature = "cuda-11070"))]
4327#[repr(u32)]
4328#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4329pub enum cudaKernelNodeAttrID {
4330    cudaKernelNodeAttributeAccessPolicyWindow = 1,
4331    cudaKernelNodeAttributeCooperative = 2,
4332    cudaKernelNodeAttributePriority = 8,
4333}
4334#[cfg(any(feature = "cuda-11080"))]
4335#[repr(u32)]
4336#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4337pub enum cudaLaunchAttributeID {
4338    cudaLaunchAttributeIgnore = 0,
4339    cudaLaunchAttributeAccessPolicyWindow = 1,
4340    cudaLaunchAttributeCooperative = 2,
4341    cudaLaunchAttributeSynchronizationPolicy = 3,
4342    cudaLaunchAttributeClusterDimension = 4,
4343    cudaLaunchAttributeClusterSchedulingPolicyPreference = 5,
4344    cudaLaunchAttributeProgrammaticStreamSerialization = 6,
4345    cudaLaunchAttributeProgrammaticEvent = 7,
4346    cudaLaunchAttributePriority = 8,
4347}
4348#[cfg(any(feature = "cuda-12000", feature = "cuda-12010", feature = "cuda-12020"))]
4349#[repr(u32)]
4350#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4351pub enum cudaLaunchAttributeID {
4352    cudaLaunchAttributeIgnore = 0,
4353    cudaLaunchAttributeAccessPolicyWindow = 1,
4354    cudaLaunchAttributeCooperative = 2,
4355    cudaLaunchAttributeSynchronizationPolicy = 3,
4356    cudaLaunchAttributeClusterDimension = 4,
4357    cudaLaunchAttributeClusterSchedulingPolicyPreference = 5,
4358    cudaLaunchAttributeProgrammaticStreamSerialization = 6,
4359    cudaLaunchAttributeProgrammaticEvent = 7,
4360    cudaLaunchAttributePriority = 8,
4361    cudaLaunchAttributeMemSyncDomainMap = 9,
4362    cudaLaunchAttributeMemSyncDomain = 10,
4363}
4364#[cfg(any(feature = "cuda-12030"))]
4365#[repr(u32)]
4366#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4367pub enum cudaLaunchAttributeID {
4368    cudaLaunchAttributeIgnore = 0,
4369    cudaLaunchAttributeAccessPolicyWindow = 1,
4370    cudaLaunchAttributeCooperative = 2,
4371    cudaLaunchAttributeSynchronizationPolicy = 3,
4372    cudaLaunchAttributeClusterDimension = 4,
4373    cudaLaunchAttributeClusterSchedulingPolicyPreference = 5,
4374    cudaLaunchAttributeProgrammaticStreamSerialization = 6,
4375    cudaLaunchAttributeProgrammaticEvent = 7,
4376    cudaLaunchAttributePriority = 8,
4377    cudaLaunchAttributeMemSyncDomainMap = 9,
4378    cudaLaunchAttributeMemSyncDomain = 10,
4379    cudaLaunchAttributeLaunchCompletionEvent = 12,
4380}
4381#[cfg(any(feature = "cuda-12040"))]
4382#[repr(u32)]
4383#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4384pub enum cudaLaunchAttributeID {
4385    cudaLaunchAttributeIgnore = 0,
4386    cudaLaunchAttributeAccessPolicyWindow = 1,
4387    cudaLaunchAttributeCooperative = 2,
4388    cudaLaunchAttributeSynchronizationPolicy = 3,
4389    cudaLaunchAttributeClusterDimension = 4,
4390    cudaLaunchAttributeClusterSchedulingPolicyPreference = 5,
4391    cudaLaunchAttributeProgrammaticStreamSerialization = 6,
4392    cudaLaunchAttributeProgrammaticEvent = 7,
4393    cudaLaunchAttributePriority = 8,
4394    cudaLaunchAttributeMemSyncDomainMap = 9,
4395    cudaLaunchAttributeMemSyncDomain = 10,
4396    cudaLaunchAttributeLaunchCompletionEvent = 12,
4397    cudaLaunchAttributeDeviceUpdatableKernelNode = 13,
4398}
4399#[cfg(any(feature = "cuda-12050", feature = "cuda-12060"))]
4400#[repr(u32)]
4401#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4402pub enum cudaLaunchAttributeID {
4403    cudaLaunchAttributeIgnore = 0,
4404    cudaLaunchAttributeAccessPolicyWindow = 1,
4405    cudaLaunchAttributeCooperative = 2,
4406    cudaLaunchAttributeSynchronizationPolicy = 3,
4407    cudaLaunchAttributeClusterDimension = 4,
4408    cudaLaunchAttributeClusterSchedulingPolicyPreference = 5,
4409    cudaLaunchAttributeProgrammaticStreamSerialization = 6,
4410    cudaLaunchAttributeProgrammaticEvent = 7,
4411    cudaLaunchAttributePriority = 8,
4412    cudaLaunchAttributeMemSyncDomainMap = 9,
4413    cudaLaunchAttributeMemSyncDomain = 10,
4414    cudaLaunchAttributeLaunchCompletionEvent = 12,
4415    cudaLaunchAttributeDeviceUpdatableKernelNode = 13,
4416    cudaLaunchAttributePreferredSharedMemoryCarveout = 14,
4417}
4418#[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
4419#[repr(u32)]
4420#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4421pub enum cudaLaunchAttributeID {
4422    cudaLaunchAttributeIgnore = 0,
4423    cudaLaunchAttributeAccessPolicyWindow = 1,
4424    cudaLaunchAttributeCooperative = 2,
4425    cudaLaunchAttributeSynchronizationPolicy = 3,
4426    cudaLaunchAttributeClusterDimension = 4,
4427    cudaLaunchAttributeClusterSchedulingPolicyPreference = 5,
4428    cudaLaunchAttributeProgrammaticStreamSerialization = 6,
4429    cudaLaunchAttributeProgrammaticEvent = 7,
4430    cudaLaunchAttributePriority = 8,
4431    cudaLaunchAttributeMemSyncDomainMap = 9,
4432    cudaLaunchAttributeMemSyncDomain = 10,
4433    cudaLaunchAttributePreferredClusterDimension = 11,
4434    cudaLaunchAttributeLaunchCompletionEvent = 12,
4435    cudaLaunchAttributeDeviceUpdatableKernelNode = 13,
4436    cudaLaunchAttributePreferredSharedMemoryCarveout = 14,
4437}
4438#[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
4439#[repr(u32)]
4440#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4441pub enum cudaLaunchAttributeID {
4442    cudaLaunchAttributeIgnore = 0,
4443    cudaLaunchAttributeAccessPolicyWindow = 1,
4444    cudaLaunchAttributeCooperative = 2,
4445    cudaLaunchAttributeSynchronizationPolicy = 3,
4446    cudaLaunchAttributeClusterDimension = 4,
4447    cudaLaunchAttributeClusterSchedulingPolicyPreference = 5,
4448    cudaLaunchAttributeProgrammaticStreamSerialization = 6,
4449    cudaLaunchAttributeProgrammaticEvent = 7,
4450    cudaLaunchAttributePriority = 8,
4451    cudaLaunchAttributeMemSyncDomainMap = 9,
4452    cudaLaunchAttributeMemSyncDomain = 10,
4453    cudaLaunchAttributePreferredClusterDimension = 11,
4454    cudaLaunchAttributeLaunchCompletionEvent = 12,
4455    cudaLaunchAttributeDeviceUpdatableKernelNode = 13,
4456    cudaLaunchAttributePreferredSharedMemoryCarveout = 14,
4457    cudaLaunchAttributeNvlinkUtilCentricScheduling = 16,
4458}
4459#[cfg(any(feature = "cuda-13020"))]
4460#[repr(u32)]
4461#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4462pub enum cudaLaunchAttributeID {
4463    cudaLaunchAttributeIgnore = 0,
4464    cudaLaunchAttributeAccessPolicyWindow = 1,
4465    cudaLaunchAttributeCooperative = 2,
4466    cudaLaunchAttributeSynchronizationPolicy = 3,
4467    cudaLaunchAttributeClusterDimension = 4,
4468    cudaLaunchAttributeClusterSchedulingPolicyPreference = 5,
4469    cudaLaunchAttributeProgrammaticStreamSerialization = 6,
4470    cudaLaunchAttributeProgrammaticEvent = 7,
4471    cudaLaunchAttributePriority = 8,
4472    cudaLaunchAttributeMemSyncDomainMap = 9,
4473    cudaLaunchAttributeMemSyncDomain = 10,
4474    cudaLaunchAttributePreferredClusterDimension = 11,
4475    cudaLaunchAttributeLaunchCompletionEvent = 12,
4476    cudaLaunchAttributeDeviceUpdatableKernelNode = 13,
4477    cudaLaunchAttributePreferredSharedMemoryCarveout = 14,
4478    cudaLaunchAttributeNvlinkUtilCentricScheduling = 16,
4479    cudaLaunchAttributePortableClusterSizeMode = 17,
4480    cudaLaunchAttributeSharedMemoryMode = 18,
4481}
4482#[cfg(any(feature = "cuda-13020"))]
4483#[repr(u32)]
4484#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4485pub enum cudaLaunchAttributePortableClusterMode {
4486    cudaLaunchPortableClusterModeDefault = 0,
4487    cudaLaunchPortableClusterModeRequirePortable = 1,
4488    cudaLaunchPortableClusterModeAllowNonPortable = 2,
4489}
4490#[cfg(any(
4491    feature = "cuda-12000",
4492    feature = "cuda-12010",
4493    feature = "cuda-12020",
4494    feature = "cuda-12030",
4495    feature = "cuda-12040",
4496    feature = "cuda-12050",
4497    feature = "cuda-12060",
4498    feature = "cuda-12080",
4499    feature = "cuda-12090",
4500    feature = "cuda-13000",
4501    feature = "cuda-13010",
4502    feature = "cuda-13020"
4503))]
4504#[repr(u32)]
4505#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4506pub enum cudaLaunchMemSyncDomain {
4507    cudaLaunchMemSyncDomainDefault = 0,
4508    cudaLaunchMemSyncDomainRemote = 1,
4509}
4510#[cfg(any(
4511    feature = "cuda-12080",
4512    feature = "cuda-12090",
4513    feature = "cuda-13000",
4514    feature = "cuda-13010",
4515    feature = "cuda-13020"
4516))]
4517#[repr(u32)]
4518#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4519pub enum cudaLibraryOption {
4520    cudaLibraryHostUniversalFunctionAndDataTable = 0,
4521    cudaLibraryBinaryIsPreserved = 1,
4522}
4523#[repr(u32)]
4524#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4525pub enum cudaLimit {
4526    cudaLimitStackSize = 0,
4527    cudaLimitPrintfFifoSize = 1,
4528    cudaLimitMallocHeapSize = 2,
4529    cudaLimitDevRuntimeSyncDepth = 3,
4530    cudaLimitDevRuntimePendingLaunchCount = 4,
4531    cudaLimitMaxL2FetchGranularity = 5,
4532    cudaLimitPersistingL2CacheSize = 6,
4533}
4534#[repr(u32)]
4535#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4536pub enum cudaMemAccessFlags {
4537    cudaMemAccessFlagsProtNone = 0,
4538    cudaMemAccessFlagsProtRead = 1,
4539    cudaMemAccessFlagsProtReadWrite = 3,
4540}
4541#[cfg(any(
4542    feature = "cuda-11040",
4543    feature = "cuda-11050",
4544    feature = "cuda-11060",
4545    feature = "cuda-11070",
4546    feature = "cuda-11080",
4547    feature = "cuda-12000",
4548    feature = "cuda-12010",
4549    feature = "cuda-12020",
4550    feature = "cuda-12030"
4551))]
4552#[repr(u32)]
4553#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4554pub enum cudaMemAllocationHandleType {
4555    cudaMemHandleTypeNone = 0,
4556    cudaMemHandleTypePosixFileDescriptor = 1,
4557    cudaMemHandleTypeWin32 = 2,
4558    cudaMemHandleTypeWin32Kmt = 4,
4559}
4560#[cfg(any(
4561    feature = "cuda-12040",
4562    feature = "cuda-12050",
4563    feature = "cuda-12060",
4564    feature = "cuda-12080",
4565    feature = "cuda-12090",
4566    feature = "cuda-13000",
4567    feature = "cuda-13010",
4568    feature = "cuda-13020"
4569))]
4570#[repr(u32)]
4571#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4572pub enum cudaMemAllocationHandleType {
4573    cudaMemHandleTypeNone = 0,
4574    cudaMemHandleTypePosixFileDescriptor = 1,
4575    cudaMemHandleTypeWin32 = 2,
4576    cudaMemHandleTypeWin32Kmt = 4,
4577    cudaMemHandleTypeFabric = 8,
4578}
4579#[cfg(any(
4580    feature = "cuda-11040",
4581    feature = "cuda-11050",
4582    feature = "cuda-11060",
4583    feature = "cuda-11070",
4584    feature = "cuda-11080",
4585    feature = "cuda-12000",
4586    feature = "cuda-12010",
4587    feature = "cuda-12020",
4588    feature = "cuda-12030",
4589    feature = "cuda-12040",
4590    feature = "cuda-12050",
4591    feature = "cuda-12060",
4592    feature = "cuda-12080",
4593    feature = "cuda-12090"
4594))]
4595#[repr(u32)]
4596#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4597pub enum cudaMemAllocationType {
4598    cudaMemAllocationTypeInvalid = 0,
4599    cudaMemAllocationTypePinned = 1,
4600    cudaMemAllocationTypeMax = 2147483647,
4601}
4602#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
4603#[repr(u32)]
4604#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4605pub enum cudaMemAllocationType {
4606    cudaMemAllocationTypeInvalid = 0,
4607    cudaMemAllocationTypePinned = 1,
4608    cudaMemAllocationTypeManaged = 2,
4609    cudaMemAllocationTypeMax = 2147483647,
4610}
4611#[cfg(any(
4612    feature = "cuda-11040",
4613    feature = "cuda-11050",
4614    feature = "cuda-11060",
4615    feature = "cuda-11070",
4616    feature = "cuda-11080",
4617    feature = "cuda-12000",
4618    feature = "cuda-12010"
4619))]
4620#[repr(u32)]
4621#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4622pub enum cudaMemLocationType {
4623    cudaMemLocationTypeInvalid = 0,
4624    cudaMemLocationTypeDevice = 1,
4625}
4626#[cfg(any(
4627    feature = "cuda-12020",
4628    feature = "cuda-12030",
4629    feature = "cuda-12040",
4630    feature = "cuda-12050",
4631    feature = "cuda-12060",
4632    feature = "cuda-12080",
4633    feature = "cuda-12090",
4634    feature = "cuda-13000",
4635    feature = "cuda-13010"
4636))]
4637#[repr(u32)]
4638#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4639pub enum cudaMemLocationType {
4640    cudaMemLocationTypeInvalid = 0,
4641    cudaMemLocationTypeDevice = 1,
4642    cudaMemLocationTypeHost = 2,
4643    cudaMemLocationTypeHostNuma = 3,
4644    cudaMemLocationTypeHostNumaCurrent = 4,
4645}
4646#[cfg(any(feature = "cuda-13020"))]
4647#[repr(u32)]
4648#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4649pub enum cudaMemLocationType {
4650    cudaMemLocationTypeInvalid = 0,
4651    cudaMemLocationTypeDevice = 1,
4652    cudaMemLocationTypeHost = 2,
4653    cudaMemLocationTypeHostNuma = 3,
4654    cudaMemLocationTypeHostNumaCurrent = 4,
4655    cudaMemLocationTypeInvisible = 5,
4656}
4657#[cfg(any(
4658    feature = "cuda-11040",
4659    feature = "cuda-11050",
4660    feature = "cuda-11060",
4661    feature = "cuda-11070",
4662    feature = "cuda-11080",
4663    feature = "cuda-12000",
4664    feature = "cuda-12010",
4665    feature = "cuda-12020",
4666    feature = "cuda-12030",
4667    feature = "cuda-12040",
4668    feature = "cuda-12050",
4669    feature = "cuda-12060",
4670    feature = "cuda-12080",
4671    feature = "cuda-12090",
4672    feature = "cuda-13000",
4673    feature = "cuda-13010"
4674))]
4675#[repr(u32)]
4676#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4677pub enum cudaMemPoolAttr {
4678    cudaMemPoolReuseFollowEventDependencies = 1,
4679    cudaMemPoolReuseAllowOpportunistic = 2,
4680    cudaMemPoolReuseAllowInternalDependencies = 3,
4681    cudaMemPoolAttrReleaseThreshold = 4,
4682    cudaMemPoolAttrReservedMemCurrent = 5,
4683    cudaMemPoolAttrReservedMemHigh = 6,
4684    cudaMemPoolAttrUsedMemCurrent = 7,
4685    cudaMemPoolAttrUsedMemHigh = 8,
4686}
4687#[cfg(any(feature = "cuda-13020"))]
4688#[repr(u32)]
4689#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4690pub enum cudaMemPoolAttr {
4691    cudaMemPoolReuseFollowEventDependencies = 1,
4692    cudaMemPoolReuseAllowOpportunistic = 2,
4693    cudaMemPoolReuseAllowInternalDependencies = 3,
4694    cudaMemPoolAttrReleaseThreshold = 4,
4695    cudaMemPoolAttrReservedMemCurrent = 5,
4696    cudaMemPoolAttrReservedMemHigh = 6,
4697    cudaMemPoolAttrUsedMemCurrent = 7,
4698    cudaMemPoolAttrUsedMemHigh = 8,
4699    cudaMemPoolAttrAllocationType = 9,
4700    cudaMemPoolAttrExportHandleTypes = 10,
4701    cudaMemPoolAttrLocationId = 11,
4702    cudaMemPoolAttrLocationType = 12,
4703    cudaMemPoolAttrMaxPoolSize = 13,
4704    cudaMemPoolAttrHwDecompressEnabled = 14,
4705}
4706#[cfg(any(
4707    feature = "cuda-11040",
4708    feature = "cuda-11050",
4709    feature = "cuda-11060",
4710    feature = "cuda-11070",
4711    feature = "cuda-11080",
4712    feature = "cuda-12000",
4713    feature = "cuda-12010"
4714))]
4715#[repr(u32)]
4716#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4717pub enum cudaMemRangeAttribute {
4718    cudaMemRangeAttributeReadMostly = 1,
4719    cudaMemRangeAttributePreferredLocation = 2,
4720    cudaMemRangeAttributeAccessedBy = 3,
4721    cudaMemRangeAttributeLastPrefetchLocation = 4,
4722}
4723#[cfg(any(
4724    feature = "cuda-12020",
4725    feature = "cuda-12030",
4726    feature = "cuda-12040",
4727    feature = "cuda-12050",
4728    feature = "cuda-12060",
4729    feature = "cuda-12080",
4730    feature = "cuda-12090",
4731    feature = "cuda-13000",
4732    feature = "cuda-13010",
4733    feature = "cuda-13020"
4734))]
4735#[repr(u32)]
4736#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4737pub enum cudaMemRangeAttribute {
4738    cudaMemRangeAttributeReadMostly = 1,
4739    cudaMemRangeAttributePreferredLocation = 2,
4740    cudaMemRangeAttributeAccessedBy = 3,
4741    cudaMemRangeAttributeLastPrefetchLocation = 4,
4742    cudaMemRangeAttributePreferredLocationType = 5,
4743    cudaMemRangeAttributePreferredLocationId = 6,
4744    cudaMemRangeAttributeLastPrefetchLocationType = 7,
4745    cudaMemRangeAttributeLastPrefetchLocationId = 8,
4746}
4747#[cfg(any(
4748    feature = "cuda-12080",
4749    feature = "cuda-12090",
4750    feature = "cuda-13000",
4751    feature = "cuda-13010",
4752    feature = "cuda-13020"
4753))]
4754#[repr(u32)]
4755#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4756pub enum cudaMemcpy3DOperandType {
4757    cudaMemcpyOperandTypePointer = 1,
4758    cudaMemcpyOperandTypeArray = 2,
4759    cudaMemcpyOperandTypeMax = 2147483647,
4760}
4761#[cfg(any(
4762    feature = "cuda-12080",
4763    feature = "cuda-12090",
4764    feature = "cuda-13000",
4765    feature = "cuda-13010",
4766    feature = "cuda-13020"
4767))]
4768#[repr(u32)]
4769#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4770pub enum cudaMemcpyFlags {
4771    cudaMemcpyFlagDefault = 0,
4772    cudaMemcpyFlagPreferOverlapWithCompute = 1,
4773}
4774#[repr(u32)]
4775#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4776pub enum cudaMemcpyKind {
4777    cudaMemcpyHostToHost = 0,
4778    cudaMemcpyHostToDevice = 1,
4779    cudaMemcpyDeviceToHost = 2,
4780    cudaMemcpyDeviceToDevice = 3,
4781    cudaMemcpyDefault = 4,
4782}
4783#[cfg(any(
4784    feature = "cuda-12080",
4785    feature = "cuda-12090",
4786    feature = "cuda-13000",
4787    feature = "cuda-13010",
4788    feature = "cuda-13020"
4789))]
4790#[repr(u32)]
4791#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4792pub enum cudaMemcpySrcAccessOrder {
4793    cudaMemcpySrcAccessOrderInvalid = 0,
4794    cudaMemcpySrcAccessOrderStream = 1,
4795    cudaMemcpySrcAccessOrderDuringApiCall = 2,
4796    cudaMemcpySrcAccessOrderAny = 3,
4797    cudaMemcpySrcAccessOrderMax = 2147483647,
4798}
4799#[repr(u32)]
4800#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4801pub enum cudaMemoryAdvise {
4802    cudaMemAdviseSetReadMostly = 1,
4803    cudaMemAdviseUnsetReadMostly = 2,
4804    cudaMemAdviseSetPreferredLocation = 3,
4805    cudaMemAdviseUnsetPreferredLocation = 4,
4806    cudaMemAdviseSetAccessedBy = 5,
4807    cudaMemAdviseUnsetAccessedBy = 6,
4808}
4809#[repr(u32)]
4810#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4811pub enum cudaMemoryType {
4812    cudaMemoryTypeUnregistered = 0,
4813    cudaMemoryTypeHost = 1,
4814    cudaMemoryTypeDevice = 2,
4815    cudaMemoryTypeManaged = 3,
4816}
4817#[cfg(any(
4818    feature = "cuda-11040",
4819    feature = "cuda-11050",
4820    feature = "cuda-11060",
4821    feature = "cuda-11070",
4822    feature = "cuda-11080"
4823))]
4824#[repr(u32)]
4825#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4826pub enum cudaOutputMode {
4827    cudaKeyValuePair = 0,
4828    cudaCSV = 1,
4829}
4830#[repr(u32)]
4831#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4832pub enum cudaResourceType {
4833    cudaResourceTypeArray = 0,
4834    cudaResourceTypeMipmappedArray = 1,
4835    cudaResourceTypeLinear = 2,
4836    cudaResourceTypePitch2D = 3,
4837}
4838#[repr(u32)]
4839#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4840pub enum cudaResourceViewFormat {
4841    cudaResViewFormatNone = 0,
4842    cudaResViewFormatUnsignedChar1 = 1,
4843    cudaResViewFormatUnsignedChar2 = 2,
4844    cudaResViewFormatUnsignedChar4 = 3,
4845    cudaResViewFormatSignedChar1 = 4,
4846    cudaResViewFormatSignedChar2 = 5,
4847    cudaResViewFormatSignedChar4 = 6,
4848    cudaResViewFormatUnsignedShort1 = 7,
4849    cudaResViewFormatUnsignedShort2 = 8,
4850    cudaResViewFormatUnsignedShort4 = 9,
4851    cudaResViewFormatSignedShort1 = 10,
4852    cudaResViewFormatSignedShort2 = 11,
4853    cudaResViewFormatSignedShort4 = 12,
4854    cudaResViewFormatUnsignedInt1 = 13,
4855    cudaResViewFormatUnsignedInt2 = 14,
4856    cudaResViewFormatUnsignedInt4 = 15,
4857    cudaResViewFormatSignedInt1 = 16,
4858    cudaResViewFormatSignedInt2 = 17,
4859    cudaResViewFormatSignedInt4 = 18,
4860    cudaResViewFormatHalf1 = 19,
4861    cudaResViewFormatHalf2 = 20,
4862    cudaResViewFormatHalf4 = 21,
4863    cudaResViewFormatFloat1 = 22,
4864    cudaResViewFormatFloat2 = 23,
4865    cudaResViewFormatFloat4 = 24,
4866    cudaResViewFormatUnsignedBlockCompressed1 = 25,
4867    cudaResViewFormatUnsignedBlockCompressed2 = 26,
4868    cudaResViewFormatUnsignedBlockCompressed3 = 27,
4869    cudaResViewFormatUnsignedBlockCompressed4 = 28,
4870    cudaResViewFormatSignedBlockCompressed4 = 29,
4871    cudaResViewFormatUnsignedBlockCompressed5 = 30,
4872    cudaResViewFormatSignedBlockCompressed5 = 31,
4873    cudaResViewFormatUnsignedBlockCompressed6H = 32,
4874    cudaResViewFormatSignedBlockCompressed6H = 33,
4875    cudaResViewFormatUnsignedBlockCompressed7 = 34,
4876}
4877#[repr(u32)]
4878#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4879pub enum cudaRoundMode {
4880    cudaRoundNearest = 0,
4881    cudaRoundZero = 1,
4882    cudaRoundPosInf = 2,
4883    cudaRoundMinInf = 3,
4884}
4885#[repr(i32)]
4886#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4887pub enum cudaSharedCarveout {
4888    cudaSharedmemCarveoutDefault = -1,
4889    cudaSharedmemCarveoutMaxShared = 100,
4890    cudaSharedmemCarveoutMaxL1 = 0,
4891}
4892#[repr(u32)]
4893#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4894pub enum cudaSharedMemConfig {
4895    cudaSharedMemBankSizeDefault = 0,
4896    cudaSharedMemBankSizeFourByte = 1,
4897    cudaSharedMemBankSizeEightByte = 2,
4898}
4899#[cfg(any(feature = "cuda-13020"))]
4900#[repr(u32)]
4901#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4902pub enum cudaSharedMemoryMode {
4903    cudaSharedMemoryModeDefault = 0,
4904    cudaSharedMemoryModeRequirePortable = 1,
4905    cudaSharedMemoryModeAllowNonPortable = 2,
4906}
4907#[cfg(any(
4908    feature = "cuda-11040",
4909    feature = "cuda-11050",
4910    feature = "cuda-11060",
4911    feature = "cuda-11070"
4912))]
4913#[repr(u32)]
4914#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4915pub enum cudaStreamAttrID {
4916    cudaStreamAttributeAccessPolicyWindow = 1,
4917    cudaStreamAttributeSynchronizationPolicy = 3,
4918}
4919#[repr(u32)]
4920#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4921pub enum cudaStreamCaptureMode {
4922    cudaStreamCaptureModeGlobal = 0,
4923    cudaStreamCaptureModeThreadLocal = 1,
4924    cudaStreamCaptureModeRelaxed = 2,
4925}
4926#[repr(u32)]
4927#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4928pub enum cudaStreamCaptureStatus {
4929    cudaStreamCaptureStatusNone = 0,
4930    cudaStreamCaptureStatusActive = 1,
4931    cudaStreamCaptureStatusInvalidated = 2,
4932}
4933#[repr(u32)]
4934#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4935pub enum cudaStreamUpdateCaptureDependenciesFlags {
4936    cudaStreamAddCaptureDependencies = 0,
4937    cudaStreamSetCaptureDependencies = 1,
4938}
4939#[repr(u32)]
4940#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4941pub enum cudaSurfaceBoundaryMode {
4942    cudaBoundaryModeZero = 0,
4943    cudaBoundaryModeClamp = 1,
4944    cudaBoundaryModeTrap = 2,
4945}
4946#[repr(u32)]
4947#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4948pub enum cudaSurfaceFormatMode {
4949    cudaFormatModeForced = 0,
4950    cudaFormatModeAuto = 1,
4951}
4952#[repr(u32)]
4953#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4954pub enum cudaSynchronizationPolicy {
4955    cudaSyncPolicyAuto = 1,
4956    cudaSyncPolicySpin = 2,
4957    cudaSyncPolicyYield = 3,
4958    cudaSyncPolicyBlockingSync = 4,
4959}
4960#[repr(u32)]
4961#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4962pub enum cudaTextureAddressMode {
4963    cudaAddressModeWrap = 0,
4964    cudaAddressModeClamp = 1,
4965    cudaAddressModeMirror = 2,
4966    cudaAddressModeBorder = 3,
4967}
4968#[repr(u32)]
4969#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4970pub enum cudaTextureFilterMode {
4971    cudaFilterModePoint = 0,
4972    cudaFilterModeLinear = 1,
4973}
4974#[repr(u32)]
4975#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4976pub enum cudaTextureReadMode {
4977    cudaReadModeElementType = 0,
4978    cudaReadModeNormalizedFloat = 1,
4979}
4980#[repr(u32)]
4981#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4982pub enum cudaUserObjectFlags {
4983    cudaUserObjectNoDestructorSync = 1,
4984}
4985#[repr(u32)]
4986#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
4987pub enum cudaUserObjectRetainFlags {
4988    cudaGraphUserObjectMove = 1,
4989}
4990#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
4991#[repr(C)]
4992#[derive(Debug, Copy, Clone)]
4993pub struct CUdevResourceDesc_st {
4994    _unused: [u8; 0],
4995}
4996#[repr(C)]
4997#[derive(Debug, Copy, Clone)]
4998pub struct CUevent_st {
4999    _unused: [u8; 0],
5000}
5001#[repr(C)]
5002#[derive(Debug, Copy, Clone)]
5003pub struct CUexternalMemory_st {
5004    _unused: [u8; 0],
5005}
5006#[repr(C)]
5007#[derive(Debug, Copy, Clone)]
5008pub struct CUexternalSemaphore_st {
5009    _unused: [u8; 0],
5010}
5011#[repr(C)]
5012#[derive(Debug, Copy, Clone)]
5013pub struct CUfunc_st {
5014    _unused: [u8; 0],
5015}
5016#[cfg(any(
5017    feature = "cuda-12040",
5018    feature = "cuda-12050",
5019    feature = "cuda-12060",
5020    feature = "cuda-12080",
5021    feature = "cuda-12090",
5022    feature = "cuda-13000",
5023    feature = "cuda-13010",
5024    feature = "cuda-13020"
5025))]
5026#[repr(C)]
5027#[derive(Debug, Copy, Clone)]
5028pub struct CUgraphDeviceUpdatableNode_st {
5029    _unused: [u8; 0],
5030}
5031#[repr(C)]
5032#[derive(Debug, Copy, Clone)]
5033pub struct CUgraphExec_st {
5034    _unused: [u8; 0],
5035}
5036#[repr(C)]
5037#[derive(Debug, Copy, Clone)]
5038pub struct CUgraphNode_st {
5039    _unused: [u8; 0],
5040}
5041#[repr(C)]
5042#[derive(Debug, Copy, Clone)]
5043pub struct CUgraph_st {
5044    _unused: [u8; 0],
5045}
5046#[cfg(any(
5047    feature = "cuda-12010",
5048    feature = "cuda-12020",
5049    feature = "cuda-12030",
5050    feature = "cuda-12040",
5051    feature = "cuda-12050",
5052    feature = "cuda-12060",
5053    feature = "cuda-12080",
5054    feature = "cuda-12090",
5055    feature = "cuda-13000",
5056    feature = "cuda-13010",
5057    feature = "cuda-13020"
5058))]
5059#[repr(C)]
5060#[derive(Debug, Copy, Clone)]
5061pub struct CUkern_st {
5062    _unused: [u8; 0],
5063}
5064#[cfg(any(
5065    feature = "cuda-12080",
5066    feature = "cuda-12090",
5067    feature = "cuda-13000",
5068    feature = "cuda-13010",
5069    feature = "cuda-13020"
5070))]
5071#[repr(C)]
5072#[derive(Debug, Copy, Clone)]
5073pub struct CUlib_st {
5074    _unused: [u8; 0],
5075}
5076#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
5077#[repr(C)]
5078#[derive(Debug, Copy, Clone)]
5079pub struct CUlogsCallbackEntry_st {
5080    _unused: [u8; 0],
5081}
5082#[repr(C)]
5083#[derive(Debug, Copy, Clone)]
5084pub struct CUmemPoolHandle_st {
5085    _unused: [u8; 0],
5086}
5087#[repr(C)]
5088#[derive(Debug, Copy, Clone)]
5089pub struct CUstream_st {
5090    _unused: [u8; 0],
5091}
5092#[repr(C)]
5093#[derive(Debug, Copy, Clone)]
5094pub struct CUuserObject_st {
5095    _unused: [u8; 0],
5096}
5097#[repr(C)]
5098#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5099pub struct CUuuid_st {
5100    pub bytes: [::core::ffi::c_char; 16usize],
5101}
5102#[repr(C)]
5103#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
5104pub struct cudaAccessPolicyWindow {
5105    pub base_ptr: *mut ::core::ffi::c_void,
5106    pub num_bytes: usize,
5107    pub hitRatio: f32,
5108    pub hitProp: cudaAccessProperty,
5109    pub missProp: cudaAccessProperty,
5110}
5111#[repr(C)]
5112#[derive(Debug, Copy, Clone)]
5113pub struct cudaArray {
5114    _unused: [u8; 0],
5115}
5116#[cfg(any(
5117    feature = "cuda-11060",
5118    feature = "cuda-11070",
5119    feature = "cuda-11080",
5120    feature = "cuda-12000",
5121    feature = "cuda-12010",
5122    feature = "cuda-12020",
5123    feature = "cuda-12030",
5124    feature = "cuda-12040",
5125    feature = "cuda-12050",
5126    feature = "cuda-12060",
5127    feature = "cuda-12080",
5128    feature = "cuda-12090",
5129    feature = "cuda-13000",
5130    feature = "cuda-13010",
5131    feature = "cuda-13020"
5132))]
5133#[repr(C)]
5134#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5135pub struct cudaArrayMemoryRequirements {
5136    pub size: usize,
5137    pub alignment: usize,
5138    pub reserved: [::core::ffi::c_uint; 4usize],
5139}
5140#[repr(C)]
5141#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5142pub struct cudaArraySparseProperties {
5143    pub tileExtent: cudaArraySparseProperties__bindgen_ty_1,
5144    pub miptailFirstLevel: ::core::ffi::c_uint,
5145    pub miptailSize: ::core::ffi::c_ulonglong,
5146    pub flags: ::core::ffi::c_uint,
5147    pub reserved: [::core::ffi::c_uint; 4usize],
5148}
5149#[repr(C)]
5150#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5151pub struct cudaArraySparseProperties__bindgen_ty_1 {
5152    pub width: ::core::ffi::c_uint,
5153    pub height: ::core::ffi::c_uint,
5154    pub depth: ::core::ffi::c_uint,
5155}
5156#[cfg(any(
5157    feature = "cuda-12040",
5158    feature = "cuda-12050",
5159    feature = "cuda-12060",
5160    feature = "cuda-12080",
5161    feature = "cuda-12090",
5162    feature = "cuda-13000",
5163    feature = "cuda-13010",
5164    feature = "cuda-13020"
5165))]
5166#[repr(C)]
5167#[derive(Debug, Copy, Clone)]
5168pub struct cudaAsyncCallbackEntry {
5169    _unused: [u8; 0],
5170}
5171#[cfg(any(
5172    feature = "cuda-12040",
5173    feature = "cuda-12050",
5174    feature = "cuda-12060",
5175    feature = "cuda-12080",
5176    feature = "cuda-12090",
5177    feature = "cuda-13000",
5178    feature = "cuda-13010",
5179    feature = "cuda-13020"
5180))]
5181#[repr(C)]
5182#[derive(Copy, Clone)]
5183pub struct cudaAsyncNotificationInfo {
5184    pub type_: cudaAsyncNotificationType,
5185    pub info: cudaAsyncNotificationInfo__bindgen_ty_1,
5186}
5187#[cfg(any(
5188    feature = "cuda-12040",
5189    feature = "cuda-12050",
5190    feature = "cuda-12060",
5191    feature = "cuda-12080",
5192    feature = "cuda-12090",
5193    feature = "cuda-13000",
5194    feature = "cuda-13010",
5195    feature = "cuda-13020"
5196))]
5197#[repr(C)]
5198#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5199pub struct cudaAsyncNotificationInfo__bindgen_ty_1__bindgen_ty_1 {
5200    pub bytesOverBudget: ::core::ffi::c_ulonglong,
5201}
5202#[repr(C)]
5203#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5204pub struct cudaChannelFormatDesc {
5205    pub x: ::core::ffi::c_int,
5206    pub y: ::core::ffi::c_int,
5207    pub z: ::core::ffi::c_int,
5208    pub w: ::core::ffi::c_int,
5209    pub f: cudaChannelFormatKind,
5210}
5211#[cfg(any(
5212    feature = "cuda-12020",
5213    feature = "cuda-12030",
5214    feature = "cuda-12040",
5215    feature = "cuda-12050",
5216    feature = "cuda-12060",
5217    feature = "cuda-12080"
5218))]
5219#[repr(C)]
5220#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5221pub struct cudaChildGraphNodeParams {
5222    pub graph: cudaGraph_t,
5223}
5224#[cfg(any(
5225    feature = "cuda-12090",
5226    feature = "cuda-13000",
5227    feature = "cuda-13010",
5228    feature = "cuda-13020"
5229))]
5230#[repr(C)]
5231#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5232pub struct cudaChildGraphNodeParams {
5233    pub graph: cudaGraph_t,
5234    pub ownership: cudaGraphChildGraphNodeOwnership,
5235}
5236#[cfg(any(
5237    feature = "cuda-12030",
5238    feature = "cuda-12040",
5239    feature = "cuda-12050",
5240    feature = "cuda-12060",
5241    feature = "cuda-12080",
5242    feature = "cuda-12090",
5243    feature = "cuda-13000"
5244))]
5245#[repr(C)]
5246#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5247pub struct cudaConditionalNodeParams {
5248    pub handle: cudaGraphConditionalHandle,
5249    pub type_: cudaGraphConditionalNodeType,
5250    pub size: ::core::ffi::c_uint,
5251    pub phGraph_out: *mut cudaGraph_t,
5252}
5253#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
5254#[repr(C)]
5255#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5256pub struct cudaConditionalNodeParams {
5257    pub handle: cudaGraphConditionalHandle,
5258    pub type_: cudaGraphConditionalNodeType,
5259    pub size: ::core::ffi::c_uint,
5260    pub phGraph_out: *mut cudaGraph_t,
5261    pub ctx: cudaExecutionContext_t,
5262}
5263#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
5264#[repr(C)]
5265#[derive(Copy, Clone)]
5266pub struct cudaDevResource_st {
5267    pub type_: cudaDevResourceType,
5268    pub _internal_padding: [::core::ffi::c_uchar; 92usize],
5269    pub __bindgen_anon_1: cudaDevResource_st__bindgen_ty_1,
5270    pub nextResource: *mut cudaDevResource_st,
5271}
5272#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
5273#[repr(C)]
5274#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5275pub struct cudaDevSmResource {
5276    pub smCount: ::core::ffi::c_uint,
5277    pub minSmPartitionSize: ::core::ffi::c_uint,
5278    pub smCoscheduledAlignment: ::core::ffi::c_uint,
5279    pub flags: ::core::ffi::c_uint,
5280}
5281#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
5282#[repr(C)]
5283#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5284pub struct cudaDevSmResourceGroupParams_st {
5285    pub smCount: ::core::ffi::c_uint,
5286    pub coscheduledSmCount: ::core::ffi::c_uint,
5287    pub preferredCoscheduledSmCount: ::core::ffi::c_uint,
5288    pub flags: ::core::ffi::c_uint,
5289    pub reserved: [::core::ffi::c_uint; 12usize],
5290}
5291#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
5292#[repr(C)]
5293#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5294pub struct cudaDevWorkqueueConfigResource {
5295    pub device: ::core::ffi::c_int,
5296    pub wqConcurrencyLimit: ::core::ffi::c_uint,
5297    pub sharingScope: cudaDevWorkqueueConfigScope,
5298}
5299#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
5300#[repr(C)]
5301#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5302pub struct cudaDevWorkqueueResource {
5303    pub reserved: [::core::ffi::c_uchar; 40usize],
5304}
5305#[cfg(any(
5306    feature = "cuda-11040",
5307    feature = "cuda-11050",
5308    feature = "cuda-11060",
5309    feature = "cuda-11070",
5310    feature = "cuda-11080"
5311))]
5312#[repr(C)]
5313#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5314pub struct cudaDeviceProp {
5315    pub name: [::core::ffi::c_char; 256usize],
5316    pub uuid: cudaUUID_t,
5317    pub luid: [::core::ffi::c_char; 8usize],
5318    pub luidDeviceNodeMask: ::core::ffi::c_uint,
5319    pub totalGlobalMem: usize,
5320    pub sharedMemPerBlock: usize,
5321    pub regsPerBlock: ::core::ffi::c_int,
5322    pub warpSize: ::core::ffi::c_int,
5323    pub memPitch: usize,
5324    pub maxThreadsPerBlock: ::core::ffi::c_int,
5325    pub maxThreadsDim: [::core::ffi::c_int; 3usize],
5326    pub maxGridSize: [::core::ffi::c_int; 3usize],
5327    pub clockRate: ::core::ffi::c_int,
5328    pub totalConstMem: usize,
5329    pub major: ::core::ffi::c_int,
5330    pub minor: ::core::ffi::c_int,
5331    pub textureAlignment: usize,
5332    pub texturePitchAlignment: usize,
5333    pub deviceOverlap: ::core::ffi::c_int,
5334    pub multiProcessorCount: ::core::ffi::c_int,
5335    pub kernelExecTimeoutEnabled: ::core::ffi::c_int,
5336    pub integrated: ::core::ffi::c_int,
5337    pub canMapHostMemory: ::core::ffi::c_int,
5338    pub computeMode: ::core::ffi::c_int,
5339    pub maxTexture1D: ::core::ffi::c_int,
5340    pub maxTexture1DMipmap: ::core::ffi::c_int,
5341    pub maxTexture1DLinear: ::core::ffi::c_int,
5342    pub maxTexture2D: [::core::ffi::c_int; 2usize],
5343    pub maxTexture2DMipmap: [::core::ffi::c_int; 2usize],
5344    pub maxTexture2DLinear: [::core::ffi::c_int; 3usize],
5345    pub maxTexture2DGather: [::core::ffi::c_int; 2usize],
5346    pub maxTexture3D: [::core::ffi::c_int; 3usize],
5347    pub maxTexture3DAlt: [::core::ffi::c_int; 3usize],
5348    pub maxTextureCubemap: ::core::ffi::c_int,
5349    pub maxTexture1DLayered: [::core::ffi::c_int; 2usize],
5350    pub maxTexture2DLayered: [::core::ffi::c_int; 3usize],
5351    pub maxTextureCubemapLayered: [::core::ffi::c_int; 2usize],
5352    pub maxSurface1D: ::core::ffi::c_int,
5353    pub maxSurface2D: [::core::ffi::c_int; 2usize],
5354    pub maxSurface3D: [::core::ffi::c_int; 3usize],
5355    pub maxSurface1DLayered: [::core::ffi::c_int; 2usize],
5356    pub maxSurface2DLayered: [::core::ffi::c_int; 3usize],
5357    pub maxSurfaceCubemap: ::core::ffi::c_int,
5358    pub maxSurfaceCubemapLayered: [::core::ffi::c_int; 2usize],
5359    pub surfaceAlignment: usize,
5360    pub concurrentKernels: ::core::ffi::c_int,
5361    pub ECCEnabled: ::core::ffi::c_int,
5362    pub pciBusID: ::core::ffi::c_int,
5363    pub pciDeviceID: ::core::ffi::c_int,
5364    pub pciDomainID: ::core::ffi::c_int,
5365    pub tccDriver: ::core::ffi::c_int,
5366    pub asyncEngineCount: ::core::ffi::c_int,
5367    pub unifiedAddressing: ::core::ffi::c_int,
5368    pub memoryClockRate: ::core::ffi::c_int,
5369    pub memoryBusWidth: ::core::ffi::c_int,
5370    pub l2CacheSize: ::core::ffi::c_int,
5371    pub persistingL2CacheMaxSize: ::core::ffi::c_int,
5372    pub maxThreadsPerMultiProcessor: ::core::ffi::c_int,
5373    pub streamPrioritiesSupported: ::core::ffi::c_int,
5374    pub globalL1CacheSupported: ::core::ffi::c_int,
5375    pub localL1CacheSupported: ::core::ffi::c_int,
5376    pub sharedMemPerMultiprocessor: usize,
5377    pub regsPerMultiprocessor: ::core::ffi::c_int,
5378    pub managedMemory: ::core::ffi::c_int,
5379    pub isMultiGpuBoard: ::core::ffi::c_int,
5380    pub multiGpuBoardGroupID: ::core::ffi::c_int,
5381    pub hostNativeAtomicSupported: ::core::ffi::c_int,
5382    pub singleToDoublePrecisionPerfRatio: ::core::ffi::c_int,
5383    pub pageableMemoryAccess: ::core::ffi::c_int,
5384    pub concurrentManagedAccess: ::core::ffi::c_int,
5385    pub computePreemptionSupported: ::core::ffi::c_int,
5386    pub canUseHostPointerForRegisteredMem: ::core::ffi::c_int,
5387    pub cooperativeLaunch: ::core::ffi::c_int,
5388    pub cooperativeMultiDeviceLaunch: ::core::ffi::c_int,
5389    pub sharedMemPerBlockOptin: usize,
5390    pub pageableMemoryAccessUsesHostPageTables: ::core::ffi::c_int,
5391    pub directManagedMemAccessFromHost: ::core::ffi::c_int,
5392    pub maxBlocksPerMultiProcessor: ::core::ffi::c_int,
5393    pub accessPolicyMaxWindowSize: ::core::ffi::c_int,
5394    pub reservedSharedMemPerBlock: usize,
5395}
5396#[cfg(any(feature = "cuda-12000"))]
5397#[repr(C)]
5398#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5399pub struct cudaDeviceProp {
5400    pub name: [::core::ffi::c_char; 256usize],
5401    pub uuid: cudaUUID_t,
5402    pub luid: [::core::ffi::c_char; 8usize],
5403    pub luidDeviceNodeMask: ::core::ffi::c_uint,
5404    pub totalGlobalMem: usize,
5405    pub sharedMemPerBlock: usize,
5406    pub regsPerBlock: ::core::ffi::c_int,
5407    pub warpSize: ::core::ffi::c_int,
5408    pub memPitch: usize,
5409    pub maxThreadsPerBlock: ::core::ffi::c_int,
5410    pub maxThreadsDim: [::core::ffi::c_int; 3usize],
5411    pub maxGridSize: [::core::ffi::c_int; 3usize],
5412    pub clockRate: ::core::ffi::c_int,
5413    pub totalConstMem: usize,
5414    pub major: ::core::ffi::c_int,
5415    pub minor: ::core::ffi::c_int,
5416    pub textureAlignment: usize,
5417    pub texturePitchAlignment: usize,
5418    pub deviceOverlap: ::core::ffi::c_int,
5419    pub multiProcessorCount: ::core::ffi::c_int,
5420    pub kernelExecTimeoutEnabled: ::core::ffi::c_int,
5421    pub integrated: ::core::ffi::c_int,
5422    pub canMapHostMemory: ::core::ffi::c_int,
5423    pub computeMode: ::core::ffi::c_int,
5424    pub maxTexture1D: ::core::ffi::c_int,
5425    pub maxTexture1DMipmap: ::core::ffi::c_int,
5426    pub maxTexture1DLinear: ::core::ffi::c_int,
5427    pub maxTexture2D: [::core::ffi::c_int; 2usize],
5428    pub maxTexture2DMipmap: [::core::ffi::c_int; 2usize],
5429    pub maxTexture2DLinear: [::core::ffi::c_int; 3usize],
5430    pub maxTexture2DGather: [::core::ffi::c_int; 2usize],
5431    pub maxTexture3D: [::core::ffi::c_int; 3usize],
5432    pub maxTexture3DAlt: [::core::ffi::c_int; 3usize],
5433    pub maxTextureCubemap: ::core::ffi::c_int,
5434    pub maxTexture1DLayered: [::core::ffi::c_int; 2usize],
5435    pub maxTexture2DLayered: [::core::ffi::c_int; 3usize],
5436    pub maxTextureCubemapLayered: [::core::ffi::c_int; 2usize],
5437    pub maxSurface1D: ::core::ffi::c_int,
5438    pub maxSurface2D: [::core::ffi::c_int; 2usize],
5439    pub maxSurface3D: [::core::ffi::c_int; 3usize],
5440    pub maxSurface1DLayered: [::core::ffi::c_int; 2usize],
5441    pub maxSurface2DLayered: [::core::ffi::c_int; 3usize],
5442    pub maxSurfaceCubemap: ::core::ffi::c_int,
5443    pub maxSurfaceCubemapLayered: [::core::ffi::c_int; 2usize],
5444    pub surfaceAlignment: usize,
5445    pub concurrentKernels: ::core::ffi::c_int,
5446    pub ECCEnabled: ::core::ffi::c_int,
5447    pub pciBusID: ::core::ffi::c_int,
5448    pub pciDeviceID: ::core::ffi::c_int,
5449    pub pciDomainID: ::core::ffi::c_int,
5450    pub tccDriver: ::core::ffi::c_int,
5451    pub asyncEngineCount: ::core::ffi::c_int,
5452    pub unifiedAddressing: ::core::ffi::c_int,
5453    pub memoryClockRate: ::core::ffi::c_int,
5454    pub memoryBusWidth: ::core::ffi::c_int,
5455    pub l2CacheSize: ::core::ffi::c_int,
5456    pub persistingL2CacheMaxSize: ::core::ffi::c_int,
5457    pub maxThreadsPerMultiProcessor: ::core::ffi::c_int,
5458    pub streamPrioritiesSupported: ::core::ffi::c_int,
5459    pub globalL1CacheSupported: ::core::ffi::c_int,
5460    pub localL1CacheSupported: ::core::ffi::c_int,
5461    pub sharedMemPerMultiprocessor: usize,
5462    pub regsPerMultiprocessor: ::core::ffi::c_int,
5463    pub managedMemory: ::core::ffi::c_int,
5464    pub isMultiGpuBoard: ::core::ffi::c_int,
5465    pub multiGpuBoardGroupID: ::core::ffi::c_int,
5466    pub hostNativeAtomicSupported: ::core::ffi::c_int,
5467    pub singleToDoublePrecisionPerfRatio: ::core::ffi::c_int,
5468    pub pageableMemoryAccess: ::core::ffi::c_int,
5469    pub concurrentManagedAccess: ::core::ffi::c_int,
5470    pub computePreemptionSupported: ::core::ffi::c_int,
5471    pub canUseHostPointerForRegisteredMem: ::core::ffi::c_int,
5472    pub cooperativeLaunch: ::core::ffi::c_int,
5473    pub cooperativeMultiDeviceLaunch: ::core::ffi::c_int,
5474    pub sharedMemPerBlockOptin: usize,
5475    pub pageableMemoryAccessUsesHostPageTables: ::core::ffi::c_int,
5476    pub directManagedMemAccessFromHost: ::core::ffi::c_int,
5477    pub maxBlocksPerMultiProcessor: ::core::ffi::c_int,
5478    pub accessPolicyMaxWindowSize: ::core::ffi::c_int,
5479    pub reservedSharedMemPerBlock: usize,
5480    pub hostRegisterSupported: ::core::ffi::c_int,
5481    pub sparseCudaArraySupported: ::core::ffi::c_int,
5482    pub hostRegisterReadOnlySupported: ::core::ffi::c_int,
5483    pub timelineSemaphoreInteropSupported: ::core::ffi::c_int,
5484    pub memoryPoolsSupported: ::core::ffi::c_int,
5485    pub gpuDirectRDMASupported: ::core::ffi::c_int,
5486    pub gpuDirectRDMAFlushWritesOptions: ::core::ffi::c_uint,
5487    pub gpuDirectRDMAWritesOrdering: ::core::ffi::c_int,
5488    pub memoryPoolSupportedHandleTypes: ::core::ffi::c_uint,
5489    pub deferredMappingCudaArraySupported: ::core::ffi::c_int,
5490    pub ipcEventSupported: ::core::ffi::c_int,
5491    pub clusterLaunch: ::core::ffi::c_int,
5492    pub unifiedFunctionPointers: ::core::ffi::c_int,
5493    pub reserved: [::core::ffi::c_int; 63usize],
5494}
5495#[cfg(any(feature = "cuda-12010", feature = "cuda-12020"))]
5496#[repr(C)]
5497#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5498pub struct cudaDeviceProp {
5499    pub name: [::core::ffi::c_char; 256usize],
5500    pub uuid: cudaUUID_t,
5501    pub luid: [::core::ffi::c_char; 8usize],
5502    pub luidDeviceNodeMask: ::core::ffi::c_uint,
5503    pub totalGlobalMem: usize,
5504    pub sharedMemPerBlock: usize,
5505    pub regsPerBlock: ::core::ffi::c_int,
5506    pub warpSize: ::core::ffi::c_int,
5507    pub memPitch: usize,
5508    pub maxThreadsPerBlock: ::core::ffi::c_int,
5509    pub maxThreadsDim: [::core::ffi::c_int; 3usize],
5510    pub maxGridSize: [::core::ffi::c_int; 3usize],
5511    pub clockRate: ::core::ffi::c_int,
5512    pub totalConstMem: usize,
5513    pub major: ::core::ffi::c_int,
5514    pub minor: ::core::ffi::c_int,
5515    pub textureAlignment: usize,
5516    pub texturePitchAlignment: usize,
5517    pub deviceOverlap: ::core::ffi::c_int,
5518    pub multiProcessorCount: ::core::ffi::c_int,
5519    pub kernelExecTimeoutEnabled: ::core::ffi::c_int,
5520    pub integrated: ::core::ffi::c_int,
5521    pub canMapHostMemory: ::core::ffi::c_int,
5522    pub computeMode: ::core::ffi::c_int,
5523    pub maxTexture1D: ::core::ffi::c_int,
5524    pub maxTexture1DMipmap: ::core::ffi::c_int,
5525    pub maxTexture1DLinear: ::core::ffi::c_int,
5526    pub maxTexture2D: [::core::ffi::c_int; 2usize],
5527    pub maxTexture2DMipmap: [::core::ffi::c_int; 2usize],
5528    pub maxTexture2DLinear: [::core::ffi::c_int; 3usize],
5529    pub maxTexture2DGather: [::core::ffi::c_int; 2usize],
5530    pub maxTexture3D: [::core::ffi::c_int; 3usize],
5531    pub maxTexture3DAlt: [::core::ffi::c_int; 3usize],
5532    pub maxTextureCubemap: ::core::ffi::c_int,
5533    pub maxTexture1DLayered: [::core::ffi::c_int; 2usize],
5534    pub maxTexture2DLayered: [::core::ffi::c_int; 3usize],
5535    pub maxTextureCubemapLayered: [::core::ffi::c_int; 2usize],
5536    pub maxSurface1D: ::core::ffi::c_int,
5537    pub maxSurface2D: [::core::ffi::c_int; 2usize],
5538    pub maxSurface3D: [::core::ffi::c_int; 3usize],
5539    pub maxSurface1DLayered: [::core::ffi::c_int; 2usize],
5540    pub maxSurface2DLayered: [::core::ffi::c_int; 3usize],
5541    pub maxSurfaceCubemap: ::core::ffi::c_int,
5542    pub maxSurfaceCubemapLayered: [::core::ffi::c_int; 2usize],
5543    pub surfaceAlignment: usize,
5544    pub concurrentKernels: ::core::ffi::c_int,
5545    pub ECCEnabled: ::core::ffi::c_int,
5546    pub pciBusID: ::core::ffi::c_int,
5547    pub pciDeviceID: ::core::ffi::c_int,
5548    pub pciDomainID: ::core::ffi::c_int,
5549    pub tccDriver: ::core::ffi::c_int,
5550    pub asyncEngineCount: ::core::ffi::c_int,
5551    pub unifiedAddressing: ::core::ffi::c_int,
5552    pub memoryClockRate: ::core::ffi::c_int,
5553    pub memoryBusWidth: ::core::ffi::c_int,
5554    pub l2CacheSize: ::core::ffi::c_int,
5555    pub persistingL2CacheMaxSize: ::core::ffi::c_int,
5556    pub maxThreadsPerMultiProcessor: ::core::ffi::c_int,
5557    pub streamPrioritiesSupported: ::core::ffi::c_int,
5558    pub globalL1CacheSupported: ::core::ffi::c_int,
5559    pub localL1CacheSupported: ::core::ffi::c_int,
5560    pub sharedMemPerMultiprocessor: usize,
5561    pub regsPerMultiprocessor: ::core::ffi::c_int,
5562    pub managedMemory: ::core::ffi::c_int,
5563    pub isMultiGpuBoard: ::core::ffi::c_int,
5564    pub multiGpuBoardGroupID: ::core::ffi::c_int,
5565    pub hostNativeAtomicSupported: ::core::ffi::c_int,
5566    pub singleToDoublePrecisionPerfRatio: ::core::ffi::c_int,
5567    pub pageableMemoryAccess: ::core::ffi::c_int,
5568    pub concurrentManagedAccess: ::core::ffi::c_int,
5569    pub computePreemptionSupported: ::core::ffi::c_int,
5570    pub canUseHostPointerForRegisteredMem: ::core::ffi::c_int,
5571    pub cooperativeLaunch: ::core::ffi::c_int,
5572    pub cooperativeMultiDeviceLaunch: ::core::ffi::c_int,
5573    pub sharedMemPerBlockOptin: usize,
5574    pub pageableMemoryAccessUsesHostPageTables: ::core::ffi::c_int,
5575    pub directManagedMemAccessFromHost: ::core::ffi::c_int,
5576    pub maxBlocksPerMultiProcessor: ::core::ffi::c_int,
5577    pub accessPolicyMaxWindowSize: ::core::ffi::c_int,
5578    pub reservedSharedMemPerBlock: usize,
5579    pub hostRegisterSupported: ::core::ffi::c_int,
5580    pub sparseCudaArraySupported: ::core::ffi::c_int,
5581    pub hostRegisterReadOnlySupported: ::core::ffi::c_int,
5582    pub timelineSemaphoreInteropSupported: ::core::ffi::c_int,
5583    pub memoryPoolsSupported: ::core::ffi::c_int,
5584    pub gpuDirectRDMASupported: ::core::ffi::c_int,
5585    pub gpuDirectRDMAFlushWritesOptions: ::core::ffi::c_uint,
5586    pub gpuDirectRDMAWritesOrdering: ::core::ffi::c_int,
5587    pub memoryPoolSupportedHandleTypes: ::core::ffi::c_uint,
5588    pub deferredMappingCudaArraySupported: ::core::ffi::c_int,
5589    pub ipcEventSupported: ::core::ffi::c_int,
5590    pub clusterLaunch: ::core::ffi::c_int,
5591    pub unifiedFunctionPointers: ::core::ffi::c_int,
5592    pub reserved2: [::core::ffi::c_int; 2usize],
5593    pub reserved: [::core::ffi::c_int; 61usize],
5594}
5595#[cfg(any(
5596    feature = "cuda-12030",
5597    feature = "cuda-12040",
5598    feature = "cuda-12050",
5599    feature = "cuda-12060"
5600))]
5601#[repr(C)]
5602#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5603pub struct cudaDeviceProp {
5604    pub name: [::core::ffi::c_char; 256usize],
5605    pub uuid: cudaUUID_t,
5606    pub luid: [::core::ffi::c_char; 8usize],
5607    pub luidDeviceNodeMask: ::core::ffi::c_uint,
5608    pub totalGlobalMem: usize,
5609    pub sharedMemPerBlock: usize,
5610    pub regsPerBlock: ::core::ffi::c_int,
5611    pub warpSize: ::core::ffi::c_int,
5612    pub memPitch: usize,
5613    pub maxThreadsPerBlock: ::core::ffi::c_int,
5614    pub maxThreadsDim: [::core::ffi::c_int; 3usize],
5615    pub maxGridSize: [::core::ffi::c_int; 3usize],
5616    pub clockRate: ::core::ffi::c_int,
5617    pub totalConstMem: usize,
5618    pub major: ::core::ffi::c_int,
5619    pub minor: ::core::ffi::c_int,
5620    pub textureAlignment: usize,
5621    pub texturePitchAlignment: usize,
5622    pub deviceOverlap: ::core::ffi::c_int,
5623    pub multiProcessorCount: ::core::ffi::c_int,
5624    pub kernelExecTimeoutEnabled: ::core::ffi::c_int,
5625    pub integrated: ::core::ffi::c_int,
5626    pub canMapHostMemory: ::core::ffi::c_int,
5627    pub computeMode: ::core::ffi::c_int,
5628    pub maxTexture1D: ::core::ffi::c_int,
5629    pub maxTexture1DMipmap: ::core::ffi::c_int,
5630    pub maxTexture1DLinear: ::core::ffi::c_int,
5631    pub maxTexture2D: [::core::ffi::c_int; 2usize],
5632    pub maxTexture2DMipmap: [::core::ffi::c_int; 2usize],
5633    pub maxTexture2DLinear: [::core::ffi::c_int; 3usize],
5634    pub maxTexture2DGather: [::core::ffi::c_int; 2usize],
5635    pub maxTexture3D: [::core::ffi::c_int; 3usize],
5636    pub maxTexture3DAlt: [::core::ffi::c_int; 3usize],
5637    pub maxTextureCubemap: ::core::ffi::c_int,
5638    pub maxTexture1DLayered: [::core::ffi::c_int; 2usize],
5639    pub maxTexture2DLayered: [::core::ffi::c_int; 3usize],
5640    pub maxTextureCubemapLayered: [::core::ffi::c_int; 2usize],
5641    pub maxSurface1D: ::core::ffi::c_int,
5642    pub maxSurface2D: [::core::ffi::c_int; 2usize],
5643    pub maxSurface3D: [::core::ffi::c_int; 3usize],
5644    pub maxSurface1DLayered: [::core::ffi::c_int; 2usize],
5645    pub maxSurface2DLayered: [::core::ffi::c_int; 3usize],
5646    pub maxSurfaceCubemap: ::core::ffi::c_int,
5647    pub maxSurfaceCubemapLayered: [::core::ffi::c_int; 2usize],
5648    pub surfaceAlignment: usize,
5649    pub concurrentKernels: ::core::ffi::c_int,
5650    pub ECCEnabled: ::core::ffi::c_int,
5651    pub pciBusID: ::core::ffi::c_int,
5652    pub pciDeviceID: ::core::ffi::c_int,
5653    pub pciDomainID: ::core::ffi::c_int,
5654    pub tccDriver: ::core::ffi::c_int,
5655    pub asyncEngineCount: ::core::ffi::c_int,
5656    pub unifiedAddressing: ::core::ffi::c_int,
5657    pub memoryClockRate: ::core::ffi::c_int,
5658    pub memoryBusWidth: ::core::ffi::c_int,
5659    pub l2CacheSize: ::core::ffi::c_int,
5660    pub persistingL2CacheMaxSize: ::core::ffi::c_int,
5661    pub maxThreadsPerMultiProcessor: ::core::ffi::c_int,
5662    pub streamPrioritiesSupported: ::core::ffi::c_int,
5663    pub globalL1CacheSupported: ::core::ffi::c_int,
5664    pub localL1CacheSupported: ::core::ffi::c_int,
5665    pub sharedMemPerMultiprocessor: usize,
5666    pub regsPerMultiprocessor: ::core::ffi::c_int,
5667    pub managedMemory: ::core::ffi::c_int,
5668    pub isMultiGpuBoard: ::core::ffi::c_int,
5669    pub multiGpuBoardGroupID: ::core::ffi::c_int,
5670    pub hostNativeAtomicSupported: ::core::ffi::c_int,
5671    pub singleToDoublePrecisionPerfRatio: ::core::ffi::c_int,
5672    pub pageableMemoryAccess: ::core::ffi::c_int,
5673    pub concurrentManagedAccess: ::core::ffi::c_int,
5674    pub computePreemptionSupported: ::core::ffi::c_int,
5675    pub canUseHostPointerForRegisteredMem: ::core::ffi::c_int,
5676    pub cooperativeLaunch: ::core::ffi::c_int,
5677    pub cooperativeMultiDeviceLaunch: ::core::ffi::c_int,
5678    pub sharedMemPerBlockOptin: usize,
5679    pub pageableMemoryAccessUsesHostPageTables: ::core::ffi::c_int,
5680    pub directManagedMemAccessFromHost: ::core::ffi::c_int,
5681    pub maxBlocksPerMultiProcessor: ::core::ffi::c_int,
5682    pub accessPolicyMaxWindowSize: ::core::ffi::c_int,
5683    pub reservedSharedMemPerBlock: usize,
5684    pub hostRegisterSupported: ::core::ffi::c_int,
5685    pub sparseCudaArraySupported: ::core::ffi::c_int,
5686    pub hostRegisterReadOnlySupported: ::core::ffi::c_int,
5687    pub timelineSemaphoreInteropSupported: ::core::ffi::c_int,
5688    pub memoryPoolsSupported: ::core::ffi::c_int,
5689    pub gpuDirectRDMASupported: ::core::ffi::c_int,
5690    pub gpuDirectRDMAFlushWritesOptions: ::core::ffi::c_uint,
5691    pub gpuDirectRDMAWritesOrdering: ::core::ffi::c_int,
5692    pub memoryPoolSupportedHandleTypes: ::core::ffi::c_uint,
5693    pub deferredMappingCudaArraySupported: ::core::ffi::c_int,
5694    pub ipcEventSupported: ::core::ffi::c_int,
5695    pub clusterLaunch: ::core::ffi::c_int,
5696    pub unifiedFunctionPointers: ::core::ffi::c_int,
5697    pub reserved2: [::core::ffi::c_int; 2usize],
5698    pub reserved1: [::core::ffi::c_int; 1usize],
5699    pub reserved: [::core::ffi::c_int; 60usize],
5700}
5701#[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
5702#[repr(C)]
5703#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5704pub struct cudaDeviceProp {
5705    pub name: [::core::ffi::c_char; 256usize],
5706    pub uuid: cudaUUID_t,
5707    pub luid: [::core::ffi::c_char; 8usize],
5708    pub luidDeviceNodeMask: ::core::ffi::c_uint,
5709    pub totalGlobalMem: usize,
5710    pub sharedMemPerBlock: usize,
5711    pub regsPerBlock: ::core::ffi::c_int,
5712    pub warpSize: ::core::ffi::c_int,
5713    pub memPitch: usize,
5714    pub maxThreadsPerBlock: ::core::ffi::c_int,
5715    pub maxThreadsDim: [::core::ffi::c_int; 3usize],
5716    pub maxGridSize: [::core::ffi::c_int; 3usize],
5717    pub clockRate: ::core::ffi::c_int,
5718    pub totalConstMem: usize,
5719    pub major: ::core::ffi::c_int,
5720    pub minor: ::core::ffi::c_int,
5721    pub textureAlignment: usize,
5722    pub texturePitchAlignment: usize,
5723    pub deviceOverlap: ::core::ffi::c_int,
5724    pub multiProcessorCount: ::core::ffi::c_int,
5725    pub kernelExecTimeoutEnabled: ::core::ffi::c_int,
5726    pub integrated: ::core::ffi::c_int,
5727    pub canMapHostMemory: ::core::ffi::c_int,
5728    pub computeMode: ::core::ffi::c_int,
5729    pub maxTexture1D: ::core::ffi::c_int,
5730    pub maxTexture1DMipmap: ::core::ffi::c_int,
5731    pub maxTexture1DLinear: ::core::ffi::c_int,
5732    pub maxTexture2D: [::core::ffi::c_int; 2usize],
5733    pub maxTexture2DMipmap: [::core::ffi::c_int; 2usize],
5734    pub maxTexture2DLinear: [::core::ffi::c_int; 3usize],
5735    pub maxTexture2DGather: [::core::ffi::c_int; 2usize],
5736    pub maxTexture3D: [::core::ffi::c_int; 3usize],
5737    pub maxTexture3DAlt: [::core::ffi::c_int; 3usize],
5738    pub maxTextureCubemap: ::core::ffi::c_int,
5739    pub maxTexture1DLayered: [::core::ffi::c_int; 2usize],
5740    pub maxTexture2DLayered: [::core::ffi::c_int; 3usize],
5741    pub maxTextureCubemapLayered: [::core::ffi::c_int; 2usize],
5742    pub maxSurface1D: ::core::ffi::c_int,
5743    pub maxSurface2D: [::core::ffi::c_int; 2usize],
5744    pub maxSurface3D: [::core::ffi::c_int; 3usize],
5745    pub maxSurface1DLayered: [::core::ffi::c_int; 2usize],
5746    pub maxSurface2DLayered: [::core::ffi::c_int; 3usize],
5747    pub maxSurfaceCubemap: ::core::ffi::c_int,
5748    pub maxSurfaceCubemapLayered: [::core::ffi::c_int; 2usize],
5749    pub surfaceAlignment: usize,
5750    pub concurrentKernels: ::core::ffi::c_int,
5751    pub ECCEnabled: ::core::ffi::c_int,
5752    pub pciBusID: ::core::ffi::c_int,
5753    pub pciDeviceID: ::core::ffi::c_int,
5754    pub pciDomainID: ::core::ffi::c_int,
5755    pub tccDriver: ::core::ffi::c_int,
5756    pub asyncEngineCount: ::core::ffi::c_int,
5757    pub unifiedAddressing: ::core::ffi::c_int,
5758    pub memoryClockRate: ::core::ffi::c_int,
5759    pub memoryBusWidth: ::core::ffi::c_int,
5760    pub l2CacheSize: ::core::ffi::c_int,
5761    pub persistingL2CacheMaxSize: ::core::ffi::c_int,
5762    pub maxThreadsPerMultiProcessor: ::core::ffi::c_int,
5763    pub streamPrioritiesSupported: ::core::ffi::c_int,
5764    pub globalL1CacheSupported: ::core::ffi::c_int,
5765    pub localL1CacheSupported: ::core::ffi::c_int,
5766    pub sharedMemPerMultiprocessor: usize,
5767    pub regsPerMultiprocessor: ::core::ffi::c_int,
5768    pub managedMemory: ::core::ffi::c_int,
5769    pub isMultiGpuBoard: ::core::ffi::c_int,
5770    pub multiGpuBoardGroupID: ::core::ffi::c_int,
5771    pub hostNativeAtomicSupported: ::core::ffi::c_int,
5772    pub singleToDoublePrecisionPerfRatio: ::core::ffi::c_int,
5773    pub pageableMemoryAccess: ::core::ffi::c_int,
5774    pub concurrentManagedAccess: ::core::ffi::c_int,
5775    pub computePreemptionSupported: ::core::ffi::c_int,
5776    pub canUseHostPointerForRegisteredMem: ::core::ffi::c_int,
5777    pub cooperativeLaunch: ::core::ffi::c_int,
5778    pub cooperativeMultiDeviceLaunch: ::core::ffi::c_int,
5779    pub sharedMemPerBlockOptin: usize,
5780    pub pageableMemoryAccessUsesHostPageTables: ::core::ffi::c_int,
5781    pub directManagedMemAccessFromHost: ::core::ffi::c_int,
5782    pub maxBlocksPerMultiProcessor: ::core::ffi::c_int,
5783    pub accessPolicyMaxWindowSize: ::core::ffi::c_int,
5784    pub reservedSharedMemPerBlock: usize,
5785    pub hostRegisterSupported: ::core::ffi::c_int,
5786    pub sparseCudaArraySupported: ::core::ffi::c_int,
5787    pub hostRegisterReadOnlySupported: ::core::ffi::c_int,
5788    pub timelineSemaphoreInteropSupported: ::core::ffi::c_int,
5789    pub memoryPoolsSupported: ::core::ffi::c_int,
5790    pub gpuDirectRDMASupported: ::core::ffi::c_int,
5791    pub gpuDirectRDMAFlushWritesOptions: ::core::ffi::c_uint,
5792    pub gpuDirectRDMAWritesOrdering: ::core::ffi::c_int,
5793    pub memoryPoolSupportedHandleTypes: ::core::ffi::c_uint,
5794    pub deferredMappingCudaArraySupported: ::core::ffi::c_int,
5795    pub ipcEventSupported: ::core::ffi::c_int,
5796    pub clusterLaunch: ::core::ffi::c_int,
5797    pub unifiedFunctionPointers: ::core::ffi::c_int,
5798    pub reserved: [::core::ffi::c_int; 63usize],
5799}
5800#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
5801#[repr(C)]
5802#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5803pub struct cudaDeviceProp {
5804    pub name: [::core::ffi::c_char; 256usize],
5805    pub uuid: cudaUUID_t,
5806    pub luid: [::core::ffi::c_char; 8usize],
5807    pub luidDeviceNodeMask: ::core::ffi::c_uint,
5808    pub totalGlobalMem: usize,
5809    pub sharedMemPerBlock: usize,
5810    pub regsPerBlock: ::core::ffi::c_int,
5811    pub warpSize: ::core::ffi::c_int,
5812    pub memPitch: usize,
5813    pub maxThreadsPerBlock: ::core::ffi::c_int,
5814    pub maxThreadsDim: [::core::ffi::c_int; 3usize],
5815    pub maxGridSize: [::core::ffi::c_int; 3usize],
5816    pub totalConstMem: usize,
5817    pub major: ::core::ffi::c_int,
5818    pub minor: ::core::ffi::c_int,
5819    pub textureAlignment: usize,
5820    pub texturePitchAlignment: usize,
5821    pub multiProcessorCount: ::core::ffi::c_int,
5822    pub integrated: ::core::ffi::c_int,
5823    pub canMapHostMemory: ::core::ffi::c_int,
5824    pub maxTexture1D: ::core::ffi::c_int,
5825    pub maxTexture1DMipmap: ::core::ffi::c_int,
5826    pub maxTexture2D: [::core::ffi::c_int; 2usize],
5827    pub maxTexture2DMipmap: [::core::ffi::c_int; 2usize],
5828    pub maxTexture2DLinear: [::core::ffi::c_int; 3usize],
5829    pub maxTexture2DGather: [::core::ffi::c_int; 2usize],
5830    pub maxTexture3D: [::core::ffi::c_int; 3usize],
5831    pub maxTexture3DAlt: [::core::ffi::c_int; 3usize],
5832    pub maxTextureCubemap: ::core::ffi::c_int,
5833    pub maxTexture1DLayered: [::core::ffi::c_int; 2usize],
5834    pub maxTexture2DLayered: [::core::ffi::c_int; 3usize],
5835    pub maxTextureCubemapLayered: [::core::ffi::c_int; 2usize],
5836    pub maxSurface1D: ::core::ffi::c_int,
5837    pub maxSurface2D: [::core::ffi::c_int; 2usize],
5838    pub maxSurface3D: [::core::ffi::c_int; 3usize],
5839    pub maxSurface1DLayered: [::core::ffi::c_int; 2usize],
5840    pub maxSurface2DLayered: [::core::ffi::c_int; 3usize],
5841    pub maxSurfaceCubemap: ::core::ffi::c_int,
5842    pub maxSurfaceCubemapLayered: [::core::ffi::c_int; 2usize],
5843    pub surfaceAlignment: usize,
5844    pub concurrentKernels: ::core::ffi::c_int,
5845    pub ECCEnabled: ::core::ffi::c_int,
5846    pub pciBusID: ::core::ffi::c_int,
5847    pub pciDeviceID: ::core::ffi::c_int,
5848    pub pciDomainID: ::core::ffi::c_int,
5849    pub tccDriver: ::core::ffi::c_int,
5850    pub asyncEngineCount: ::core::ffi::c_int,
5851    pub unifiedAddressing: ::core::ffi::c_int,
5852    pub memoryBusWidth: ::core::ffi::c_int,
5853    pub l2CacheSize: ::core::ffi::c_int,
5854    pub persistingL2CacheMaxSize: ::core::ffi::c_int,
5855    pub maxThreadsPerMultiProcessor: ::core::ffi::c_int,
5856    pub streamPrioritiesSupported: ::core::ffi::c_int,
5857    pub globalL1CacheSupported: ::core::ffi::c_int,
5858    pub localL1CacheSupported: ::core::ffi::c_int,
5859    pub sharedMemPerMultiprocessor: usize,
5860    pub regsPerMultiprocessor: ::core::ffi::c_int,
5861    pub managedMemory: ::core::ffi::c_int,
5862    pub isMultiGpuBoard: ::core::ffi::c_int,
5863    pub multiGpuBoardGroupID: ::core::ffi::c_int,
5864    pub hostNativeAtomicSupported: ::core::ffi::c_int,
5865    pub pageableMemoryAccess: ::core::ffi::c_int,
5866    pub concurrentManagedAccess: ::core::ffi::c_int,
5867    pub computePreemptionSupported: ::core::ffi::c_int,
5868    pub canUseHostPointerForRegisteredMem: ::core::ffi::c_int,
5869    pub cooperativeLaunch: ::core::ffi::c_int,
5870    pub sharedMemPerBlockOptin: usize,
5871    pub pageableMemoryAccessUsesHostPageTables: ::core::ffi::c_int,
5872    pub directManagedMemAccessFromHost: ::core::ffi::c_int,
5873    pub maxBlocksPerMultiProcessor: ::core::ffi::c_int,
5874    pub accessPolicyMaxWindowSize: ::core::ffi::c_int,
5875    pub reservedSharedMemPerBlock: usize,
5876    pub hostRegisterSupported: ::core::ffi::c_int,
5877    pub sparseCudaArraySupported: ::core::ffi::c_int,
5878    pub hostRegisterReadOnlySupported: ::core::ffi::c_int,
5879    pub timelineSemaphoreInteropSupported: ::core::ffi::c_int,
5880    pub memoryPoolsSupported: ::core::ffi::c_int,
5881    pub gpuDirectRDMASupported: ::core::ffi::c_int,
5882    pub gpuDirectRDMAFlushWritesOptions: ::core::ffi::c_uint,
5883    pub gpuDirectRDMAWritesOrdering: ::core::ffi::c_int,
5884    pub memoryPoolSupportedHandleTypes: ::core::ffi::c_uint,
5885    pub deferredMappingCudaArraySupported: ::core::ffi::c_int,
5886    pub ipcEventSupported: ::core::ffi::c_int,
5887    pub clusterLaunch: ::core::ffi::c_int,
5888    pub unifiedFunctionPointers: ::core::ffi::c_int,
5889    pub deviceNumaConfig: ::core::ffi::c_int,
5890    pub deviceNumaId: ::core::ffi::c_int,
5891    pub mpsEnabled: ::core::ffi::c_int,
5892    pub hostNumaId: ::core::ffi::c_int,
5893    pub gpuPciDeviceID: ::core::ffi::c_uint,
5894    pub gpuPciSubsystemID: ::core::ffi::c_uint,
5895    pub hostNumaMultinodeIpcSupported: ::core::ffi::c_int,
5896    pub reserved: [::core::ffi::c_int; 56usize],
5897}
5898#[cfg(any(
5899    feature = "cuda-12020",
5900    feature = "cuda-12030",
5901    feature = "cuda-12040",
5902    feature = "cuda-12050",
5903    feature = "cuda-12060",
5904    feature = "cuda-12080",
5905    feature = "cuda-12090",
5906    feature = "cuda-13000",
5907    feature = "cuda-13010",
5908    feature = "cuda-13020"
5909))]
5910#[repr(C)]
5911#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5912pub struct cudaEventRecordNodeParams {
5913    pub event: cudaEvent_t,
5914}
5915#[cfg(any(
5916    feature = "cuda-12020",
5917    feature = "cuda-12030",
5918    feature = "cuda-12040",
5919    feature = "cuda-12050",
5920    feature = "cuda-12060",
5921    feature = "cuda-12080",
5922    feature = "cuda-12090",
5923    feature = "cuda-13000",
5924    feature = "cuda-13010",
5925    feature = "cuda-13020"
5926))]
5927#[repr(C)]
5928#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5929pub struct cudaEventWaitNodeParams {
5930    pub event: cudaEvent_t,
5931}
5932#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
5933#[repr(C)]
5934#[derive(Debug, Copy, Clone)]
5935pub struct cudaExecutionContext_st {
5936    _unused: [u8; 0],
5937}
5938#[repr(C)]
5939#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5940pub struct cudaExtent {
5941    pub width: usize,
5942    pub height: usize,
5943    pub depth: usize,
5944}
5945#[cfg(any(
5946    feature = "cuda-11040",
5947    feature = "cuda-11050",
5948    feature = "cuda-11060",
5949    feature = "cuda-11070",
5950    feature = "cuda-11080",
5951    feature = "cuda-12000",
5952    feature = "cuda-12010",
5953    feature = "cuda-12020",
5954    feature = "cuda-12030",
5955    feature = "cuda-12040",
5956    feature = "cuda-12050",
5957    feature = "cuda-12060",
5958    feature = "cuda-12080",
5959    feature = "cuda-12090"
5960))]
5961#[repr(C)]
5962#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5963pub struct cudaExternalMemoryBufferDesc {
5964    pub offset: ::core::ffi::c_ulonglong,
5965    pub size: ::core::ffi::c_ulonglong,
5966    pub flags: ::core::ffi::c_uint,
5967}
5968#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
5969#[repr(C)]
5970#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
5971pub struct cudaExternalMemoryBufferDesc {
5972    pub offset: ::core::ffi::c_ulonglong,
5973    pub size: ::core::ffi::c_ulonglong,
5974    pub flags: ::core::ffi::c_uint,
5975    pub reserved: [::core::ffi::c_uint; 16usize],
5976}
5977#[cfg(any(
5978    feature = "cuda-11040",
5979    feature = "cuda-11050",
5980    feature = "cuda-11060",
5981    feature = "cuda-11070",
5982    feature = "cuda-11080",
5983    feature = "cuda-12000",
5984    feature = "cuda-12010",
5985    feature = "cuda-12020",
5986    feature = "cuda-12030",
5987    feature = "cuda-12040",
5988    feature = "cuda-12050",
5989    feature = "cuda-12060",
5990    feature = "cuda-12080",
5991    feature = "cuda-12090"
5992))]
5993#[repr(C)]
5994#[derive(Copy, Clone)]
5995pub struct cudaExternalMemoryHandleDesc {
5996    pub type_: cudaExternalMemoryHandleType,
5997    pub handle: cudaExternalMemoryHandleDesc__bindgen_ty_1,
5998    pub size: ::core::ffi::c_ulonglong,
5999    pub flags: ::core::ffi::c_uint,
6000}
6001#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
6002#[repr(C)]
6003#[derive(Copy, Clone)]
6004pub struct cudaExternalMemoryHandleDesc {
6005    pub type_: cudaExternalMemoryHandleType,
6006    pub handle: cudaExternalMemoryHandleDesc__bindgen_ty_1,
6007    pub size: ::core::ffi::c_ulonglong,
6008    pub flags: ::core::ffi::c_uint,
6009    pub reserved: [::core::ffi::c_uint; 16usize],
6010}
6011#[repr(C)]
6012#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6013pub struct cudaExternalMemoryHandleDesc__bindgen_ty_1__bindgen_ty_1 {
6014    pub handle: *mut ::core::ffi::c_void,
6015    pub name: *const ::core::ffi::c_void,
6016}
6017#[cfg(any(
6018    feature = "cuda-11040",
6019    feature = "cuda-11050",
6020    feature = "cuda-11060",
6021    feature = "cuda-11070",
6022    feature = "cuda-11080",
6023    feature = "cuda-12000",
6024    feature = "cuda-12010",
6025    feature = "cuda-12020",
6026    feature = "cuda-12030",
6027    feature = "cuda-12040",
6028    feature = "cuda-12050",
6029    feature = "cuda-12060",
6030    feature = "cuda-12080",
6031    feature = "cuda-12090"
6032))]
6033#[repr(C)]
6034#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6035pub struct cudaExternalMemoryMipmappedArrayDesc {
6036    pub offset: ::core::ffi::c_ulonglong,
6037    pub formatDesc: cudaChannelFormatDesc,
6038    pub extent: cudaExtent,
6039    pub flags: ::core::ffi::c_uint,
6040    pub numLevels: ::core::ffi::c_uint,
6041}
6042#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
6043#[repr(C)]
6044#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6045pub struct cudaExternalMemoryMipmappedArrayDesc {
6046    pub offset: ::core::ffi::c_ulonglong,
6047    pub formatDesc: cudaChannelFormatDesc,
6048    pub extent: cudaExtent,
6049    pub flags: ::core::ffi::c_uint,
6050    pub numLevels: ::core::ffi::c_uint,
6051    pub reserved: [::core::ffi::c_uint; 16usize],
6052}
6053#[cfg(any(
6054    feature = "cuda-11040",
6055    feature = "cuda-11050",
6056    feature = "cuda-11060",
6057    feature = "cuda-11070",
6058    feature = "cuda-11080",
6059    feature = "cuda-12000",
6060    feature = "cuda-12010",
6061    feature = "cuda-12020",
6062    feature = "cuda-12030",
6063    feature = "cuda-12040",
6064    feature = "cuda-12050",
6065    feature = "cuda-12060",
6066    feature = "cuda-12080",
6067    feature = "cuda-12090"
6068))]
6069#[repr(C)]
6070#[derive(Copy, Clone)]
6071pub struct cudaExternalSemaphoreHandleDesc {
6072    pub type_: cudaExternalSemaphoreHandleType,
6073    pub handle: cudaExternalSemaphoreHandleDesc__bindgen_ty_1,
6074    pub flags: ::core::ffi::c_uint,
6075}
6076#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
6077#[repr(C)]
6078#[derive(Copy, Clone)]
6079pub struct cudaExternalSemaphoreHandleDesc {
6080    pub type_: cudaExternalSemaphoreHandleType,
6081    pub handle: cudaExternalSemaphoreHandleDesc__bindgen_ty_1,
6082    pub flags: ::core::ffi::c_uint,
6083    pub reserved: [::core::ffi::c_uint; 16usize],
6084}
6085#[repr(C)]
6086#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6087pub struct cudaExternalSemaphoreHandleDesc__bindgen_ty_1__bindgen_ty_1 {
6088    pub handle: *mut ::core::ffi::c_void,
6089    pub name: *const ::core::ffi::c_void,
6090}
6091#[repr(C)]
6092#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6093pub struct cudaExternalSemaphoreSignalNodeParams {
6094    pub extSemArray: *mut cudaExternalSemaphore_t,
6095    pub paramsArray: *const cudaExternalSemaphoreSignalParams,
6096    pub numExtSems: ::core::ffi::c_uint,
6097}
6098#[cfg(any(
6099    feature = "cuda-12020",
6100    feature = "cuda-12030",
6101    feature = "cuda-12040",
6102    feature = "cuda-12050",
6103    feature = "cuda-12060",
6104    feature = "cuda-12080",
6105    feature = "cuda-12090",
6106    feature = "cuda-13000",
6107    feature = "cuda-13010",
6108    feature = "cuda-13020"
6109))]
6110#[repr(C)]
6111#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6112pub struct cudaExternalSemaphoreSignalNodeParamsV2 {
6113    pub extSemArray: *mut cudaExternalSemaphore_t,
6114    pub paramsArray: *const cudaExternalSemaphoreSignalParams,
6115    pub numExtSems: ::core::ffi::c_uint,
6116}
6117#[repr(C)]
6118#[derive(Copy, Clone)]
6119pub struct cudaExternalSemaphoreSignalParams {
6120    pub params: cudaExternalSemaphoreSignalParams__bindgen_ty_1,
6121    pub flags: ::core::ffi::c_uint,
6122    pub reserved: [::core::ffi::c_uint; 16usize],
6123}
6124#[repr(C)]
6125#[derive(Copy, Clone)]
6126pub struct cudaExternalSemaphoreSignalParams__bindgen_ty_1 {
6127    pub fence: cudaExternalSemaphoreSignalParams__bindgen_ty_1__bindgen_ty_1,
6128    pub nvSciSync: cudaExternalSemaphoreSignalParams__bindgen_ty_1__bindgen_ty_2,
6129    pub keyedMutex: cudaExternalSemaphoreSignalParams__bindgen_ty_1__bindgen_ty_3,
6130    pub reserved: [::core::ffi::c_uint; 12usize],
6131}
6132#[repr(C)]
6133#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6134pub struct cudaExternalSemaphoreSignalParams__bindgen_ty_1__bindgen_ty_1 {
6135    pub value: ::core::ffi::c_ulonglong,
6136}
6137#[repr(C)]
6138#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6139pub struct cudaExternalSemaphoreSignalParams__bindgen_ty_1__bindgen_ty_3 {
6140    pub key: ::core::ffi::c_ulonglong,
6141}
6142#[cfg(any(
6143    feature = "cuda-11050",
6144    feature = "cuda-11060",
6145    feature = "cuda-11070",
6146    feature = "cuda-11080",
6147    feature = "cuda-12000",
6148    feature = "cuda-12010",
6149    feature = "cuda-12020",
6150    feature = "cuda-12030",
6151    feature = "cuda-12040",
6152    feature = "cuda-12050",
6153    feature = "cuda-12060",
6154    feature = "cuda-12080",
6155    feature = "cuda-12090"
6156))]
6157#[repr(C)]
6158#[derive(Copy, Clone)]
6159pub struct cudaExternalSemaphoreSignalParams_v1 {
6160    pub params: cudaExternalSemaphoreSignalParams_v1__bindgen_ty_1,
6161    pub flags: ::core::ffi::c_uint,
6162}
6163#[cfg(any(
6164    feature = "cuda-11050",
6165    feature = "cuda-11060",
6166    feature = "cuda-11070",
6167    feature = "cuda-11080",
6168    feature = "cuda-12000",
6169    feature = "cuda-12010",
6170    feature = "cuda-12020",
6171    feature = "cuda-12030",
6172    feature = "cuda-12040",
6173    feature = "cuda-12050",
6174    feature = "cuda-12060",
6175    feature = "cuda-12080",
6176    feature = "cuda-12090"
6177))]
6178#[repr(C)]
6179#[derive(Copy, Clone)]
6180pub struct cudaExternalSemaphoreSignalParams_v1__bindgen_ty_1 {
6181    pub fence: cudaExternalSemaphoreSignalParams_v1__bindgen_ty_1__bindgen_ty_1,
6182    pub nvSciSync: cudaExternalSemaphoreSignalParams_v1__bindgen_ty_1__bindgen_ty_2,
6183    pub keyedMutex: cudaExternalSemaphoreSignalParams_v1__bindgen_ty_1__bindgen_ty_3,
6184}
6185#[cfg(any(
6186    feature = "cuda-11050",
6187    feature = "cuda-11060",
6188    feature = "cuda-11070",
6189    feature = "cuda-11080",
6190    feature = "cuda-12000",
6191    feature = "cuda-12010",
6192    feature = "cuda-12020",
6193    feature = "cuda-12030",
6194    feature = "cuda-12040",
6195    feature = "cuda-12050",
6196    feature = "cuda-12060",
6197    feature = "cuda-12080",
6198    feature = "cuda-12090"
6199))]
6200#[repr(C)]
6201#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6202pub struct cudaExternalSemaphoreSignalParams_v1__bindgen_ty_1__bindgen_ty_1 {
6203    pub value: ::core::ffi::c_ulonglong,
6204}
6205#[cfg(any(
6206    feature = "cuda-11050",
6207    feature = "cuda-11060",
6208    feature = "cuda-11070",
6209    feature = "cuda-11080",
6210    feature = "cuda-12000",
6211    feature = "cuda-12010",
6212    feature = "cuda-12020",
6213    feature = "cuda-12030",
6214    feature = "cuda-12040",
6215    feature = "cuda-12050",
6216    feature = "cuda-12060",
6217    feature = "cuda-12080",
6218    feature = "cuda-12090"
6219))]
6220#[repr(C)]
6221#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6222pub struct cudaExternalSemaphoreSignalParams_v1__bindgen_ty_1__bindgen_ty_3 {
6223    pub key: ::core::ffi::c_ulonglong,
6224}
6225#[repr(C)]
6226#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6227pub struct cudaExternalSemaphoreWaitNodeParams {
6228    pub extSemArray: *mut cudaExternalSemaphore_t,
6229    pub paramsArray: *const cudaExternalSemaphoreWaitParams,
6230    pub numExtSems: ::core::ffi::c_uint,
6231}
6232#[cfg(any(
6233    feature = "cuda-12020",
6234    feature = "cuda-12030",
6235    feature = "cuda-12040",
6236    feature = "cuda-12050",
6237    feature = "cuda-12060",
6238    feature = "cuda-12080",
6239    feature = "cuda-12090",
6240    feature = "cuda-13000",
6241    feature = "cuda-13010",
6242    feature = "cuda-13020"
6243))]
6244#[repr(C)]
6245#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6246pub struct cudaExternalSemaphoreWaitNodeParamsV2 {
6247    pub extSemArray: *mut cudaExternalSemaphore_t,
6248    pub paramsArray: *const cudaExternalSemaphoreWaitParams,
6249    pub numExtSems: ::core::ffi::c_uint,
6250}
6251#[repr(C)]
6252#[derive(Copy, Clone)]
6253pub struct cudaExternalSemaphoreWaitParams {
6254    pub params: cudaExternalSemaphoreWaitParams__bindgen_ty_1,
6255    pub flags: ::core::ffi::c_uint,
6256    pub reserved: [::core::ffi::c_uint; 16usize],
6257}
6258#[repr(C)]
6259#[derive(Copy, Clone)]
6260pub struct cudaExternalSemaphoreWaitParams__bindgen_ty_1 {
6261    pub fence: cudaExternalSemaphoreWaitParams__bindgen_ty_1__bindgen_ty_1,
6262    pub nvSciSync: cudaExternalSemaphoreWaitParams__bindgen_ty_1__bindgen_ty_2,
6263    pub keyedMutex: cudaExternalSemaphoreWaitParams__bindgen_ty_1__bindgen_ty_3,
6264    pub reserved: [::core::ffi::c_uint; 10usize],
6265}
6266#[repr(C)]
6267#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6268pub struct cudaExternalSemaphoreWaitParams__bindgen_ty_1__bindgen_ty_1 {
6269    pub value: ::core::ffi::c_ulonglong,
6270}
6271#[repr(C)]
6272#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6273pub struct cudaExternalSemaphoreWaitParams__bindgen_ty_1__bindgen_ty_3 {
6274    pub key: ::core::ffi::c_ulonglong,
6275    pub timeoutMs: ::core::ffi::c_uint,
6276}
6277#[cfg(any(
6278    feature = "cuda-11050",
6279    feature = "cuda-11060",
6280    feature = "cuda-11070",
6281    feature = "cuda-11080",
6282    feature = "cuda-12000",
6283    feature = "cuda-12010",
6284    feature = "cuda-12020",
6285    feature = "cuda-12030",
6286    feature = "cuda-12040",
6287    feature = "cuda-12050",
6288    feature = "cuda-12060",
6289    feature = "cuda-12080",
6290    feature = "cuda-12090"
6291))]
6292#[repr(C)]
6293#[derive(Copy, Clone)]
6294pub struct cudaExternalSemaphoreWaitParams_v1 {
6295    pub params: cudaExternalSemaphoreWaitParams_v1__bindgen_ty_1,
6296    pub flags: ::core::ffi::c_uint,
6297}
6298#[cfg(any(
6299    feature = "cuda-11050",
6300    feature = "cuda-11060",
6301    feature = "cuda-11070",
6302    feature = "cuda-11080",
6303    feature = "cuda-12000",
6304    feature = "cuda-12010",
6305    feature = "cuda-12020",
6306    feature = "cuda-12030",
6307    feature = "cuda-12040",
6308    feature = "cuda-12050",
6309    feature = "cuda-12060",
6310    feature = "cuda-12080",
6311    feature = "cuda-12090"
6312))]
6313#[repr(C)]
6314#[derive(Copy, Clone)]
6315pub struct cudaExternalSemaphoreWaitParams_v1__bindgen_ty_1 {
6316    pub fence: cudaExternalSemaphoreWaitParams_v1__bindgen_ty_1__bindgen_ty_1,
6317    pub nvSciSync: cudaExternalSemaphoreWaitParams_v1__bindgen_ty_1__bindgen_ty_2,
6318    pub keyedMutex: cudaExternalSemaphoreWaitParams_v1__bindgen_ty_1__bindgen_ty_3,
6319}
6320#[cfg(any(
6321    feature = "cuda-11050",
6322    feature = "cuda-11060",
6323    feature = "cuda-11070",
6324    feature = "cuda-11080",
6325    feature = "cuda-12000",
6326    feature = "cuda-12010",
6327    feature = "cuda-12020",
6328    feature = "cuda-12030",
6329    feature = "cuda-12040",
6330    feature = "cuda-12050",
6331    feature = "cuda-12060",
6332    feature = "cuda-12080",
6333    feature = "cuda-12090"
6334))]
6335#[repr(C)]
6336#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6337pub struct cudaExternalSemaphoreWaitParams_v1__bindgen_ty_1__bindgen_ty_1 {
6338    pub value: ::core::ffi::c_ulonglong,
6339}
6340#[cfg(any(
6341    feature = "cuda-11050",
6342    feature = "cuda-11060",
6343    feature = "cuda-11070",
6344    feature = "cuda-11080",
6345    feature = "cuda-12000",
6346    feature = "cuda-12010",
6347    feature = "cuda-12020",
6348    feature = "cuda-12030",
6349    feature = "cuda-12040",
6350    feature = "cuda-12050",
6351    feature = "cuda-12060",
6352    feature = "cuda-12080",
6353    feature = "cuda-12090"
6354))]
6355#[repr(C)]
6356#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6357pub struct cudaExternalSemaphoreWaitParams_v1__bindgen_ty_1__bindgen_ty_3 {
6358    pub key: ::core::ffi::c_ulonglong,
6359    pub timeoutMs: ::core::ffi::c_uint,
6360}
6361#[cfg(any(
6362    feature = "cuda-11040",
6363    feature = "cuda-11050",
6364    feature = "cuda-11060",
6365    feature = "cuda-11070",
6366    feature = "cuda-11080"
6367))]
6368#[repr(C)]
6369#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6370pub struct cudaFuncAttributes {
6371    pub sharedSizeBytes: usize,
6372    pub constSizeBytes: usize,
6373    pub localSizeBytes: usize,
6374    pub maxThreadsPerBlock: ::core::ffi::c_int,
6375    pub numRegs: ::core::ffi::c_int,
6376    pub ptxVersion: ::core::ffi::c_int,
6377    pub binaryVersion: ::core::ffi::c_int,
6378    pub cacheModeCA: ::core::ffi::c_int,
6379    pub maxDynamicSharedSizeBytes: ::core::ffi::c_int,
6380    pub preferredShmemCarveout: ::core::ffi::c_int,
6381}
6382#[cfg(any(
6383    feature = "cuda-12000",
6384    feature = "cuda-12010",
6385    feature = "cuda-12020",
6386    feature = "cuda-12030",
6387    feature = "cuda-12040",
6388    feature = "cuda-12050",
6389    feature = "cuda-12060",
6390    feature = "cuda-12080",
6391    feature = "cuda-12090",
6392    feature = "cuda-13000",
6393    feature = "cuda-13010"
6394))]
6395#[repr(C)]
6396#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6397pub struct cudaFuncAttributes {
6398    pub sharedSizeBytes: usize,
6399    pub constSizeBytes: usize,
6400    pub localSizeBytes: usize,
6401    pub maxThreadsPerBlock: ::core::ffi::c_int,
6402    pub numRegs: ::core::ffi::c_int,
6403    pub ptxVersion: ::core::ffi::c_int,
6404    pub binaryVersion: ::core::ffi::c_int,
6405    pub cacheModeCA: ::core::ffi::c_int,
6406    pub maxDynamicSharedSizeBytes: ::core::ffi::c_int,
6407    pub preferredShmemCarveout: ::core::ffi::c_int,
6408    pub clusterDimMustBeSet: ::core::ffi::c_int,
6409    pub requiredClusterWidth: ::core::ffi::c_int,
6410    pub requiredClusterHeight: ::core::ffi::c_int,
6411    pub requiredClusterDepth: ::core::ffi::c_int,
6412    pub clusterSchedulingPolicyPreference: ::core::ffi::c_int,
6413    pub nonPortableClusterSizeAllowed: ::core::ffi::c_int,
6414    pub reserved: [::core::ffi::c_int; 16usize],
6415}
6416#[cfg(any(feature = "cuda-13020"))]
6417#[repr(C)]
6418#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6419pub struct cudaFuncAttributes {
6420    pub sharedSizeBytes: usize,
6421    pub constSizeBytes: usize,
6422    pub localSizeBytes: usize,
6423    pub maxThreadsPerBlock: ::core::ffi::c_int,
6424    pub numRegs: ::core::ffi::c_int,
6425    pub ptxVersion: ::core::ffi::c_int,
6426    pub binaryVersion: ::core::ffi::c_int,
6427    pub cacheModeCA: ::core::ffi::c_int,
6428    pub maxDynamicSharedSizeBytes: ::core::ffi::c_int,
6429    pub preferredShmemCarveout: ::core::ffi::c_int,
6430    pub clusterDimMustBeSet: ::core::ffi::c_int,
6431    pub requiredClusterWidth: ::core::ffi::c_int,
6432    pub requiredClusterHeight: ::core::ffi::c_int,
6433    pub requiredClusterDepth: ::core::ffi::c_int,
6434    pub clusterSchedulingPolicyPreference: ::core::ffi::c_int,
6435    pub nonPortableClusterSizeAllowed: ::core::ffi::c_int,
6436    pub reserved0: ::core::ffi::c_int,
6437    pub reserved: [::core::ffi::c_int; 15usize],
6438}
6439#[cfg(any(
6440    feature = "cuda-12030",
6441    feature = "cuda-12040",
6442    feature = "cuda-12050",
6443    feature = "cuda-12060",
6444    feature = "cuda-12080",
6445    feature = "cuda-12090",
6446    feature = "cuda-13000",
6447    feature = "cuda-13010",
6448    feature = "cuda-13020"
6449))]
6450#[repr(C)]
6451#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6452pub struct cudaGraphEdgeData_st {
6453    pub from_port: ::core::ffi::c_uchar,
6454    pub to_port: ::core::ffi::c_uchar,
6455    pub type_: ::core::ffi::c_uchar,
6456    pub reserved: [::core::ffi::c_uchar; 5usize],
6457}
6458#[cfg(any(
6459    feature = "cuda-12000",
6460    feature = "cuda-12010",
6461    feature = "cuda-12020",
6462    feature = "cuda-12030",
6463    feature = "cuda-12040",
6464    feature = "cuda-12050",
6465    feature = "cuda-12060",
6466    feature = "cuda-12080",
6467    feature = "cuda-12090",
6468    feature = "cuda-13000",
6469    feature = "cuda-13010",
6470    feature = "cuda-13020"
6471))]
6472#[repr(C)]
6473#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6474pub struct cudaGraphExecUpdateResultInfo_st {
6475    pub result: cudaGraphExecUpdateResult,
6476    pub errorNode: cudaGraphNode_t,
6477    pub errorFromNode: cudaGraphNode_t,
6478}
6479#[cfg(any(
6480    feature = "cuda-12000",
6481    feature = "cuda-12010",
6482    feature = "cuda-12020",
6483    feature = "cuda-12030",
6484    feature = "cuda-12040",
6485    feature = "cuda-12050",
6486    feature = "cuda-12060",
6487    feature = "cuda-12080",
6488    feature = "cuda-12090",
6489    feature = "cuda-13000",
6490    feature = "cuda-13010",
6491    feature = "cuda-13020"
6492))]
6493#[repr(C)]
6494#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6495pub struct cudaGraphInstantiateParams_st {
6496    pub flags: ::core::ffi::c_ulonglong,
6497    pub uploadStream: cudaStream_t,
6498    pub errNode_out: cudaGraphNode_t,
6499    pub result_out: cudaGraphInstantiateResult,
6500}
6501#[cfg(any(
6502    feature = "cuda-12040",
6503    feature = "cuda-12050",
6504    feature = "cuda-12060",
6505    feature = "cuda-12080",
6506    feature = "cuda-12090",
6507    feature = "cuda-13000",
6508    feature = "cuda-13010",
6509    feature = "cuda-13020"
6510))]
6511#[repr(C)]
6512#[derive(Copy, Clone)]
6513pub struct cudaGraphKernelNodeUpdate {
6514    pub node: cudaGraphDeviceNode_t,
6515    pub field: cudaGraphKernelNodeField,
6516    pub updateData: cudaGraphKernelNodeUpdate__bindgen_ty_1,
6517}
6518#[cfg(any(
6519    feature = "cuda-12040",
6520    feature = "cuda-12050",
6521    feature = "cuda-12060",
6522    feature = "cuda-12080",
6523    feature = "cuda-12090",
6524    feature = "cuda-13000",
6525    feature = "cuda-13010",
6526    feature = "cuda-13020"
6527))]
6528#[repr(C)]
6529#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6530pub struct cudaGraphKernelNodeUpdate__bindgen_ty_1__bindgen_ty_1 {
6531    pub pValue: *const ::core::ffi::c_void,
6532    pub offset: usize,
6533    pub size: usize,
6534}
6535#[cfg(any(
6536    feature = "cuda-12020",
6537    feature = "cuda-12030",
6538    feature = "cuda-12040",
6539    feature = "cuda-12050",
6540    feature = "cuda-12060",
6541    feature = "cuda-12080",
6542    feature = "cuda-12090",
6543    feature = "cuda-13000",
6544    feature = "cuda-13010",
6545    feature = "cuda-13020"
6546))]
6547#[repr(C)]
6548#[derive(Copy, Clone)]
6549pub struct cudaGraphNodeParams {
6550    pub type_: cudaGraphNodeType,
6551    pub reserved0: [::core::ffi::c_int; 3usize],
6552    pub __bindgen_anon_1: cudaGraphNodeParams__bindgen_ty_1,
6553    pub reserved2: ::core::ffi::c_longlong,
6554}
6555#[repr(C)]
6556#[derive(Debug, Copy, Clone)]
6557pub struct cudaGraphicsResource {
6558    _unused: [u8; 0],
6559}
6560#[repr(C)]
6561#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6562pub struct cudaHostNodeParams {
6563    pub fn_: cudaHostFn_t,
6564    pub userData: *mut ::core::ffi::c_void,
6565}
6566#[cfg(any(
6567    feature = "cuda-12020",
6568    feature = "cuda-12030",
6569    feature = "cuda-12040",
6570    feature = "cuda-12050",
6571    feature = "cuda-12060",
6572    feature = "cuda-12080",
6573    feature = "cuda-12090",
6574    feature = "cuda-13000",
6575    feature = "cuda-13010"
6576))]
6577#[repr(C)]
6578#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6579pub struct cudaHostNodeParamsV2 {
6580    pub fn_: cudaHostFn_t,
6581    pub userData: *mut ::core::ffi::c_void,
6582}
6583#[cfg(any(feature = "cuda-13020"))]
6584#[repr(C)]
6585#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6586pub struct cudaHostNodeParamsV2 {
6587    pub fn_: cudaHostFn_t,
6588    pub userData: *mut ::core::ffi::c_void,
6589    pub syncMode: ::core::ffi::c_uint,
6590}
6591#[repr(C)]
6592#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6593pub struct cudaIpcEventHandle_st {
6594    pub reserved: [::core::ffi::c_char; 64usize],
6595}
6596#[repr(C)]
6597#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6598pub struct cudaIpcMemHandle_st {
6599    pub reserved: [::core::ffi::c_char; 64usize],
6600}
6601#[repr(C)]
6602#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6603pub struct cudaKernelNodeParams {
6604    pub func: *mut ::core::ffi::c_void,
6605    pub gridDim: dim3,
6606    pub blockDim: dim3,
6607    pub sharedMemBytes: ::core::ffi::c_uint,
6608    pub kernelParams: *mut *mut ::core::ffi::c_void,
6609    pub extra: *mut *mut ::core::ffi::c_void,
6610}
6611#[cfg(any(
6612    feature = "cuda-12020",
6613    feature = "cuda-12030",
6614    feature = "cuda-12040",
6615    feature = "cuda-12050",
6616    feature = "cuda-12060",
6617    feature = "cuda-12080",
6618    feature = "cuda-12090",
6619    feature = "cuda-13000"
6620))]
6621#[repr(C)]
6622#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6623pub struct cudaKernelNodeParamsV2 {
6624    pub func: *mut ::core::ffi::c_void,
6625    pub gridDim: dim3,
6626    pub blockDim: dim3,
6627    pub sharedMemBytes: ::core::ffi::c_uint,
6628    pub kernelParams: *mut *mut ::core::ffi::c_void,
6629    pub extra: *mut *mut ::core::ffi::c_void,
6630}
6631#[cfg(any(feature = "cuda-13010"))]
6632#[repr(C)]
6633#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6634pub struct cudaKernelNodeParamsV2 {
6635    pub func: *mut ::core::ffi::c_void,
6636    pub gridDim: dim3,
6637    pub blockDim: dim3,
6638    pub sharedMemBytes: ::core::ffi::c_uint,
6639    pub kernelParams: *mut *mut ::core::ffi::c_void,
6640    pub extra: *mut *mut ::core::ffi::c_void,
6641    pub ctx: cudaExecutionContext_t,
6642}
6643#[cfg(any(feature = "cuda-13020"))]
6644#[repr(C)]
6645#[derive(Copy, Clone)]
6646pub struct cudaKernelNodeParamsV2 {
6647    pub __bindgen_anon_1: cudaKernelNodeParamsV2__bindgen_ty_1,
6648    pub gridDim: dim3,
6649    pub blockDim: dim3,
6650    pub sharedMemBytes: ::core::ffi::c_uint,
6651    pub kernelParams: *mut *mut ::core::ffi::c_void,
6652    pub extra: *mut *mut ::core::ffi::c_void,
6653    pub ctx: cudaExecutionContext_t,
6654    pub functionType: cudaKernelFunctionType,
6655}
6656#[cfg(any(
6657    feature = "cuda-11080",
6658    feature = "cuda-12000",
6659    feature = "cuda-12010",
6660    feature = "cuda-12020",
6661    feature = "cuda-12030",
6662    feature = "cuda-12040",
6663    feature = "cuda-12050",
6664    feature = "cuda-12060",
6665    feature = "cuda-12080",
6666    feature = "cuda-12090",
6667    feature = "cuda-13000",
6668    feature = "cuda-13010",
6669    feature = "cuda-13020"
6670))]
6671#[repr(C)]
6672#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6673pub struct cudaLaunchAttributeValue__bindgen_ty_1 {
6674    pub x: ::core::ffi::c_uint,
6675    pub y: ::core::ffi::c_uint,
6676    pub z: ::core::ffi::c_uint,
6677}
6678#[cfg(any(
6679    feature = "cuda-11080",
6680    feature = "cuda-12000",
6681    feature = "cuda-12010",
6682    feature = "cuda-12020",
6683    feature = "cuda-12030",
6684    feature = "cuda-12040",
6685    feature = "cuda-12050",
6686    feature = "cuda-12060",
6687    feature = "cuda-12080",
6688    feature = "cuda-12090",
6689    feature = "cuda-13000",
6690    feature = "cuda-13010",
6691    feature = "cuda-13020"
6692))]
6693#[repr(C)]
6694#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6695pub struct cudaLaunchAttributeValue__bindgen_ty_2 {
6696    pub event: cudaEvent_t,
6697    pub flags: ::core::ffi::c_int,
6698    pub triggerAtBlockStart: ::core::ffi::c_int,
6699}
6700#[cfg(any(
6701    feature = "cuda-12030",
6702    feature = "cuda-12040",
6703    feature = "cuda-12050",
6704    feature = "cuda-12060"
6705))]
6706#[repr(C)]
6707#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6708pub struct cudaLaunchAttributeValue__bindgen_ty_3 {
6709    pub event: cudaEvent_t,
6710    pub flags: ::core::ffi::c_int,
6711}
6712#[cfg(any(
6713    feature = "cuda-12080",
6714    feature = "cuda-12090",
6715    feature = "cuda-13000",
6716    feature = "cuda-13010",
6717    feature = "cuda-13020"
6718))]
6719#[repr(C)]
6720#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6721pub struct cudaLaunchAttributeValue__bindgen_ty_3 {
6722    pub x: ::core::ffi::c_uint,
6723    pub y: ::core::ffi::c_uint,
6724    pub z: ::core::ffi::c_uint,
6725}
6726#[cfg(any(feature = "cuda-12040", feature = "cuda-12050", feature = "cuda-12060"))]
6727#[repr(C)]
6728#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6729pub struct cudaLaunchAttributeValue__bindgen_ty_4 {
6730    pub deviceUpdatable: ::core::ffi::c_int,
6731    pub devNode: cudaGraphDeviceNode_t,
6732}
6733#[cfg(any(
6734    feature = "cuda-12080",
6735    feature = "cuda-12090",
6736    feature = "cuda-13000",
6737    feature = "cuda-13010",
6738    feature = "cuda-13020"
6739))]
6740#[repr(C)]
6741#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6742pub struct cudaLaunchAttributeValue__bindgen_ty_4 {
6743    pub event: cudaEvent_t,
6744    pub flags: ::core::ffi::c_int,
6745}
6746#[cfg(any(
6747    feature = "cuda-12080",
6748    feature = "cuda-12090",
6749    feature = "cuda-13000",
6750    feature = "cuda-13010",
6751    feature = "cuda-13020"
6752))]
6753#[repr(C)]
6754#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6755pub struct cudaLaunchAttributeValue__bindgen_ty_5 {
6756    pub deviceUpdatable: ::core::ffi::c_int,
6757    pub devNode: cudaGraphDeviceNode_t,
6758}
6759#[cfg(any(
6760    feature = "cuda-11080",
6761    feature = "cuda-12000",
6762    feature = "cuda-12010",
6763    feature = "cuda-12020",
6764    feature = "cuda-12030",
6765    feature = "cuda-12040",
6766    feature = "cuda-12050",
6767    feature = "cuda-12060",
6768    feature = "cuda-12080",
6769    feature = "cuda-12090",
6770    feature = "cuda-13000",
6771    feature = "cuda-13010",
6772    feature = "cuda-13020"
6773))]
6774#[repr(C)]
6775#[derive(Copy, Clone)]
6776pub struct cudaLaunchAttribute_st {
6777    pub id: cudaLaunchAttributeID,
6778    pub pad: [::core::ffi::c_char; 4usize],
6779    pub val: cudaLaunchAttributeValue,
6780}
6781#[cfg(any(
6782    feature = "cuda-11080",
6783    feature = "cuda-12000",
6784    feature = "cuda-12010",
6785    feature = "cuda-12020",
6786    feature = "cuda-12030",
6787    feature = "cuda-12040",
6788    feature = "cuda-12050",
6789    feature = "cuda-12060",
6790    feature = "cuda-12080",
6791    feature = "cuda-12090",
6792    feature = "cuda-13000",
6793    feature = "cuda-13010",
6794    feature = "cuda-13020"
6795))]
6796#[repr(C)]
6797#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6798pub struct cudaLaunchConfig_st {
6799    pub gridDim: dim3,
6800    pub blockDim: dim3,
6801    pub dynamicSmemBytes: usize,
6802    pub stream: cudaStream_t,
6803    pub attrs: *mut cudaLaunchAttribute,
6804    pub numAttrs: ::core::ffi::c_uint,
6805}
6806#[cfg(any(
6807    feature = "cuda-12000",
6808    feature = "cuda-12010",
6809    feature = "cuda-12020",
6810    feature = "cuda-12030",
6811    feature = "cuda-12040",
6812    feature = "cuda-12050",
6813    feature = "cuda-12060",
6814    feature = "cuda-12080",
6815    feature = "cuda-12090",
6816    feature = "cuda-13000",
6817    feature = "cuda-13010",
6818    feature = "cuda-13020"
6819))]
6820#[repr(C)]
6821#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6822pub struct cudaLaunchMemSyncDomainMap_st {
6823    pub default_: ::core::ffi::c_uchar,
6824    pub remote: ::core::ffi::c_uchar,
6825}
6826#[cfg(any(
6827    feature = "cuda-11040",
6828    feature = "cuda-11050",
6829    feature = "cuda-11060",
6830    feature = "cuda-11070",
6831    feature = "cuda-11080",
6832    feature = "cuda-12000",
6833    feature = "cuda-12010",
6834    feature = "cuda-12020",
6835    feature = "cuda-12030",
6836    feature = "cuda-12040",
6837    feature = "cuda-12050",
6838    feature = "cuda-12060",
6839    feature = "cuda-12080",
6840    feature = "cuda-12090"
6841))]
6842#[repr(C)]
6843#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6844pub struct cudaLaunchParams {
6845    pub func: *mut ::core::ffi::c_void,
6846    pub gridDim: dim3,
6847    pub blockDim: dim3,
6848    pub args: *mut *mut ::core::ffi::c_void,
6849    pub sharedMem: usize,
6850    pub stream: cudaStream_t,
6851}
6852#[repr(C)]
6853#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6854pub struct cudaMemAccessDesc {
6855    pub location: cudaMemLocation,
6856    pub flags: cudaMemAccessFlags,
6857}
6858#[repr(C)]
6859#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6860pub struct cudaMemAllocNodeParams {
6861    pub poolProps: cudaMemPoolProps,
6862    pub accessDescs: *const cudaMemAccessDesc,
6863    pub accessDescCount: usize,
6864    pub bytesize: usize,
6865    pub dptr: *mut ::core::ffi::c_void,
6866}
6867#[cfg(any(
6868    feature = "cuda-12020",
6869    feature = "cuda-12030",
6870    feature = "cuda-12040",
6871    feature = "cuda-12050",
6872    feature = "cuda-12060",
6873    feature = "cuda-12080",
6874    feature = "cuda-12090",
6875    feature = "cuda-13000",
6876    feature = "cuda-13010",
6877    feature = "cuda-13020"
6878))]
6879#[repr(C)]
6880#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6881pub struct cudaMemAllocNodeParamsV2 {
6882    pub poolProps: cudaMemPoolProps,
6883    pub accessDescs: *const cudaMemAccessDesc,
6884    pub accessDescCount: usize,
6885    pub bytesize: usize,
6886    pub dptr: *mut ::core::ffi::c_void,
6887}
6888#[cfg(any(
6889    feature = "cuda-12030",
6890    feature = "cuda-12040",
6891    feature = "cuda-12050",
6892    feature = "cuda-12060",
6893    feature = "cuda-12080",
6894    feature = "cuda-12090",
6895    feature = "cuda-13000",
6896    feature = "cuda-13010",
6897    feature = "cuda-13020"
6898))]
6899#[repr(C)]
6900#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6901pub struct cudaMemFabricHandle_st {
6902    pub reserved: [::core::ffi::c_char; 64usize],
6903}
6904#[cfg(any(
6905    feature = "cuda-12020",
6906    feature = "cuda-12030",
6907    feature = "cuda-12040",
6908    feature = "cuda-12050",
6909    feature = "cuda-12060",
6910    feature = "cuda-12080",
6911    feature = "cuda-12090",
6912    feature = "cuda-13000",
6913    feature = "cuda-13010",
6914    feature = "cuda-13020"
6915))]
6916#[repr(C)]
6917#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6918pub struct cudaMemFreeNodeParams {
6919    pub dptr: *mut ::core::ffi::c_void,
6920}
6921#[repr(C)]
6922#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6923pub struct cudaMemLocation {
6924    pub type_: cudaMemLocationType,
6925    pub id: ::core::ffi::c_int,
6926}
6927#[cfg(any(
6928    feature = "cuda-11040",
6929    feature = "cuda-11050",
6930    feature = "cuda-11060",
6931    feature = "cuda-11070",
6932    feature = "cuda-11080",
6933    feature = "cuda-12000",
6934    feature = "cuda-12010"
6935))]
6936#[repr(C)]
6937#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6938pub struct cudaMemPoolProps {
6939    pub allocType: cudaMemAllocationType,
6940    pub handleTypes: cudaMemAllocationHandleType,
6941    pub location: cudaMemLocation,
6942    pub win32SecurityAttributes: *mut ::core::ffi::c_void,
6943    pub reserved: [::core::ffi::c_uchar; 64usize],
6944}
6945#[cfg(any(
6946    feature = "cuda-12020",
6947    feature = "cuda-12030",
6948    feature = "cuda-12040",
6949    feature = "cuda-12050"
6950))]
6951#[repr(C)]
6952#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6953pub struct cudaMemPoolProps {
6954    pub allocType: cudaMemAllocationType,
6955    pub handleTypes: cudaMemAllocationHandleType,
6956    pub location: cudaMemLocation,
6957    pub win32SecurityAttributes: *mut ::core::ffi::c_void,
6958    pub maxSize: usize,
6959    pub reserved: [::core::ffi::c_uchar; 56usize],
6960}
6961#[cfg(any(
6962    feature = "cuda-12060",
6963    feature = "cuda-12080",
6964    feature = "cuda-12090",
6965    feature = "cuda-13000",
6966    feature = "cuda-13010",
6967    feature = "cuda-13020"
6968))]
6969#[repr(C)]
6970#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6971pub struct cudaMemPoolProps {
6972    pub allocType: cudaMemAllocationType,
6973    pub handleTypes: cudaMemAllocationHandleType,
6974    pub location: cudaMemLocation,
6975    pub win32SecurityAttributes: *mut ::core::ffi::c_void,
6976    pub maxSize: usize,
6977    pub usage: ::core::ffi::c_ushort,
6978    pub reserved: [::core::ffi::c_uchar; 54usize],
6979}
6980#[repr(C)]
6981#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
6982pub struct cudaMemPoolPtrExportData {
6983    pub reserved: [::core::ffi::c_uchar; 64usize],
6984}
6985#[cfg(any(
6986    feature = "cuda-12080",
6987    feature = "cuda-12090",
6988    feature = "cuda-13000",
6989    feature = "cuda-13010",
6990    feature = "cuda-13020"
6991))]
6992#[repr(C)]
6993#[derive(Copy, Clone)]
6994pub struct cudaMemcpy3DBatchOp {
6995    pub src: cudaMemcpy3DOperand,
6996    pub dst: cudaMemcpy3DOperand,
6997    pub extent: cudaExtent,
6998    pub srcAccessOrder: cudaMemcpySrcAccessOrder,
6999    pub flags: ::core::ffi::c_uint,
7000}
7001#[cfg(any(
7002    feature = "cuda-12080",
7003    feature = "cuda-12090",
7004    feature = "cuda-13000",
7005    feature = "cuda-13010",
7006    feature = "cuda-13020"
7007))]
7008#[repr(C)]
7009#[derive(Copy, Clone)]
7010pub struct cudaMemcpy3DOperand {
7011    pub type_: cudaMemcpy3DOperandType,
7012    pub op: cudaMemcpy3DOperand__bindgen_ty_1,
7013}
7014#[cfg(any(
7015    feature = "cuda-12080",
7016    feature = "cuda-12090",
7017    feature = "cuda-13000",
7018    feature = "cuda-13010",
7019    feature = "cuda-13020"
7020))]
7021#[repr(C)]
7022#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7023pub struct cudaMemcpy3DOperand__bindgen_ty_1__bindgen_ty_1 {
7024    pub ptr: *mut ::core::ffi::c_void,
7025    pub rowLength: usize,
7026    pub layerHeight: usize,
7027    pub locHint: cudaMemLocation,
7028}
7029#[cfg(any(
7030    feature = "cuda-12080",
7031    feature = "cuda-12090",
7032    feature = "cuda-13000",
7033    feature = "cuda-13010",
7034    feature = "cuda-13020"
7035))]
7036#[repr(C)]
7037#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7038pub struct cudaMemcpy3DOperand__bindgen_ty_1__bindgen_ty_2 {
7039    pub array: cudaArray_t,
7040    pub offset: cudaOffset3D,
7041}
7042#[repr(C)]
7043#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7044pub struct cudaMemcpy3DParms {
7045    pub srcArray: cudaArray_t,
7046    pub srcPos: cudaPos,
7047    pub srcPtr: cudaPitchedPtr,
7048    pub dstArray: cudaArray_t,
7049    pub dstPos: cudaPos,
7050    pub dstPtr: cudaPitchedPtr,
7051    pub extent: cudaExtent,
7052    pub kind: cudaMemcpyKind,
7053}
7054#[repr(C)]
7055#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7056pub struct cudaMemcpy3DPeerParms {
7057    pub srcArray: cudaArray_t,
7058    pub srcPos: cudaPos,
7059    pub srcPtr: cudaPitchedPtr,
7060    pub srcDevice: ::core::ffi::c_int,
7061    pub dstArray: cudaArray_t,
7062    pub dstPos: cudaPos,
7063    pub dstPtr: cudaPitchedPtr,
7064    pub dstDevice: ::core::ffi::c_int,
7065    pub extent: cudaExtent,
7066}
7067#[cfg(any(
7068    feature = "cuda-12080",
7069    feature = "cuda-12090",
7070    feature = "cuda-13000",
7071    feature = "cuda-13010",
7072    feature = "cuda-13020"
7073))]
7074#[repr(C)]
7075#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7076pub struct cudaMemcpyAttributes {
7077    pub srcAccessOrder: cudaMemcpySrcAccessOrder,
7078    pub srcLocHint: cudaMemLocation,
7079    pub dstLocHint: cudaMemLocation,
7080    pub flags: ::core::ffi::c_uint,
7081}
7082#[cfg(any(
7083    feature = "cuda-12020",
7084    feature = "cuda-12030",
7085    feature = "cuda-12040",
7086    feature = "cuda-12050",
7087    feature = "cuda-12060",
7088    feature = "cuda-12080",
7089    feature = "cuda-12090",
7090    feature = "cuda-13000"
7091))]
7092#[repr(C)]
7093#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7094pub struct cudaMemcpyNodeParams {
7095    pub flags: ::core::ffi::c_int,
7096    pub reserved: [::core::ffi::c_int; 3usize],
7097    pub copyParams: cudaMemcpy3DParms,
7098}
7099#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
7100#[repr(C)]
7101#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7102pub struct cudaMemcpyNodeParams {
7103    pub flags: ::core::ffi::c_int,
7104    pub reserved: ::core::ffi::c_int,
7105    pub ctx: cudaExecutionContext_t,
7106    pub copyParams: cudaMemcpy3DParms,
7107}
7108#[repr(C)]
7109#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7110pub struct cudaMemsetParams {
7111    pub dst: *mut ::core::ffi::c_void,
7112    pub pitch: usize,
7113    pub value: ::core::ffi::c_uint,
7114    pub elementSize: ::core::ffi::c_uint,
7115    pub width: usize,
7116    pub height: usize,
7117}
7118#[cfg(any(
7119    feature = "cuda-12020",
7120    feature = "cuda-12030",
7121    feature = "cuda-12040",
7122    feature = "cuda-12050",
7123    feature = "cuda-12060",
7124    feature = "cuda-12080",
7125    feature = "cuda-12090",
7126    feature = "cuda-13000"
7127))]
7128#[repr(C)]
7129#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7130pub struct cudaMemsetParamsV2 {
7131    pub dst: *mut ::core::ffi::c_void,
7132    pub pitch: usize,
7133    pub value: ::core::ffi::c_uint,
7134    pub elementSize: ::core::ffi::c_uint,
7135    pub width: usize,
7136    pub height: usize,
7137}
7138#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
7139#[repr(C)]
7140#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7141pub struct cudaMemsetParamsV2 {
7142    pub dst: *mut ::core::ffi::c_void,
7143    pub pitch: usize,
7144    pub value: ::core::ffi::c_uint,
7145    pub elementSize: ::core::ffi::c_uint,
7146    pub width: usize,
7147    pub height: usize,
7148    pub ctx: cudaExecutionContext_t,
7149}
7150#[repr(C)]
7151#[derive(Debug, Copy, Clone)]
7152pub struct cudaMipmappedArray {
7153    _unused: [u8; 0],
7154}
7155#[cfg(any(
7156    feature = "cuda-12080",
7157    feature = "cuda-12090",
7158    feature = "cuda-13000",
7159    feature = "cuda-13010",
7160    feature = "cuda-13020"
7161))]
7162#[repr(C)]
7163#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7164pub struct cudaOffset3D {
7165    pub x: usize,
7166    pub y: usize,
7167    pub z: usize,
7168}
7169#[repr(C)]
7170#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7171pub struct cudaPitchedPtr {
7172    pub ptr: *mut ::core::ffi::c_void,
7173    pub pitch: usize,
7174    pub xsize: usize,
7175    pub ysize: usize,
7176}
7177#[cfg(any(
7178    feature = "cuda-11040",
7179    feature = "cuda-11050",
7180    feature = "cuda-11060",
7181    feature = "cuda-11070",
7182    feature = "cuda-11080",
7183    feature = "cuda-12000",
7184    feature = "cuda-12010",
7185    feature = "cuda-12020",
7186    feature = "cuda-12030",
7187    feature = "cuda-12040",
7188    feature = "cuda-12050",
7189    feature = "cuda-12060",
7190    feature = "cuda-12080",
7191    feature = "cuda-12090"
7192))]
7193#[repr(C)]
7194#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7195pub struct cudaPointerAttributes {
7196    pub type_: cudaMemoryType,
7197    pub device: ::core::ffi::c_int,
7198    pub devicePointer: *mut ::core::ffi::c_void,
7199    pub hostPointer: *mut ::core::ffi::c_void,
7200}
7201#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
7202#[repr(C)]
7203#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7204pub struct cudaPointerAttributes {
7205    pub type_: cudaMemoryType,
7206    pub device: ::core::ffi::c_int,
7207    pub devicePointer: *mut ::core::ffi::c_void,
7208    pub hostPointer: *mut ::core::ffi::c_void,
7209    pub reserved: [::core::ffi::c_long; 8usize],
7210}
7211#[repr(C)]
7212#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7213pub struct cudaPos {
7214    pub x: usize,
7215    pub y: usize,
7216    pub z: usize,
7217}
7218#[cfg(any(
7219    feature = "cuda-11040",
7220    feature = "cuda-11050",
7221    feature = "cuda-11060",
7222    feature = "cuda-11070",
7223    feature = "cuda-11080",
7224    feature = "cuda-12000",
7225    feature = "cuda-12010",
7226    feature = "cuda-12020",
7227    feature = "cuda-12030",
7228    feature = "cuda-12040",
7229    feature = "cuda-12050",
7230    feature = "cuda-12060",
7231    feature = "cuda-12080",
7232    feature = "cuda-12090"
7233))]
7234#[repr(C)]
7235#[derive(Copy, Clone)]
7236pub struct cudaResourceDesc {
7237    pub resType: cudaResourceType,
7238    pub res: cudaResourceDesc__bindgen_ty_1,
7239}
7240#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
7241#[repr(C)]
7242#[derive(Copy, Clone)]
7243pub struct cudaResourceDesc {
7244    pub resType: cudaResourceType,
7245    pub res: cudaResourceDesc__bindgen_ty_1,
7246    pub flags: ::core::ffi::c_uint,
7247}
7248#[repr(C)]
7249#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7250pub struct cudaResourceDesc__bindgen_ty_1__bindgen_ty_1 {
7251    pub array: cudaArray_t,
7252}
7253#[repr(C)]
7254#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7255pub struct cudaResourceDesc__bindgen_ty_1__bindgen_ty_2 {
7256    pub mipmap: cudaMipmappedArray_t,
7257}
7258#[repr(C)]
7259#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7260pub struct cudaResourceDesc__bindgen_ty_1__bindgen_ty_3 {
7261    pub devPtr: *mut ::core::ffi::c_void,
7262    pub desc: cudaChannelFormatDesc,
7263    pub sizeInBytes: usize,
7264}
7265#[repr(C)]
7266#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7267pub struct cudaResourceDesc__bindgen_ty_1__bindgen_ty_4 {
7268    pub devPtr: *mut ::core::ffi::c_void,
7269    pub desc: cudaChannelFormatDesc,
7270    pub width: usize,
7271    pub height: usize,
7272    pub pitchInBytes: usize,
7273}
7274#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
7275#[repr(C)]
7276#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7277pub struct cudaResourceDesc__bindgen_ty_1__bindgen_ty_5 {
7278    pub reserved: [::core::ffi::c_int; 32usize],
7279}
7280#[cfg(any(
7281    feature = "cuda-11040",
7282    feature = "cuda-11050",
7283    feature = "cuda-11060",
7284    feature = "cuda-11070",
7285    feature = "cuda-11080",
7286    feature = "cuda-12000",
7287    feature = "cuda-12010",
7288    feature = "cuda-12020",
7289    feature = "cuda-12030",
7290    feature = "cuda-12040",
7291    feature = "cuda-12050",
7292    feature = "cuda-12060",
7293    feature = "cuda-12080",
7294    feature = "cuda-12090"
7295))]
7296#[repr(C)]
7297#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7298pub struct cudaResourceViewDesc {
7299    pub format: cudaResourceViewFormat,
7300    pub width: usize,
7301    pub height: usize,
7302    pub depth: usize,
7303    pub firstMipmapLevel: ::core::ffi::c_uint,
7304    pub lastMipmapLevel: ::core::ffi::c_uint,
7305    pub firstLayer: ::core::ffi::c_uint,
7306    pub lastLayer: ::core::ffi::c_uint,
7307}
7308#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
7309#[repr(C)]
7310#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7311pub struct cudaResourceViewDesc {
7312    pub format: cudaResourceViewFormat,
7313    pub width: usize,
7314    pub height: usize,
7315    pub depth: usize,
7316    pub firstMipmapLevel: ::core::ffi::c_uint,
7317    pub lastMipmapLevel: ::core::ffi::c_uint,
7318    pub firstLayer: ::core::ffi::c_uint,
7319    pub lastLayer: ::core::ffi::c_uint,
7320    pub reserved: [::core::ffi::c_uint; 16usize],
7321}
7322#[cfg(any(feature = "cuda-11040", feature = "cuda-11050"))]
7323#[repr(C)]
7324#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
7325pub struct cudaTextureDesc {
7326    pub addressMode: [cudaTextureAddressMode; 3usize],
7327    pub filterMode: cudaTextureFilterMode,
7328    pub readMode: cudaTextureReadMode,
7329    pub sRGB: ::core::ffi::c_int,
7330    pub borderColor: [f32; 4usize],
7331    pub normalizedCoords: ::core::ffi::c_int,
7332    pub maxAnisotropy: ::core::ffi::c_uint,
7333    pub mipmapFilterMode: cudaTextureFilterMode,
7334    pub mipmapLevelBias: f32,
7335    pub minMipmapLevelClamp: f32,
7336    pub maxMipmapLevelClamp: f32,
7337    pub disableTrilinearOptimization: ::core::ffi::c_int,
7338}
7339#[cfg(any(feature = "cuda-11060", feature = "cuda-11070"))]
7340#[repr(C)]
7341#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
7342pub struct cudaTextureDesc {
7343    pub addressMode: [cudaTextureAddressMode; 3usize],
7344    pub filterMode: cudaTextureFilterMode,
7345    pub readMode: cudaTextureReadMode,
7346    pub sRGB: ::core::ffi::c_int,
7347    pub borderColor: [f32; 4usize],
7348    pub normalizedCoords: ::core::ffi::c_int,
7349    pub maxAnisotropy: ::core::ffi::c_uint,
7350    pub mipmapFilterMode: cudaTextureFilterMode,
7351    pub mipmapLevelBias: f32,
7352    pub minMipmapLevelClamp: f32,
7353    pub maxMipmapLevelClamp: f32,
7354    pub disableTrilinearOptimization: ::core::ffi::c_int,
7355    pub seamlessCubemap: ::core::ffi::c_int,
7356}
7357#[cfg(any(feature = "cuda-11080"))]
7358#[repr(C)]
7359#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
7360pub struct cudaTextureDesc {
7361    pub addressMode: [cudaTextureAddressMode; 3usize],
7362    pub filterMode: cudaTextureFilterMode,
7363    pub readMode: cudaTextureReadMode,
7364    pub sRGB: ::core::ffi::c_int,
7365    pub borderColor: [f32; 4usize],
7366    pub normalizedCoords: ::core::ffi::c_int,
7367    pub maxAnisotropy: ::core::ffi::c_uint,
7368    pub mipmapFilterMode: cudaTextureFilterMode,
7369    pub mipmapLevelBias: f32,
7370    pub minMipmapLevelClamp: f32,
7371    pub maxMipmapLevelClamp: f32,
7372    pub disableTrilinearOptimization: ::core::ffi::c_int,
7373}
7374#[cfg(any(
7375    feature = "cuda-12000",
7376    feature = "cuda-12010",
7377    feature = "cuda-12020",
7378    feature = "cuda-12030",
7379    feature = "cuda-12040",
7380    feature = "cuda-12050",
7381    feature = "cuda-12060",
7382    feature = "cuda-12080",
7383    feature = "cuda-12090",
7384    feature = "cuda-13000",
7385    feature = "cuda-13010",
7386    feature = "cuda-13020"
7387))]
7388#[repr(C)]
7389#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
7390pub struct cudaTextureDesc {
7391    pub addressMode: [cudaTextureAddressMode; 3usize],
7392    pub filterMode: cudaTextureFilterMode,
7393    pub readMode: cudaTextureReadMode,
7394    pub sRGB: ::core::ffi::c_int,
7395    pub borderColor: [f32; 4usize],
7396    pub normalizedCoords: ::core::ffi::c_int,
7397    pub maxAnisotropy: ::core::ffi::c_uint,
7398    pub mipmapFilterMode: cudaTextureFilterMode,
7399    pub mipmapLevelBias: f32,
7400    pub minMipmapLevelClamp: f32,
7401    pub maxMipmapLevelClamp: f32,
7402    pub disableTrilinearOptimization: ::core::ffi::c_int,
7403    pub seamlessCubemap: ::core::ffi::c_int,
7404}
7405#[cfg(any(feature = "cuda-11080"))]
7406#[repr(C)]
7407#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
7408pub struct cudaTextureDesc_v2 {
7409    pub addressMode: [cudaTextureAddressMode; 3usize],
7410    pub filterMode: cudaTextureFilterMode,
7411    pub readMode: cudaTextureReadMode,
7412    pub sRGB: ::core::ffi::c_int,
7413    pub borderColor: [f32; 4usize],
7414    pub normalizedCoords: ::core::ffi::c_int,
7415    pub maxAnisotropy: ::core::ffi::c_uint,
7416    pub mipmapFilterMode: cudaTextureFilterMode,
7417    pub mipmapLevelBias: f32,
7418    pub minMipmapLevelClamp: f32,
7419    pub maxMipmapLevelClamp: f32,
7420    pub disableTrilinearOptimization: ::core::ffi::c_int,
7421    pub seamlessCubemap: ::core::ffi::c_int,
7422}
7423#[cfg(any(
7424    feature = "cuda-12080",
7425    feature = "cuda-12090",
7426    feature = "cuda-13000",
7427    feature = "cuda-13010",
7428    feature = "cuda-13020"
7429))]
7430#[repr(C)]
7431#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7432pub struct cudalibraryHostUniversalFunctionAndDataTable {
7433    pub functionTable: *mut ::core::ffi::c_void,
7434    pub functionWindowSize: usize,
7435    pub dataTable: *mut ::core::ffi::c_void,
7436    pub dataWindowSize: usize,
7437}
7438#[repr(C)]
7439#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7440pub struct dim3 {
7441    pub x: ::core::ffi::c_uint,
7442    pub y: ::core::ffi::c_uint,
7443    pub z: ::core::ffi::c_uint,
7444}
7445#[cfg(any(
7446    feature = "cuda-11040",
7447    feature = "cuda-11050",
7448    feature = "cuda-11060",
7449    feature = "cuda-11070",
7450    feature = "cuda-11080"
7451))]
7452#[repr(C)]
7453#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
7454pub struct surfaceReference {
7455    pub channelDesc: cudaChannelFormatDesc,
7456}
7457#[cfg(any(
7458    feature = "cuda-11040",
7459    feature = "cuda-11050",
7460    feature = "cuda-11060",
7461    feature = "cuda-11070",
7462    feature = "cuda-11080"
7463))]
7464#[repr(C)]
7465#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
7466pub struct textureReference {
7467    pub normalized: ::core::ffi::c_int,
7468    pub filterMode: cudaTextureFilterMode,
7469    pub addressMode: [cudaTextureAddressMode; 3usize],
7470    pub channelDesc: cudaChannelFormatDesc,
7471    pub sRGB: ::core::ffi::c_int,
7472    pub maxAnisotropy: ::core::ffi::c_uint,
7473    pub mipmapFilterMode: cudaTextureFilterMode,
7474    pub mipmapLevelBias: f32,
7475    pub minMipmapLevelClamp: f32,
7476    pub maxMipmapLevelClamp: f32,
7477    pub disableTrilinearOptimization: ::core::ffi::c_int,
7478    pub __cudaReserved: [::core::ffi::c_int; 14usize],
7479}
7480#[cfg(any(
7481    feature = "cuda-12080",
7482    feature = "cuda-12090",
7483    feature = "cuda-13000",
7484    feature = "cuda-13010",
7485    feature = "cuda-13020"
7486))]
7487impl cudaDataType_t {
7488    pub const CUDA_R_8F_UE4M3: cudaDataType_t = cudaDataType_t::CUDA_R_8F_E4M3;
7489}
7490#[cfg(any(
7491    feature = "cuda-11050",
7492    feature = "cuda-11060",
7493    feature = "cuda-11070",
7494    feature = "cuda-11080",
7495    feature = "cuda-12000",
7496    feature = "cuda-12010",
7497    feature = "cuda-12020",
7498    feature = "cuda-12030",
7499    feature = "cuda-12040",
7500    feature = "cuda-12050",
7501    feature = "cuda-12060",
7502    feature = "cuda-12080",
7503    feature = "cuda-12090"
7504))]
7505impl cudaDeviceAttr {
7506    pub const cudaDevAttrMaxTimelineSemaphoreInteropSupported: cudaDeviceAttr =
7507        cudaDeviceAttr::cudaDevAttrTimelineSemaphoreInteropSupported;
7508}
7509#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
7510impl cudaMemLocationType {
7511    pub const cudaMemLocationTypeNone: cudaMemLocationType =
7512        cudaMemLocationType::cudaMemLocationTypeInvalid;
7513}
7514#[cfg(any(
7515    feature = "cuda-12040",
7516    feature = "cuda-12050",
7517    feature = "cuda-12060",
7518    feature = "cuda-12080",
7519    feature = "cuda-12090",
7520    feature = "cuda-13000",
7521    feature = "cuda-13010",
7522    feature = "cuda-13020"
7523))]
7524#[repr(C)]
7525#[derive(Copy, Clone)]
7526pub union cudaAsyncNotificationInfo__bindgen_ty_1 {
7527    pub overBudget: cudaAsyncNotificationInfo__bindgen_ty_1__bindgen_ty_1,
7528}
7529#[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
7530#[repr(C)]
7531#[derive(Copy, Clone)]
7532pub union cudaDevResource_st__bindgen_ty_1 {
7533    pub sm: cudaDevSmResource,
7534    pub wqConfig: cudaDevWorkqueueConfigResource,
7535    pub wq: cudaDevWorkqueueResource,
7536    pub _oversize: [::core::ffi::c_uchar; 40usize],
7537}
7538#[repr(C)]
7539#[derive(Copy, Clone)]
7540pub union cudaExternalMemoryHandleDesc__bindgen_ty_1 {
7541    pub fd: ::core::ffi::c_int,
7542    pub win32: cudaExternalMemoryHandleDesc__bindgen_ty_1__bindgen_ty_1,
7543    pub nvSciBufObject: *const ::core::ffi::c_void,
7544}
7545#[repr(C)]
7546#[derive(Copy, Clone)]
7547pub union cudaExternalSemaphoreHandleDesc__bindgen_ty_1 {
7548    pub fd: ::core::ffi::c_int,
7549    pub win32: cudaExternalSemaphoreHandleDesc__bindgen_ty_1__bindgen_ty_1,
7550    pub nvSciSyncObj: *const ::core::ffi::c_void,
7551}
7552#[repr(C)]
7553#[derive(Copy, Clone)]
7554pub union cudaExternalSemaphoreSignalParams__bindgen_ty_1__bindgen_ty_2 {
7555    pub fence: *mut ::core::ffi::c_void,
7556    pub reserved: ::core::ffi::c_ulonglong,
7557}
7558#[cfg(any(
7559    feature = "cuda-11050",
7560    feature = "cuda-11060",
7561    feature = "cuda-11070",
7562    feature = "cuda-11080",
7563    feature = "cuda-12000",
7564    feature = "cuda-12010",
7565    feature = "cuda-12020",
7566    feature = "cuda-12030",
7567    feature = "cuda-12040",
7568    feature = "cuda-12050",
7569    feature = "cuda-12060",
7570    feature = "cuda-12080",
7571    feature = "cuda-12090"
7572))]
7573#[repr(C)]
7574#[derive(Copy, Clone)]
7575pub union cudaExternalSemaphoreSignalParams_v1__bindgen_ty_1__bindgen_ty_2 {
7576    pub fence: *mut ::core::ffi::c_void,
7577    pub reserved: ::core::ffi::c_ulonglong,
7578}
7579#[repr(C)]
7580#[derive(Copy, Clone)]
7581pub union cudaExternalSemaphoreWaitParams__bindgen_ty_1__bindgen_ty_2 {
7582    pub fence: *mut ::core::ffi::c_void,
7583    pub reserved: ::core::ffi::c_ulonglong,
7584}
7585#[cfg(any(
7586    feature = "cuda-11050",
7587    feature = "cuda-11060",
7588    feature = "cuda-11070",
7589    feature = "cuda-11080",
7590    feature = "cuda-12000",
7591    feature = "cuda-12010",
7592    feature = "cuda-12020",
7593    feature = "cuda-12030",
7594    feature = "cuda-12040",
7595    feature = "cuda-12050",
7596    feature = "cuda-12060",
7597    feature = "cuda-12080",
7598    feature = "cuda-12090"
7599))]
7600#[repr(C)]
7601#[derive(Copy, Clone)]
7602pub union cudaExternalSemaphoreWaitParams_v1__bindgen_ty_1__bindgen_ty_2 {
7603    pub fence: *mut ::core::ffi::c_void,
7604    pub reserved: ::core::ffi::c_ulonglong,
7605}
7606#[cfg(any(
7607    feature = "cuda-12040",
7608    feature = "cuda-12050",
7609    feature = "cuda-12060",
7610    feature = "cuda-12080",
7611    feature = "cuda-12090",
7612    feature = "cuda-13000",
7613    feature = "cuda-13010",
7614    feature = "cuda-13020"
7615))]
7616#[repr(C)]
7617#[derive(Copy, Clone)]
7618pub union cudaGraphKernelNodeUpdate__bindgen_ty_1 {
7619    pub gridDim: dim3,
7620    pub param: cudaGraphKernelNodeUpdate__bindgen_ty_1__bindgen_ty_1,
7621    pub isEnabled: ::core::ffi::c_uint,
7622}
7623#[cfg(any(feature = "cuda-12020"))]
7624#[repr(C)]
7625#[derive(Copy, Clone)]
7626pub union cudaGraphNodeParams__bindgen_ty_1 {
7627    pub reserved1: [::core::ffi::c_longlong; 29usize],
7628    pub kernel: cudaKernelNodeParamsV2,
7629    pub memcpy: cudaMemcpyNodeParams,
7630    pub memset: cudaMemsetParamsV2,
7631    pub host: cudaHostNodeParamsV2,
7632    pub graph: cudaChildGraphNodeParams,
7633    pub eventWait: cudaEventWaitNodeParams,
7634    pub eventRecord: cudaEventRecordNodeParams,
7635    pub extSemSignal: cudaExternalSemaphoreSignalNodeParamsV2,
7636    pub extSemWait: cudaExternalSemaphoreWaitNodeParamsV2,
7637    pub alloc: cudaMemAllocNodeParamsV2,
7638    pub free: cudaMemFreeNodeParams,
7639}
7640#[cfg(any(
7641    feature = "cuda-12030",
7642    feature = "cuda-12040",
7643    feature = "cuda-12050",
7644    feature = "cuda-12060",
7645    feature = "cuda-12080",
7646    feature = "cuda-12090",
7647    feature = "cuda-13000",
7648    feature = "cuda-13010",
7649    feature = "cuda-13020"
7650))]
7651#[repr(C)]
7652#[derive(Copy, Clone)]
7653pub union cudaGraphNodeParams__bindgen_ty_1 {
7654    pub reserved1: [::core::ffi::c_longlong; 29usize],
7655    pub kernel: cudaKernelNodeParamsV2,
7656    pub memcpy: cudaMemcpyNodeParams,
7657    pub memset: cudaMemsetParamsV2,
7658    pub host: cudaHostNodeParamsV2,
7659    pub graph: cudaChildGraphNodeParams,
7660    pub eventWait: cudaEventWaitNodeParams,
7661    pub eventRecord: cudaEventRecordNodeParams,
7662    pub extSemSignal: cudaExternalSemaphoreSignalNodeParamsV2,
7663    pub extSemWait: cudaExternalSemaphoreWaitNodeParamsV2,
7664    pub alloc: cudaMemAllocNodeParamsV2,
7665    pub free: cudaMemFreeNodeParams,
7666    pub conditional: cudaConditionalNodeParams,
7667}
7668#[cfg(any(feature = "cuda-11040", feature = "cuda-11050", feature = "cuda-11060"))]
7669#[repr(C)]
7670#[derive(Copy, Clone)]
7671pub union cudaKernelNodeAttrValue {
7672    pub accessPolicyWindow: cudaAccessPolicyWindow,
7673    pub cooperative: ::core::ffi::c_int,
7674}
7675#[cfg(any(feature = "cuda-11070"))]
7676#[repr(C)]
7677#[derive(Copy, Clone)]
7678pub union cudaKernelNodeAttrValue {
7679    pub accessPolicyWindow: cudaAccessPolicyWindow,
7680    pub cooperative: ::core::ffi::c_int,
7681    pub priority: ::core::ffi::c_int,
7682}
7683#[cfg(any(feature = "cuda-13020"))]
7684#[repr(C)]
7685#[derive(Copy, Clone)]
7686pub union cudaKernelNodeParamsV2__bindgen_ty_1 {
7687    pub func: *mut ::core::ffi::c_void,
7688    pub kern: cudaKernel_t,
7689    pub cuFunc: cudaFunction_t,
7690}
7691#[cfg(any(feature = "cuda-11080"))]
7692#[repr(C)]
7693#[derive(Copy, Clone)]
7694pub union cudaLaunchAttributeValue {
7695    pub pad: [::core::ffi::c_char; 64usize],
7696    pub accessPolicyWindow: cudaAccessPolicyWindow,
7697    pub cooperative: ::core::ffi::c_int,
7698    pub syncPolicy: cudaSynchronizationPolicy,
7699    pub clusterDim: cudaLaunchAttributeValue__bindgen_ty_1,
7700    pub clusterSchedulingPolicyPreference: cudaClusterSchedulingPolicy,
7701    pub programmaticStreamSerializationAllowed: ::core::ffi::c_int,
7702    pub programmaticEvent: cudaLaunchAttributeValue__bindgen_ty_2,
7703    pub priority: ::core::ffi::c_int,
7704}
7705#[cfg(any(feature = "cuda-12000", feature = "cuda-12010", feature = "cuda-12020"))]
7706#[repr(C)]
7707#[derive(Copy, Clone)]
7708pub union cudaLaunchAttributeValue {
7709    pub pad: [::core::ffi::c_char; 64usize],
7710    pub accessPolicyWindow: cudaAccessPolicyWindow,
7711    pub cooperative: ::core::ffi::c_int,
7712    pub syncPolicy: cudaSynchronizationPolicy,
7713    pub clusterDim: cudaLaunchAttributeValue__bindgen_ty_1,
7714    pub clusterSchedulingPolicyPreference: cudaClusterSchedulingPolicy,
7715    pub programmaticStreamSerializationAllowed: ::core::ffi::c_int,
7716    pub programmaticEvent: cudaLaunchAttributeValue__bindgen_ty_2,
7717    pub priority: ::core::ffi::c_int,
7718    pub memSyncDomainMap: cudaLaunchMemSyncDomainMap,
7719    pub memSyncDomain: cudaLaunchMemSyncDomain,
7720}
7721#[cfg(any(feature = "cuda-12030"))]
7722#[repr(C)]
7723#[derive(Copy, Clone)]
7724pub union cudaLaunchAttributeValue {
7725    pub pad: [::core::ffi::c_char; 64usize],
7726    pub accessPolicyWindow: cudaAccessPolicyWindow,
7727    pub cooperative: ::core::ffi::c_int,
7728    pub syncPolicy: cudaSynchronizationPolicy,
7729    pub clusterDim: cudaLaunchAttributeValue__bindgen_ty_1,
7730    pub clusterSchedulingPolicyPreference: cudaClusterSchedulingPolicy,
7731    pub programmaticStreamSerializationAllowed: ::core::ffi::c_int,
7732    pub programmaticEvent: cudaLaunchAttributeValue__bindgen_ty_2,
7733    pub priority: ::core::ffi::c_int,
7734    pub memSyncDomainMap: cudaLaunchMemSyncDomainMap,
7735    pub memSyncDomain: cudaLaunchMemSyncDomain,
7736    pub launchCompletionEvent: cudaLaunchAttributeValue__bindgen_ty_3,
7737}
7738#[cfg(any(feature = "cuda-12040"))]
7739#[repr(C)]
7740#[derive(Copy, Clone)]
7741pub union cudaLaunchAttributeValue {
7742    pub pad: [::core::ffi::c_char; 64usize],
7743    pub accessPolicyWindow: cudaAccessPolicyWindow,
7744    pub cooperative: ::core::ffi::c_int,
7745    pub syncPolicy: cudaSynchronizationPolicy,
7746    pub clusterDim: cudaLaunchAttributeValue__bindgen_ty_1,
7747    pub clusterSchedulingPolicyPreference: cudaClusterSchedulingPolicy,
7748    pub programmaticStreamSerializationAllowed: ::core::ffi::c_int,
7749    pub programmaticEvent: cudaLaunchAttributeValue__bindgen_ty_2,
7750    pub priority: ::core::ffi::c_int,
7751    pub memSyncDomainMap: cudaLaunchMemSyncDomainMap,
7752    pub memSyncDomain: cudaLaunchMemSyncDomain,
7753    pub launchCompletionEvent: cudaLaunchAttributeValue__bindgen_ty_3,
7754    pub deviceUpdatableKernelNode: cudaLaunchAttributeValue__bindgen_ty_4,
7755}
7756#[cfg(any(feature = "cuda-12050", feature = "cuda-12060"))]
7757#[repr(C)]
7758#[derive(Copy, Clone)]
7759pub union cudaLaunchAttributeValue {
7760    pub pad: [::core::ffi::c_char; 64usize],
7761    pub accessPolicyWindow: cudaAccessPolicyWindow,
7762    pub cooperative: ::core::ffi::c_int,
7763    pub syncPolicy: cudaSynchronizationPolicy,
7764    pub clusterDim: cudaLaunchAttributeValue__bindgen_ty_1,
7765    pub clusterSchedulingPolicyPreference: cudaClusterSchedulingPolicy,
7766    pub programmaticStreamSerializationAllowed: ::core::ffi::c_int,
7767    pub programmaticEvent: cudaLaunchAttributeValue__bindgen_ty_2,
7768    pub priority: ::core::ffi::c_int,
7769    pub memSyncDomainMap: cudaLaunchMemSyncDomainMap,
7770    pub memSyncDomain: cudaLaunchMemSyncDomain,
7771    pub launchCompletionEvent: cudaLaunchAttributeValue__bindgen_ty_3,
7772    pub deviceUpdatableKernelNode: cudaLaunchAttributeValue__bindgen_ty_4,
7773    pub sharedMemCarveout: ::core::ffi::c_uint,
7774}
7775#[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
7776#[repr(C)]
7777#[derive(Copy, Clone)]
7778pub union cudaLaunchAttributeValue {
7779    pub pad: [::core::ffi::c_char; 64usize],
7780    pub accessPolicyWindow: cudaAccessPolicyWindow,
7781    pub cooperative: ::core::ffi::c_int,
7782    pub syncPolicy: cudaSynchronizationPolicy,
7783    pub clusterDim: cudaLaunchAttributeValue__bindgen_ty_1,
7784    pub clusterSchedulingPolicyPreference: cudaClusterSchedulingPolicy,
7785    pub programmaticStreamSerializationAllowed: ::core::ffi::c_int,
7786    pub programmaticEvent: cudaLaunchAttributeValue__bindgen_ty_2,
7787    pub priority: ::core::ffi::c_int,
7788    pub memSyncDomainMap: cudaLaunchMemSyncDomainMap,
7789    pub memSyncDomain: cudaLaunchMemSyncDomain,
7790    pub preferredClusterDim: cudaLaunchAttributeValue__bindgen_ty_3,
7791    pub launchCompletionEvent: cudaLaunchAttributeValue__bindgen_ty_4,
7792    pub deviceUpdatableKernelNode: cudaLaunchAttributeValue__bindgen_ty_5,
7793    pub sharedMemCarveout: ::core::ffi::c_uint,
7794}
7795#[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
7796#[repr(C)]
7797#[derive(Copy, Clone)]
7798pub union cudaLaunchAttributeValue {
7799    pub pad: [::core::ffi::c_char; 64usize],
7800    pub accessPolicyWindow: cudaAccessPolicyWindow,
7801    pub cooperative: ::core::ffi::c_int,
7802    pub syncPolicy: cudaSynchronizationPolicy,
7803    pub clusterDim: cudaLaunchAttributeValue__bindgen_ty_1,
7804    pub clusterSchedulingPolicyPreference: cudaClusterSchedulingPolicy,
7805    pub programmaticStreamSerializationAllowed: ::core::ffi::c_int,
7806    pub programmaticEvent: cudaLaunchAttributeValue__bindgen_ty_2,
7807    pub priority: ::core::ffi::c_int,
7808    pub memSyncDomainMap: cudaLaunchMemSyncDomainMap,
7809    pub memSyncDomain: cudaLaunchMemSyncDomain,
7810    pub preferredClusterDim: cudaLaunchAttributeValue__bindgen_ty_3,
7811    pub launchCompletionEvent: cudaLaunchAttributeValue__bindgen_ty_4,
7812    pub deviceUpdatableKernelNode: cudaLaunchAttributeValue__bindgen_ty_5,
7813    pub sharedMemCarveout: ::core::ffi::c_uint,
7814    pub nvlinkUtilCentricScheduling: ::core::ffi::c_uint,
7815}
7816#[cfg(any(feature = "cuda-13020"))]
7817#[repr(C)]
7818#[derive(Copy, Clone)]
7819pub union cudaLaunchAttributeValue {
7820    pub pad: [::core::ffi::c_char; 64usize],
7821    pub accessPolicyWindow: cudaAccessPolicyWindow,
7822    pub cooperative: ::core::ffi::c_int,
7823    pub syncPolicy: cudaSynchronizationPolicy,
7824    pub clusterDim: cudaLaunchAttributeValue__bindgen_ty_1,
7825    pub clusterSchedulingPolicyPreference: cudaClusterSchedulingPolicy,
7826    pub programmaticStreamSerializationAllowed: ::core::ffi::c_int,
7827    pub programmaticEvent: cudaLaunchAttributeValue__bindgen_ty_2,
7828    pub priority: ::core::ffi::c_int,
7829    pub memSyncDomainMap: cudaLaunchMemSyncDomainMap,
7830    pub memSyncDomain: cudaLaunchMemSyncDomain,
7831    pub preferredClusterDim: cudaLaunchAttributeValue__bindgen_ty_3,
7832    pub launchCompletionEvent: cudaLaunchAttributeValue__bindgen_ty_4,
7833    pub deviceUpdatableKernelNode: cudaLaunchAttributeValue__bindgen_ty_5,
7834    pub sharedMemCarveout: ::core::ffi::c_uint,
7835    pub nvlinkUtilCentricScheduling: ::core::ffi::c_uint,
7836    pub portableClusterSizeMode: cudaLaunchAttributePortableClusterMode,
7837    pub sharedMemoryMode: cudaSharedMemoryMode,
7838}
7839#[cfg(any(
7840    feature = "cuda-12080",
7841    feature = "cuda-12090",
7842    feature = "cuda-13000",
7843    feature = "cuda-13010",
7844    feature = "cuda-13020"
7845))]
7846#[repr(C)]
7847#[derive(Copy, Clone)]
7848pub union cudaMemcpy3DOperand__bindgen_ty_1 {
7849    pub ptr: cudaMemcpy3DOperand__bindgen_ty_1__bindgen_ty_1,
7850    pub array: cudaMemcpy3DOperand__bindgen_ty_1__bindgen_ty_2,
7851}
7852#[cfg(any(
7853    feature = "cuda-11040",
7854    feature = "cuda-11050",
7855    feature = "cuda-11060",
7856    feature = "cuda-11070",
7857    feature = "cuda-11080",
7858    feature = "cuda-12000",
7859    feature = "cuda-12010",
7860    feature = "cuda-12020",
7861    feature = "cuda-12030",
7862    feature = "cuda-12040",
7863    feature = "cuda-12050",
7864    feature = "cuda-12060",
7865    feature = "cuda-12080",
7866    feature = "cuda-12090"
7867))]
7868#[repr(C)]
7869#[derive(Copy, Clone)]
7870pub union cudaResourceDesc__bindgen_ty_1 {
7871    pub array: cudaResourceDesc__bindgen_ty_1__bindgen_ty_1,
7872    pub mipmap: cudaResourceDesc__bindgen_ty_1__bindgen_ty_2,
7873    pub linear: cudaResourceDesc__bindgen_ty_1__bindgen_ty_3,
7874    pub pitch2D: cudaResourceDesc__bindgen_ty_1__bindgen_ty_4,
7875}
7876#[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
7877#[repr(C)]
7878#[derive(Copy, Clone)]
7879pub union cudaResourceDesc__bindgen_ty_1 {
7880    pub array: cudaResourceDesc__bindgen_ty_1__bindgen_ty_1,
7881    pub mipmap: cudaResourceDesc__bindgen_ty_1__bindgen_ty_2,
7882    pub linear: cudaResourceDesc__bindgen_ty_1__bindgen_ty_3,
7883    pub pitch2D: cudaResourceDesc__bindgen_ty_1__bindgen_ty_4,
7884    pub reserved: cudaResourceDesc__bindgen_ty_1__bindgen_ty_5,
7885}
7886#[cfg(any(
7887    feature = "cuda-11040",
7888    feature = "cuda-11050",
7889    feature = "cuda-11060",
7890    feature = "cuda-11070"
7891))]
7892#[repr(C)]
7893#[derive(Copy, Clone)]
7894pub union cudaStreamAttrValue {
7895    pub accessPolicyWindow: cudaAccessPolicyWindow,
7896    pub syncPolicy: cudaSynchronizationPolicy,
7897}
7898#[cfg(not(feature = "dynamic-loading"))]
7899extern "C" {
7900    pub fn cudaArrayGetInfo(
7901        desc: *mut cudaChannelFormatDesc,
7902        extent: *mut cudaExtent,
7903        flags: *mut ::core::ffi::c_uint,
7904        array: cudaArray_t,
7905    ) -> cudaError_t;
7906    #[cfg(any(
7907        feature = "cuda-11060",
7908        feature = "cuda-11070",
7909        feature = "cuda-11080",
7910        feature = "cuda-12000",
7911        feature = "cuda-12010",
7912        feature = "cuda-12020",
7913        feature = "cuda-12030",
7914        feature = "cuda-12040",
7915        feature = "cuda-12050",
7916        feature = "cuda-12060",
7917        feature = "cuda-12080",
7918        feature = "cuda-12090",
7919        feature = "cuda-13000",
7920        feature = "cuda-13010",
7921        feature = "cuda-13020"
7922    ))]
7923    pub fn cudaArrayGetMemoryRequirements(
7924        memoryRequirements: *mut cudaArrayMemoryRequirements,
7925        array: cudaArray_t,
7926        device: ::core::ffi::c_int,
7927    ) -> cudaError_t;
7928    pub fn cudaArrayGetPlane(
7929        pPlaneArray: *mut cudaArray_t,
7930        hArray: cudaArray_t,
7931        planeIdx: ::core::ffi::c_uint,
7932    ) -> cudaError_t;
7933    pub fn cudaArrayGetSparseProperties(
7934        sparseProperties: *mut cudaArraySparseProperties,
7935        array: cudaArray_t,
7936    ) -> cudaError_t;
7937    #[cfg(any(
7938        feature = "cuda-11040",
7939        feature = "cuda-11050",
7940        feature = "cuda-11060",
7941        feature = "cuda-11070",
7942        feature = "cuda-11080"
7943    ))]
7944    pub fn cudaBindSurfaceToArray(
7945        surfref: *const surfaceReference,
7946        array: cudaArray_const_t,
7947        desc: *const cudaChannelFormatDesc,
7948    ) -> cudaError_t;
7949    #[cfg(any(
7950        feature = "cuda-11040",
7951        feature = "cuda-11050",
7952        feature = "cuda-11060",
7953        feature = "cuda-11070",
7954        feature = "cuda-11080"
7955    ))]
7956    pub fn cudaBindTexture(
7957        offset: *mut usize,
7958        texref: *const textureReference,
7959        devPtr: *const ::core::ffi::c_void,
7960        desc: *const cudaChannelFormatDesc,
7961        size: usize,
7962    ) -> cudaError_t;
7963    #[cfg(any(
7964        feature = "cuda-11040",
7965        feature = "cuda-11050",
7966        feature = "cuda-11060",
7967        feature = "cuda-11070",
7968        feature = "cuda-11080"
7969    ))]
7970    pub fn cudaBindTexture2D(
7971        offset: *mut usize,
7972        texref: *const textureReference,
7973        devPtr: *const ::core::ffi::c_void,
7974        desc: *const cudaChannelFormatDesc,
7975        width: usize,
7976        height: usize,
7977        pitch: usize,
7978    ) -> cudaError_t;
7979    #[cfg(any(
7980        feature = "cuda-11040",
7981        feature = "cuda-11050",
7982        feature = "cuda-11060",
7983        feature = "cuda-11070",
7984        feature = "cuda-11080"
7985    ))]
7986    pub fn cudaBindTextureToArray(
7987        texref: *const textureReference,
7988        array: cudaArray_const_t,
7989        desc: *const cudaChannelFormatDesc,
7990    ) -> cudaError_t;
7991    #[cfg(any(
7992        feature = "cuda-11040",
7993        feature = "cuda-11050",
7994        feature = "cuda-11060",
7995        feature = "cuda-11070",
7996        feature = "cuda-11080"
7997    ))]
7998    pub fn cudaBindTextureToMipmappedArray(
7999        texref: *const textureReference,
8000        mipmappedArray: cudaMipmappedArray_const_t,
8001        desc: *const cudaChannelFormatDesc,
8002    ) -> cudaError_t;
8003    pub fn cudaChooseDevice(
8004        device: *mut ::core::ffi::c_int,
8005        prop: *const cudaDeviceProp,
8006    ) -> cudaError_t;
8007    pub fn cudaCreateChannelDesc(
8008        x: ::core::ffi::c_int,
8009        y: ::core::ffi::c_int,
8010        z: ::core::ffi::c_int,
8011        w: ::core::ffi::c_int,
8012        f: cudaChannelFormatKind,
8013    ) -> cudaChannelFormatDesc;
8014    pub fn cudaCreateSurfaceObject(
8015        pSurfObject: *mut cudaSurfaceObject_t,
8016        pResDesc: *const cudaResourceDesc,
8017    ) -> cudaError_t;
8018    pub fn cudaCreateTextureObject(
8019        pTexObject: *mut cudaTextureObject_t,
8020        pResDesc: *const cudaResourceDesc,
8021        pTexDesc: *const cudaTextureDesc,
8022        pResViewDesc: *const cudaResourceViewDesc,
8023    ) -> cudaError_t;
8024    #[cfg(any(feature = "cuda-11080"))]
8025    pub fn cudaCreateTextureObject_v2(
8026        pTexObject: *mut cudaTextureObject_t,
8027        pResDesc: *const cudaResourceDesc,
8028        pTexDesc: *const cudaTextureDesc_v2,
8029        pResViewDesc: *const cudaResourceViewDesc,
8030    ) -> cudaError_t;
8031    pub fn cudaCtxResetPersistingL2Cache() -> cudaError_t;
8032    pub fn cudaDestroyExternalMemory(extMem: cudaExternalMemory_t) -> cudaError_t;
8033    pub fn cudaDestroyExternalSemaphore(extSem: cudaExternalSemaphore_t) -> cudaError_t;
8034    pub fn cudaDestroySurfaceObject(surfObject: cudaSurfaceObject_t) -> cudaError_t;
8035    pub fn cudaDestroyTextureObject(texObject: cudaTextureObject_t) -> cudaError_t;
8036    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8037    pub fn cudaDevResourceGenerateDesc(
8038        phDesc: *mut cudaDevResourceDesc_t,
8039        resources: *mut cudaDevResource,
8040        nbResources: ::core::ffi::c_uint,
8041    ) -> cudaError_t;
8042    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8043    pub fn cudaDevSmResourceSplit(
8044        result: *mut cudaDevResource,
8045        nbGroups: ::core::ffi::c_uint,
8046        input: *const cudaDevResource,
8047        remainder: *mut cudaDevResource,
8048        flags: ::core::ffi::c_uint,
8049        groupParams: *mut cudaDevSmResourceGroupParams,
8050    ) -> cudaError_t;
8051    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8052    pub fn cudaDevSmResourceSplitByCount(
8053        result: *mut cudaDevResource,
8054        nbGroups: *mut ::core::ffi::c_uint,
8055        input: *const cudaDevResource,
8056        remaining: *mut cudaDevResource,
8057        flags: ::core::ffi::c_uint,
8058        minCount: ::core::ffi::c_uint,
8059    ) -> cudaError_t;
8060    pub fn cudaDeviceCanAccessPeer(
8061        canAccessPeer: *mut ::core::ffi::c_int,
8062        device: ::core::ffi::c_int,
8063        peerDevice: ::core::ffi::c_int,
8064    ) -> cudaError_t;
8065    pub fn cudaDeviceDisablePeerAccess(peerDevice: ::core::ffi::c_int) -> cudaError_t;
8066    pub fn cudaDeviceEnablePeerAccess(
8067        peerDevice: ::core::ffi::c_int,
8068        flags: ::core::ffi::c_uint,
8069    ) -> cudaError_t;
8070    pub fn cudaDeviceFlushGPUDirectRDMAWrites(
8071        target: cudaFlushGPUDirectRDMAWritesTarget,
8072        scope: cudaFlushGPUDirectRDMAWritesScope,
8073    ) -> cudaError_t;
8074    pub fn cudaDeviceGetAttribute(
8075        value: *mut ::core::ffi::c_int,
8076        attr: cudaDeviceAttr,
8077        device: ::core::ffi::c_int,
8078    ) -> cudaError_t;
8079    pub fn cudaDeviceGetByPCIBusId(
8080        device: *mut ::core::ffi::c_int,
8081        pciBusId: *const ::core::ffi::c_char,
8082    ) -> cudaError_t;
8083    pub fn cudaDeviceGetCacheConfig(pCacheConfig: *mut cudaFuncCache) -> cudaError_t;
8084    pub fn cudaDeviceGetDefaultMemPool(
8085        memPool: *mut cudaMemPool_t,
8086        device: ::core::ffi::c_int,
8087    ) -> cudaError_t;
8088    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8089    pub fn cudaDeviceGetDevResource(
8090        device: ::core::ffi::c_int,
8091        resource: *mut cudaDevResource,
8092        type_: cudaDevResourceType,
8093    ) -> cudaError_t;
8094    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8095    pub fn cudaDeviceGetExecutionCtx(
8096        ctx: *mut cudaExecutionContext_t,
8097        device: ::core::ffi::c_int,
8098    ) -> cudaError_t;
8099    pub fn cudaDeviceGetGraphMemAttribute(
8100        device: ::core::ffi::c_int,
8101        attr: cudaGraphMemAttributeType,
8102        value: *mut ::core::ffi::c_void,
8103    ) -> cudaError_t;
8104    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
8105    pub fn cudaDeviceGetHostAtomicCapabilities(
8106        capabilities: *mut ::core::ffi::c_uint,
8107        operations: *const cudaAtomicOperation,
8108        count: ::core::ffi::c_uint,
8109        device: ::core::ffi::c_int,
8110    ) -> cudaError_t;
8111    pub fn cudaDeviceGetLimit(pValue: *mut usize, limit: cudaLimit) -> cudaError_t;
8112    pub fn cudaDeviceGetMemPool(
8113        memPool: *mut cudaMemPool_t,
8114        device: ::core::ffi::c_int,
8115    ) -> cudaError_t;
8116    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
8117    pub fn cudaDeviceGetP2PAtomicCapabilities(
8118        capabilities: *mut ::core::ffi::c_uint,
8119        operations: *const cudaAtomicOperation,
8120        count: ::core::ffi::c_uint,
8121        srcDevice: ::core::ffi::c_int,
8122        dstDevice: ::core::ffi::c_int,
8123    ) -> cudaError_t;
8124    pub fn cudaDeviceGetP2PAttribute(
8125        value: *mut ::core::ffi::c_int,
8126        attr: cudaDeviceP2PAttr,
8127        srcDevice: ::core::ffi::c_int,
8128        dstDevice: ::core::ffi::c_int,
8129    ) -> cudaError_t;
8130    pub fn cudaDeviceGetPCIBusId(
8131        pciBusId: *mut ::core::ffi::c_char,
8132        len: ::core::ffi::c_int,
8133        device: ::core::ffi::c_int,
8134    ) -> cudaError_t;
8135    pub fn cudaDeviceGetSharedMemConfig(pConfig: *mut cudaSharedMemConfig) -> cudaError_t;
8136    pub fn cudaDeviceGetStreamPriorityRange(
8137        leastPriority: *mut ::core::ffi::c_int,
8138        greatestPriority: *mut ::core::ffi::c_int,
8139    ) -> cudaError_t;
8140    pub fn cudaDeviceGetTexture1DLinearMaxWidth(
8141        maxWidthInElements: *mut usize,
8142        fmtDesc: *const cudaChannelFormatDesc,
8143        device: ::core::ffi::c_int,
8144    ) -> cudaError_t;
8145    pub fn cudaDeviceGraphMemTrim(device: ::core::ffi::c_int) -> cudaError_t;
8146    #[cfg(any(
8147        feature = "cuda-12040",
8148        feature = "cuda-12050",
8149        feature = "cuda-12060",
8150        feature = "cuda-12080",
8151        feature = "cuda-12090",
8152        feature = "cuda-13000",
8153        feature = "cuda-13010",
8154        feature = "cuda-13020"
8155    ))]
8156    pub fn cudaDeviceRegisterAsyncNotification(
8157        device: ::core::ffi::c_int,
8158        callbackFunc: cudaAsyncCallback,
8159        userData: *mut ::core::ffi::c_void,
8160        callback: *mut cudaAsyncCallbackHandle_t,
8161    ) -> cudaError_t;
8162    pub fn cudaDeviceReset() -> cudaError_t;
8163    pub fn cudaDeviceSetCacheConfig(cacheConfig: cudaFuncCache) -> cudaError_t;
8164    pub fn cudaDeviceSetGraphMemAttribute(
8165        device: ::core::ffi::c_int,
8166        attr: cudaGraphMemAttributeType,
8167        value: *mut ::core::ffi::c_void,
8168    ) -> cudaError_t;
8169    pub fn cudaDeviceSetLimit(limit: cudaLimit, value: usize) -> cudaError_t;
8170    pub fn cudaDeviceSetMemPool(device: ::core::ffi::c_int, memPool: cudaMemPool_t) -> cudaError_t;
8171    pub fn cudaDeviceSetSharedMemConfig(config: cudaSharedMemConfig) -> cudaError_t;
8172    pub fn cudaDeviceSynchronize() -> cudaError_t;
8173    #[cfg(any(
8174        feature = "cuda-12040",
8175        feature = "cuda-12050",
8176        feature = "cuda-12060",
8177        feature = "cuda-12080",
8178        feature = "cuda-12090",
8179        feature = "cuda-13000",
8180        feature = "cuda-13010",
8181        feature = "cuda-13020"
8182    ))]
8183    pub fn cudaDeviceUnregisterAsyncNotification(
8184        device: ::core::ffi::c_int,
8185        callback: cudaAsyncCallbackHandle_t,
8186    ) -> cudaError_t;
8187    pub fn cudaDriverGetVersion(driverVersion: *mut ::core::ffi::c_int) -> cudaError_t;
8188    pub fn cudaEventCreate(event: *mut cudaEvent_t) -> cudaError_t;
8189    pub fn cudaEventCreateWithFlags(
8190        event: *mut cudaEvent_t,
8191        flags: ::core::ffi::c_uint,
8192    ) -> cudaError_t;
8193    pub fn cudaEventDestroy(event: cudaEvent_t) -> cudaError_t;
8194    pub fn cudaEventElapsedTime(ms: *mut f32, start: cudaEvent_t, end: cudaEvent_t) -> cudaError_t;
8195    #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
8196    pub fn cudaEventElapsedTime_v2(
8197        ms: *mut f32,
8198        start: cudaEvent_t,
8199        end: cudaEvent_t,
8200    ) -> cudaError_t;
8201    pub fn cudaEventQuery(event: cudaEvent_t) -> cudaError_t;
8202    pub fn cudaEventRecord(event: cudaEvent_t, stream: cudaStream_t) -> cudaError_t;
8203    pub fn cudaEventRecordWithFlags(
8204        event: cudaEvent_t,
8205        stream: cudaStream_t,
8206        flags: ::core::ffi::c_uint,
8207    ) -> cudaError_t;
8208    pub fn cudaEventSynchronize(event: cudaEvent_t) -> cudaError_t;
8209    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8210    pub fn cudaExecutionCtxDestroy(ctx: cudaExecutionContext_t) -> cudaError_t;
8211    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8212    pub fn cudaExecutionCtxGetDevResource(
8213        ctx: cudaExecutionContext_t,
8214        resource: *mut cudaDevResource,
8215        type_: cudaDevResourceType,
8216    ) -> cudaError_t;
8217    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8218    pub fn cudaExecutionCtxGetDevice(
8219        device: *mut ::core::ffi::c_int,
8220        ctx: cudaExecutionContext_t,
8221    ) -> cudaError_t;
8222    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8223    pub fn cudaExecutionCtxGetId(
8224        ctx: cudaExecutionContext_t,
8225        ctxId: *mut ::core::ffi::c_ulonglong,
8226    ) -> cudaError_t;
8227    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8228    pub fn cudaExecutionCtxRecordEvent(
8229        ctx: cudaExecutionContext_t,
8230        event: cudaEvent_t,
8231    ) -> cudaError_t;
8232    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8233    pub fn cudaExecutionCtxStreamCreate(
8234        phStream: *mut cudaStream_t,
8235        ctx: cudaExecutionContext_t,
8236        flags: ::core::ffi::c_uint,
8237        priority: ::core::ffi::c_int,
8238    ) -> cudaError_t;
8239    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8240    pub fn cudaExecutionCtxSynchronize(ctx: cudaExecutionContext_t) -> cudaError_t;
8241    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8242    pub fn cudaExecutionCtxWaitEvent(
8243        ctx: cudaExecutionContext_t,
8244        event: cudaEvent_t,
8245    ) -> cudaError_t;
8246    pub fn cudaExternalMemoryGetMappedBuffer(
8247        devPtr: *mut *mut ::core::ffi::c_void,
8248        extMem: cudaExternalMemory_t,
8249        bufferDesc: *const cudaExternalMemoryBufferDesc,
8250    ) -> cudaError_t;
8251    pub fn cudaExternalMemoryGetMappedMipmappedArray(
8252        mipmap: *mut cudaMipmappedArray_t,
8253        extMem: cudaExternalMemory_t,
8254        mipmapDesc: *const cudaExternalMemoryMipmappedArrayDesc,
8255    ) -> cudaError_t;
8256    pub fn cudaFree(devPtr: *mut ::core::ffi::c_void) -> cudaError_t;
8257    pub fn cudaFreeArray(array: cudaArray_t) -> cudaError_t;
8258    pub fn cudaFreeAsync(devPtr: *mut ::core::ffi::c_void, hStream: cudaStream_t) -> cudaError_t;
8259    pub fn cudaFreeHost(ptr: *mut ::core::ffi::c_void) -> cudaError_t;
8260    pub fn cudaFreeMipmappedArray(mipmappedArray: cudaMipmappedArray_t) -> cudaError_t;
8261    pub fn cudaFuncGetAttributes(
8262        attr: *mut cudaFuncAttributes,
8263        func: *const ::core::ffi::c_void,
8264    ) -> cudaError_t;
8265    #[cfg(any(
8266        feature = "cuda-12030",
8267        feature = "cuda-12040",
8268        feature = "cuda-12050",
8269        feature = "cuda-12060",
8270        feature = "cuda-12080",
8271        feature = "cuda-12090",
8272        feature = "cuda-13000",
8273        feature = "cuda-13010",
8274        feature = "cuda-13020"
8275    ))]
8276    pub fn cudaFuncGetName(
8277        name: *mut *const ::core::ffi::c_char,
8278        func: *const ::core::ffi::c_void,
8279    ) -> cudaError_t;
8280    #[cfg(any(feature = "cuda-13020"))]
8281    pub fn cudaFuncGetParamCount(
8282        func: *const ::core::ffi::c_void,
8283        paramCount: *mut usize,
8284    ) -> cudaError_t;
8285    #[cfg(any(
8286        feature = "cuda-12040",
8287        feature = "cuda-12050",
8288        feature = "cuda-12060",
8289        feature = "cuda-12080",
8290        feature = "cuda-12090",
8291        feature = "cuda-13000",
8292        feature = "cuda-13010",
8293        feature = "cuda-13020"
8294    ))]
8295    pub fn cudaFuncGetParamInfo(
8296        func: *const ::core::ffi::c_void,
8297        paramIndex: usize,
8298        paramOffset: *mut usize,
8299        paramSize: *mut usize,
8300    ) -> cudaError_t;
8301    pub fn cudaFuncSetAttribute(
8302        func: *const ::core::ffi::c_void,
8303        attr: cudaFuncAttribute,
8304        value: ::core::ffi::c_int,
8305    ) -> cudaError_t;
8306    pub fn cudaFuncSetCacheConfig(
8307        func: *const ::core::ffi::c_void,
8308        cacheConfig: cudaFuncCache,
8309    ) -> cudaError_t;
8310    pub fn cudaFuncSetSharedMemConfig(
8311        func: *const ::core::ffi::c_void,
8312        config: cudaSharedMemConfig,
8313    ) -> cudaError_t;
8314    pub fn cudaGetChannelDesc(
8315        desc: *mut cudaChannelFormatDesc,
8316        array: cudaArray_const_t,
8317    ) -> cudaError_t;
8318    pub fn cudaGetDevice(device: *mut ::core::ffi::c_int) -> cudaError_t;
8319    pub fn cudaGetDeviceCount(count: *mut ::core::ffi::c_int) -> cudaError_t;
8320    pub fn cudaGetDeviceFlags(flags: *mut ::core::ffi::c_uint) -> cudaError_t;
8321    #[cfg(any(
8322        feature = "cuda-11040",
8323        feature = "cuda-11050",
8324        feature = "cuda-11060",
8325        feature = "cuda-11070",
8326        feature = "cuda-11080",
8327        feature = "cuda-13000",
8328        feature = "cuda-13010",
8329        feature = "cuda-13020"
8330    ))]
8331    pub fn cudaGetDeviceProperties(
8332        prop: *mut cudaDeviceProp,
8333        device: ::core::ffi::c_int,
8334    ) -> cudaError_t;
8335    #[cfg(any(
8336        feature = "cuda-12000",
8337        feature = "cuda-12010",
8338        feature = "cuda-12020",
8339        feature = "cuda-12030",
8340        feature = "cuda-12040",
8341        feature = "cuda-12050",
8342        feature = "cuda-12060",
8343        feature = "cuda-12080",
8344        feature = "cuda-12090"
8345    ))]
8346    pub fn cudaGetDeviceProperties_v2(
8347        prop: *mut cudaDeviceProp,
8348        device: ::core::ffi::c_int,
8349    ) -> cudaError_t;
8350    #[cfg(any(
8351        feature = "cuda-11040",
8352        feature = "cuda-11050",
8353        feature = "cuda-11060",
8354        feature = "cuda-11070",
8355        feature = "cuda-11080"
8356    ))]
8357    pub fn cudaGetDriverEntryPoint(
8358        symbol: *const ::core::ffi::c_char,
8359        funcPtr: *mut *mut ::core::ffi::c_void,
8360        flags: ::core::ffi::c_ulonglong,
8361    ) -> cudaError_t;
8362    #[cfg(any(
8363        feature = "cuda-12000",
8364        feature = "cuda-12010",
8365        feature = "cuda-12020",
8366        feature = "cuda-12030",
8367        feature = "cuda-12040",
8368        feature = "cuda-12050",
8369        feature = "cuda-12060",
8370        feature = "cuda-12080",
8371        feature = "cuda-12090",
8372        feature = "cuda-13000",
8373        feature = "cuda-13010",
8374        feature = "cuda-13020"
8375    ))]
8376    pub fn cudaGetDriverEntryPoint(
8377        symbol: *const ::core::ffi::c_char,
8378        funcPtr: *mut *mut ::core::ffi::c_void,
8379        flags: ::core::ffi::c_ulonglong,
8380        driverStatus: *mut cudaDriverEntryPointQueryResult,
8381    ) -> cudaError_t;
8382    #[cfg(any(
8383        feature = "cuda-12050",
8384        feature = "cuda-12060",
8385        feature = "cuda-12080",
8386        feature = "cuda-12090",
8387        feature = "cuda-13000",
8388        feature = "cuda-13010",
8389        feature = "cuda-13020"
8390    ))]
8391    pub fn cudaGetDriverEntryPointByVersion(
8392        symbol: *const ::core::ffi::c_char,
8393        funcPtr: *mut *mut ::core::ffi::c_void,
8394        cudaVersion: ::core::ffi::c_uint,
8395        flags: ::core::ffi::c_ulonglong,
8396        driverStatus: *mut cudaDriverEntryPointQueryResult,
8397    ) -> cudaError_t;
8398    pub fn cudaGetErrorName(error: cudaError_t) -> *const ::core::ffi::c_char;
8399    pub fn cudaGetErrorString(error: cudaError_t) -> *const ::core::ffi::c_char;
8400    pub fn cudaGetExportTable(
8401        ppExportTable: *mut *const ::core::ffi::c_void,
8402        pExportTableId: *const cudaUUID_t,
8403    ) -> cudaError_t;
8404    pub fn cudaGetFuncBySymbol(
8405        functionPtr: *mut cudaFunction_t,
8406        symbolPtr: *const ::core::ffi::c_void,
8407    ) -> cudaError_t;
8408    #[cfg(any(
8409        feature = "cuda-12010",
8410        feature = "cuda-12020",
8411        feature = "cuda-12030",
8412        feature = "cuda-12040",
8413        feature = "cuda-12050",
8414        feature = "cuda-12060",
8415        feature = "cuda-12080",
8416        feature = "cuda-12090",
8417        feature = "cuda-13000",
8418        feature = "cuda-13010",
8419        feature = "cuda-13020"
8420    ))]
8421    pub fn cudaGetKernel(
8422        kernelPtr: *mut cudaKernel_t,
8423        entryFuncAddr: *const ::core::ffi::c_void,
8424    ) -> cudaError_t;
8425    pub fn cudaGetLastError() -> cudaError_t;
8426    pub fn cudaGetMipmappedArrayLevel(
8427        levelArray: *mut cudaArray_t,
8428        mipmappedArray: cudaMipmappedArray_const_t,
8429        level: ::core::ffi::c_uint,
8430    ) -> cudaError_t;
8431    pub fn cudaGetSurfaceObjectResourceDesc(
8432        pResDesc: *mut cudaResourceDesc,
8433        surfObject: cudaSurfaceObject_t,
8434    ) -> cudaError_t;
8435    #[cfg(any(
8436        feature = "cuda-11040",
8437        feature = "cuda-11050",
8438        feature = "cuda-11060",
8439        feature = "cuda-11070",
8440        feature = "cuda-11080"
8441    ))]
8442    pub fn cudaGetSurfaceReference(
8443        surfref: *mut *const surfaceReference,
8444        symbol: *const ::core::ffi::c_void,
8445    ) -> cudaError_t;
8446    pub fn cudaGetSymbolAddress(
8447        devPtr: *mut *mut ::core::ffi::c_void,
8448        symbol: *const ::core::ffi::c_void,
8449    ) -> cudaError_t;
8450    pub fn cudaGetSymbolSize(size: *mut usize, symbol: *const ::core::ffi::c_void) -> cudaError_t;
8451    #[cfg(any(
8452        feature = "cuda-11040",
8453        feature = "cuda-11050",
8454        feature = "cuda-11060",
8455        feature = "cuda-11070",
8456        feature = "cuda-11080"
8457    ))]
8458    pub fn cudaGetTextureAlignmentOffset(
8459        offset: *mut usize,
8460        texref: *const textureReference,
8461    ) -> cudaError_t;
8462    pub fn cudaGetTextureObjectResourceDesc(
8463        pResDesc: *mut cudaResourceDesc,
8464        texObject: cudaTextureObject_t,
8465    ) -> cudaError_t;
8466    pub fn cudaGetTextureObjectResourceViewDesc(
8467        pResViewDesc: *mut cudaResourceViewDesc,
8468        texObject: cudaTextureObject_t,
8469    ) -> cudaError_t;
8470    pub fn cudaGetTextureObjectTextureDesc(
8471        pTexDesc: *mut cudaTextureDesc,
8472        texObject: cudaTextureObject_t,
8473    ) -> cudaError_t;
8474    #[cfg(any(feature = "cuda-11080"))]
8475    pub fn cudaGetTextureObjectTextureDesc_v2(
8476        pTexDesc: *mut cudaTextureDesc_v2,
8477        texObject: cudaTextureObject_t,
8478    ) -> cudaError_t;
8479    #[cfg(any(
8480        feature = "cuda-11040",
8481        feature = "cuda-11050",
8482        feature = "cuda-11060",
8483        feature = "cuda-11070",
8484        feature = "cuda-11080"
8485    ))]
8486    pub fn cudaGetTextureReference(
8487        texref: *mut *const textureReference,
8488        symbol: *const ::core::ffi::c_void,
8489    ) -> cudaError_t;
8490    pub fn cudaGraphAddChildGraphNode(
8491        pGraphNode: *mut cudaGraphNode_t,
8492        graph: cudaGraph_t,
8493        pDependencies: *const cudaGraphNode_t,
8494        numDependencies: usize,
8495        childGraph: cudaGraph_t,
8496    ) -> cudaError_t;
8497    #[cfg(any(
8498        feature = "cuda-11040",
8499        feature = "cuda-11050",
8500        feature = "cuda-11060",
8501        feature = "cuda-11070",
8502        feature = "cuda-11080",
8503        feature = "cuda-12000",
8504        feature = "cuda-12010",
8505        feature = "cuda-12020",
8506        feature = "cuda-12030",
8507        feature = "cuda-12040",
8508        feature = "cuda-12050",
8509        feature = "cuda-12060",
8510        feature = "cuda-12080",
8511        feature = "cuda-12090"
8512    ))]
8513    pub fn cudaGraphAddDependencies(
8514        graph: cudaGraph_t,
8515        from: *const cudaGraphNode_t,
8516        to: *const cudaGraphNode_t,
8517        numDependencies: usize,
8518    ) -> cudaError_t;
8519    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
8520    pub fn cudaGraphAddDependencies(
8521        graph: cudaGraph_t,
8522        from: *const cudaGraphNode_t,
8523        to: *const cudaGraphNode_t,
8524        edgeData: *const cudaGraphEdgeData,
8525        numDependencies: usize,
8526    ) -> cudaError_t;
8527    #[cfg(any(
8528        feature = "cuda-12030",
8529        feature = "cuda-12040",
8530        feature = "cuda-12050",
8531        feature = "cuda-12060",
8532        feature = "cuda-12080",
8533        feature = "cuda-12090"
8534    ))]
8535    pub fn cudaGraphAddDependencies_v2(
8536        graph: cudaGraph_t,
8537        from: *const cudaGraphNode_t,
8538        to: *const cudaGraphNode_t,
8539        edgeData: *const cudaGraphEdgeData,
8540        numDependencies: usize,
8541    ) -> cudaError_t;
8542    pub fn cudaGraphAddEmptyNode(
8543        pGraphNode: *mut cudaGraphNode_t,
8544        graph: cudaGraph_t,
8545        pDependencies: *const cudaGraphNode_t,
8546        numDependencies: usize,
8547    ) -> cudaError_t;
8548    pub fn cudaGraphAddEventRecordNode(
8549        pGraphNode: *mut cudaGraphNode_t,
8550        graph: cudaGraph_t,
8551        pDependencies: *const cudaGraphNode_t,
8552        numDependencies: usize,
8553        event: cudaEvent_t,
8554    ) -> cudaError_t;
8555    pub fn cudaGraphAddEventWaitNode(
8556        pGraphNode: *mut cudaGraphNode_t,
8557        graph: cudaGraph_t,
8558        pDependencies: *const cudaGraphNode_t,
8559        numDependencies: usize,
8560        event: cudaEvent_t,
8561    ) -> cudaError_t;
8562    pub fn cudaGraphAddExternalSemaphoresSignalNode(
8563        pGraphNode: *mut cudaGraphNode_t,
8564        graph: cudaGraph_t,
8565        pDependencies: *const cudaGraphNode_t,
8566        numDependencies: usize,
8567        nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
8568    ) -> cudaError_t;
8569    pub fn cudaGraphAddExternalSemaphoresWaitNode(
8570        pGraphNode: *mut cudaGraphNode_t,
8571        graph: cudaGraph_t,
8572        pDependencies: *const cudaGraphNode_t,
8573        numDependencies: usize,
8574        nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
8575    ) -> cudaError_t;
8576    pub fn cudaGraphAddHostNode(
8577        pGraphNode: *mut cudaGraphNode_t,
8578        graph: cudaGraph_t,
8579        pDependencies: *const cudaGraphNode_t,
8580        numDependencies: usize,
8581        pNodeParams: *const cudaHostNodeParams,
8582    ) -> cudaError_t;
8583    pub fn cudaGraphAddKernelNode(
8584        pGraphNode: *mut cudaGraphNode_t,
8585        graph: cudaGraph_t,
8586        pDependencies: *const cudaGraphNode_t,
8587        numDependencies: usize,
8588        pNodeParams: *const cudaKernelNodeParams,
8589    ) -> cudaError_t;
8590    pub fn cudaGraphAddMemAllocNode(
8591        pGraphNode: *mut cudaGraphNode_t,
8592        graph: cudaGraph_t,
8593        pDependencies: *const cudaGraphNode_t,
8594        numDependencies: usize,
8595        nodeParams: *mut cudaMemAllocNodeParams,
8596    ) -> cudaError_t;
8597    pub fn cudaGraphAddMemFreeNode(
8598        pGraphNode: *mut cudaGraphNode_t,
8599        graph: cudaGraph_t,
8600        pDependencies: *const cudaGraphNode_t,
8601        numDependencies: usize,
8602        dptr: *mut ::core::ffi::c_void,
8603    ) -> cudaError_t;
8604    pub fn cudaGraphAddMemcpyNode(
8605        pGraphNode: *mut cudaGraphNode_t,
8606        graph: cudaGraph_t,
8607        pDependencies: *const cudaGraphNode_t,
8608        numDependencies: usize,
8609        pCopyParams: *const cudaMemcpy3DParms,
8610    ) -> cudaError_t;
8611    pub fn cudaGraphAddMemcpyNode1D(
8612        pGraphNode: *mut cudaGraphNode_t,
8613        graph: cudaGraph_t,
8614        pDependencies: *const cudaGraphNode_t,
8615        numDependencies: usize,
8616        dst: *mut ::core::ffi::c_void,
8617        src: *const ::core::ffi::c_void,
8618        count: usize,
8619        kind: cudaMemcpyKind,
8620    ) -> cudaError_t;
8621    pub fn cudaGraphAddMemcpyNodeFromSymbol(
8622        pGraphNode: *mut cudaGraphNode_t,
8623        graph: cudaGraph_t,
8624        pDependencies: *const cudaGraphNode_t,
8625        numDependencies: usize,
8626        dst: *mut ::core::ffi::c_void,
8627        symbol: *const ::core::ffi::c_void,
8628        count: usize,
8629        offset: usize,
8630        kind: cudaMemcpyKind,
8631    ) -> cudaError_t;
8632    pub fn cudaGraphAddMemcpyNodeToSymbol(
8633        pGraphNode: *mut cudaGraphNode_t,
8634        graph: cudaGraph_t,
8635        pDependencies: *const cudaGraphNode_t,
8636        numDependencies: usize,
8637        symbol: *const ::core::ffi::c_void,
8638        src: *const ::core::ffi::c_void,
8639        count: usize,
8640        offset: usize,
8641        kind: cudaMemcpyKind,
8642    ) -> cudaError_t;
8643    pub fn cudaGraphAddMemsetNode(
8644        pGraphNode: *mut cudaGraphNode_t,
8645        graph: cudaGraph_t,
8646        pDependencies: *const cudaGraphNode_t,
8647        numDependencies: usize,
8648        pMemsetParams: *const cudaMemsetParams,
8649    ) -> cudaError_t;
8650    #[cfg(any(
8651        feature = "cuda-12020",
8652        feature = "cuda-12030",
8653        feature = "cuda-12040",
8654        feature = "cuda-12050",
8655        feature = "cuda-12060",
8656        feature = "cuda-12080",
8657        feature = "cuda-12090"
8658    ))]
8659    pub fn cudaGraphAddNode(
8660        pGraphNode: *mut cudaGraphNode_t,
8661        graph: cudaGraph_t,
8662        pDependencies: *const cudaGraphNode_t,
8663        numDependencies: usize,
8664        nodeParams: *mut cudaGraphNodeParams,
8665    ) -> cudaError_t;
8666    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
8667    pub fn cudaGraphAddNode(
8668        pGraphNode: *mut cudaGraphNode_t,
8669        graph: cudaGraph_t,
8670        pDependencies: *const cudaGraphNode_t,
8671        dependencyData: *const cudaGraphEdgeData,
8672        numDependencies: usize,
8673        nodeParams: *mut cudaGraphNodeParams,
8674    ) -> cudaError_t;
8675    #[cfg(any(
8676        feature = "cuda-12030",
8677        feature = "cuda-12040",
8678        feature = "cuda-12050",
8679        feature = "cuda-12060",
8680        feature = "cuda-12080",
8681        feature = "cuda-12090"
8682    ))]
8683    pub fn cudaGraphAddNode_v2(
8684        pGraphNode: *mut cudaGraphNode_t,
8685        graph: cudaGraph_t,
8686        pDependencies: *const cudaGraphNode_t,
8687        dependencyData: *const cudaGraphEdgeData,
8688        numDependencies: usize,
8689        nodeParams: *mut cudaGraphNodeParams,
8690    ) -> cudaError_t;
8691    pub fn cudaGraphChildGraphNodeGetGraph(
8692        node: cudaGraphNode_t,
8693        pGraph: *mut cudaGraph_t,
8694    ) -> cudaError_t;
8695    pub fn cudaGraphClone(pGraphClone: *mut cudaGraph_t, originalGraph: cudaGraph_t)
8696        -> cudaError_t;
8697    #[cfg(any(
8698        feature = "cuda-12030",
8699        feature = "cuda-12040",
8700        feature = "cuda-12050",
8701        feature = "cuda-12060",
8702        feature = "cuda-12080",
8703        feature = "cuda-12090",
8704        feature = "cuda-13000",
8705        feature = "cuda-13010",
8706        feature = "cuda-13020"
8707    ))]
8708    pub fn cudaGraphConditionalHandleCreate(
8709        pHandle_out: *mut cudaGraphConditionalHandle,
8710        graph: cudaGraph_t,
8711        defaultLaunchValue: ::core::ffi::c_uint,
8712        flags: ::core::ffi::c_uint,
8713    ) -> cudaError_t;
8714    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8715    pub fn cudaGraphConditionalHandleCreate_v2(
8716        pHandle_out: *mut cudaGraphConditionalHandle,
8717        graph: cudaGraph_t,
8718        ctx: cudaExecutionContext_t,
8719        defaultLaunchValue: ::core::ffi::c_uint,
8720        flags: ::core::ffi::c_uint,
8721    ) -> cudaError_t;
8722    pub fn cudaGraphCreate(pGraph: *mut cudaGraph_t, flags: ::core::ffi::c_uint) -> cudaError_t;
8723    pub fn cudaGraphDebugDotPrint(
8724        graph: cudaGraph_t,
8725        path: *const ::core::ffi::c_char,
8726        flags: ::core::ffi::c_uint,
8727    ) -> cudaError_t;
8728    pub fn cudaGraphDestroy(graph: cudaGraph_t) -> cudaError_t;
8729    pub fn cudaGraphDestroyNode(node: cudaGraphNode_t) -> cudaError_t;
8730    pub fn cudaGraphEventRecordNodeGetEvent(
8731        node: cudaGraphNode_t,
8732        event_out: *mut cudaEvent_t,
8733    ) -> cudaError_t;
8734    pub fn cudaGraphEventRecordNodeSetEvent(
8735        node: cudaGraphNode_t,
8736        event: cudaEvent_t,
8737    ) -> cudaError_t;
8738    pub fn cudaGraphEventWaitNodeGetEvent(
8739        node: cudaGraphNode_t,
8740        event_out: *mut cudaEvent_t,
8741    ) -> cudaError_t;
8742    pub fn cudaGraphEventWaitNodeSetEvent(node: cudaGraphNode_t, event: cudaEvent_t)
8743        -> cudaError_t;
8744    pub fn cudaGraphExecChildGraphNodeSetParams(
8745        hGraphExec: cudaGraphExec_t,
8746        node: cudaGraphNode_t,
8747        childGraph: cudaGraph_t,
8748    ) -> cudaError_t;
8749    pub fn cudaGraphExecDestroy(graphExec: cudaGraphExec_t) -> cudaError_t;
8750    pub fn cudaGraphExecEventRecordNodeSetEvent(
8751        hGraphExec: cudaGraphExec_t,
8752        hNode: cudaGraphNode_t,
8753        event: cudaEvent_t,
8754    ) -> cudaError_t;
8755    pub fn cudaGraphExecEventWaitNodeSetEvent(
8756        hGraphExec: cudaGraphExec_t,
8757        hNode: cudaGraphNode_t,
8758        event: cudaEvent_t,
8759    ) -> cudaError_t;
8760    pub fn cudaGraphExecExternalSemaphoresSignalNodeSetParams(
8761        hGraphExec: cudaGraphExec_t,
8762        hNode: cudaGraphNode_t,
8763        nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
8764    ) -> cudaError_t;
8765    pub fn cudaGraphExecExternalSemaphoresWaitNodeSetParams(
8766        hGraphExec: cudaGraphExec_t,
8767        hNode: cudaGraphNode_t,
8768        nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
8769    ) -> cudaError_t;
8770    #[cfg(any(
8771        feature = "cuda-12000",
8772        feature = "cuda-12010",
8773        feature = "cuda-12020",
8774        feature = "cuda-12030",
8775        feature = "cuda-12040",
8776        feature = "cuda-12050",
8777        feature = "cuda-12060",
8778        feature = "cuda-12080",
8779        feature = "cuda-12090",
8780        feature = "cuda-13000",
8781        feature = "cuda-13010",
8782        feature = "cuda-13020"
8783    ))]
8784    pub fn cudaGraphExecGetFlags(
8785        graphExec: cudaGraphExec_t,
8786        flags: *mut ::core::ffi::c_ulonglong,
8787    ) -> cudaError_t;
8788    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8789    pub fn cudaGraphExecGetId(
8790        hGraphExec: cudaGraphExec_t,
8791        graphID: *mut ::core::ffi::c_uint,
8792    ) -> cudaError_t;
8793    pub fn cudaGraphExecHostNodeSetParams(
8794        hGraphExec: cudaGraphExec_t,
8795        node: cudaGraphNode_t,
8796        pNodeParams: *const cudaHostNodeParams,
8797    ) -> cudaError_t;
8798    pub fn cudaGraphExecKernelNodeSetParams(
8799        hGraphExec: cudaGraphExec_t,
8800        node: cudaGraphNode_t,
8801        pNodeParams: *const cudaKernelNodeParams,
8802    ) -> cudaError_t;
8803    pub fn cudaGraphExecMemcpyNodeSetParams(
8804        hGraphExec: cudaGraphExec_t,
8805        node: cudaGraphNode_t,
8806        pNodeParams: *const cudaMemcpy3DParms,
8807    ) -> cudaError_t;
8808    pub fn cudaGraphExecMemcpyNodeSetParams1D(
8809        hGraphExec: cudaGraphExec_t,
8810        node: cudaGraphNode_t,
8811        dst: *mut ::core::ffi::c_void,
8812        src: *const ::core::ffi::c_void,
8813        count: usize,
8814        kind: cudaMemcpyKind,
8815    ) -> cudaError_t;
8816    pub fn cudaGraphExecMemcpyNodeSetParamsFromSymbol(
8817        hGraphExec: cudaGraphExec_t,
8818        node: cudaGraphNode_t,
8819        dst: *mut ::core::ffi::c_void,
8820        symbol: *const ::core::ffi::c_void,
8821        count: usize,
8822        offset: usize,
8823        kind: cudaMemcpyKind,
8824    ) -> cudaError_t;
8825    pub fn cudaGraphExecMemcpyNodeSetParamsToSymbol(
8826        hGraphExec: cudaGraphExec_t,
8827        node: cudaGraphNode_t,
8828        symbol: *const ::core::ffi::c_void,
8829        src: *const ::core::ffi::c_void,
8830        count: usize,
8831        offset: usize,
8832        kind: cudaMemcpyKind,
8833    ) -> cudaError_t;
8834    pub fn cudaGraphExecMemsetNodeSetParams(
8835        hGraphExec: cudaGraphExec_t,
8836        node: cudaGraphNode_t,
8837        pNodeParams: *const cudaMemsetParams,
8838    ) -> cudaError_t;
8839    #[cfg(any(
8840        feature = "cuda-12020",
8841        feature = "cuda-12030",
8842        feature = "cuda-12040",
8843        feature = "cuda-12050",
8844        feature = "cuda-12060",
8845        feature = "cuda-12080",
8846        feature = "cuda-12090",
8847        feature = "cuda-13000",
8848        feature = "cuda-13010",
8849        feature = "cuda-13020"
8850    ))]
8851    pub fn cudaGraphExecNodeSetParams(
8852        graphExec: cudaGraphExec_t,
8853        node: cudaGraphNode_t,
8854        nodeParams: *mut cudaGraphNodeParams,
8855    ) -> cudaError_t;
8856    #[cfg(any(
8857        feature = "cuda-11040",
8858        feature = "cuda-11050",
8859        feature = "cuda-11060",
8860        feature = "cuda-11070",
8861        feature = "cuda-11080"
8862    ))]
8863    pub fn cudaGraphExecUpdate(
8864        hGraphExec: cudaGraphExec_t,
8865        hGraph: cudaGraph_t,
8866        hErrorNode_out: *mut cudaGraphNode_t,
8867        updateResult_out: *mut cudaGraphExecUpdateResult,
8868    ) -> cudaError_t;
8869    #[cfg(any(
8870        feature = "cuda-12000",
8871        feature = "cuda-12010",
8872        feature = "cuda-12020",
8873        feature = "cuda-12030",
8874        feature = "cuda-12040",
8875        feature = "cuda-12050",
8876        feature = "cuda-12060",
8877        feature = "cuda-12080",
8878        feature = "cuda-12090",
8879        feature = "cuda-13000",
8880        feature = "cuda-13010",
8881        feature = "cuda-13020"
8882    ))]
8883    pub fn cudaGraphExecUpdate(
8884        hGraphExec: cudaGraphExec_t,
8885        hGraph: cudaGraph_t,
8886        resultInfo: *mut cudaGraphExecUpdateResultInfo,
8887    ) -> cudaError_t;
8888    pub fn cudaGraphExternalSemaphoresSignalNodeGetParams(
8889        hNode: cudaGraphNode_t,
8890        params_out: *mut cudaExternalSemaphoreSignalNodeParams,
8891    ) -> cudaError_t;
8892    pub fn cudaGraphExternalSemaphoresSignalNodeSetParams(
8893        hNode: cudaGraphNode_t,
8894        nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
8895    ) -> cudaError_t;
8896    pub fn cudaGraphExternalSemaphoresWaitNodeGetParams(
8897        hNode: cudaGraphNode_t,
8898        params_out: *mut cudaExternalSemaphoreWaitNodeParams,
8899    ) -> cudaError_t;
8900    pub fn cudaGraphExternalSemaphoresWaitNodeSetParams(
8901        hNode: cudaGraphNode_t,
8902        nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
8903    ) -> cudaError_t;
8904    #[cfg(any(
8905        feature = "cuda-11040",
8906        feature = "cuda-11050",
8907        feature = "cuda-11060",
8908        feature = "cuda-11070",
8909        feature = "cuda-11080",
8910        feature = "cuda-12000",
8911        feature = "cuda-12010",
8912        feature = "cuda-12020",
8913        feature = "cuda-12030",
8914        feature = "cuda-12040",
8915        feature = "cuda-12050",
8916        feature = "cuda-12060",
8917        feature = "cuda-12080",
8918        feature = "cuda-12090"
8919    ))]
8920    pub fn cudaGraphGetEdges(
8921        graph: cudaGraph_t,
8922        from: *mut cudaGraphNode_t,
8923        to: *mut cudaGraphNode_t,
8924        numEdges: *mut usize,
8925    ) -> cudaError_t;
8926    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
8927    pub fn cudaGraphGetEdges(
8928        graph: cudaGraph_t,
8929        from: *mut cudaGraphNode_t,
8930        to: *mut cudaGraphNode_t,
8931        edgeData: *mut cudaGraphEdgeData,
8932        numEdges: *mut usize,
8933    ) -> cudaError_t;
8934    #[cfg(any(
8935        feature = "cuda-12030",
8936        feature = "cuda-12040",
8937        feature = "cuda-12050",
8938        feature = "cuda-12060",
8939        feature = "cuda-12080",
8940        feature = "cuda-12090"
8941    ))]
8942    pub fn cudaGraphGetEdges_v2(
8943        graph: cudaGraph_t,
8944        from: *mut cudaGraphNode_t,
8945        to: *mut cudaGraphNode_t,
8946        edgeData: *mut cudaGraphEdgeData,
8947        numEdges: *mut usize,
8948    ) -> cudaError_t;
8949    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
8950    pub fn cudaGraphGetId(hGraph: cudaGraph_t, graphID: *mut ::core::ffi::c_uint) -> cudaError_t;
8951    pub fn cudaGraphGetNodes(
8952        graph: cudaGraph_t,
8953        nodes: *mut cudaGraphNode_t,
8954        numNodes: *mut usize,
8955    ) -> cudaError_t;
8956    pub fn cudaGraphGetRootNodes(
8957        graph: cudaGraph_t,
8958        pRootNodes: *mut cudaGraphNode_t,
8959        pNumRootNodes: *mut usize,
8960    ) -> cudaError_t;
8961    pub fn cudaGraphHostNodeGetParams(
8962        node: cudaGraphNode_t,
8963        pNodeParams: *mut cudaHostNodeParams,
8964    ) -> cudaError_t;
8965    pub fn cudaGraphHostNodeSetParams(
8966        node: cudaGraphNode_t,
8967        pNodeParams: *const cudaHostNodeParams,
8968    ) -> cudaError_t;
8969    #[cfg(any(
8970        feature = "cuda-11040",
8971        feature = "cuda-11050",
8972        feature = "cuda-11060",
8973        feature = "cuda-11070",
8974        feature = "cuda-11080"
8975    ))]
8976    pub fn cudaGraphInstantiate(
8977        pGraphExec: *mut cudaGraphExec_t,
8978        graph: cudaGraph_t,
8979        pErrorNode: *mut cudaGraphNode_t,
8980        pLogBuffer: *mut ::core::ffi::c_char,
8981        bufferSize: usize,
8982    ) -> cudaError_t;
8983    #[cfg(any(
8984        feature = "cuda-12000",
8985        feature = "cuda-12010",
8986        feature = "cuda-12020",
8987        feature = "cuda-12030",
8988        feature = "cuda-12040",
8989        feature = "cuda-12050",
8990        feature = "cuda-12060",
8991        feature = "cuda-12080",
8992        feature = "cuda-12090",
8993        feature = "cuda-13000",
8994        feature = "cuda-13010",
8995        feature = "cuda-13020"
8996    ))]
8997    pub fn cudaGraphInstantiate(
8998        pGraphExec: *mut cudaGraphExec_t,
8999        graph: cudaGraph_t,
9000        flags: ::core::ffi::c_ulonglong,
9001    ) -> cudaError_t;
9002    pub fn cudaGraphInstantiateWithFlags(
9003        pGraphExec: *mut cudaGraphExec_t,
9004        graph: cudaGraph_t,
9005        flags: ::core::ffi::c_ulonglong,
9006    ) -> cudaError_t;
9007    #[cfg(any(
9008        feature = "cuda-12000",
9009        feature = "cuda-12010",
9010        feature = "cuda-12020",
9011        feature = "cuda-12030",
9012        feature = "cuda-12040",
9013        feature = "cuda-12050",
9014        feature = "cuda-12060",
9015        feature = "cuda-12080",
9016        feature = "cuda-12090",
9017        feature = "cuda-13000",
9018        feature = "cuda-13010",
9019        feature = "cuda-13020"
9020    ))]
9021    pub fn cudaGraphInstantiateWithParams(
9022        pGraphExec: *mut cudaGraphExec_t,
9023        graph: cudaGraph_t,
9024        instantiateParams: *mut cudaGraphInstantiateParams,
9025    ) -> cudaError_t;
9026    #[cfg(any(
9027        feature = "cuda-11040",
9028        feature = "cuda-11050",
9029        feature = "cuda-11060",
9030        feature = "cuda-11070",
9031        feature = "cuda-11080",
9032        feature = "cuda-12000",
9033        feature = "cuda-12010",
9034        feature = "cuda-12020",
9035        feature = "cuda-12030",
9036        feature = "cuda-12040",
9037        feature = "cuda-12050",
9038        feature = "cuda-12060",
9039        feature = "cuda-12080",
9040        feature = "cuda-12090"
9041    ))]
9042    pub fn cudaGraphKernelNodeCopyAttributes(
9043        hSrc: cudaGraphNode_t,
9044        hDst: cudaGraphNode_t,
9045    ) -> cudaError_t;
9046    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9047    pub fn cudaGraphKernelNodeCopyAttributes(
9048        hDst: cudaGraphNode_t,
9049        hSrc: cudaGraphNode_t,
9050    ) -> cudaError_t;
9051    #[cfg(any(
9052        feature = "cuda-11040",
9053        feature = "cuda-11050",
9054        feature = "cuda-11060",
9055        feature = "cuda-11070"
9056    ))]
9057    pub fn cudaGraphKernelNodeGetAttribute(
9058        hNode: cudaGraphNode_t,
9059        attr: cudaKernelNodeAttrID,
9060        value_out: *mut cudaKernelNodeAttrValue,
9061    ) -> cudaError_t;
9062    #[cfg(any(
9063        feature = "cuda-11080",
9064        feature = "cuda-12000",
9065        feature = "cuda-12010",
9066        feature = "cuda-12020",
9067        feature = "cuda-12030",
9068        feature = "cuda-12040",
9069        feature = "cuda-12050",
9070        feature = "cuda-12060",
9071        feature = "cuda-12080",
9072        feature = "cuda-12090",
9073        feature = "cuda-13000",
9074        feature = "cuda-13010",
9075        feature = "cuda-13020"
9076    ))]
9077    pub fn cudaGraphKernelNodeGetAttribute(
9078        hNode: cudaGraphNode_t,
9079        attr: cudaLaunchAttributeID,
9080        value_out: *mut cudaLaunchAttributeValue,
9081    ) -> cudaError_t;
9082    pub fn cudaGraphKernelNodeGetParams(
9083        node: cudaGraphNode_t,
9084        pNodeParams: *mut cudaKernelNodeParams,
9085    ) -> cudaError_t;
9086    #[cfg(any(
9087        feature = "cuda-11040",
9088        feature = "cuda-11050",
9089        feature = "cuda-11060",
9090        feature = "cuda-11070"
9091    ))]
9092    pub fn cudaGraphKernelNodeSetAttribute(
9093        hNode: cudaGraphNode_t,
9094        attr: cudaKernelNodeAttrID,
9095        value: *const cudaKernelNodeAttrValue,
9096    ) -> cudaError_t;
9097    #[cfg(any(
9098        feature = "cuda-11080",
9099        feature = "cuda-12000",
9100        feature = "cuda-12010",
9101        feature = "cuda-12020",
9102        feature = "cuda-12030",
9103        feature = "cuda-12040",
9104        feature = "cuda-12050",
9105        feature = "cuda-12060",
9106        feature = "cuda-12080",
9107        feature = "cuda-12090",
9108        feature = "cuda-13000",
9109        feature = "cuda-13010",
9110        feature = "cuda-13020"
9111    ))]
9112    pub fn cudaGraphKernelNodeSetAttribute(
9113        hNode: cudaGraphNode_t,
9114        attr: cudaLaunchAttributeID,
9115        value: *const cudaLaunchAttributeValue,
9116    ) -> cudaError_t;
9117    pub fn cudaGraphKernelNodeSetParams(
9118        node: cudaGraphNode_t,
9119        pNodeParams: *const cudaKernelNodeParams,
9120    ) -> cudaError_t;
9121    pub fn cudaGraphLaunch(graphExec: cudaGraphExec_t, stream: cudaStream_t) -> cudaError_t;
9122    pub fn cudaGraphMemAllocNodeGetParams(
9123        node: cudaGraphNode_t,
9124        params_out: *mut cudaMemAllocNodeParams,
9125    ) -> cudaError_t;
9126    pub fn cudaGraphMemFreeNodeGetParams(
9127        node: cudaGraphNode_t,
9128        dptr_out: *mut ::core::ffi::c_void,
9129    ) -> cudaError_t;
9130    pub fn cudaGraphMemcpyNodeGetParams(
9131        node: cudaGraphNode_t,
9132        pNodeParams: *mut cudaMemcpy3DParms,
9133    ) -> cudaError_t;
9134    pub fn cudaGraphMemcpyNodeSetParams(
9135        node: cudaGraphNode_t,
9136        pNodeParams: *const cudaMemcpy3DParms,
9137    ) -> cudaError_t;
9138    pub fn cudaGraphMemcpyNodeSetParams1D(
9139        node: cudaGraphNode_t,
9140        dst: *mut ::core::ffi::c_void,
9141        src: *const ::core::ffi::c_void,
9142        count: usize,
9143        kind: cudaMemcpyKind,
9144    ) -> cudaError_t;
9145    pub fn cudaGraphMemcpyNodeSetParamsFromSymbol(
9146        node: cudaGraphNode_t,
9147        dst: *mut ::core::ffi::c_void,
9148        symbol: *const ::core::ffi::c_void,
9149        count: usize,
9150        offset: usize,
9151        kind: cudaMemcpyKind,
9152    ) -> cudaError_t;
9153    pub fn cudaGraphMemcpyNodeSetParamsToSymbol(
9154        node: cudaGraphNode_t,
9155        symbol: *const ::core::ffi::c_void,
9156        src: *const ::core::ffi::c_void,
9157        count: usize,
9158        offset: usize,
9159        kind: cudaMemcpyKind,
9160    ) -> cudaError_t;
9161    pub fn cudaGraphMemsetNodeGetParams(
9162        node: cudaGraphNode_t,
9163        pNodeParams: *mut cudaMemsetParams,
9164    ) -> cudaError_t;
9165    pub fn cudaGraphMemsetNodeSetParams(
9166        node: cudaGraphNode_t,
9167        pNodeParams: *const cudaMemsetParams,
9168    ) -> cudaError_t;
9169    pub fn cudaGraphNodeFindInClone(
9170        pNode: *mut cudaGraphNode_t,
9171        originalNode: cudaGraphNode_t,
9172        clonedGraph: cudaGraph_t,
9173    ) -> cudaError_t;
9174    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
9175    pub fn cudaGraphNodeGetContainingGraph(
9176        hNode: cudaGraphNode_t,
9177        phGraph: *mut cudaGraph_t,
9178    ) -> cudaError_t;
9179    #[cfg(any(
9180        feature = "cuda-11040",
9181        feature = "cuda-11050",
9182        feature = "cuda-11060",
9183        feature = "cuda-11070",
9184        feature = "cuda-11080",
9185        feature = "cuda-12000",
9186        feature = "cuda-12010",
9187        feature = "cuda-12020",
9188        feature = "cuda-12030",
9189        feature = "cuda-12040",
9190        feature = "cuda-12050",
9191        feature = "cuda-12060",
9192        feature = "cuda-12080",
9193        feature = "cuda-12090"
9194    ))]
9195    pub fn cudaGraphNodeGetDependencies(
9196        node: cudaGraphNode_t,
9197        pDependencies: *mut cudaGraphNode_t,
9198        pNumDependencies: *mut usize,
9199    ) -> cudaError_t;
9200    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9201    pub fn cudaGraphNodeGetDependencies(
9202        node: cudaGraphNode_t,
9203        pDependencies: *mut cudaGraphNode_t,
9204        edgeData: *mut cudaGraphEdgeData,
9205        pNumDependencies: *mut usize,
9206    ) -> cudaError_t;
9207    #[cfg(any(
9208        feature = "cuda-12030",
9209        feature = "cuda-12040",
9210        feature = "cuda-12050",
9211        feature = "cuda-12060",
9212        feature = "cuda-12080",
9213        feature = "cuda-12090"
9214    ))]
9215    pub fn cudaGraphNodeGetDependencies_v2(
9216        node: cudaGraphNode_t,
9217        pDependencies: *mut cudaGraphNode_t,
9218        edgeData: *mut cudaGraphEdgeData,
9219        pNumDependencies: *mut usize,
9220    ) -> cudaError_t;
9221    #[cfg(any(
9222        feature = "cuda-11040",
9223        feature = "cuda-11050",
9224        feature = "cuda-11060",
9225        feature = "cuda-11070",
9226        feature = "cuda-11080",
9227        feature = "cuda-12000",
9228        feature = "cuda-12010",
9229        feature = "cuda-12020",
9230        feature = "cuda-12030",
9231        feature = "cuda-12040",
9232        feature = "cuda-12050",
9233        feature = "cuda-12060",
9234        feature = "cuda-12080",
9235        feature = "cuda-12090"
9236    ))]
9237    pub fn cudaGraphNodeGetDependentNodes(
9238        node: cudaGraphNode_t,
9239        pDependentNodes: *mut cudaGraphNode_t,
9240        pNumDependentNodes: *mut usize,
9241    ) -> cudaError_t;
9242    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9243    pub fn cudaGraphNodeGetDependentNodes(
9244        node: cudaGraphNode_t,
9245        pDependentNodes: *mut cudaGraphNode_t,
9246        edgeData: *mut cudaGraphEdgeData,
9247        pNumDependentNodes: *mut usize,
9248    ) -> cudaError_t;
9249    #[cfg(any(
9250        feature = "cuda-12030",
9251        feature = "cuda-12040",
9252        feature = "cuda-12050",
9253        feature = "cuda-12060",
9254        feature = "cuda-12080",
9255        feature = "cuda-12090"
9256    ))]
9257    pub fn cudaGraphNodeGetDependentNodes_v2(
9258        node: cudaGraphNode_t,
9259        pDependentNodes: *mut cudaGraphNode_t,
9260        edgeData: *mut cudaGraphEdgeData,
9261        pNumDependentNodes: *mut usize,
9262    ) -> cudaError_t;
9263    #[cfg(any(
9264        feature = "cuda-11060",
9265        feature = "cuda-11070",
9266        feature = "cuda-11080",
9267        feature = "cuda-12000",
9268        feature = "cuda-12010",
9269        feature = "cuda-12020",
9270        feature = "cuda-12030",
9271        feature = "cuda-12040",
9272        feature = "cuda-12050",
9273        feature = "cuda-12060",
9274        feature = "cuda-12080",
9275        feature = "cuda-12090",
9276        feature = "cuda-13000",
9277        feature = "cuda-13010",
9278        feature = "cuda-13020"
9279    ))]
9280    pub fn cudaGraphNodeGetEnabled(
9281        hGraphExec: cudaGraphExec_t,
9282        hNode: cudaGraphNode_t,
9283        isEnabled: *mut ::core::ffi::c_uint,
9284    ) -> cudaError_t;
9285    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
9286    pub fn cudaGraphNodeGetLocalId(
9287        hNode: cudaGraphNode_t,
9288        nodeId: *mut ::core::ffi::c_uint,
9289    ) -> cudaError_t;
9290    #[cfg(any(feature = "cuda-13020"))]
9291    pub fn cudaGraphNodeGetParams(
9292        node: cudaGraphNode_t,
9293        nodeParams: *mut cudaGraphNodeParams,
9294    ) -> cudaError_t;
9295    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
9296    pub fn cudaGraphNodeGetToolsId(
9297        hNode: cudaGraphNode_t,
9298        toolsNodeId: *mut ::core::ffi::c_ulonglong,
9299    ) -> cudaError_t;
9300    pub fn cudaGraphNodeGetType(
9301        node: cudaGraphNode_t,
9302        pType: *mut cudaGraphNodeType,
9303    ) -> cudaError_t;
9304    #[cfg(any(
9305        feature = "cuda-11060",
9306        feature = "cuda-11070",
9307        feature = "cuda-11080",
9308        feature = "cuda-12000",
9309        feature = "cuda-12010",
9310        feature = "cuda-12020",
9311        feature = "cuda-12030",
9312        feature = "cuda-12040",
9313        feature = "cuda-12050",
9314        feature = "cuda-12060",
9315        feature = "cuda-12080",
9316        feature = "cuda-12090",
9317        feature = "cuda-13000",
9318        feature = "cuda-13010",
9319        feature = "cuda-13020"
9320    ))]
9321    pub fn cudaGraphNodeSetEnabled(
9322        hGraphExec: cudaGraphExec_t,
9323        hNode: cudaGraphNode_t,
9324        isEnabled: ::core::ffi::c_uint,
9325    ) -> cudaError_t;
9326    #[cfg(any(
9327        feature = "cuda-12020",
9328        feature = "cuda-12030",
9329        feature = "cuda-12040",
9330        feature = "cuda-12050",
9331        feature = "cuda-12060",
9332        feature = "cuda-12080",
9333        feature = "cuda-12090",
9334        feature = "cuda-13000",
9335        feature = "cuda-13010",
9336        feature = "cuda-13020"
9337    ))]
9338    pub fn cudaGraphNodeSetParams(
9339        node: cudaGraphNode_t,
9340        nodeParams: *mut cudaGraphNodeParams,
9341    ) -> cudaError_t;
9342    pub fn cudaGraphReleaseUserObject(
9343        graph: cudaGraph_t,
9344        object: cudaUserObject_t,
9345        count: ::core::ffi::c_uint,
9346    ) -> cudaError_t;
9347    #[cfg(any(
9348        feature = "cuda-11040",
9349        feature = "cuda-11050",
9350        feature = "cuda-11060",
9351        feature = "cuda-11070",
9352        feature = "cuda-11080",
9353        feature = "cuda-12000",
9354        feature = "cuda-12010",
9355        feature = "cuda-12020",
9356        feature = "cuda-12030",
9357        feature = "cuda-12040",
9358        feature = "cuda-12050",
9359        feature = "cuda-12060",
9360        feature = "cuda-12080",
9361        feature = "cuda-12090"
9362    ))]
9363    pub fn cudaGraphRemoveDependencies(
9364        graph: cudaGraph_t,
9365        from: *const cudaGraphNode_t,
9366        to: *const cudaGraphNode_t,
9367        numDependencies: usize,
9368    ) -> cudaError_t;
9369    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9370    pub fn cudaGraphRemoveDependencies(
9371        graph: cudaGraph_t,
9372        from: *const cudaGraphNode_t,
9373        to: *const cudaGraphNode_t,
9374        edgeData: *const cudaGraphEdgeData,
9375        numDependencies: usize,
9376    ) -> cudaError_t;
9377    #[cfg(any(
9378        feature = "cuda-12030",
9379        feature = "cuda-12040",
9380        feature = "cuda-12050",
9381        feature = "cuda-12060",
9382        feature = "cuda-12080",
9383        feature = "cuda-12090"
9384    ))]
9385    pub fn cudaGraphRemoveDependencies_v2(
9386        graph: cudaGraph_t,
9387        from: *const cudaGraphNode_t,
9388        to: *const cudaGraphNode_t,
9389        edgeData: *const cudaGraphEdgeData,
9390        numDependencies: usize,
9391    ) -> cudaError_t;
9392    pub fn cudaGraphRetainUserObject(
9393        graph: cudaGraph_t,
9394        object: cudaUserObject_t,
9395        count: ::core::ffi::c_uint,
9396        flags: ::core::ffi::c_uint,
9397    ) -> cudaError_t;
9398    pub fn cudaGraphUpload(graphExec: cudaGraphExec_t, stream: cudaStream_t) -> cudaError_t;
9399    pub fn cudaGraphicsMapResources(
9400        count: ::core::ffi::c_int,
9401        resources: *mut cudaGraphicsResource_t,
9402        stream: cudaStream_t,
9403    ) -> cudaError_t;
9404    pub fn cudaGraphicsResourceGetMappedMipmappedArray(
9405        mipmappedArray: *mut cudaMipmappedArray_t,
9406        resource: cudaGraphicsResource_t,
9407    ) -> cudaError_t;
9408    pub fn cudaGraphicsResourceGetMappedPointer(
9409        devPtr: *mut *mut ::core::ffi::c_void,
9410        size: *mut usize,
9411        resource: cudaGraphicsResource_t,
9412    ) -> cudaError_t;
9413    pub fn cudaGraphicsResourceSetMapFlags(
9414        resource: cudaGraphicsResource_t,
9415        flags: ::core::ffi::c_uint,
9416    ) -> cudaError_t;
9417    pub fn cudaGraphicsSubResourceGetMappedArray(
9418        array: *mut cudaArray_t,
9419        resource: cudaGraphicsResource_t,
9420        arrayIndex: ::core::ffi::c_uint,
9421        mipLevel: ::core::ffi::c_uint,
9422    ) -> cudaError_t;
9423    pub fn cudaGraphicsUnmapResources(
9424        count: ::core::ffi::c_int,
9425        resources: *mut cudaGraphicsResource_t,
9426        stream: cudaStream_t,
9427    ) -> cudaError_t;
9428    pub fn cudaGraphicsUnregisterResource(resource: cudaGraphicsResource_t) -> cudaError_t;
9429    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
9430    pub fn cudaGreenCtxCreate(
9431        phCtx: *mut cudaExecutionContext_t,
9432        desc: cudaDevResourceDesc_t,
9433        device: ::core::ffi::c_int,
9434        flags: ::core::ffi::c_uint,
9435    ) -> cudaError_t;
9436    pub fn cudaHostAlloc(
9437        pHost: *mut *mut ::core::ffi::c_void,
9438        size: usize,
9439        flags: ::core::ffi::c_uint,
9440    ) -> cudaError_t;
9441    pub fn cudaHostGetDevicePointer(
9442        pDevice: *mut *mut ::core::ffi::c_void,
9443        pHost: *mut ::core::ffi::c_void,
9444        flags: ::core::ffi::c_uint,
9445    ) -> cudaError_t;
9446    pub fn cudaHostGetFlags(
9447        pFlags: *mut ::core::ffi::c_uint,
9448        pHost: *mut ::core::ffi::c_void,
9449    ) -> cudaError_t;
9450    pub fn cudaHostRegister(
9451        ptr: *mut ::core::ffi::c_void,
9452        size: usize,
9453        flags: ::core::ffi::c_uint,
9454    ) -> cudaError_t;
9455    pub fn cudaHostUnregister(ptr: *mut ::core::ffi::c_void) -> cudaError_t;
9456    pub fn cudaImportExternalMemory(
9457        extMem_out: *mut cudaExternalMemory_t,
9458        memHandleDesc: *const cudaExternalMemoryHandleDesc,
9459    ) -> cudaError_t;
9460    pub fn cudaImportExternalSemaphore(
9461        extSem_out: *mut cudaExternalSemaphore_t,
9462        semHandleDesc: *const cudaExternalSemaphoreHandleDesc,
9463    ) -> cudaError_t;
9464    #[cfg(any(
9465        feature = "cuda-12000",
9466        feature = "cuda-12010",
9467        feature = "cuda-12020",
9468        feature = "cuda-12030",
9469        feature = "cuda-12040",
9470        feature = "cuda-12050",
9471        feature = "cuda-12060",
9472        feature = "cuda-12080",
9473        feature = "cuda-12090",
9474        feature = "cuda-13000",
9475        feature = "cuda-13010",
9476        feature = "cuda-13020"
9477    ))]
9478    pub fn cudaInitDevice(
9479        device: ::core::ffi::c_int,
9480        deviceFlags: ::core::ffi::c_uint,
9481        flags: ::core::ffi::c_uint,
9482    ) -> cudaError_t;
9483    pub fn cudaIpcCloseMemHandle(devPtr: *mut ::core::ffi::c_void) -> cudaError_t;
9484    pub fn cudaIpcGetEventHandle(
9485        handle: *mut cudaIpcEventHandle_t,
9486        event: cudaEvent_t,
9487    ) -> cudaError_t;
9488    pub fn cudaIpcGetMemHandle(
9489        handle: *mut cudaIpcMemHandle_t,
9490        devPtr: *mut ::core::ffi::c_void,
9491    ) -> cudaError_t;
9492    pub fn cudaIpcOpenEventHandle(
9493        event: *mut cudaEvent_t,
9494        handle: cudaIpcEventHandle_t,
9495    ) -> cudaError_t;
9496    pub fn cudaIpcOpenMemHandle(
9497        devPtr: *mut *mut ::core::ffi::c_void,
9498        handle: cudaIpcMemHandle_t,
9499        flags: ::core::ffi::c_uint,
9500    ) -> cudaError_t;
9501    #[cfg(any(
9502        feature = "cuda-12080",
9503        feature = "cuda-12090",
9504        feature = "cuda-13000",
9505        feature = "cuda-13010",
9506        feature = "cuda-13020"
9507    ))]
9508    pub fn cudaKernelSetAttributeForDevice(
9509        kernel: cudaKernel_t,
9510        attr: cudaFuncAttribute,
9511        value: ::core::ffi::c_int,
9512        device: ::core::ffi::c_int,
9513    ) -> cudaError_t;
9514    pub fn cudaLaunchCooperativeKernel(
9515        func: *const ::core::ffi::c_void,
9516        gridDim: dim3,
9517        blockDim: dim3,
9518        args: *mut *mut ::core::ffi::c_void,
9519        sharedMem: usize,
9520        stream: cudaStream_t,
9521    ) -> cudaError_t;
9522    #[cfg(any(
9523        feature = "cuda-11040",
9524        feature = "cuda-11050",
9525        feature = "cuda-11060",
9526        feature = "cuda-11070",
9527        feature = "cuda-11080",
9528        feature = "cuda-12000",
9529        feature = "cuda-12010",
9530        feature = "cuda-12020",
9531        feature = "cuda-12030",
9532        feature = "cuda-12040",
9533        feature = "cuda-12050",
9534        feature = "cuda-12060",
9535        feature = "cuda-12080",
9536        feature = "cuda-12090"
9537    ))]
9538    pub fn cudaLaunchCooperativeKernelMultiDevice(
9539        launchParamsList: *mut cudaLaunchParams,
9540        numDevices: ::core::ffi::c_uint,
9541        flags: ::core::ffi::c_uint,
9542    ) -> cudaError_t;
9543    pub fn cudaLaunchHostFunc(
9544        stream: cudaStream_t,
9545        fn_: cudaHostFn_t,
9546        userData: *mut ::core::ffi::c_void,
9547    ) -> cudaError_t;
9548    #[cfg(any(feature = "cuda-13020"))]
9549    pub fn cudaLaunchHostFunc_v2(
9550        stream: cudaStream_t,
9551        fn_: cudaHostFn_t,
9552        userData: *mut ::core::ffi::c_void,
9553        syncMode: ::core::ffi::c_uint,
9554    ) -> cudaError_t;
9555    pub fn cudaLaunchKernel(
9556        func: *const ::core::ffi::c_void,
9557        gridDim: dim3,
9558        blockDim: dim3,
9559        args: *mut *mut ::core::ffi::c_void,
9560        sharedMem: usize,
9561        stream: cudaStream_t,
9562    ) -> cudaError_t;
9563    #[cfg(any(
9564        feature = "cuda-11080",
9565        feature = "cuda-12000",
9566        feature = "cuda-12010",
9567        feature = "cuda-12020",
9568        feature = "cuda-12030",
9569        feature = "cuda-12040",
9570        feature = "cuda-12050",
9571        feature = "cuda-12060",
9572        feature = "cuda-12080",
9573        feature = "cuda-12090",
9574        feature = "cuda-13000",
9575        feature = "cuda-13010",
9576        feature = "cuda-13020"
9577    ))]
9578    pub fn cudaLaunchKernelExC(
9579        config: *const cudaLaunchConfig_t,
9580        func: *const ::core::ffi::c_void,
9581        args: *mut *mut ::core::ffi::c_void,
9582    ) -> cudaError_t;
9583    #[cfg(any(
9584        feature = "cuda-12080",
9585        feature = "cuda-12090",
9586        feature = "cuda-13000",
9587        feature = "cuda-13010",
9588        feature = "cuda-13020"
9589    ))]
9590    pub fn cudaLibraryEnumerateKernels(
9591        kernels: *mut cudaKernel_t,
9592        numKernels: ::core::ffi::c_uint,
9593        lib: cudaLibrary_t,
9594    ) -> cudaError_t;
9595    #[cfg(any(
9596        feature = "cuda-12080",
9597        feature = "cuda-12090",
9598        feature = "cuda-13000",
9599        feature = "cuda-13010",
9600        feature = "cuda-13020"
9601    ))]
9602    pub fn cudaLibraryGetGlobal(
9603        dptr: *mut *mut ::core::ffi::c_void,
9604        bytes: *mut usize,
9605        library: cudaLibrary_t,
9606        name: *const ::core::ffi::c_char,
9607    ) -> cudaError_t;
9608    #[cfg(any(
9609        feature = "cuda-12080",
9610        feature = "cuda-12090",
9611        feature = "cuda-13000",
9612        feature = "cuda-13010",
9613        feature = "cuda-13020"
9614    ))]
9615    pub fn cudaLibraryGetKernel(
9616        pKernel: *mut cudaKernel_t,
9617        library: cudaLibrary_t,
9618        name: *const ::core::ffi::c_char,
9619    ) -> cudaError_t;
9620    #[cfg(any(
9621        feature = "cuda-12080",
9622        feature = "cuda-12090",
9623        feature = "cuda-13000",
9624        feature = "cuda-13010",
9625        feature = "cuda-13020"
9626    ))]
9627    pub fn cudaLibraryGetKernelCount(
9628        count: *mut ::core::ffi::c_uint,
9629        lib: cudaLibrary_t,
9630    ) -> cudaError_t;
9631    #[cfg(any(
9632        feature = "cuda-12080",
9633        feature = "cuda-12090",
9634        feature = "cuda-13000",
9635        feature = "cuda-13010",
9636        feature = "cuda-13020"
9637    ))]
9638    pub fn cudaLibraryGetManaged(
9639        dptr: *mut *mut ::core::ffi::c_void,
9640        bytes: *mut usize,
9641        library: cudaLibrary_t,
9642        name: *const ::core::ffi::c_char,
9643    ) -> cudaError_t;
9644    #[cfg(any(
9645        feature = "cuda-12080",
9646        feature = "cuda-12090",
9647        feature = "cuda-13000",
9648        feature = "cuda-13010",
9649        feature = "cuda-13020"
9650    ))]
9651    pub fn cudaLibraryGetUnifiedFunction(
9652        fptr: *mut *mut ::core::ffi::c_void,
9653        library: cudaLibrary_t,
9654        symbol: *const ::core::ffi::c_char,
9655    ) -> cudaError_t;
9656    #[cfg(any(
9657        feature = "cuda-12080",
9658        feature = "cuda-12090",
9659        feature = "cuda-13000",
9660        feature = "cuda-13010",
9661        feature = "cuda-13020"
9662    ))]
9663    pub fn cudaLibraryLoadData(
9664        library: *mut cudaLibrary_t,
9665        code: *const ::core::ffi::c_void,
9666        jitOptions: *mut cudaJitOption,
9667        jitOptionsValues: *mut *mut ::core::ffi::c_void,
9668        numJitOptions: ::core::ffi::c_uint,
9669        libraryOptions: *mut cudaLibraryOption,
9670        libraryOptionValues: *mut *mut ::core::ffi::c_void,
9671        numLibraryOptions: ::core::ffi::c_uint,
9672    ) -> cudaError_t;
9673    #[cfg(any(
9674        feature = "cuda-12080",
9675        feature = "cuda-12090",
9676        feature = "cuda-13000",
9677        feature = "cuda-13010",
9678        feature = "cuda-13020"
9679    ))]
9680    pub fn cudaLibraryLoadFromFile(
9681        library: *mut cudaLibrary_t,
9682        fileName: *const ::core::ffi::c_char,
9683        jitOptions: *mut cudaJitOption,
9684        jitOptionsValues: *mut *mut ::core::ffi::c_void,
9685        numJitOptions: ::core::ffi::c_uint,
9686        libraryOptions: *mut cudaLibraryOption,
9687        libraryOptionValues: *mut *mut ::core::ffi::c_void,
9688        numLibraryOptions: ::core::ffi::c_uint,
9689    ) -> cudaError_t;
9690    #[cfg(any(
9691        feature = "cuda-12080",
9692        feature = "cuda-12090",
9693        feature = "cuda-13000",
9694        feature = "cuda-13010",
9695        feature = "cuda-13020"
9696    ))]
9697    pub fn cudaLibraryUnload(library: cudaLibrary_t) -> cudaError_t;
9698    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9699    pub fn cudaLogsCurrent(
9700        iterator_out: *mut cudaLogIterator,
9701        flags: ::core::ffi::c_uint,
9702    ) -> cudaError_t;
9703    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9704    pub fn cudaLogsDumpToFile(
9705        iterator: *mut cudaLogIterator,
9706        pathToFile: *const ::core::ffi::c_char,
9707        flags: ::core::ffi::c_uint,
9708    ) -> cudaError_t;
9709    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9710    pub fn cudaLogsDumpToMemory(
9711        iterator: *mut cudaLogIterator,
9712        buffer: *mut ::core::ffi::c_char,
9713        size: *mut usize,
9714        flags: ::core::ffi::c_uint,
9715    ) -> cudaError_t;
9716    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9717    pub fn cudaLogsRegisterCallback(
9718        callbackFunc: cudaLogsCallback_t,
9719        userData: *mut ::core::ffi::c_void,
9720        callback_out: *mut cudaLogsCallbackHandle,
9721    ) -> cudaError_t;
9722    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9723    pub fn cudaLogsUnregisterCallback(callback: cudaLogsCallbackHandle) -> cudaError_t;
9724    pub fn cudaMalloc(devPtr: *mut *mut ::core::ffi::c_void, size: usize) -> cudaError_t;
9725    pub fn cudaMalloc3D(pitchedDevPtr: *mut cudaPitchedPtr, extent: cudaExtent) -> cudaError_t;
9726    pub fn cudaMalloc3DArray(
9727        array: *mut cudaArray_t,
9728        desc: *const cudaChannelFormatDesc,
9729        extent: cudaExtent,
9730        flags: ::core::ffi::c_uint,
9731    ) -> cudaError_t;
9732    pub fn cudaMallocArray(
9733        array: *mut cudaArray_t,
9734        desc: *const cudaChannelFormatDesc,
9735        width: usize,
9736        height: usize,
9737        flags: ::core::ffi::c_uint,
9738    ) -> cudaError_t;
9739    pub fn cudaMallocAsync(
9740        devPtr: *mut *mut ::core::ffi::c_void,
9741        size: usize,
9742        hStream: cudaStream_t,
9743    ) -> cudaError_t;
9744    pub fn cudaMallocFromPoolAsync(
9745        ptr: *mut *mut ::core::ffi::c_void,
9746        size: usize,
9747        memPool: cudaMemPool_t,
9748        stream: cudaStream_t,
9749    ) -> cudaError_t;
9750    pub fn cudaMallocHost(ptr: *mut *mut ::core::ffi::c_void, size: usize) -> cudaError_t;
9751    pub fn cudaMallocManaged(
9752        devPtr: *mut *mut ::core::ffi::c_void,
9753        size: usize,
9754        flags: ::core::ffi::c_uint,
9755    ) -> cudaError_t;
9756    pub fn cudaMallocMipmappedArray(
9757        mipmappedArray: *mut cudaMipmappedArray_t,
9758        desc: *const cudaChannelFormatDesc,
9759        extent: cudaExtent,
9760        numLevels: ::core::ffi::c_uint,
9761        flags: ::core::ffi::c_uint,
9762    ) -> cudaError_t;
9763    pub fn cudaMallocPitch(
9764        devPtr: *mut *mut ::core::ffi::c_void,
9765        pitch: *mut usize,
9766        width: usize,
9767        height: usize,
9768    ) -> cudaError_t;
9769    #[cfg(any(
9770        feature = "cuda-11040",
9771        feature = "cuda-11050",
9772        feature = "cuda-11060",
9773        feature = "cuda-11070",
9774        feature = "cuda-11080",
9775        feature = "cuda-12000",
9776        feature = "cuda-12010",
9777        feature = "cuda-12020",
9778        feature = "cuda-12030",
9779        feature = "cuda-12040",
9780        feature = "cuda-12050",
9781        feature = "cuda-12060",
9782        feature = "cuda-12080",
9783        feature = "cuda-12090"
9784    ))]
9785    pub fn cudaMemAdvise(
9786        devPtr: *const ::core::ffi::c_void,
9787        count: usize,
9788        advice: cudaMemoryAdvise,
9789        device: ::core::ffi::c_int,
9790    ) -> cudaError_t;
9791    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9792    pub fn cudaMemAdvise(
9793        devPtr: *const ::core::ffi::c_void,
9794        count: usize,
9795        advice: cudaMemoryAdvise,
9796        location: cudaMemLocation,
9797    ) -> cudaError_t;
9798    #[cfg(any(
9799        feature = "cuda-12020",
9800        feature = "cuda-12030",
9801        feature = "cuda-12040",
9802        feature = "cuda-12050",
9803        feature = "cuda-12060",
9804        feature = "cuda-12080",
9805        feature = "cuda-12090"
9806    ))]
9807    pub fn cudaMemAdvise_v2(
9808        devPtr: *const ::core::ffi::c_void,
9809        count: usize,
9810        advice: cudaMemoryAdvise,
9811        location: cudaMemLocation,
9812    ) -> cudaError_t;
9813    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9814    pub fn cudaMemDiscardAndPrefetchBatchAsync(
9815        dptrs: *mut *mut ::core::ffi::c_void,
9816        sizes: *mut usize,
9817        count: usize,
9818        prefetchLocs: *mut cudaMemLocation,
9819        prefetchLocIdxs: *mut usize,
9820        numPrefetchLocs: usize,
9821        flags: ::core::ffi::c_ulonglong,
9822        stream: cudaStream_t,
9823    ) -> cudaError_t;
9824    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9825    pub fn cudaMemDiscardBatchAsync(
9826        dptrs: *mut *mut ::core::ffi::c_void,
9827        sizes: *mut usize,
9828        count: usize,
9829        flags: ::core::ffi::c_ulonglong,
9830        stream: cudaStream_t,
9831    ) -> cudaError_t;
9832    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9833    pub fn cudaMemGetDefaultMemPool(
9834        memPool: *mut cudaMemPool_t,
9835        location: *mut cudaMemLocation,
9836        type_: cudaMemAllocationType,
9837    ) -> cudaError_t;
9838    pub fn cudaMemGetInfo(free: *mut usize, total: *mut usize) -> cudaError_t;
9839    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9840    pub fn cudaMemGetMemPool(
9841        memPool: *mut cudaMemPool_t,
9842        location: *mut cudaMemLocation,
9843        type_: cudaMemAllocationType,
9844    ) -> cudaError_t;
9845    pub fn cudaMemPoolCreate(
9846        memPool: *mut cudaMemPool_t,
9847        poolProps: *const cudaMemPoolProps,
9848    ) -> cudaError_t;
9849    pub fn cudaMemPoolDestroy(memPool: cudaMemPool_t) -> cudaError_t;
9850    pub fn cudaMemPoolExportPointer(
9851        exportData: *mut cudaMemPoolPtrExportData,
9852        ptr: *mut ::core::ffi::c_void,
9853    ) -> cudaError_t;
9854    pub fn cudaMemPoolExportToShareableHandle(
9855        shareableHandle: *mut ::core::ffi::c_void,
9856        memPool: cudaMemPool_t,
9857        handleType: cudaMemAllocationHandleType,
9858        flags: ::core::ffi::c_uint,
9859    ) -> cudaError_t;
9860    pub fn cudaMemPoolGetAccess(
9861        flags: *mut cudaMemAccessFlags,
9862        memPool: cudaMemPool_t,
9863        location: *mut cudaMemLocation,
9864    ) -> cudaError_t;
9865    pub fn cudaMemPoolGetAttribute(
9866        memPool: cudaMemPool_t,
9867        attr: cudaMemPoolAttr,
9868        value: *mut ::core::ffi::c_void,
9869    ) -> cudaError_t;
9870    pub fn cudaMemPoolImportFromShareableHandle(
9871        memPool: *mut cudaMemPool_t,
9872        shareableHandle: *mut ::core::ffi::c_void,
9873        handleType: cudaMemAllocationHandleType,
9874        flags: ::core::ffi::c_uint,
9875    ) -> cudaError_t;
9876    pub fn cudaMemPoolImportPointer(
9877        ptr: *mut *mut ::core::ffi::c_void,
9878        memPool: cudaMemPool_t,
9879        exportData: *mut cudaMemPoolPtrExportData,
9880    ) -> cudaError_t;
9881    pub fn cudaMemPoolSetAccess(
9882        memPool: cudaMemPool_t,
9883        descList: *const cudaMemAccessDesc,
9884        count: usize,
9885    ) -> cudaError_t;
9886    pub fn cudaMemPoolSetAttribute(
9887        memPool: cudaMemPool_t,
9888        attr: cudaMemPoolAttr,
9889        value: *mut ::core::ffi::c_void,
9890    ) -> cudaError_t;
9891    pub fn cudaMemPoolTrimTo(memPool: cudaMemPool_t, minBytesToKeep: usize) -> cudaError_t;
9892    #[cfg(any(
9893        feature = "cuda-11040",
9894        feature = "cuda-11050",
9895        feature = "cuda-11060",
9896        feature = "cuda-11070",
9897        feature = "cuda-11080",
9898        feature = "cuda-12000",
9899        feature = "cuda-12010",
9900        feature = "cuda-12020",
9901        feature = "cuda-12030",
9902        feature = "cuda-12040",
9903        feature = "cuda-12050",
9904        feature = "cuda-12060",
9905        feature = "cuda-12080",
9906        feature = "cuda-12090"
9907    ))]
9908    pub fn cudaMemPrefetchAsync(
9909        devPtr: *const ::core::ffi::c_void,
9910        count: usize,
9911        dstDevice: ::core::ffi::c_int,
9912        stream: cudaStream_t,
9913    ) -> cudaError_t;
9914    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9915    pub fn cudaMemPrefetchAsync(
9916        devPtr: *const ::core::ffi::c_void,
9917        count: usize,
9918        location: cudaMemLocation,
9919        flags: ::core::ffi::c_uint,
9920        stream: cudaStream_t,
9921    ) -> cudaError_t;
9922    #[cfg(any(
9923        feature = "cuda-12020",
9924        feature = "cuda-12030",
9925        feature = "cuda-12040",
9926        feature = "cuda-12050",
9927        feature = "cuda-12060",
9928        feature = "cuda-12080",
9929        feature = "cuda-12090"
9930    ))]
9931    pub fn cudaMemPrefetchAsync_v2(
9932        devPtr: *const ::core::ffi::c_void,
9933        count: usize,
9934        location: cudaMemLocation,
9935        flags: ::core::ffi::c_uint,
9936        stream: cudaStream_t,
9937    ) -> cudaError_t;
9938    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9939    pub fn cudaMemPrefetchBatchAsync(
9940        dptrs: *mut *mut ::core::ffi::c_void,
9941        sizes: *mut usize,
9942        count: usize,
9943        prefetchLocs: *mut cudaMemLocation,
9944        prefetchLocIdxs: *mut usize,
9945        numPrefetchLocs: usize,
9946        flags: ::core::ffi::c_ulonglong,
9947        stream: cudaStream_t,
9948    ) -> cudaError_t;
9949    pub fn cudaMemRangeGetAttribute(
9950        data: *mut ::core::ffi::c_void,
9951        dataSize: usize,
9952        attribute: cudaMemRangeAttribute,
9953        devPtr: *const ::core::ffi::c_void,
9954        count: usize,
9955    ) -> cudaError_t;
9956    pub fn cudaMemRangeGetAttributes(
9957        data: *mut *mut ::core::ffi::c_void,
9958        dataSizes: *mut usize,
9959        attributes: *mut cudaMemRangeAttribute,
9960        numAttributes: usize,
9961        devPtr: *const ::core::ffi::c_void,
9962        count: usize,
9963    ) -> cudaError_t;
9964    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
9965    pub fn cudaMemSetMemPool(
9966        location: *mut cudaMemLocation,
9967        type_: cudaMemAllocationType,
9968        memPool: cudaMemPool_t,
9969    ) -> cudaError_t;
9970    pub fn cudaMemcpy(
9971        dst: *mut ::core::ffi::c_void,
9972        src: *const ::core::ffi::c_void,
9973        count: usize,
9974        kind: cudaMemcpyKind,
9975    ) -> cudaError_t;
9976    pub fn cudaMemcpy2D(
9977        dst: *mut ::core::ffi::c_void,
9978        dpitch: usize,
9979        src: *const ::core::ffi::c_void,
9980        spitch: usize,
9981        width: usize,
9982        height: usize,
9983        kind: cudaMemcpyKind,
9984    ) -> cudaError_t;
9985    pub fn cudaMemcpy2DArrayToArray(
9986        dst: cudaArray_t,
9987        wOffsetDst: usize,
9988        hOffsetDst: usize,
9989        src: cudaArray_const_t,
9990        wOffsetSrc: usize,
9991        hOffsetSrc: usize,
9992        width: usize,
9993        height: usize,
9994        kind: cudaMemcpyKind,
9995    ) -> cudaError_t;
9996    pub fn cudaMemcpy2DAsync(
9997        dst: *mut ::core::ffi::c_void,
9998        dpitch: usize,
9999        src: *const ::core::ffi::c_void,
10000        spitch: usize,
10001        width: usize,
10002        height: usize,
10003        kind: cudaMemcpyKind,
10004        stream: cudaStream_t,
10005    ) -> cudaError_t;
10006    pub fn cudaMemcpy2DFromArray(
10007        dst: *mut ::core::ffi::c_void,
10008        dpitch: usize,
10009        src: cudaArray_const_t,
10010        wOffset: usize,
10011        hOffset: usize,
10012        width: usize,
10013        height: usize,
10014        kind: cudaMemcpyKind,
10015    ) -> cudaError_t;
10016    pub fn cudaMemcpy2DFromArrayAsync(
10017        dst: *mut ::core::ffi::c_void,
10018        dpitch: usize,
10019        src: cudaArray_const_t,
10020        wOffset: usize,
10021        hOffset: usize,
10022        width: usize,
10023        height: usize,
10024        kind: cudaMemcpyKind,
10025        stream: cudaStream_t,
10026    ) -> cudaError_t;
10027    pub fn cudaMemcpy2DToArray(
10028        dst: cudaArray_t,
10029        wOffset: usize,
10030        hOffset: usize,
10031        src: *const ::core::ffi::c_void,
10032        spitch: usize,
10033        width: usize,
10034        height: usize,
10035        kind: cudaMemcpyKind,
10036    ) -> cudaError_t;
10037    pub fn cudaMemcpy2DToArrayAsync(
10038        dst: cudaArray_t,
10039        wOffset: usize,
10040        hOffset: usize,
10041        src: *const ::core::ffi::c_void,
10042        spitch: usize,
10043        width: usize,
10044        height: usize,
10045        kind: cudaMemcpyKind,
10046        stream: cudaStream_t,
10047    ) -> cudaError_t;
10048    pub fn cudaMemcpy3D(p: *const cudaMemcpy3DParms) -> cudaError_t;
10049    pub fn cudaMemcpy3DAsync(p: *const cudaMemcpy3DParms, stream: cudaStream_t) -> cudaError_t;
10050    #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
10051    pub fn cudaMemcpy3DBatchAsync(
10052        numOps: usize,
10053        opList: *mut cudaMemcpy3DBatchOp,
10054        failIdx: *mut usize,
10055        flags: ::core::ffi::c_ulonglong,
10056        stream: cudaStream_t,
10057    ) -> cudaError_t;
10058    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
10059    pub fn cudaMemcpy3DBatchAsync(
10060        numOps: usize,
10061        opList: *mut cudaMemcpy3DBatchOp,
10062        flags: ::core::ffi::c_ulonglong,
10063        stream: cudaStream_t,
10064    ) -> cudaError_t;
10065    pub fn cudaMemcpy3DPeer(p: *const cudaMemcpy3DPeerParms) -> cudaError_t;
10066    pub fn cudaMemcpy3DPeerAsync(
10067        p: *const cudaMemcpy3DPeerParms,
10068        stream: cudaStream_t,
10069    ) -> cudaError_t;
10070    #[cfg(any(feature = "cuda-13020"))]
10071    pub fn cudaMemcpy3DWithAttributesAsync(
10072        op: *mut cudaMemcpy3DBatchOp,
10073        flags: ::core::ffi::c_ulonglong,
10074        stream: cudaStream_t,
10075    ) -> cudaError_t;
10076    pub fn cudaMemcpyArrayToArray(
10077        dst: cudaArray_t,
10078        wOffsetDst: usize,
10079        hOffsetDst: usize,
10080        src: cudaArray_const_t,
10081        wOffsetSrc: usize,
10082        hOffsetSrc: usize,
10083        count: usize,
10084        kind: cudaMemcpyKind,
10085    ) -> cudaError_t;
10086    pub fn cudaMemcpyAsync(
10087        dst: *mut ::core::ffi::c_void,
10088        src: *const ::core::ffi::c_void,
10089        count: usize,
10090        kind: cudaMemcpyKind,
10091        stream: cudaStream_t,
10092    ) -> cudaError_t;
10093    #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
10094    pub fn cudaMemcpyBatchAsync(
10095        dsts: *mut *mut ::core::ffi::c_void,
10096        srcs: *mut *mut ::core::ffi::c_void,
10097        sizes: *mut usize,
10098        count: usize,
10099        attrs: *mut cudaMemcpyAttributes,
10100        attrsIdxs: *mut usize,
10101        numAttrs: usize,
10102        failIdx: *mut usize,
10103        stream: cudaStream_t,
10104    ) -> cudaError_t;
10105    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
10106    pub fn cudaMemcpyBatchAsync(
10107        dsts: *const *mut ::core::ffi::c_void,
10108        srcs: *const *const ::core::ffi::c_void,
10109        sizes: *const usize,
10110        count: usize,
10111        attrs: *mut cudaMemcpyAttributes,
10112        attrsIdxs: *mut usize,
10113        numAttrs: usize,
10114        stream: cudaStream_t,
10115    ) -> cudaError_t;
10116    pub fn cudaMemcpyFromArray(
10117        dst: *mut ::core::ffi::c_void,
10118        src: cudaArray_const_t,
10119        wOffset: usize,
10120        hOffset: usize,
10121        count: usize,
10122        kind: cudaMemcpyKind,
10123    ) -> cudaError_t;
10124    pub fn cudaMemcpyFromArrayAsync(
10125        dst: *mut ::core::ffi::c_void,
10126        src: cudaArray_const_t,
10127        wOffset: usize,
10128        hOffset: usize,
10129        count: usize,
10130        kind: cudaMemcpyKind,
10131        stream: cudaStream_t,
10132    ) -> cudaError_t;
10133    pub fn cudaMemcpyFromSymbol(
10134        dst: *mut ::core::ffi::c_void,
10135        symbol: *const ::core::ffi::c_void,
10136        count: usize,
10137        offset: usize,
10138        kind: cudaMemcpyKind,
10139    ) -> cudaError_t;
10140    pub fn cudaMemcpyFromSymbolAsync(
10141        dst: *mut ::core::ffi::c_void,
10142        symbol: *const ::core::ffi::c_void,
10143        count: usize,
10144        offset: usize,
10145        kind: cudaMemcpyKind,
10146        stream: cudaStream_t,
10147    ) -> cudaError_t;
10148    pub fn cudaMemcpyPeer(
10149        dst: *mut ::core::ffi::c_void,
10150        dstDevice: ::core::ffi::c_int,
10151        src: *const ::core::ffi::c_void,
10152        srcDevice: ::core::ffi::c_int,
10153        count: usize,
10154    ) -> cudaError_t;
10155    pub fn cudaMemcpyPeerAsync(
10156        dst: *mut ::core::ffi::c_void,
10157        dstDevice: ::core::ffi::c_int,
10158        src: *const ::core::ffi::c_void,
10159        srcDevice: ::core::ffi::c_int,
10160        count: usize,
10161        stream: cudaStream_t,
10162    ) -> cudaError_t;
10163    pub fn cudaMemcpyToArray(
10164        dst: cudaArray_t,
10165        wOffset: usize,
10166        hOffset: usize,
10167        src: *const ::core::ffi::c_void,
10168        count: usize,
10169        kind: cudaMemcpyKind,
10170    ) -> cudaError_t;
10171    pub fn cudaMemcpyToArrayAsync(
10172        dst: cudaArray_t,
10173        wOffset: usize,
10174        hOffset: usize,
10175        src: *const ::core::ffi::c_void,
10176        count: usize,
10177        kind: cudaMemcpyKind,
10178        stream: cudaStream_t,
10179    ) -> cudaError_t;
10180    pub fn cudaMemcpyToSymbol(
10181        symbol: *const ::core::ffi::c_void,
10182        src: *const ::core::ffi::c_void,
10183        count: usize,
10184        offset: usize,
10185        kind: cudaMemcpyKind,
10186    ) -> cudaError_t;
10187    pub fn cudaMemcpyToSymbolAsync(
10188        symbol: *const ::core::ffi::c_void,
10189        src: *const ::core::ffi::c_void,
10190        count: usize,
10191        offset: usize,
10192        kind: cudaMemcpyKind,
10193        stream: cudaStream_t,
10194    ) -> cudaError_t;
10195    #[cfg(any(feature = "cuda-13020"))]
10196    pub fn cudaMemcpyWithAttributesAsync(
10197        dst: *mut ::core::ffi::c_void,
10198        src: *const ::core::ffi::c_void,
10199        size: usize,
10200        attr: *mut cudaMemcpyAttributes,
10201        stream: cudaStream_t,
10202    ) -> cudaError_t;
10203    pub fn cudaMemset(
10204        devPtr: *mut ::core::ffi::c_void,
10205        value: ::core::ffi::c_int,
10206        count: usize,
10207    ) -> cudaError_t;
10208    pub fn cudaMemset2D(
10209        devPtr: *mut ::core::ffi::c_void,
10210        pitch: usize,
10211        value: ::core::ffi::c_int,
10212        width: usize,
10213        height: usize,
10214    ) -> cudaError_t;
10215    pub fn cudaMemset2DAsync(
10216        devPtr: *mut ::core::ffi::c_void,
10217        pitch: usize,
10218        value: ::core::ffi::c_int,
10219        width: usize,
10220        height: usize,
10221        stream: cudaStream_t,
10222    ) -> cudaError_t;
10223    pub fn cudaMemset3D(
10224        pitchedDevPtr: cudaPitchedPtr,
10225        value: ::core::ffi::c_int,
10226        extent: cudaExtent,
10227    ) -> cudaError_t;
10228    pub fn cudaMemset3DAsync(
10229        pitchedDevPtr: cudaPitchedPtr,
10230        value: ::core::ffi::c_int,
10231        extent: cudaExtent,
10232        stream: cudaStream_t,
10233    ) -> cudaError_t;
10234    pub fn cudaMemsetAsync(
10235        devPtr: *mut ::core::ffi::c_void,
10236        value: ::core::ffi::c_int,
10237        count: usize,
10238        stream: cudaStream_t,
10239    ) -> cudaError_t;
10240    #[cfg(any(
10241        feature = "cuda-11060",
10242        feature = "cuda-11070",
10243        feature = "cuda-11080",
10244        feature = "cuda-12000",
10245        feature = "cuda-12010",
10246        feature = "cuda-12020",
10247        feature = "cuda-12030",
10248        feature = "cuda-12040",
10249        feature = "cuda-12050",
10250        feature = "cuda-12060",
10251        feature = "cuda-12080",
10252        feature = "cuda-12090",
10253        feature = "cuda-13000",
10254        feature = "cuda-13010",
10255        feature = "cuda-13020"
10256    ))]
10257    pub fn cudaMipmappedArrayGetMemoryRequirements(
10258        memoryRequirements: *mut cudaArrayMemoryRequirements,
10259        mipmap: cudaMipmappedArray_t,
10260        device: ::core::ffi::c_int,
10261    ) -> cudaError_t;
10262    pub fn cudaMipmappedArrayGetSparseProperties(
10263        sparseProperties: *mut cudaArraySparseProperties,
10264        mipmap: cudaMipmappedArray_t,
10265    ) -> cudaError_t;
10266    pub fn cudaOccupancyAvailableDynamicSMemPerBlock(
10267        dynamicSmemSize: *mut usize,
10268        func: *const ::core::ffi::c_void,
10269        numBlocks: ::core::ffi::c_int,
10270        blockSize: ::core::ffi::c_int,
10271    ) -> cudaError_t;
10272    pub fn cudaOccupancyMaxActiveBlocksPerMultiprocessor(
10273        numBlocks: *mut ::core::ffi::c_int,
10274        func: *const ::core::ffi::c_void,
10275        blockSize: ::core::ffi::c_int,
10276        dynamicSMemSize: usize,
10277    ) -> cudaError_t;
10278    pub fn cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(
10279        numBlocks: *mut ::core::ffi::c_int,
10280        func: *const ::core::ffi::c_void,
10281        blockSize: ::core::ffi::c_int,
10282        dynamicSMemSize: usize,
10283        flags: ::core::ffi::c_uint,
10284    ) -> cudaError_t;
10285    #[cfg(any(
10286        feature = "cuda-11080",
10287        feature = "cuda-12000",
10288        feature = "cuda-12010",
10289        feature = "cuda-12020",
10290        feature = "cuda-12030",
10291        feature = "cuda-12040",
10292        feature = "cuda-12050",
10293        feature = "cuda-12060",
10294        feature = "cuda-12080",
10295        feature = "cuda-12090",
10296        feature = "cuda-13000",
10297        feature = "cuda-13010",
10298        feature = "cuda-13020"
10299    ))]
10300    pub fn cudaOccupancyMaxActiveClusters(
10301        numClusters: *mut ::core::ffi::c_int,
10302        func: *const ::core::ffi::c_void,
10303        launchConfig: *const cudaLaunchConfig_t,
10304    ) -> cudaError_t;
10305    #[cfg(any(
10306        feature = "cuda-11080",
10307        feature = "cuda-12000",
10308        feature = "cuda-12010",
10309        feature = "cuda-12020",
10310        feature = "cuda-12030",
10311        feature = "cuda-12040",
10312        feature = "cuda-12050",
10313        feature = "cuda-12060",
10314        feature = "cuda-12080",
10315        feature = "cuda-12090",
10316        feature = "cuda-13000",
10317        feature = "cuda-13010",
10318        feature = "cuda-13020"
10319    ))]
10320    pub fn cudaOccupancyMaxPotentialClusterSize(
10321        clusterSize: *mut ::core::ffi::c_int,
10322        func: *const ::core::ffi::c_void,
10323        launchConfig: *const cudaLaunchConfig_t,
10324    ) -> cudaError_t;
10325    pub fn cudaPeekAtLastError() -> cudaError_t;
10326    pub fn cudaPointerGetAttributes(
10327        attributes: *mut cudaPointerAttributes,
10328        ptr: *const ::core::ffi::c_void,
10329    ) -> cudaError_t;
10330    pub fn cudaProfilerStop() -> cudaError_t;
10331    pub fn cudaRuntimeGetVersion(runtimeVersion: *mut ::core::ffi::c_int) -> cudaError_t;
10332    pub fn cudaSetDevice(device: ::core::ffi::c_int) -> cudaError_t;
10333    pub fn cudaSetDeviceFlags(flags: ::core::ffi::c_uint) -> cudaError_t;
10334    #[cfg(any(
10335        feature = "cuda-11040",
10336        feature = "cuda-11050",
10337        feature = "cuda-11060",
10338        feature = "cuda-11070",
10339        feature = "cuda-11080",
10340        feature = "cuda-12000",
10341        feature = "cuda-12010",
10342        feature = "cuda-12020",
10343        feature = "cuda-12030",
10344        feature = "cuda-12040",
10345        feature = "cuda-12050",
10346        feature = "cuda-12060",
10347        feature = "cuda-12080",
10348        feature = "cuda-12090"
10349    ))]
10350    pub fn cudaSetDoubleForDevice(d: *mut f64) -> cudaError_t;
10351    #[cfg(any(
10352        feature = "cuda-11040",
10353        feature = "cuda-11050",
10354        feature = "cuda-11060",
10355        feature = "cuda-11070",
10356        feature = "cuda-11080",
10357        feature = "cuda-12000",
10358        feature = "cuda-12010",
10359        feature = "cuda-12020",
10360        feature = "cuda-12030",
10361        feature = "cuda-12040",
10362        feature = "cuda-12050",
10363        feature = "cuda-12060",
10364        feature = "cuda-12080",
10365        feature = "cuda-12090"
10366    ))]
10367    pub fn cudaSetDoubleForHost(d: *mut f64) -> cudaError_t;
10368    pub fn cudaSetValidDevices(
10369        device_arr: *mut ::core::ffi::c_int,
10370        len: ::core::ffi::c_int,
10371    ) -> cudaError_t;
10372    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
10373    pub fn cudaSignalExternalSemaphoresAsync(
10374        extSemArray: *const cudaExternalSemaphore_t,
10375        paramsArray: *const cudaExternalSemaphoreSignalParams,
10376        numExtSems: ::core::ffi::c_uint,
10377        stream: cudaStream_t,
10378    ) -> cudaError_t;
10379    #[cfg(any(
10380        feature = "cuda-11040",
10381        feature = "cuda-11050",
10382        feature = "cuda-11060",
10383        feature = "cuda-11070",
10384        feature = "cuda-11080",
10385        feature = "cuda-12000",
10386        feature = "cuda-12010",
10387        feature = "cuda-12020",
10388        feature = "cuda-12030",
10389        feature = "cuda-12040",
10390        feature = "cuda-12050",
10391        feature = "cuda-12060",
10392        feature = "cuda-12080",
10393        feature = "cuda-12090"
10394    ))]
10395    pub fn cudaSignalExternalSemaphoresAsync_v2(
10396        extSemArray: *const cudaExternalSemaphore_t,
10397        paramsArray: *const cudaExternalSemaphoreSignalParams,
10398        numExtSems: ::core::ffi::c_uint,
10399        stream: cudaStream_t,
10400    ) -> cudaError_t;
10401    pub fn cudaStreamAddCallback(
10402        stream: cudaStream_t,
10403        callback: cudaStreamCallback_t,
10404        userData: *mut ::core::ffi::c_void,
10405        flags: ::core::ffi::c_uint,
10406    ) -> cudaError_t;
10407    pub fn cudaStreamAttachMemAsync(
10408        stream: cudaStream_t,
10409        devPtr: *mut ::core::ffi::c_void,
10410        length: usize,
10411        flags: ::core::ffi::c_uint,
10412    ) -> cudaError_t;
10413    pub fn cudaStreamBeginCapture(stream: cudaStream_t, mode: cudaStreamCaptureMode)
10414        -> cudaError_t;
10415    #[cfg(any(
10416        feature = "cuda-12030",
10417        feature = "cuda-12040",
10418        feature = "cuda-12050",
10419        feature = "cuda-12060",
10420        feature = "cuda-12080",
10421        feature = "cuda-12090",
10422        feature = "cuda-13000",
10423        feature = "cuda-13010",
10424        feature = "cuda-13020"
10425    ))]
10426    pub fn cudaStreamBeginCaptureToGraph(
10427        stream: cudaStream_t,
10428        graph: cudaGraph_t,
10429        dependencies: *const cudaGraphNode_t,
10430        dependencyData: *const cudaGraphEdgeData,
10431        numDependencies: usize,
10432        mode: cudaStreamCaptureMode,
10433    ) -> cudaError_t;
10434    pub fn cudaStreamCopyAttributes(dst: cudaStream_t, src: cudaStream_t) -> cudaError_t;
10435    pub fn cudaStreamCreate(pStream: *mut cudaStream_t) -> cudaError_t;
10436    pub fn cudaStreamCreateWithFlags(
10437        pStream: *mut cudaStream_t,
10438        flags: ::core::ffi::c_uint,
10439    ) -> cudaError_t;
10440    pub fn cudaStreamCreateWithPriority(
10441        pStream: *mut cudaStream_t,
10442        flags: ::core::ffi::c_uint,
10443        priority: ::core::ffi::c_int,
10444    ) -> cudaError_t;
10445    pub fn cudaStreamDestroy(stream: cudaStream_t) -> cudaError_t;
10446    pub fn cudaStreamEndCapture(stream: cudaStream_t, pGraph: *mut cudaGraph_t) -> cudaError_t;
10447    #[cfg(any(
10448        feature = "cuda-11040",
10449        feature = "cuda-11050",
10450        feature = "cuda-11060",
10451        feature = "cuda-11070"
10452    ))]
10453    pub fn cudaStreamGetAttribute(
10454        hStream: cudaStream_t,
10455        attr: cudaStreamAttrID,
10456        value_out: *mut cudaStreamAttrValue,
10457    ) -> cudaError_t;
10458    #[cfg(any(
10459        feature = "cuda-11080",
10460        feature = "cuda-12000",
10461        feature = "cuda-12010",
10462        feature = "cuda-12020",
10463        feature = "cuda-12030",
10464        feature = "cuda-12040",
10465        feature = "cuda-12050",
10466        feature = "cuda-12060",
10467        feature = "cuda-12080",
10468        feature = "cuda-12090",
10469        feature = "cuda-13000",
10470        feature = "cuda-13010",
10471        feature = "cuda-13020"
10472    ))]
10473    pub fn cudaStreamGetAttribute(
10474        hStream: cudaStream_t,
10475        attr: cudaLaunchAttributeID,
10476        value_out: *mut cudaLaunchAttributeValue,
10477    ) -> cudaError_t;
10478    #[cfg(any(
10479        feature = "cuda-11040",
10480        feature = "cuda-11050",
10481        feature = "cuda-11060",
10482        feature = "cuda-11070",
10483        feature = "cuda-11080"
10484    ))]
10485    pub fn cudaStreamGetCaptureInfo(
10486        stream: cudaStream_t,
10487        pCaptureStatus: *mut cudaStreamCaptureStatus,
10488        pId: *mut ::core::ffi::c_ulonglong,
10489    ) -> cudaError_t;
10490    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
10491    pub fn cudaStreamGetCaptureInfo(
10492        stream: cudaStream_t,
10493        captureStatus_out: *mut cudaStreamCaptureStatus,
10494        id_out: *mut ::core::ffi::c_ulonglong,
10495        graph_out: *mut cudaGraph_t,
10496        dependencies_out: *mut *const cudaGraphNode_t,
10497        edgeData_out: *mut *const cudaGraphEdgeData,
10498        numDependencies_out: *mut usize,
10499    ) -> cudaError_t;
10500    #[cfg(any(
10501        feature = "cuda-11040",
10502        feature = "cuda-11050",
10503        feature = "cuda-11060",
10504        feature = "cuda-11070",
10505        feature = "cuda-11080",
10506        feature = "cuda-12000",
10507        feature = "cuda-12010",
10508        feature = "cuda-12020",
10509        feature = "cuda-12030",
10510        feature = "cuda-12040",
10511        feature = "cuda-12050",
10512        feature = "cuda-12060",
10513        feature = "cuda-12080",
10514        feature = "cuda-12090"
10515    ))]
10516    pub fn cudaStreamGetCaptureInfo_v2(
10517        stream: cudaStream_t,
10518        captureStatus_out: *mut cudaStreamCaptureStatus,
10519        id_out: *mut ::core::ffi::c_ulonglong,
10520        graph_out: *mut cudaGraph_t,
10521        dependencies_out: *mut *const cudaGraphNode_t,
10522        numDependencies_out: *mut usize,
10523    ) -> cudaError_t;
10524    #[cfg(any(
10525        feature = "cuda-12030",
10526        feature = "cuda-12040",
10527        feature = "cuda-12050",
10528        feature = "cuda-12060",
10529        feature = "cuda-12080",
10530        feature = "cuda-12090"
10531    ))]
10532    pub fn cudaStreamGetCaptureInfo_v3(
10533        stream: cudaStream_t,
10534        captureStatus_out: *mut cudaStreamCaptureStatus,
10535        id_out: *mut ::core::ffi::c_ulonglong,
10536        graph_out: *mut cudaGraph_t,
10537        dependencies_out: *mut *const cudaGraphNode_t,
10538        edgeData_out: *mut *const cudaGraphEdgeData,
10539        numDependencies_out: *mut usize,
10540    ) -> cudaError_t;
10541    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
10542    pub fn cudaStreamGetDevResource(
10543        hStream: cudaStream_t,
10544        resource: *mut cudaDevResource,
10545        type_: cudaDevResourceType,
10546    ) -> cudaError_t;
10547    #[cfg(any(
10548        feature = "cuda-12080",
10549        feature = "cuda-12090",
10550        feature = "cuda-13000",
10551        feature = "cuda-13010",
10552        feature = "cuda-13020"
10553    ))]
10554    pub fn cudaStreamGetDevice(
10555        hStream: cudaStream_t,
10556        device: *mut ::core::ffi::c_int,
10557    ) -> cudaError_t;
10558    pub fn cudaStreamGetFlags(
10559        hStream: cudaStream_t,
10560        flags: *mut ::core::ffi::c_uint,
10561    ) -> cudaError_t;
10562    #[cfg(any(
10563        feature = "cuda-12000",
10564        feature = "cuda-12010",
10565        feature = "cuda-12020",
10566        feature = "cuda-12030",
10567        feature = "cuda-12040",
10568        feature = "cuda-12050",
10569        feature = "cuda-12060",
10570        feature = "cuda-12080",
10571        feature = "cuda-12090",
10572        feature = "cuda-13000",
10573        feature = "cuda-13010",
10574        feature = "cuda-13020"
10575    ))]
10576    pub fn cudaStreamGetId(
10577        hStream: cudaStream_t,
10578        streamId: *mut ::core::ffi::c_ulonglong,
10579    ) -> cudaError_t;
10580    pub fn cudaStreamGetPriority(
10581        hStream: cudaStream_t,
10582        priority: *mut ::core::ffi::c_int,
10583    ) -> cudaError_t;
10584    pub fn cudaStreamIsCapturing(
10585        stream: cudaStream_t,
10586        pCaptureStatus: *mut cudaStreamCaptureStatus,
10587    ) -> cudaError_t;
10588    pub fn cudaStreamQuery(stream: cudaStream_t) -> cudaError_t;
10589    #[cfg(any(
10590        feature = "cuda-11040",
10591        feature = "cuda-11050",
10592        feature = "cuda-11060",
10593        feature = "cuda-11070"
10594    ))]
10595    pub fn cudaStreamSetAttribute(
10596        hStream: cudaStream_t,
10597        attr: cudaStreamAttrID,
10598        value: *const cudaStreamAttrValue,
10599    ) -> cudaError_t;
10600    #[cfg(any(
10601        feature = "cuda-11080",
10602        feature = "cuda-12000",
10603        feature = "cuda-12010",
10604        feature = "cuda-12020",
10605        feature = "cuda-12030",
10606        feature = "cuda-12040",
10607        feature = "cuda-12050",
10608        feature = "cuda-12060",
10609        feature = "cuda-12080",
10610        feature = "cuda-12090",
10611        feature = "cuda-13000",
10612        feature = "cuda-13010",
10613        feature = "cuda-13020"
10614    ))]
10615    pub fn cudaStreamSetAttribute(
10616        hStream: cudaStream_t,
10617        attr: cudaLaunchAttributeID,
10618        value: *const cudaLaunchAttributeValue,
10619    ) -> cudaError_t;
10620    pub fn cudaStreamSynchronize(stream: cudaStream_t) -> cudaError_t;
10621    #[cfg(any(
10622        feature = "cuda-11040",
10623        feature = "cuda-11050",
10624        feature = "cuda-11060",
10625        feature = "cuda-11070",
10626        feature = "cuda-11080",
10627        feature = "cuda-12000",
10628        feature = "cuda-12010",
10629        feature = "cuda-12020",
10630        feature = "cuda-12030",
10631        feature = "cuda-12040",
10632        feature = "cuda-12050",
10633        feature = "cuda-12060",
10634        feature = "cuda-12080",
10635        feature = "cuda-12090"
10636    ))]
10637    pub fn cudaStreamUpdateCaptureDependencies(
10638        stream: cudaStream_t,
10639        dependencies: *mut cudaGraphNode_t,
10640        numDependencies: usize,
10641        flags: ::core::ffi::c_uint,
10642    ) -> cudaError_t;
10643    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
10644    pub fn cudaStreamUpdateCaptureDependencies(
10645        stream: cudaStream_t,
10646        dependencies: *mut cudaGraphNode_t,
10647        dependencyData: *const cudaGraphEdgeData,
10648        numDependencies: usize,
10649        flags: ::core::ffi::c_uint,
10650    ) -> cudaError_t;
10651    #[cfg(any(
10652        feature = "cuda-12030",
10653        feature = "cuda-12040",
10654        feature = "cuda-12050",
10655        feature = "cuda-12060",
10656        feature = "cuda-12080",
10657        feature = "cuda-12090"
10658    ))]
10659    pub fn cudaStreamUpdateCaptureDependencies_v2(
10660        stream: cudaStream_t,
10661        dependencies: *mut cudaGraphNode_t,
10662        dependencyData: *const cudaGraphEdgeData,
10663        numDependencies: usize,
10664        flags: ::core::ffi::c_uint,
10665    ) -> cudaError_t;
10666    pub fn cudaStreamWaitEvent(
10667        stream: cudaStream_t,
10668        event: cudaEvent_t,
10669        flags: ::core::ffi::c_uint,
10670    ) -> cudaError_t;
10671    pub fn cudaThreadExchangeStreamCaptureMode(mode: *mut cudaStreamCaptureMode) -> cudaError_t;
10672    #[cfg(any(
10673        feature = "cuda-11040",
10674        feature = "cuda-11050",
10675        feature = "cuda-11060",
10676        feature = "cuda-11070",
10677        feature = "cuda-11080",
10678        feature = "cuda-12000",
10679        feature = "cuda-12010",
10680        feature = "cuda-12020",
10681        feature = "cuda-12030",
10682        feature = "cuda-12040",
10683        feature = "cuda-12050",
10684        feature = "cuda-12060",
10685        feature = "cuda-12080",
10686        feature = "cuda-12090"
10687    ))]
10688    pub fn cudaThreadExit() -> cudaError_t;
10689    #[cfg(any(
10690        feature = "cuda-11040",
10691        feature = "cuda-11050",
10692        feature = "cuda-11060",
10693        feature = "cuda-11070",
10694        feature = "cuda-11080",
10695        feature = "cuda-12000",
10696        feature = "cuda-12010",
10697        feature = "cuda-12020",
10698        feature = "cuda-12030",
10699        feature = "cuda-12040",
10700        feature = "cuda-12050",
10701        feature = "cuda-12060",
10702        feature = "cuda-12080",
10703        feature = "cuda-12090"
10704    ))]
10705    pub fn cudaThreadGetCacheConfig(pCacheConfig: *mut cudaFuncCache) -> cudaError_t;
10706    #[cfg(any(
10707        feature = "cuda-11040",
10708        feature = "cuda-11050",
10709        feature = "cuda-11060",
10710        feature = "cuda-11070",
10711        feature = "cuda-11080",
10712        feature = "cuda-12000",
10713        feature = "cuda-12010",
10714        feature = "cuda-12020",
10715        feature = "cuda-12030",
10716        feature = "cuda-12040",
10717        feature = "cuda-12050",
10718        feature = "cuda-12060",
10719        feature = "cuda-12080",
10720        feature = "cuda-12090"
10721    ))]
10722    pub fn cudaThreadGetLimit(pValue: *mut usize, limit: cudaLimit) -> cudaError_t;
10723    #[cfg(any(
10724        feature = "cuda-11040",
10725        feature = "cuda-11050",
10726        feature = "cuda-11060",
10727        feature = "cuda-11070",
10728        feature = "cuda-11080",
10729        feature = "cuda-12000",
10730        feature = "cuda-12010",
10731        feature = "cuda-12020",
10732        feature = "cuda-12030",
10733        feature = "cuda-12040",
10734        feature = "cuda-12050",
10735        feature = "cuda-12060",
10736        feature = "cuda-12080",
10737        feature = "cuda-12090"
10738    ))]
10739    pub fn cudaThreadSetCacheConfig(cacheConfig: cudaFuncCache) -> cudaError_t;
10740    #[cfg(any(
10741        feature = "cuda-11040",
10742        feature = "cuda-11050",
10743        feature = "cuda-11060",
10744        feature = "cuda-11070",
10745        feature = "cuda-11080",
10746        feature = "cuda-12000",
10747        feature = "cuda-12010",
10748        feature = "cuda-12020",
10749        feature = "cuda-12030",
10750        feature = "cuda-12040",
10751        feature = "cuda-12050",
10752        feature = "cuda-12060",
10753        feature = "cuda-12080",
10754        feature = "cuda-12090"
10755    ))]
10756    pub fn cudaThreadSetLimit(limit: cudaLimit, value: usize) -> cudaError_t;
10757    #[cfg(any(
10758        feature = "cuda-11040",
10759        feature = "cuda-11050",
10760        feature = "cuda-11060",
10761        feature = "cuda-11070",
10762        feature = "cuda-11080",
10763        feature = "cuda-12000",
10764        feature = "cuda-12010",
10765        feature = "cuda-12020",
10766        feature = "cuda-12030",
10767        feature = "cuda-12040",
10768        feature = "cuda-12050",
10769        feature = "cuda-12060",
10770        feature = "cuda-12080",
10771        feature = "cuda-12090"
10772    ))]
10773    pub fn cudaThreadSynchronize() -> cudaError_t;
10774    #[cfg(any(
10775        feature = "cuda-11040",
10776        feature = "cuda-11050",
10777        feature = "cuda-11060",
10778        feature = "cuda-11070",
10779        feature = "cuda-11080"
10780    ))]
10781    pub fn cudaUnbindTexture(texref: *const textureReference) -> cudaError_t;
10782    pub fn cudaUserObjectCreate(
10783        object_out: *mut cudaUserObject_t,
10784        ptr: *mut ::core::ffi::c_void,
10785        destroy: cudaHostFn_t,
10786        initialRefcount: ::core::ffi::c_uint,
10787        flags: ::core::ffi::c_uint,
10788    ) -> cudaError_t;
10789    pub fn cudaUserObjectRelease(
10790        object: cudaUserObject_t,
10791        count: ::core::ffi::c_uint,
10792    ) -> cudaError_t;
10793    pub fn cudaUserObjectRetain(
10794        object: cudaUserObject_t,
10795        count: ::core::ffi::c_uint,
10796    ) -> cudaError_t;
10797    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
10798    pub fn cudaWaitExternalSemaphoresAsync(
10799        extSemArray: *const cudaExternalSemaphore_t,
10800        paramsArray: *const cudaExternalSemaphoreWaitParams,
10801        numExtSems: ::core::ffi::c_uint,
10802        stream: cudaStream_t,
10803    ) -> cudaError_t;
10804    #[cfg(any(
10805        feature = "cuda-11040",
10806        feature = "cuda-11050",
10807        feature = "cuda-11060",
10808        feature = "cuda-11070",
10809        feature = "cuda-11080",
10810        feature = "cuda-12000",
10811        feature = "cuda-12010",
10812        feature = "cuda-12020",
10813        feature = "cuda-12030",
10814        feature = "cuda-12040",
10815        feature = "cuda-12050",
10816        feature = "cuda-12060",
10817        feature = "cuda-12080",
10818        feature = "cuda-12090"
10819    ))]
10820    pub fn cudaWaitExternalSemaphoresAsync_v2(
10821        extSemArray: *const cudaExternalSemaphore_t,
10822        paramsArray: *const cudaExternalSemaphoreWaitParams,
10823        numExtSems: ::core::ffi::c_uint,
10824        stream: cudaStream_t,
10825    ) -> cudaError_t;
10826}
10827#[cfg(feature = "dynamic-loading")]
10828mod loaded {
10829    use super::*;
10830    pub unsafe fn cudaArrayGetInfo(
10831        desc: *mut cudaChannelFormatDesc,
10832        extent: *mut cudaExtent,
10833        flags: *mut ::core::ffi::c_uint,
10834        array: cudaArray_t,
10835    ) -> cudaError_t {
10836        (culib().cudaArrayGetInfo)(desc, extent, flags, array)
10837    }
10838    #[cfg(any(
10839        feature = "cuda-11060",
10840        feature = "cuda-11070",
10841        feature = "cuda-11080",
10842        feature = "cuda-12000",
10843        feature = "cuda-12010",
10844        feature = "cuda-12020",
10845        feature = "cuda-12030",
10846        feature = "cuda-12040",
10847        feature = "cuda-12050",
10848        feature = "cuda-12060",
10849        feature = "cuda-12080",
10850        feature = "cuda-12090",
10851        feature = "cuda-13000",
10852        feature = "cuda-13010",
10853        feature = "cuda-13020"
10854    ))]
10855    pub unsafe fn cudaArrayGetMemoryRequirements(
10856        memoryRequirements: *mut cudaArrayMemoryRequirements,
10857        array: cudaArray_t,
10858        device: ::core::ffi::c_int,
10859    ) -> cudaError_t {
10860        (culib().cudaArrayGetMemoryRequirements)(memoryRequirements, array, device)
10861    }
10862    pub unsafe fn cudaArrayGetPlane(
10863        pPlaneArray: *mut cudaArray_t,
10864        hArray: cudaArray_t,
10865        planeIdx: ::core::ffi::c_uint,
10866    ) -> cudaError_t {
10867        (culib().cudaArrayGetPlane)(pPlaneArray, hArray, planeIdx)
10868    }
10869    pub unsafe fn cudaArrayGetSparseProperties(
10870        sparseProperties: *mut cudaArraySparseProperties,
10871        array: cudaArray_t,
10872    ) -> cudaError_t {
10873        (culib().cudaArrayGetSparseProperties)(sparseProperties, array)
10874    }
10875    #[cfg(any(
10876        feature = "cuda-11040",
10877        feature = "cuda-11050",
10878        feature = "cuda-11060",
10879        feature = "cuda-11070",
10880        feature = "cuda-11080"
10881    ))]
10882    pub unsafe fn cudaBindSurfaceToArray(
10883        surfref: *const surfaceReference,
10884        array: cudaArray_const_t,
10885        desc: *const cudaChannelFormatDesc,
10886    ) -> cudaError_t {
10887        (culib().cudaBindSurfaceToArray)(surfref, array, desc)
10888    }
10889    #[cfg(any(
10890        feature = "cuda-11040",
10891        feature = "cuda-11050",
10892        feature = "cuda-11060",
10893        feature = "cuda-11070",
10894        feature = "cuda-11080"
10895    ))]
10896    pub unsafe fn cudaBindTexture(
10897        offset: *mut usize,
10898        texref: *const textureReference,
10899        devPtr: *const ::core::ffi::c_void,
10900        desc: *const cudaChannelFormatDesc,
10901        size: usize,
10902    ) -> cudaError_t {
10903        (culib().cudaBindTexture)(offset, texref, devPtr, desc, size)
10904    }
10905    #[cfg(any(
10906        feature = "cuda-11040",
10907        feature = "cuda-11050",
10908        feature = "cuda-11060",
10909        feature = "cuda-11070",
10910        feature = "cuda-11080"
10911    ))]
10912    pub unsafe fn cudaBindTexture2D(
10913        offset: *mut usize,
10914        texref: *const textureReference,
10915        devPtr: *const ::core::ffi::c_void,
10916        desc: *const cudaChannelFormatDesc,
10917        width: usize,
10918        height: usize,
10919        pitch: usize,
10920    ) -> cudaError_t {
10921        (culib().cudaBindTexture2D)(offset, texref, devPtr, desc, width, height, pitch)
10922    }
10923    #[cfg(any(
10924        feature = "cuda-11040",
10925        feature = "cuda-11050",
10926        feature = "cuda-11060",
10927        feature = "cuda-11070",
10928        feature = "cuda-11080"
10929    ))]
10930    pub unsafe fn cudaBindTextureToArray(
10931        texref: *const textureReference,
10932        array: cudaArray_const_t,
10933        desc: *const cudaChannelFormatDesc,
10934    ) -> cudaError_t {
10935        (culib().cudaBindTextureToArray)(texref, array, desc)
10936    }
10937    #[cfg(any(
10938        feature = "cuda-11040",
10939        feature = "cuda-11050",
10940        feature = "cuda-11060",
10941        feature = "cuda-11070",
10942        feature = "cuda-11080"
10943    ))]
10944    pub unsafe fn cudaBindTextureToMipmappedArray(
10945        texref: *const textureReference,
10946        mipmappedArray: cudaMipmappedArray_const_t,
10947        desc: *const cudaChannelFormatDesc,
10948    ) -> cudaError_t {
10949        (culib().cudaBindTextureToMipmappedArray)(texref, mipmappedArray, desc)
10950    }
10951    pub unsafe fn cudaChooseDevice(
10952        device: *mut ::core::ffi::c_int,
10953        prop: *const cudaDeviceProp,
10954    ) -> cudaError_t {
10955        (culib().cudaChooseDevice)(device, prop)
10956    }
10957    pub unsafe fn cudaCreateChannelDesc(
10958        x: ::core::ffi::c_int,
10959        y: ::core::ffi::c_int,
10960        z: ::core::ffi::c_int,
10961        w: ::core::ffi::c_int,
10962        f: cudaChannelFormatKind,
10963    ) -> cudaChannelFormatDesc {
10964        (culib().cudaCreateChannelDesc)(x, y, z, w, f)
10965    }
10966    pub unsafe fn cudaCreateSurfaceObject(
10967        pSurfObject: *mut cudaSurfaceObject_t,
10968        pResDesc: *const cudaResourceDesc,
10969    ) -> cudaError_t {
10970        (culib().cudaCreateSurfaceObject)(pSurfObject, pResDesc)
10971    }
10972    pub unsafe fn cudaCreateTextureObject(
10973        pTexObject: *mut cudaTextureObject_t,
10974        pResDesc: *const cudaResourceDesc,
10975        pTexDesc: *const cudaTextureDesc,
10976        pResViewDesc: *const cudaResourceViewDesc,
10977    ) -> cudaError_t {
10978        (culib().cudaCreateTextureObject)(pTexObject, pResDesc, pTexDesc, pResViewDesc)
10979    }
10980    #[cfg(any(feature = "cuda-11080"))]
10981    pub unsafe fn cudaCreateTextureObject_v2(
10982        pTexObject: *mut cudaTextureObject_t,
10983        pResDesc: *const cudaResourceDesc,
10984        pTexDesc: *const cudaTextureDesc_v2,
10985        pResViewDesc: *const cudaResourceViewDesc,
10986    ) -> cudaError_t {
10987        (culib().cudaCreateTextureObject_v2)(pTexObject, pResDesc, pTexDesc, pResViewDesc)
10988    }
10989    pub unsafe fn cudaCtxResetPersistingL2Cache() -> cudaError_t {
10990        (culib().cudaCtxResetPersistingL2Cache)()
10991    }
10992    pub unsafe fn cudaDestroyExternalMemory(extMem: cudaExternalMemory_t) -> cudaError_t {
10993        (culib().cudaDestroyExternalMemory)(extMem)
10994    }
10995    pub unsafe fn cudaDestroyExternalSemaphore(extSem: cudaExternalSemaphore_t) -> cudaError_t {
10996        (culib().cudaDestroyExternalSemaphore)(extSem)
10997    }
10998    pub unsafe fn cudaDestroySurfaceObject(surfObject: cudaSurfaceObject_t) -> cudaError_t {
10999        (culib().cudaDestroySurfaceObject)(surfObject)
11000    }
11001    pub unsafe fn cudaDestroyTextureObject(texObject: cudaTextureObject_t) -> cudaError_t {
11002        (culib().cudaDestroyTextureObject)(texObject)
11003    }
11004    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11005    pub unsafe fn cudaDevResourceGenerateDesc(
11006        phDesc: *mut cudaDevResourceDesc_t,
11007        resources: *mut cudaDevResource,
11008        nbResources: ::core::ffi::c_uint,
11009    ) -> cudaError_t {
11010        (culib().cudaDevResourceGenerateDesc)(phDesc, resources, nbResources)
11011    }
11012    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11013    pub unsafe fn cudaDevSmResourceSplit(
11014        result: *mut cudaDevResource,
11015        nbGroups: ::core::ffi::c_uint,
11016        input: *const cudaDevResource,
11017        remainder: *mut cudaDevResource,
11018        flags: ::core::ffi::c_uint,
11019        groupParams: *mut cudaDevSmResourceGroupParams,
11020    ) -> cudaError_t {
11021        (culib().cudaDevSmResourceSplit)(result, nbGroups, input, remainder, flags, groupParams)
11022    }
11023    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11024    pub unsafe fn cudaDevSmResourceSplitByCount(
11025        result: *mut cudaDevResource,
11026        nbGroups: *mut ::core::ffi::c_uint,
11027        input: *const cudaDevResource,
11028        remaining: *mut cudaDevResource,
11029        flags: ::core::ffi::c_uint,
11030        minCount: ::core::ffi::c_uint,
11031    ) -> cudaError_t {
11032        (culib().cudaDevSmResourceSplitByCount)(result, nbGroups, input, remaining, flags, minCount)
11033    }
11034    pub unsafe fn cudaDeviceCanAccessPeer(
11035        canAccessPeer: *mut ::core::ffi::c_int,
11036        device: ::core::ffi::c_int,
11037        peerDevice: ::core::ffi::c_int,
11038    ) -> cudaError_t {
11039        (culib().cudaDeviceCanAccessPeer)(canAccessPeer, device, peerDevice)
11040    }
11041    pub unsafe fn cudaDeviceDisablePeerAccess(peerDevice: ::core::ffi::c_int) -> cudaError_t {
11042        (culib().cudaDeviceDisablePeerAccess)(peerDevice)
11043    }
11044    pub unsafe fn cudaDeviceEnablePeerAccess(
11045        peerDevice: ::core::ffi::c_int,
11046        flags: ::core::ffi::c_uint,
11047    ) -> cudaError_t {
11048        (culib().cudaDeviceEnablePeerAccess)(peerDevice, flags)
11049    }
11050    pub unsafe fn cudaDeviceFlushGPUDirectRDMAWrites(
11051        target: cudaFlushGPUDirectRDMAWritesTarget,
11052        scope: cudaFlushGPUDirectRDMAWritesScope,
11053    ) -> cudaError_t {
11054        (culib().cudaDeviceFlushGPUDirectRDMAWrites)(target, scope)
11055    }
11056    pub unsafe fn cudaDeviceGetAttribute(
11057        value: *mut ::core::ffi::c_int,
11058        attr: cudaDeviceAttr,
11059        device: ::core::ffi::c_int,
11060    ) -> cudaError_t {
11061        (culib().cudaDeviceGetAttribute)(value, attr, device)
11062    }
11063    pub unsafe fn cudaDeviceGetByPCIBusId(
11064        device: *mut ::core::ffi::c_int,
11065        pciBusId: *const ::core::ffi::c_char,
11066    ) -> cudaError_t {
11067        (culib().cudaDeviceGetByPCIBusId)(device, pciBusId)
11068    }
11069    pub unsafe fn cudaDeviceGetCacheConfig(pCacheConfig: *mut cudaFuncCache) -> cudaError_t {
11070        (culib().cudaDeviceGetCacheConfig)(pCacheConfig)
11071    }
11072    pub unsafe fn cudaDeviceGetDefaultMemPool(
11073        memPool: *mut cudaMemPool_t,
11074        device: ::core::ffi::c_int,
11075    ) -> cudaError_t {
11076        (culib().cudaDeviceGetDefaultMemPool)(memPool, device)
11077    }
11078    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11079    pub unsafe fn cudaDeviceGetDevResource(
11080        device: ::core::ffi::c_int,
11081        resource: *mut cudaDevResource,
11082        type_: cudaDevResourceType,
11083    ) -> cudaError_t {
11084        (culib().cudaDeviceGetDevResource)(device, resource, type_)
11085    }
11086    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11087    pub unsafe fn cudaDeviceGetExecutionCtx(
11088        ctx: *mut cudaExecutionContext_t,
11089        device: ::core::ffi::c_int,
11090    ) -> cudaError_t {
11091        (culib().cudaDeviceGetExecutionCtx)(ctx, device)
11092    }
11093    pub unsafe fn cudaDeviceGetGraphMemAttribute(
11094        device: ::core::ffi::c_int,
11095        attr: cudaGraphMemAttributeType,
11096        value: *mut ::core::ffi::c_void,
11097    ) -> cudaError_t {
11098        (culib().cudaDeviceGetGraphMemAttribute)(device, attr, value)
11099    }
11100    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
11101    pub unsafe fn cudaDeviceGetHostAtomicCapabilities(
11102        capabilities: *mut ::core::ffi::c_uint,
11103        operations: *const cudaAtomicOperation,
11104        count: ::core::ffi::c_uint,
11105        device: ::core::ffi::c_int,
11106    ) -> cudaError_t {
11107        (culib().cudaDeviceGetHostAtomicCapabilities)(capabilities, operations, count, device)
11108    }
11109    pub unsafe fn cudaDeviceGetLimit(pValue: *mut usize, limit: cudaLimit) -> cudaError_t {
11110        (culib().cudaDeviceGetLimit)(pValue, limit)
11111    }
11112    pub unsafe fn cudaDeviceGetMemPool(
11113        memPool: *mut cudaMemPool_t,
11114        device: ::core::ffi::c_int,
11115    ) -> cudaError_t {
11116        (culib().cudaDeviceGetMemPool)(memPool, device)
11117    }
11118    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
11119    pub unsafe fn cudaDeviceGetP2PAtomicCapabilities(
11120        capabilities: *mut ::core::ffi::c_uint,
11121        operations: *const cudaAtomicOperation,
11122        count: ::core::ffi::c_uint,
11123        srcDevice: ::core::ffi::c_int,
11124        dstDevice: ::core::ffi::c_int,
11125    ) -> cudaError_t {
11126        (culib().cudaDeviceGetP2PAtomicCapabilities)(
11127            capabilities,
11128            operations,
11129            count,
11130            srcDevice,
11131            dstDevice,
11132        )
11133    }
11134    pub unsafe fn cudaDeviceGetP2PAttribute(
11135        value: *mut ::core::ffi::c_int,
11136        attr: cudaDeviceP2PAttr,
11137        srcDevice: ::core::ffi::c_int,
11138        dstDevice: ::core::ffi::c_int,
11139    ) -> cudaError_t {
11140        (culib().cudaDeviceGetP2PAttribute)(value, attr, srcDevice, dstDevice)
11141    }
11142    pub unsafe fn cudaDeviceGetPCIBusId(
11143        pciBusId: *mut ::core::ffi::c_char,
11144        len: ::core::ffi::c_int,
11145        device: ::core::ffi::c_int,
11146    ) -> cudaError_t {
11147        (culib().cudaDeviceGetPCIBusId)(pciBusId, len, device)
11148    }
11149    pub unsafe fn cudaDeviceGetSharedMemConfig(pConfig: *mut cudaSharedMemConfig) -> cudaError_t {
11150        (culib().cudaDeviceGetSharedMemConfig)(pConfig)
11151    }
11152    pub unsafe fn cudaDeviceGetStreamPriorityRange(
11153        leastPriority: *mut ::core::ffi::c_int,
11154        greatestPriority: *mut ::core::ffi::c_int,
11155    ) -> cudaError_t {
11156        (culib().cudaDeviceGetStreamPriorityRange)(leastPriority, greatestPriority)
11157    }
11158    pub unsafe fn cudaDeviceGetTexture1DLinearMaxWidth(
11159        maxWidthInElements: *mut usize,
11160        fmtDesc: *const cudaChannelFormatDesc,
11161        device: ::core::ffi::c_int,
11162    ) -> cudaError_t {
11163        (culib().cudaDeviceGetTexture1DLinearMaxWidth)(maxWidthInElements, fmtDesc, device)
11164    }
11165    pub unsafe fn cudaDeviceGraphMemTrim(device: ::core::ffi::c_int) -> cudaError_t {
11166        (culib().cudaDeviceGraphMemTrim)(device)
11167    }
11168    #[cfg(any(
11169        feature = "cuda-12040",
11170        feature = "cuda-12050",
11171        feature = "cuda-12060",
11172        feature = "cuda-12080",
11173        feature = "cuda-12090",
11174        feature = "cuda-13000",
11175        feature = "cuda-13010",
11176        feature = "cuda-13020"
11177    ))]
11178    pub unsafe fn cudaDeviceRegisterAsyncNotification(
11179        device: ::core::ffi::c_int,
11180        callbackFunc: cudaAsyncCallback,
11181        userData: *mut ::core::ffi::c_void,
11182        callback: *mut cudaAsyncCallbackHandle_t,
11183    ) -> cudaError_t {
11184        (culib().cudaDeviceRegisterAsyncNotification)(device, callbackFunc, userData, callback)
11185    }
11186    pub unsafe fn cudaDeviceReset() -> cudaError_t {
11187        (culib().cudaDeviceReset)()
11188    }
11189    pub unsafe fn cudaDeviceSetCacheConfig(cacheConfig: cudaFuncCache) -> cudaError_t {
11190        (culib().cudaDeviceSetCacheConfig)(cacheConfig)
11191    }
11192    pub unsafe fn cudaDeviceSetGraphMemAttribute(
11193        device: ::core::ffi::c_int,
11194        attr: cudaGraphMemAttributeType,
11195        value: *mut ::core::ffi::c_void,
11196    ) -> cudaError_t {
11197        (culib().cudaDeviceSetGraphMemAttribute)(device, attr, value)
11198    }
11199    pub unsafe fn cudaDeviceSetLimit(limit: cudaLimit, value: usize) -> cudaError_t {
11200        (culib().cudaDeviceSetLimit)(limit, value)
11201    }
11202    pub unsafe fn cudaDeviceSetMemPool(
11203        device: ::core::ffi::c_int,
11204        memPool: cudaMemPool_t,
11205    ) -> cudaError_t {
11206        (culib().cudaDeviceSetMemPool)(device, memPool)
11207    }
11208    pub unsafe fn cudaDeviceSetSharedMemConfig(config: cudaSharedMemConfig) -> cudaError_t {
11209        (culib().cudaDeviceSetSharedMemConfig)(config)
11210    }
11211    pub unsafe fn cudaDeviceSynchronize() -> cudaError_t {
11212        (culib().cudaDeviceSynchronize)()
11213    }
11214    #[cfg(any(
11215        feature = "cuda-12040",
11216        feature = "cuda-12050",
11217        feature = "cuda-12060",
11218        feature = "cuda-12080",
11219        feature = "cuda-12090",
11220        feature = "cuda-13000",
11221        feature = "cuda-13010",
11222        feature = "cuda-13020"
11223    ))]
11224    pub unsafe fn cudaDeviceUnregisterAsyncNotification(
11225        device: ::core::ffi::c_int,
11226        callback: cudaAsyncCallbackHandle_t,
11227    ) -> cudaError_t {
11228        (culib().cudaDeviceUnregisterAsyncNotification)(device, callback)
11229    }
11230    pub unsafe fn cudaDriverGetVersion(driverVersion: *mut ::core::ffi::c_int) -> cudaError_t {
11231        (culib().cudaDriverGetVersion)(driverVersion)
11232    }
11233    pub unsafe fn cudaEventCreate(event: *mut cudaEvent_t) -> cudaError_t {
11234        (culib().cudaEventCreate)(event)
11235    }
11236    pub unsafe fn cudaEventCreateWithFlags(
11237        event: *mut cudaEvent_t,
11238        flags: ::core::ffi::c_uint,
11239    ) -> cudaError_t {
11240        (culib().cudaEventCreateWithFlags)(event, flags)
11241    }
11242    pub unsafe fn cudaEventDestroy(event: cudaEvent_t) -> cudaError_t {
11243        (culib().cudaEventDestroy)(event)
11244    }
11245    pub unsafe fn cudaEventElapsedTime(
11246        ms: *mut f32,
11247        start: cudaEvent_t,
11248        end: cudaEvent_t,
11249    ) -> cudaError_t {
11250        (culib().cudaEventElapsedTime)(ms, start, end)
11251    }
11252    #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
11253    pub unsafe fn cudaEventElapsedTime_v2(
11254        ms: *mut f32,
11255        start: cudaEvent_t,
11256        end: cudaEvent_t,
11257    ) -> cudaError_t {
11258        (culib().cudaEventElapsedTime_v2)(ms, start, end)
11259    }
11260    pub unsafe fn cudaEventQuery(event: cudaEvent_t) -> cudaError_t {
11261        (culib().cudaEventQuery)(event)
11262    }
11263    pub unsafe fn cudaEventRecord(event: cudaEvent_t, stream: cudaStream_t) -> cudaError_t {
11264        (culib().cudaEventRecord)(event, stream)
11265    }
11266    pub unsafe fn cudaEventRecordWithFlags(
11267        event: cudaEvent_t,
11268        stream: cudaStream_t,
11269        flags: ::core::ffi::c_uint,
11270    ) -> cudaError_t {
11271        (culib().cudaEventRecordWithFlags)(event, stream, flags)
11272    }
11273    pub unsafe fn cudaEventSynchronize(event: cudaEvent_t) -> cudaError_t {
11274        (culib().cudaEventSynchronize)(event)
11275    }
11276    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11277    pub unsafe fn cudaExecutionCtxDestroy(ctx: cudaExecutionContext_t) -> cudaError_t {
11278        (culib().cudaExecutionCtxDestroy)(ctx)
11279    }
11280    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11281    pub unsafe fn cudaExecutionCtxGetDevResource(
11282        ctx: cudaExecutionContext_t,
11283        resource: *mut cudaDevResource,
11284        type_: cudaDevResourceType,
11285    ) -> cudaError_t {
11286        (culib().cudaExecutionCtxGetDevResource)(ctx, resource, type_)
11287    }
11288    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11289    pub unsafe fn cudaExecutionCtxGetDevice(
11290        device: *mut ::core::ffi::c_int,
11291        ctx: cudaExecutionContext_t,
11292    ) -> cudaError_t {
11293        (culib().cudaExecutionCtxGetDevice)(device, ctx)
11294    }
11295    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11296    pub unsafe fn cudaExecutionCtxGetId(
11297        ctx: cudaExecutionContext_t,
11298        ctxId: *mut ::core::ffi::c_ulonglong,
11299    ) -> cudaError_t {
11300        (culib().cudaExecutionCtxGetId)(ctx, ctxId)
11301    }
11302    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11303    pub unsafe fn cudaExecutionCtxRecordEvent(
11304        ctx: cudaExecutionContext_t,
11305        event: cudaEvent_t,
11306    ) -> cudaError_t {
11307        (culib().cudaExecutionCtxRecordEvent)(ctx, event)
11308    }
11309    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11310    pub unsafe fn cudaExecutionCtxStreamCreate(
11311        phStream: *mut cudaStream_t,
11312        ctx: cudaExecutionContext_t,
11313        flags: ::core::ffi::c_uint,
11314        priority: ::core::ffi::c_int,
11315    ) -> cudaError_t {
11316        (culib().cudaExecutionCtxStreamCreate)(phStream, ctx, flags, priority)
11317    }
11318    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11319    pub unsafe fn cudaExecutionCtxSynchronize(ctx: cudaExecutionContext_t) -> cudaError_t {
11320        (culib().cudaExecutionCtxSynchronize)(ctx)
11321    }
11322    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
11323    pub unsafe fn cudaExecutionCtxWaitEvent(
11324        ctx: cudaExecutionContext_t,
11325        event: cudaEvent_t,
11326    ) -> cudaError_t {
11327        (culib().cudaExecutionCtxWaitEvent)(ctx, event)
11328    }
11329    pub unsafe fn cudaExternalMemoryGetMappedBuffer(
11330        devPtr: *mut *mut ::core::ffi::c_void,
11331        extMem: cudaExternalMemory_t,
11332        bufferDesc: *const cudaExternalMemoryBufferDesc,
11333    ) -> cudaError_t {
11334        (culib().cudaExternalMemoryGetMappedBuffer)(devPtr, extMem, bufferDesc)
11335    }
11336    pub unsafe fn cudaExternalMemoryGetMappedMipmappedArray(
11337        mipmap: *mut cudaMipmappedArray_t,
11338        extMem: cudaExternalMemory_t,
11339        mipmapDesc: *const cudaExternalMemoryMipmappedArrayDesc,
11340    ) -> cudaError_t {
11341        (culib().cudaExternalMemoryGetMappedMipmappedArray)(mipmap, extMem, mipmapDesc)
11342    }
11343    pub unsafe fn cudaFree(devPtr: *mut ::core::ffi::c_void) -> cudaError_t {
11344        (culib().cudaFree)(devPtr)
11345    }
11346    pub unsafe fn cudaFreeArray(array: cudaArray_t) -> cudaError_t {
11347        (culib().cudaFreeArray)(array)
11348    }
11349    pub unsafe fn cudaFreeAsync(
11350        devPtr: *mut ::core::ffi::c_void,
11351        hStream: cudaStream_t,
11352    ) -> cudaError_t {
11353        (culib().cudaFreeAsync)(devPtr, hStream)
11354    }
11355    pub unsafe fn cudaFreeHost(ptr: *mut ::core::ffi::c_void) -> cudaError_t {
11356        (culib().cudaFreeHost)(ptr)
11357    }
11358    pub unsafe fn cudaFreeMipmappedArray(mipmappedArray: cudaMipmappedArray_t) -> cudaError_t {
11359        (culib().cudaFreeMipmappedArray)(mipmappedArray)
11360    }
11361    pub unsafe fn cudaFuncGetAttributes(
11362        attr: *mut cudaFuncAttributes,
11363        func: *const ::core::ffi::c_void,
11364    ) -> cudaError_t {
11365        (culib().cudaFuncGetAttributes)(attr, func)
11366    }
11367    #[cfg(any(
11368        feature = "cuda-12030",
11369        feature = "cuda-12040",
11370        feature = "cuda-12050",
11371        feature = "cuda-12060",
11372        feature = "cuda-12080",
11373        feature = "cuda-12090",
11374        feature = "cuda-13000",
11375        feature = "cuda-13010",
11376        feature = "cuda-13020"
11377    ))]
11378    pub unsafe fn cudaFuncGetName(
11379        name: *mut *const ::core::ffi::c_char,
11380        func: *const ::core::ffi::c_void,
11381    ) -> cudaError_t {
11382        (culib().cudaFuncGetName)(name, func)
11383    }
11384    #[cfg(any(feature = "cuda-13020"))]
11385    pub unsafe fn cudaFuncGetParamCount(
11386        func: *const ::core::ffi::c_void,
11387        paramCount: *mut usize,
11388    ) -> cudaError_t {
11389        (culib().cudaFuncGetParamCount)(func, paramCount)
11390    }
11391    #[cfg(any(
11392        feature = "cuda-12040",
11393        feature = "cuda-12050",
11394        feature = "cuda-12060",
11395        feature = "cuda-12080",
11396        feature = "cuda-12090",
11397        feature = "cuda-13000",
11398        feature = "cuda-13010",
11399        feature = "cuda-13020"
11400    ))]
11401    pub unsafe fn cudaFuncGetParamInfo(
11402        func: *const ::core::ffi::c_void,
11403        paramIndex: usize,
11404        paramOffset: *mut usize,
11405        paramSize: *mut usize,
11406    ) -> cudaError_t {
11407        (culib().cudaFuncGetParamInfo)(func, paramIndex, paramOffset, paramSize)
11408    }
11409    pub unsafe fn cudaFuncSetAttribute(
11410        func: *const ::core::ffi::c_void,
11411        attr: cudaFuncAttribute,
11412        value: ::core::ffi::c_int,
11413    ) -> cudaError_t {
11414        (culib().cudaFuncSetAttribute)(func, attr, value)
11415    }
11416    pub unsafe fn cudaFuncSetCacheConfig(
11417        func: *const ::core::ffi::c_void,
11418        cacheConfig: cudaFuncCache,
11419    ) -> cudaError_t {
11420        (culib().cudaFuncSetCacheConfig)(func, cacheConfig)
11421    }
11422    pub unsafe fn cudaFuncSetSharedMemConfig(
11423        func: *const ::core::ffi::c_void,
11424        config: cudaSharedMemConfig,
11425    ) -> cudaError_t {
11426        (culib().cudaFuncSetSharedMemConfig)(func, config)
11427    }
11428    pub unsafe fn cudaGetChannelDesc(
11429        desc: *mut cudaChannelFormatDesc,
11430        array: cudaArray_const_t,
11431    ) -> cudaError_t {
11432        (culib().cudaGetChannelDesc)(desc, array)
11433    }
11434    pub unsafe fn cudaGetDevice(device: *mut ::core::ffi::c_int) -> cudaError_t {
11435        (culib().cudaGetDevice)(device)
11436    }
11437    pub unsafe fn cudaGetDeviceCount(count: *mut ::core::ffi::c_int) -> cudaError_t {
11438        (culib().cudaGetDeviceCount)(count)
11439    }
11440    pub unsafe fn cudaGetDeviceFlags(flags: *mut ::core::ffi::c_uint) -> cudaError_t {
11441        (culib().cudaGetDeviceFlags)(flags)
11442    }
11443    #[cfg(any(
11444        feature = "cuda-11040",
11445        feature = "cuda-11050",
11446        feature = "cuda-11060",
11447        feature = "cuda-11070",
11448        feature = "cuda-11080",
11449        feature = "cuda-13000",
11450        feature = "cuda-13010",
11451        feature = "cuda-13020"
11452    ))]
11453    pub unsafe fn cudaGetDeviceProperties(
11454        prop: *mut cudaDeviceProp,
11455        device: ::core::ffi::c_int,
11456    ) -> cudaError_t {
11457        (culib().cudaGetDeviceProperties)(prop, device)
11458    }
11459    #[cfg(any(
11460        feature = "cuda-12000",
11461        feature = "cuda-12010",
11462        feature = "cuda-12020",
11463        feature = "cuda-12030",
11464        feature = "cuda-12040",
11465        feature = "cuda-12050",
11466        feature = "cuda-12060",
11467        feature = "cuda-12080",
11468        feature = "cuda-12090"
11469    ))]
11470    pub unsafe fn cudaGetDeviceProperties_v2(
11471        prop: *mut cudaDeviceProp,
11472        device: ::core::ffi::c_int,
11473    ) -> cudaError_t {
11474        (culib().cudaGetDeviceProperties_v2)(prop, device)
11475    }
11476    #[cfg(any(
11477        feature = "cuda-11040",
11478        feature = "cuda-11050",
11479        feature = "cuda-11060",
11480        feature = "cuda-11070",
11481        feature = "cuda-11080"
11482    ))]
11483    pub unsafe fn cudaGetDriverEntryPoint(
11484        symbol: *const ::core::ffi::c_char,
11485        funcPtr: *mut *mut ::core::ffi::c_void,
11486        flags: ::core::ffi::c_ulonglong,
11487    ) -> cudaError_t {
11488        (culib().cudaGetDriverEntryPoint)(symbol, funcPtr, flags)
11489    }
11490    #[cfg(any(
11491        feature = "cuda-12000",
11492        feature = "cuda-12010",
11493        feature = "cuda-12020",
11494        feature = "cuda-12030",
11495        feature = "cuda-12040",
11496        feature = "cuda-12050",
11497        feature = "cuda-12060",
11498        feature = "cuda-12080",
11499        feature = "cuda-12090",
11500        feature = "cuda-13000",
11501        feature = "cuda-13010",
11502        feature = "cuda-13020"
11503    ))]
11504    pub unsafe fn cudaGetDriverEntryPoint(
11505        symbol: *const ::core::ffi::c_char,
11506        funcPtr: *mut *mut ::core::ffi::c_void,
11507        flags: ::core::ffi::c_ulonglong,
11508        driverStatus: *mut cudaDriverEntryPointQueryResult,
11509    ) -> cudaError_t {
11510        (culib().cudaGetDriverEntryPoint)(symbol, funcPtr, flags, driverStatus)
11511    }
11512    #[cfg(any(
11513        feature = "cuda-12050",
11514        feature = "cuda-12060",
11515        feature = "cuda-12080",
11516        feature = "cuda-12090",
11517        feature = "cuda-13000",
11518        feature = "cuda-13010",
11519        feature = "cuda-13020"
11520    ))]
11521    pub unsafe fn cudaGetDriverEntryPointByVersion(
11522        symbol: *const ::core::ffi::c_char,
11523        funcPtr: *mut *mut ::core::ffi::c_void,
11524        cudaVersion: ::core::ffi::c_uint,
11525        flags: ::core::ffi::c_ulonglong,
11526        driverStatus: *mut cudaDriverEntryPointQueryResult,
11527    ) -> cudaError_t {
11528        (culib().cudaGetDriverEntryPointByVersion)(
11529            symbol,
11530            funcPtr,
11531            cudaVersion,
11532            flags,
11533            driverStatus,
11534        )
11535    }
11536    pub unsafe fn cudaGetErrorName(error: cudaError_t) -> *const ::core::ffi::c_char {
11537        (culib().cudaGetErrorName)(error)
11538    }
11539    pub unsafe fn cudaGetErrorString(error: cudaError_t) -> *const ::core::ffi::c_char {
11540        (culib().cudaGetErrorString)(error)
11541    }
11542    pub unsafe fn cudaGetExportTable(
11543        ppExportTable: *mut *const ::core::ffi::c_void,
11544        pExportTableId: *const cudaUUID_t,
11545    ) -> cudaError_t {
11546        (culib().cudaGetExportTable)(ppExportTable, pExportTableId)
11547    }
11548    pub unsafe fn cudaGetFuncBySymbol(
11549        functionPtr: *mut cudaFunction_t,
11550        symbolPtr: *const ::core::ffi::c_void,
11551    ) -> cudaError_t {
11552        (culib().cudaGetFuncBySymbol)(functionPtr, symbolPtr)
11553    }
11554    #[cfg(any(
11555        feature = "cuda-12010",
11556        feature = "cuda-12020",
11557        feature = "cuda-12030",
11558        feature = "cuda-12040",
11559        feature = "cuda-12050",
11560        feature = "cuda-12060",
11561        feature = "cuda-12080",
11562        feature = "cuda-12090",
11563        feature = "cuda-13000",
11564        feature = "cuda-13010",
11565        feature = "cuda-13020"
11566    ))]
11567    pub unsafe fn cudaGetKernel(
11568        kernelPtr: *mut cudaKernel_t,
11569        entryFuncAddr: *const ::core::ffi::c_void,
11570    ) -> cudaError_t {
11571        (culib().cudaGetKernel)(kernelPtr, entryFuncAddr)
11572    }
11573    pub unsafe fn cudaGetLastError() -> cudaError_t {
11574        (culib().cudaGetLastError)()
11575    }
11576    pub unsafe fn cudaGetMipmappedArrayLevel(
11577        levelArray: *mut cudaArray_t,
11578        mipmappedArray: cudaMipmappedArray_const_t,
11579        level: ::core::ffi::c_uint,
11580    ) -> cudaError_t {
11581        (culib().cudaGetMipmappedArrayLevel)(levelArray, mipmappedArray, level)
11582    }
11583    pub unsafe fn cudaGetSurfaceObjectResourceDesc(
11584        pResDesc: *mut cudaResourceDesc,
11585        surfObject: cudaSurfaceObject_t,
11586    ) -> cudaError_t {
11587        (culib().cudaGetSurfaceObjectResourceDesc)(pResDesc, surfObject)
11588    }
11589    #[cfg(any(
11590        feature = "cuda-11040",
11591        feature = "cuda-11050",
11592        feature = "cuda-11060",
11593        feature = "cuda-11070",
11594        feature = "cuda-11080"
11595    ))]
11596    pub unsafe fn cudaGetSurfaceReference(
11597        surfref: *mut *const surfaceReference,
11598        symbol: *const ::core::ffi::c_void,
11599    ) -> cudaError_t {
11600        (culib().cudaGetSurfaceReference)(surfref, symbol)
11601    }
11602    pub unsafe fn cudaGetSymbolAddress(
11603        devPtr: *mut *mut ::core::ffi::c_void,
11604        symbol: *const ::core::ffi::c_void,
11605    ) -> cudaError_t {
11606        (culib().cudaGetSymbolAddress)(devPtr, symbol)
11607    }
11608    pub unsafe fn cudaGetSymbolSize(
11609        size: *mut usize,
11610        symbol: *const ::core::ffi::c_void,
11611    ) -> cudaError_t {
11612        (culib().cudaGetSymbolSize)(size, symbol)
11613    }
11614    #[cfg(any(
11615        feature = "cuda-11040",
11616        feature = "cuda-11050",
11617        feature = "cuda-11060",
11618        feature = "cuda-11070",
11619        feature = "cuda-11080"
11620    ))]
11621    pub unsafe fn cudaGetTextureAlignmentOffset(
11622        offset: *mut usize,
11623        texref: *const textureReference,
11624    ) -> cudaError_t {
11625        (culib().cudaGetTextureAlignmentOffset)(offset, texref)
11626    }
11627    pub unsafe fn cudaGetTextureObjectResourceDesc(
11628        pResDesc: *mut cudaResourceDesc,
11629        texObject: cudaTextureObject_t,
11630    ) -> cudaError_t {
11631        (culib().cudaGetTextureObjectResourceDesc)(pResDesc, texObject)
11632    }
11633    pub unsafe fn cudaGetTextureObjectResourceViewDesc(
11634        pResViewDesc: *mut cudaResourceViewDesc,
11635        texObject: cudaTextureObject_t,
11636    ) -> cudaError_t {
11637        (culib().cudaGetTextureObjectResourceViewDesc)(pResViewDesc, texObject)
11638    }
11639    pub unsafe fn cudaGetTextureObjectTextureDesc(
11640        pTexDesc: *mut cudaTextureDesc,
11641        texObject: cudaTextureObject_t,
11642    ) -> cudaError_t {
11643        (culib().cudaGetTextureObjectTextureDesc)(pTexDesc, texObject)
11644    }
11645    #[cfg(any(feature = "cuda-11080"))]
11646    pub unsafe fn cudaGetTextureObjectTextureDesc_v2(
11647        pTexDesc: *mut cudaTextureDesc_v2,
11648        texObject: cudaTextureObject_t,
11649    ) -> cudaError_t {
11650        (culib().cudaGetTextureObjectTextureDesc_v2)(pTexDesc, texObject)
11651    }
11652    #[cfg(any(
11653        feature = "cuda-11040",
11654        feature = "cuda-11050",
11655        feature = "cuda-11060",
11656        feature = "cuda-11070",
11657        feature = "cuda-11080"
11658    ))]
11659    pub unsafe fn cudaGetTextureReference(
11660        texref: *mut *const textureReference,
11661        symbol: *const ::core::ffi::c_void,
11662    ) -> cudaError_t {
11663        (culib().cudaGetTextureReference)(texref, symbol)
11664    }
11665    pub unsafe fn cudaGraphAddChildGraphNode(
11666        pGraphNode: *mut cudaGraphNode_t,
11667        graph: cudaGraph_t,
11668        pDependencies: *const cudaGraphNode_t,
11669        numDependencies: usize,
11670        childGraph: cudaGraph_t,
11671    ) -> cudaError_t {
11672        (culib().cudaGraphAddChildGraphNode)(
11673            pGraphNode,
11674            graph,
11675            pDependencies,
11676            numDependencies,
11677            childGraph,
11678        )
11679    }
11680    #[cfg(any(
11681        feature = "cuda-11040",
11682        feature = "cuda-11050",
11683        feature = "cuda-11060",
11684        feature = "cuda-11070",
11685        feature = "cuda-11080",
11686        feature = "cuda-12000",
11687        feature = "cuda-12010",
11688        feature = "cuda-12020",
11689        feature = "cuda-12030",
11690        feature = "cuda-12040",
11691        feature = "cuda-12050",
11692        feature = "cuda-12060",
11693        feature = "cuda-12080",
11694        feature = "cuda-12090"
11695    ))]
11696    pub unsafe fn cudaGraphAddDependencies(
11697        graph: cudaGraph_t,
11698        from: *const cudaGraphNode_t,
11699        to: *const cudaGraphNode_t,
11700        numDependencies: usize,
11701    ) -> cudaError_t {
11702        (culib().cudaGraphAddDependencies)(graph, from, to, numDependencies)
11703    }
11704    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
11705    pub unsafe fn cudaGraphAddDependencies(
11706        graph: cudaGraph_t,
11707        from: *const cudaGraphNode_t,
11708        to: *const cudaGraphNode_t,
11709        edgeData: *const cudaGraphEdgeData,
11710        numDependencies: usize,
11711    ) -> cudaError_t {
11712        (culib().cudaGraphAddDependencies)(graph, from, to, edgeData, numDependencies)
11713    }
11714    #[cfg(any(
11715        feature = "cuda-12030",
11716        feature = "cuda-12040",
11717        feature = "cuda-12050",
11718        feature = "cuda-12060",
11719        feature = "cuda-12080",
11720        feature = "cuda-12090"
11721    ))]
11722    pub unsafe fn cudaGraphAddDependencies_v2(
11723        graph: cudaGraph_t,
11724        from: *const cudaGraphNode_t,
11725        to: *const cudaGraphNode_t,
11726        edgeData: *const cudaGraphEdgeData,
11727        numDependencies: usize,
11728    ) -> cudaError_t {
11729        (culib().cudaGraphAddDependencies_v2)(graph, from, to, edgeData, numDependencies)
11730    }
11731    pub unsafe fn cudaGraphAddEmptyNode(
11732        pGraphNode: *mut cudaGraphNode_t,
11733        graph: cudaGraph_t,
11734        pDependencies: *const cudaGraphNode_t,
11735        numDependencies: usize,
11736    ) -> cudaError_t {
11737        (culib().cudaGraphAddEmptyNode)(pGraphNode, graph, pDependencies, numDependencies)
11738    }
11739    pub unsafe fn cudaGraphAddEventRecordNode(
11740        pGraphNode: *mut cudaGraphNode_t,
11741        graph: cudaGraph_t,
11742        pDependencies: *const cudaGraphNode_t,
11743        numDependencies: usize,
11744        event: cudaEvent_t,
11745    ) -> cudaError_t {
11746        (culib().cudaGraphAddEventRecordNode)(
11747            pGraphNode,
11748            graph,
11749            pDependencies,
11750            numDependencies,
11751            event,
11752        )
11753    }
11754    pub unsafe fn cudaGraphAddEventWaitNode(
11755        pGraphNode: *mut cudaGraphNode_t,
11756        graph: cudaGraph_t,
11757        pDependencies: *const cudaGraphNode_t,
11758        numDependencies: usize,
11759        event: cudaEvent_t,
11760    ) -> cudaError_t {
11761        (culib().cudaGraphAddEventWaitNode)(
11762            pGraphNode,
11763            graph,
11764            pDependencies,
11765            numDependencies,
11766            event,
11767        )
11768    }
11769    pub unsafe fn cudaGraphAddExternalSemaphoresSignalNode(
11770        pGraphNode: *mut cudaGraphNode_t,
11771        graph: cudaGraph_t,
11772        pDependencies: *const cudaGraphNode_t,
11773        numDependencies: usize,
11774        nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
11775    ) -> cudaError_t {
11776        (culib().cudaGraphAddExternalSemaphoresSignalNode)(
11777            pGraphNode,
11778            graph,
11779            pDependencies,
11780            numDependencies,
11781            nodeParams,
11782        )
11783    }
11784    pub unsafe fn cudaGraphAddExternalSemaphoresWaitNode(
11785        pGraphNode: *mut cudaGraphNode_t,
11786        graph: cudaGraph_t,
11787        pDependencies: *const cudaGraphNode_t,
11788        numDependencies: usize,
11789        nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
11790    ) -> cudaError_t {
11791        (culib().cudaGraphAddExternalSemaphoresWaitNode)(
11792            pGraphNode,
11793            graph,
11794            pDependencies,
11795            numDependencies,
11796            nodeParams,
11797        )
11798    }
11799    pub unsafe fn cudaGraphAddHostNode(
11800        pGraphNode: *mut cudaGraphNode_t,
11801        graph: cudaGraph_t,
11802        pDependencies: *const cudaGraphNode_t,
11803        numDependencies: usize,
11804        pNodeParams: *const cudaHostNodeParams,
11805    ) -> cudaError_t {
11806        (culib().cudaGraphAddHostNode)(
11807            pGraphNode,
11808            graph,
11809            pDependencies,
11810            numDependencies,
11811            pNodeParams,
11812        )
11813    }
11814    pub unsafe fn cudaGraphAddKernelNode(
11815        pGraphNode: *mut cudaGraphNode_t,
11816        graph: cudaGraph_t,
11817        pDependencies: *const cudaGraphNode_t,
11818        numDependencies: usize,
11819        pNodeParams: *const cudaKernelNodeParams,
11820    ) -> cudaError_t {
11821        (culib().cudaGraphAddKernelNode)(
11822            pGraphNode,
11823            graph,
11824            pDependencies,
11825            numDependencies,
11826            pNodeParams,
11827        )
11828    }
11829    pub unsafe fn cudaGraphAddMemAllocNode(
11830        pGraphNode: *mut cudaGraphNode_t,
11831        graph: cudaGraph_t,
11832        pDependencies: *const cudaGraphNode_t,
11833        numDependencies: usize,
11834        nodeParams: *mut cudaMemAllocNodeParams,
11835    ) -> cudaError_t {
11836        (culib().cudaGraphAddMemAllocNode)(
11837            pGraphNode,
11838            graph,
11839            pDependencies,
11840            numDependencies,
11841            nodeParams,
11842        )
11843    }
11844    pub unsafe fn cudaGraphAddMemFreeNode(
11845        pGraphNode: *mut cudaGraphNode_t,
11846        graph: cudaGraph_t,
11847        pDependencies: *const cudaGraphNode_t,
11848        numDependencies: usize,
11849        dptr: *mut ::core::ffi::c_void,
11850    ) -> cudaError_t {
11851        (culib().cudaGraphAddMemFreeNode)(pGraphNode, graph, pDependencies, numDependencies, dptr)
11852    }
11853    pub unsafe fn cudaGraphAddMemcpyNode(
11854        pGraphNode: *mut cudaGraphNode_t,
11855        graph: cudaGraph_t,
11856        pDependencies: *const cudaGraphNode_t,
11857        numDependencies: usize,
11858        pCopyParams: *const cudaMemcpy3DParms,
11859    ) -> cudaError_t {
11860        (culib().cudaGraphAddMemcpyNode)(
11861            pGraphNode,
11862            graph,
11863            pDependencies,
11864            numDependencies,
11865            pCopyParams,
11866        )
11867    }
11868    pub unsafe fn cudaGraphAddMemcpyNode1D(
11869        pGraphNode: *mut cudaGraphNode_t,
11870        graph: cudaGraph_t,
11871        pDependencies: *const cudaGraphNode_t,
11872        numDependencies: usize,
11873        dst: *mut ::core::ffi::c_void,
11874        src: *const ::core::ffi::c_void,
11875        count: usize,
11876        kind: cudaMemcpyKind,
11877    ) -> cudaError_t {
11878        (culib().cudaGraphAddMemcpyNode1D)(
11879            pGraphNode,
11880            graph,
11881            pDependencies,
11882            numDependencies,
11883            dst,
11884            src,
11885            count,
11886            kind,
11887        )
11888    }
11889    pub unsafe fn cudaGraphAddMemcpyNodeFromSymbol(
11890        pGraphNode: *mut cudaGraphNode_t,
11891        graph: cudaGraph_t,
11892        pDependencies: *const cudaGraphNode_t,
11893        numDependencies: usize,
11894        dst: *mut ::core::ffi::c_void,
11895        symbol: *const ::core::ffi::c_void,
11896        count: usize,
11897        offset: usize,
11898        kind: cudaMemcpyKind,
11899    ) -> cudaError_t {
11900        (culib().cudaGraphAddMemcpyNodeFromSymbol)(
11901            pGraphNode,
11902            graph,
11903            pDependencies,
11904            numDependencies,
11905            dst,
11906            symbol,
11907            count,
11908            offset,
11909            kind,
11910        )
11911    }
11912    pub unsafe fn cudaGraphAddMemcpyNodeToSymbol(
11913        pGraphNode: *mut cudaGraphNode_t,
11914        graph: cudaGraph_t,
11915        pDependencies: *const cudaGraphNode_t,
11916        numDependencies: usize,
11917        symbol: *const ::core::ffi::c_void,
11918        src: *const ::core::ffi::c_void,
11919        count: usize,
11920        offset: usize,
11921        kind: cudaMemcpyKind,
11922    ) -> cudaError_t {
11923        (culib().cudaGraphAddMemcpyNodeToSymbol)(
11924            pGraphNode,
11925            graph,
11926            pDependencies,
11927            numDependencies,
11928            symbol,
11929            src,
11930            count,
11931            offset,
11932            kind,
11933        )
11934    }
11935    pub unsafe fn cudaGraphAddMemsetNode(
11936        pGraphNode: *mut cudaGraphNode_t,
11937        graph: cudaGraph_t,
11938        pDependencies: *const cudaGraphNode_t,
11939        numDependencies: usize,
11940        pMemsetParams: *const cudaMemsetParams,
11941    ) -> cudaError_t {
11942        (culib().cudaGraphAddMemsetNode)(
11943            pGraphNode,
11944            graph,
11945            pDependencies,
11946            numDependencies,
11947            pMemsetParams,
11948        )
11949    }
11950    #[cfg(any(
11951        feature = "cuda-12020",
11952        feature = "cuda-12030",
11953        feature = "cuda-12040",
11954        feature = "cuda-12050",
11955        feature = "cuda-12060",
11956        feature = "cuda-12080",
11957        feature = "cuda-12090"
11958    ))]
11959    pub unsafe fn cudaGraphAddNode(
11960        pGraphNode: *mut cudaGraphNode_t,
11961        graph: cudaGraph_t,
11962        pDependencies: *const cudaGraphNode_t,
11963        numDependencies: usize,
11964        nodeParams: *mut cudaGraphNodeParams,
11965    ) -> cudaError_t {
11966        (culib().cudaGraphAddNode)(
11967            pGraphNode,
11968            graph,
11969            pDependencies,
11970            numDependencies,
11971            nodeParams,
11972        )
11973    }
11974    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
11975    pub unsafe fn cudaGraphAddNode(
11976        pGraphNode: *mut cudaGraphNode_t,
11977        graph: cudaGraph_t,
11978        pDependencies: *const cudaGraphNode_t,
11979        dependencyData: *const cudaGraphEdgeData,
11980        numDependencies: usize,
11981        nodeParams: *mut cudaGraphNodeParams,
11982    ) -> cudaError_t {
11983        (culib().cudaGraphAddNode)(
11984            pGraphNode,
11985            graph,
11986            pDependencies,
11987            dependencyData,
11988            numDependencies,
11989            nodeParams,
11990        )
11991    }
11992    #[cfg(any(
11993        feature = "cuda-12030",
11994        feature = "cuda-12040",
11995        feature = "cuda-12050",
11996        feature = "cuda-12060",
11997        feature = "cuda-12080",
11998        feature = "cuda-12090"
11999    ))]
12000    pub unsafe fn cudaGraphAddNode_v2(
12001        pGraphNode: *mut cudaGraphNode_t,
12002        graph: cudaGraph_t,
12003        pDependencies: *const cudaGraphNode_t,
12004        dependencyData: *const cudaGraphEdgeData,
12005        numDependencies: usize,
12006        nodeParams: *mut cudaGraphNodeParams,
12007    ) -> cudaError_t {
12008        (culib().cudaGraphAddNode_v2)(
12009            pGraphNode,
12010            graph,
12011            pDependencies,
12012            dependencyData,
12013            numDependencies,
12014            nodeParams,
12015        )
12016    }
12017    pub unsafe fn cudaGraphChildGraphNodeGetGraph(
12018        node: cudaGraphNode_t,
12019        pGraph: *mut cudaGraph_t,
12020    ) -> cudaError_t {
12021        (culib().cudaGraphChildGraphNodeGetGraph)(node, pGraph)
12022    }
12023    pub unsafe fn cudaGraphClone(
12024        pGraphClone: *mut cudaGraph_t,
12025        originalGraph: cudaGraph_t,
12026    ) -> cudaError_t {
12027        (culib().cudaGraphClone)(pGraphClone, originalGraph)
12028    }
12029    #[cfg(any(
12030        feature = "cuda-12030",
12031        feature = "cuda-12040",
12032        feature = "cuda-12050",
12033        feature = "cuda-12060",
12034        feature = "cuda-12080",
12035        feature = "cuda-12090",
12036        feature = "cuda-13000",
12037        feature = "cuda-13010",
12038        feature = "cuda-13020"
12039    ))]
12040    pub unsafe fn cudaGraphConditionalHandleCreate(
12041        pHandle_out: *mut cudaGraphConditionalHandle,
12042        graph: cudaGraph_t,
12043        defaultLaunchValue: ::core::ffi::c_uint,
12044        flags: ::core::ffi::c_uint,
12045    ) -> cudaError_t {
12046        (culib().cudaGraphConditionalHandleCreate)(pHandle_out, graph, defaultLaunchValue, flags)
12047    }
12048    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
12049    pub unsafe fn cudaGraphConditionalHandleCreate_v2(
12050        pHandle_out: *mut cudaGraphConditionalHandle,
12051        graph: cudaGraph_t,
12052        ctx: cudaExecutionContext_t,
12053        defaultLaunchValue: ::core::ffi::c_uint,
12054        flags: ::core::ffi::c_uint,
12055    ) -> cudaError_t {
12056        (culib().cudaGraphConditionalHandleCreate_v2)(
12057            pHandle_out,
12058            graph,
12059            ctx,
12060            defaultLaunchValue,
12061            flags,
12062        )
12063    }
12064    pub unsafe fn cudaGraphCreate(
12065        pGraph: *mut cudaGraph_t,
12066        flags: ::core::ffi::c_uint,
12067    ) -> cudaError_t {
12068        (culib().cudaGraphCreate)(pGraph, flags)
12069    }
12070    pub unsafe fn cudaGraphDebugDotPrint(
12071        graph: cudaGraph_t,
12072        path: *const ::core::ffi::c_char,
12073        flags: ::core::ffi::c_uint,
12074    ) -> cudaError_t {
12075        (culib().cudaGraphDebugDotPrint)(graph, path, flags)
12076    }
12077    pub unsafe fn cudaGraphDestroy(graph: cudaGraph_t) -> cudaError_t {
12078        (culib().cudaGraphDestroy)(graph)
12079    }
12080    pub unsafe fn cudaGraphDestroyNode(node: cudaGraphNode_t) -> cudaError_t {
12081        (culib().cudaGraphDestroyNode)(node)
12082    }
12083    pub unsafe fn cudaGraphEventRecordNodeGetEvent(
12084        node: cudaGraphNode_t,
12085        event_out: *mut cudaEvent_t,
12086    ) -> cudaError_t {
12087        (culib().cudaGraphEventRecordNodeGetEvent)(node, event_out)
12088    }
12089    pub unsafe fn cudaGraphEventRecordNodeSetEvent(
12090        node: cudaGraphNode_t,
12091        event: cudaEvent_t,
12092    ) -> cudaError_t {
12093        (culib().cudaGraphEventRecordNodeSetEvent)(node, event)
12094    }
12095    pub unsafe fn cudaGraphEventWaitNodeGetEvent(
12096        node: cudaGraphNode_t,
12097        event_out: *mut cudaEvent_t,
12098    ) -> cudaError_t {
12099        (culib().cudaGraphEventWaitNodeGetEvent)(node, event_out)
12100    }
12101    pub unsafe fn cudaGraphEventWaitNodeSetEvent(
12102        node: cudaGraphNode_t,
12103        event: cudaEvent_t,
12104    ) -> cudaError_t {
12105        (culib().cudaGraphEventWaitNodeSetEvent)(node, event)
12106    }
12107    pub unsafe fn cudaGraphExecChildGraphNodeSetParams(
12108        hGraphExec: cudaGraphExec_t,
12109        node: cudaGraphNode_t,
12110        childGraph: cudaGraph_t,
12111    ) -> cudaError_t {
12112        (culib().cudaGraphExecChildGraphNodeSetParams)(hGraphExec, node, childGraph)
12113    }
12114    pub unsafe fn cudaGraphExecDestroy(graphExec: cudaGraphExec_t) -> cudaError_t {
12115        (culib().cudaGraphExecDestroy)(graphExec)
12116    }
12117    pub unsafe fn cudaGraphExecEventRecordNodeSetEvent(
12118        hGraphExec: cudaGraphExec_t,
12119        hNode: cudaGraphNode_t,
12120        event: cudaEvent_t,
12121    ) -> cudaError_t {
12122        (culib().cudaGraphExecEventRecordNodeSetEvent)(hGraphExec, hNode, event)
12123    }
12124    pub unsafe fn cudaGraphExecEventWaitNodeSetEvent(
12125        hGraphExec: cudaGraphExec_t,
12126        hNode: cudaGraphNode_t,
12127        event: cudaEvent_t,
12128    ) -> cudaError_t {
12129        (culib().cudaGraphExecEventWaitNodeSetEvent)(hGraphExec, hNode, event)
12130    }
12131    pub unsafe fn cudaGraphExecExternalSemaphoresSignalNodeSetParams(
12132        hGraphExec: cudaGraphExec_t,
12133        hNode: cudaGraphNode_t,
12134        nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
12135    ) -> cudaError_t {
12136        (culib().cudaGraphExecExternalSemaphoresSignalNodeSetParams)(hGraphExec, hNode, nodeParams)
12137    }
12138    pub unsafe fn cudaGraphExecExternalSemaphoresWaitNodeSetParams(
12139        hGraphExec: cudaGraphExec_t,
12140        hNode: cudaGraphNode_t,
12141        nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
12142    ) -> cudaError_t {
12143        (culib().cudaGraphExecExternalSemaphoresWaitNodeSetParams)(hGraphExec, hNode, nodeParams)
12144    }
12145    #[cfg(any(
12146        feature = "cuda-12000",
12147        feature = "cuda-12010",
12148        feature = "cuda-12020",
12149        feature = "cuda-12030",
12150        feature = "cuda-12040",
12151        feature = "cuda-12050",
12152        feature = "cuda-12060",
12153        feature = "cuda-12080",
12154        feature = "cuda-12090",
12155        feature = "cuda-13000",
12156        feature = "cuda-13010",
12157        feature = "cuda-13020"
12158    ))]
12159    pub unsafe fn cudaGraphExecGetFlags(
12160        graphExec: cudaGraphExec_t,
12161        flags: *mut ::core::ffi::c_ulonglong,
12162    ) -> cudaError_t {
12163        (culib().cudaGraphExecGetFlags)(graphExec, flags)
12164    }
12165    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
12166    pub unsafe fn cudaGraphExecGetId(
12167        hGraphExec: cudaGraphExec_t,
12168        graphID: *mut ::core::ffi::c_uint,
12169    ) -> cudaError_t {
12170        (culib().cudaGraphExecGetId)(hGraphExec, graphID)
12171    }
12172    pub unsafe fn cudaGraphExecHostNodeSetParams(
12173        hGraphExec: cudaGraphExec_t,
12174        node: cudaGraphNode_t,
12175        pNodeParams: *const cudaHostNodeParams,
12176    ) -> cudaError_t {
12177        (culib().cudaGraphExecHostNodeSetParams)(hGraphExec, node, pNodeParams)
12178    }
12179    pub unsafe fn cudaGraphExecKernelNodeSetParams(
12180        hGraphExec: cudaGraphExec_t,
12181        node: cudaGraphNode_t,
12182        pNodeParams: *const cudaKernelNodeParams,
12183    ) -> cudaError_t {
12184        (culib().cudaGraphExecKernelNodeSetParams)(hGraphExec, node, pNodeParams)
12185    }
12186    pub unsafe fn cudaGraphExecMemcpyNodeSetParams(
12187        hGraphExec: cudaGraphExec_t,
12188        node: cudaGraphNode_t,
12189        pNodeParams: *const cudaMemcpy3DParms,
12190    ) -> cudaError_t {
12191        (culib().cudaGraphExecMemcpyNodeSetParams)(hGraphExec, node, pNodeParams)
12192    }
12193    pub unsafe fn cudaGraphExecMemcpyNodeSetParams1D(
12194        hGraphExec: cudaGraphExec_t,
12195        node: cudaGraphNode_t,
12196        dst: *mut ::core::ffi::c_void,
12197        src: *const ::core::ffi::c_void,
12198        count: usize,
12199        kind: cudaMemcpyKind,
12200    ) -> cudaError_t {
12201        (culib().cudaGraphExecMemcpyNodeSetParams1D)(hGraphExec, node, dst, src, count, kind)
12202    }
12203    pub unsafe fn cudaGraphExecMemcpyNodeSetParamsFromSymbol(
12204        hGraphExec: cudaGraphExec_t,
12205        node: cudaGraphNode_t,
12206        dst: *mut ::core::ffi::c_void,
12207        symbol: *const ::core::ffi::c_void,
12208        count: usize,
12209        offset: usize,
12210        kind: cudaMemcpyKind,
12211    ) -> cudaError_t {
12212        (culib().cudaGraphExecMemcpyNodeSetParamsFromSymbol)(
12213            hGraphExec, node, dst, symbol, count, offset, kind,
12214        )
12215    }
12216    pub unsafe fn cudaGraphExecMemcpyNodeSetParamsToSymbol(
12217        hGraphExec: cudaGraphExec_t,
12218        node: cudaGraphNode_t,
12219        symbol: *const ::core::ffi::c_void,
12220        src: *const ::core::ffi::c_void,
12221        count: usize,
12222        offset: usize,
12223        kind: cudaMemcpyKind,
12224    ) -> cudaError_t {
12225        (culib().cudaGraphExecMemcpyNodeSetParamsToSymbol)(
12226            hGraphExec, node, symbol, src, count, offset, kind,
12227        )
12228    }
12229    pub unsafe fn cudaGraphExecMemsetNodeSetParams(
12230        hGraphExec: cudaGraphExec_t,
12231        node: cudaGraphNode_t,
12232        pNodeParams: *const cudaMemsetParams,
12233    ) -> cudaError_t {
12234        (culib().cudaGraphExecMemsetNodeSetParams)(hGraphExec, node, pNodeParams)
12235    }
12236    #[cfg(any(
12237        feature = "cuda-12020",
12238        feature = "cuda-12030",
12239        feature = "cuda-12040",
12240        feature = "cuda-12050",
12241        feature = "cuda-12060",
12242        feature = "cuda-12080",
12243        feature = "cuda-12090",
12244        feature = "cuda-13000",
12245        feature = "cuda-13010",
12246        feature = "cuda-13020"
12247    ))]
12248    pub unsafe fn cudaGraphExecNodeSetParams(
12249        graphExec: cudaGraphExec_t,
12250        node: cudaGraphNode_t,
12251        nodeParams: *mut cudaGraphNodeParams,
12252    ) -> cudaError_t {
12253        (culib().cudaGraphExecNodeSetParams)(graphExec, node, nodeParams)
12254    }
12255    #[cfg(any(
12256        feature = "cuda-11040",
12257        feature = "cuda-11050",
12258        feature = "cuda-11060",
12259        feature = "cuda-11070",
12260        feature = "cuda-11080"
12261    ))]
12262    pub unsafe fn cudaGraphExecUpdate(
12263        hGraphExec: cudaGraphExec_t,
12264        hGraph: cudaGraph_t,
12265        hErrorNode_out: *mut cudaGraphNode_t,
12266        updateResult_out: *mut cudaGraphExecUpdateResult,
12267    ) -> cudaError_t {
12268        (culib().cudaGraphExecUpdate)(hGraphExec, hGraph, hErrorNode_out, updateResult_out)
12269    }
12270    #[cfg(any(
12271        feature = "cuda-12000",
12272        feature = "cuda-12010",
12273        feature = "cuda-12020",
12274        feature = "cuda-12030",
12275        feature = "cuda-12040",
12276        feature = "cuda-12050",
12277        feature = "cuda-12060",
12278        feature = "cuda-12080",
12279        feature = "cuda-12090",
12280        feature = "cuda-13000",
12281        feature = "cuda-13010",
12282        feature = "cuda-13020"
12283    ))]
12284    pub unsafe fn cudaGraphExecUpdate(
12285        hGraphExec: cudaGraphExec_t,
12286        hGraph: cudaGraph_t,
12287        resultInfo: *mut cudaGraphExecUpdateResultInfo,
12288    ) -> cudaError_t {
12289        (culib().cudaGraphExecUpdate)(hGraphExec, hGraph, resultInfo)
12290    }
12291    pub unsafe fn cudaGraphExternalSemaphoresSignalNodeGetParams(
12292        hNode: cudaGraphNode_t,
12293        params_out: *mut cudaExternalSemaphoreSignalNodeParams,
12294    ) -> cudaError_t {
12295        (culib().cudaGraphExternalSemaphoresSignalNodeGetParams)(hNode, params_out)
12296    }
12297    pub unsafe fn cudaGraphExternalSemaphoresSignalNodeSetParams(
12298        hNode: cudaGraphNode_t,
12299        nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
12300    ) -> cudaError_t {
12301        (culib().cudaGraphExternalSemaphoresSignalNodeSetParams)(hNode, nodeParams)
12302    }
12303    pub unsafe fn cudaGraphExternalSemaphoresWaitNodeGetParams(
12304        hNode: cudaGraphNode_t,
12305        params_out: *mut cudaExternalSemaphoreWaitNodeParams,
12306    ) -> cudaError_t {
12307        (culib().cudaGraphExternalSemaphoresWaitNodeGetParams)(hNode, params_out)
12308    }
12309    pub unsafe fn cudaGraphExternalSemaphoresWaitNodeSetParams(
12310        hNode: cudaGraphNode_t,
12311        nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
12312    ) -> cudaError_t {
12313        (culib().cudaGraphExternalSemaphoresWaitNodeSetParams)(hNode, nodeParams)
12314    }
12315    #[cfg(any(
12316        feature = "cuda-11040",
12317        feature = "cuda-11050",
12318        feature = "cuda-11060",
12319        feature = "cuda-11070",
12320        feature = "cuda-11080",
12321        feature = "cuda-12000",
12322        feature = "cuda-12010",
12323        feature = "cuda-12020",
12324        feature = "cuda-12030",
12325        feature = "cuda-12040",
12326        feature = "cuda-12050",
12327        feature = "cuda-12060",
12328        feature = "cuda-12080",
12329        feature = "cuda-12090"
12330    ))]
12331    pub unsafe fn cudaGraphGetEdges(
12332        graph: cudaGraph_t,
12333        from: *mut cudaGraphNode_t,
12334        to: *mut cudaGraphNode_t,
12335        numEdges: *mut usize,
12336    ) -> cudaError_t {
12337        (culib().cudaGraphGetEdges)(graph, from, to, numEdges)
12338    }
12339    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
12340    pub unsafe fn cudaGraphGetEdges(
12341        graph: cudaGraph_t,
12342        from: *mut cudaGraphNode_t,
12343        to: *mut cudaGraphNode_t,
12344        edgeData: *mut cudaGraphEdgeData,
12345        numEdges: *mut usize,
12346    ) -> cudaError_t {
12347        (culib().cudaGraphGetEdges)(graph, from, to, edgeData, numEdges)
12348    }
12349    #[cfg(any(
12350        feature = "cuda-12030",
12351        feature = "cuda-12040",
12352        feature = "cuda-12050",
12353        feature = "cuda-12060",
12354        feature = "cuda-12080",
12355        feature = "cuda-12090"
12356    ))]
12357    pub unsafe fn cudaGraphGetEdges_v2(
12358        graph: cudaGraph_t,
12359        from: *mut cudaGraphNode_t,
12360        to: *mut cudaGraphNode_t,
12361        edgeData: *mut cudaGraphEdgeData,
12362        numEdges: *mut usize,
12363    ) -> cudaError_t {
12364        (culib().cudaGraphGetEdges_v2)(graph, from, to, edgeData, numEdges)
12365    }
12366    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
12367    pub unsafe fn cudaGraphGetId(
12368        hGraph: cudaGraph_t,
12369        graphID: *mut ::core::ffi::c_uint,
12370    ) -> cudaError_t {
12371        (culib().cudaGraphGetId)(hGraph, graphID)
12372    }
12373    pub unsafe fn cudaGraphGetNodes(
12374        graph: cudaGraph_t,
12375        nodes: *mut cudaGraphNode_t,
12376        numNodes: *mut usize,
12377    ) -> cudaError_t {
12378        (culib().cudaGraphGetNodes)(graph, nodes, numNodes)
12379    }
12380    pub unsafe fn cudaGraphGetRootNodes(
12381        graph: cudaGraph_t,
12382        pRootNodes: *mut cudaGraphNode_t,
12383        pNumRootNodes: *mut usize,
12384    ) -> cudaError_t {
12385        (culib().cudaGraphGetRootNodes)(graph, pRootNodes, pNumRootNodes)
12386    }
12387    pub unsafe fn cudaGraphHostNodeGetParams(
12388        node: cudaGraphNode_t,
12389        pNodeParams: *mut cudaHostNodeParams,
12390    ) -> cudaError_t {
12391        (culib().cudaGraphHostNodeGetParams)(node, pNodeParams)
12392    }
12393    pub unsafe fn cudaGraphHostNodeSetParams(
12394        node: cudaGraphNode_t,
12395        pNodeParams: *const cudaHostNodeParams,
12396    ) -> cudaError_t {
12397        (culib().cudaGraphHostNodeSetParams)(node, pNodeParams)
12398    }
12399    #[cfg(any(
12400        feature = "cuda-11040",
12401        feature = "cuda-11050",
12402        feature = "cuda-11060",
12403        feature = "cuda-11070",
12404        feature = "cuda-11080"
12405    ))]
12406    pub unsafe fn cudaGraphInstantiate(
12407        pGraphExec: *mut cudaGraphExec_t,
12408        graph: cudaGraph_t,
12409        pErrorNode: *mut cudaGraphNode_t,
12410        pLogBuffer: *mut ::core::ffi::c_char,
12411        bufferSize: usize,
12412    ) -> cudaError_t {
12413        (culib().cudaGraphInstantiate)(pGraphExec, graph, pErrorNode, pLogBuffer, bufferSize)
12414    }
12415    #[cfg(any(
12416        feature = "cuda-12000",
12417        feature = "cuda-12010",
12418        feature = "cuda-12020",
12419        feature = "cuda-12030",
12420        feature = "cuda-12040",
12421        feature = "cuda-12050",
12422        feature = "cuda-12060",
12423        feature = "cuda-12080",
12424        feature = "cuda-12090",
12425        feature = "cuda-13000",
12426        feature = "cuda-13010",
12427        feature = "cuda-13020"
12428    ))]
12429    pub unsafe fn cudaGraphInstantiate(
12430        pGraphExec: *mut cudaGraphExec_t,
12431        graph: cudaGraph_t,
12432        flags: ::core::ffi::c_ulonglong,
12433    ) -> cudaError_t {
12434        (culib().cudaGraphInstantiate)(pGraphExec, graph, flags)
12435    }
12436    pub unsafe fn cudaGraphInstantiateWithFlags(
12437        pGraphExec: *mut cudaGraphExec_t,
12438        graph: cudaGraph_t,
12439        flags: ::core::ffi::c_ulonglong,
12440    ) -> cudaError_t {
12441        (culib().cudaGraphInstantiateWithFlags)(pGraphExec, graph, flags)
12442    }
12443    #[cfg(any(
12444        feature = "cuda-12000",
12445        feature = "cuda-12010",
12446        feature = "cuda-12020",
12447        feature = "cuda-12030",
12448        feature = "cuda-12040",
12449        feature = "cuda-12050",
12450        feature = "cuda-12060",
12451        feature = "cuda-12080",
12452        feature = "cuda-12090",
12453        feature = "cuda-13000",
12454        feature = "cuda-13010",
12455        feature = "cuda-13020"
12456    ))]
12457    pub unsafe fn cudaGraphInstantiateWithParams(
12458        pGraphExec: *mut cudaGraphExec_t,
12459        graph: cudaGraph_t,
12460        instantiateParams: *mut cudaGraphInstantiateParams,
12461    ) -> cudaError_t {
12462        (culib().cudaGraphInstantiateWithParams)(pGraphExec, graph, instantiateParams)
12463    }
12464    #[cfg(any(
12465        feature = "cuda-11040",
12466        feature = "cuda-11050",
12467        feature = "cuda-11060",
12468        feature = "cuda-11070",
12469        feature = "cuda-11080",
12470        feature = "cuda-12000",
12471        feature = "cuda-12010",
12472        feature = "cuda-12020",
12473        feature = "cuda-12030",
12474        feature = "cuda-12040",
12475        feature = "cuda-12050",
12476        feature = "cuda-12060",
12477        feature = "cuda-12080",
12478        feature = "cuda-12090"
12479    ))]
12480    pub unsafe fn cudaGraphKernelNodeCopyAttributes(
12481        hSrc: cudaGraphNode_t,
12482        hDst: cudaGraphNode_t,
12483    ) -> cudaError_t {
12484        (culib().cudaGraphKernelNodeCopyAttributes)(hSrc, hDst)
12485    }
12486    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
12487    pub unsafe fn cudaGraphKernelNodeCopyAttributes(
12488        hDst: cudaGraphNode_t,
12489        hSrc: cudaGraphNode_t,
12490    ) -> cudaError_t {
12491        (culib().cudaGraphKernelNodeCopyAttributes)(hDst, hSrc)
12492    }
12493    #[cfg(any(
12494        feature = "cuda-11040",
12495        feature = "cuda-11050",
12496        feature = "cuda-11060",
12497        feature = "cuda-11070"
12498    ))]
12499    pub unsafe fn cudaGraphKernelNodeGetAttribute(
12500        hNode: cudaGraphNode_t,
12501        attr: cudaKernelNodeAttrID,
12502        value_out: *mut cudaKernelNodeAttrValue,
12503    ) -> cudaError_t {
12504        (culib().cudaGraphKernelNodeGetAttribute)(hNode, attr, value_out)
12505    }
12506    #[cfg(any(
12507        feature = "cuda-11080",
12508        feature = "cuda-12000",
12509        feature = "cuda-12010",
12510        feature = "cuda-12020",
12511        feature = "cuda-12030",
12512        feature = "cuda-12040",
12513        feature = "cuda-12050",
12514        feature = "cuda-12060",
12515        feature = "cuda-12080",
12516        feature = "cuda-12090",
12517        feature = "cuda-13000",
12518        feature = "cuda-13010",
12519        feature = "cuda-13020"
12520    ))]
12521    pub unsafe fn cudaGraphKernelNodeGetAttribute(
12522        hNode: cudaGraphNode_t,
12523        attr: cudaLaunchAttributeID,
12524        value_out: *mut cudaLaunchAttributeValue,
12525    ) -> cudaError_t {
12526        (culib().cudaGraphKernelNodeGetAttribute)(hNode, attr, value_out)
12527    }
12528    pub unsafe fn cudaGraphKernelNodeGetParams(
12529        node: cudaGraphNode_t,
12530        pNodeParams: *mut cudaKernelNodeParams,
12531    ) -> cudaError_t {
12532        (culib().cudaGraphKernelNodeGetParams)(node, pNodeParams)
12533    }
12534    #[cfg(any(
12535        feature = "cuda-11040",
12536        feature = "cuda-11050",
12537        feature = "cuda-11060",
12538        feature = "cuda-11070"
12539    ))]
12540    pub unsafe fn cudaGraphKernelNodeSetAttribute(
12541        hNode: cudaGraphNode_t,
12542        attr: cudaKernelNodeAttrID,
12543        value: *const cudaKernelNodeAttrValue,
12544    ) -> cudaError_t {
12545        (culib().cudaGraphKernelNodeSetAttribute)(hNode, attr, value)
12546    }
12547    #[cfg(any(
12548        feature = "cuda-11080",
12549        feature = "cuda-12000",
12550        feature = "cuda-12010",
12551        feature = "cuda-12020",
12552        feature = "cuda-12030",
12553        feature = "cuda-12040",
12554        feature = "cuda-12050",
12555        feature = "cuda-12060",
12556        feature = "cuda-12080",
12557        feature = "cuda-12090",
12558        feature = "cuda-13000",
12559        feature = "cuda-13010",
12560        feature = "cuda-13020"
12561    ))]
12562    pub unsafe fn cudaGraphKernelNodeSetAttribute(
12563        hNode: cudaGraphNode_t,
12564        attr: cudaLaunchAttributeID,
12565        value: *const cudaLaunchAttributeValue,
12566    ) -> cudaError_t {
12567        (culib().cudaGraphKernelNodeSetAttribute)(hNode, attr, value)
12568    }
12569    pub unsafe fn cudaGraphKernelNodeSetParams(
12570        node: cudaGraphNode_t,
12571        pNodeParams: *const cudaKernelNodeParams,
12572    ) -> cudaError_t {
12573        (culib().cudaGraphKernelNodeSetParams)(node, pNodeParams)
12574    }
12575    pub unsafe fn cudaGraphLaunch(graphExec: cudaGraphExec_t, stream: cudaStream_t) -> cudaError_t {
12576        (culib().cudaGraphLaunch)(graphExec, stream)
12577    }
12578    pub unsafe fn cudaGraphMemAllocNodeGetParams(
12579        node: cudaGraphNode_t,
12580        params_out: *mut cudaMemAllocNodeParams,
12581    ) -> cudaError_t {
12582        (culib().cudaGraphMemAllocNodeGetParams)(node, params_out)
12583    }
12584    pub unsafe fn cudaGraphMemFreeNodeGetParams(
12585        node: cudaGraphNode_t,
12586        dptr_out: *mut ::core::ffi::c_void,
12587    ) -> cudaError_t {
12588        (culib().cudaGraphMemFreeNodeGetParams)(node, dptr_out)
12589    }
12590    pub unsafe fn cudaGraphMemcpyNodeGetParams(
12591        node: cudaGraphNode_t,
12592        pNodeParams: *mut cudaMemcpy3DParms,
12593    ) -> cudaError_t {
12594        (culib().cudaGraphMemcpyNodeGetParams)(node, pNodeParams)
12595    }
12596    pub unsafe fn cudaGraphMemcpyNodeSetParams(
12597        node: cudaGraphNode_t,
12598        pNodeParams: *const cudaMemcpy3DParms,
12599    ) -> cudaError_t {
12600        (culib().cudaGraphMemcpyNodeSetParams)(node, pNodeParams)
12601    }
12602    pub unsafe fn cudaGraphMemcpyNodeSetParams1D(
12603        node: cudaGraphNode_t,
12604        dst: *mut ::core::ffi::c_void,
12605        src: *const ::core::ffi::c_void,
12606        count: usize,
12607        kind: cudaMemcpyKind,
12608    ) -> cudaError_t {
12609        (culib().cudaGraphMemcpyNodeSetParams1D)(node, dst, src, count, kind)
12610    }
12611    pub unsafe fn cudaGraphMemcpyNodeSetParamsFromSymbol(
12612        node: cudaGraphNode_t,
12613        dst: *mut ::core::ffi::c_void,
12614        symbol: *const ::core::ffi::c_void,
12615        count: usize,
12616        offset: usize,
12617        kind: cudaMemcpyKind,
12618    ) -> cudaError_t {
12619        (culib().cudaGraphMemcpyNodeSetParamsFromSymbol)(node, dst, symbol, count, offset, kind)
12620    }
12621    pub unsafe fn cudaGraphMemcpyNodeSetParamsToSymbol(
12622        node: cudaGraphNode_t,
12623        symbol: *const ::core::ffi::c_void,
12624        src: *const ::core::ffi::c_void,
12625        count: usize,
12626        offset: usize,
12627        kind: cudaMemcpyKind,
12628    ) -> cudaError_t {
12629        (culib().cudaGraphMemcpyNodeSetParamsToSymbol)(node, symbol, src, count, offset, kind)
12630    }
12631    pub unsafe fn cudaGraphMemsetNodeGetParams(
12632        node: cudaGraphNode_t,
12633        pNodeParams: *mut cudaMemsetParams,
12634    ) -> cudaError_t {
12635        (culib().cudaGraphMemsetNodeGetParams)(node, pNodeParams)
12636    }
12637    pub unsafe fn cudaGraphMemsetNodeSetParams(
12638        node: cudaGraphNode_t,
12639        pNodeParams: *const cudaMemsetParams,
12640    ) -> cudaError_t {
12641        (culib().cudaGraphMemsetNodeSetParams)(node, pNodeParams)
12642    }
12643    pub unsafe fn cudaGraphNodeFindInClone(
12644        pNode: *mut cudaGraphNode_t,
12645        originalNode: cudaGraphNode_t,
12646        clonedGraph: cudaGraph_t,
12647    ) -> cudaError_t {
12648        (culib().cudaGraphNodeFindInClone)(pNode, originalNode, clonedGraph)
12649    }
12650    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
12651    pub unsafe fn cudaGraphNodeGetContainingGraph(
12652        hNode: cudaGraphNode_t,
12653        phGraph: *mut cudaGraph_t,
12654    ) -> cudaError_t {
12655        (culib().cudaGraphNodeGetContainingGraph)(hNode, phGraph)
12656    }
12657    #[cfg(any(
12658        feature = "cuda-11040",
12659        feature = "cuda-11050",
12660        feature = "cuda-11060",
12661        feature = "cuda-11070",
12662        feature = "cuda-11080",
12663        feature = "cuda-12000",
12664        feature = "cuda-12010",
12665        feature = "cuda-12020",
12666        feature = "cuda-12030",
12667        feature = "cuda-12040",
12668        feature = "cuda-12050",
12669        feature = "cuda-12060",
12670        feature = "cuda-12080",
12671        feature = "cuda-12090"
12672    ))]
12673    pub unsafe fn cudaGraphNodeGetDependencies(
12674        node: cudaGraphNode_t,
12675        pDependencies: *mut cudaGraphNode_t,
12676        pNumDependencies: *mut usize,
12677    ) -> cudaError_t {
12678        (culib().cudaGraphNodeGetDependencies)(node, pDependencies, pNumDependencies)
12679    }
12680    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
12681    pub unsafe fn cudaGraphNodeGetDependencies(
12682        node: cudaGraphNode_t,
12683        pDependencies: *mut cudaGraphNode_t,
12684        edgeData: *mut cudaGraphEdgeData,
12685        pNumDependencies: *mut usize,
12686    ) -> cudaError_t {
12687        (culib().cudaGraphNodeGetDependencies)(node, pDependencies, edgeData, pNumDependencies)
12688    }
12689    #[cfg(any(
12690        feature = "cuda-12030",
12691        feature = "cuda-12040",
12692        feature = "cuda-12050",
12693        feature = "cuda-12060",
12694        feature = "cuda-12080",
12695        feature = "cuda-12090"
12696    ))]
12697    pub unsafe fn cudaGraphNodeGetDependencies_v2(
12698        node: cudaGraphNode_t,
12699        pDependencies: *mut cudaGraphNode_t,
12700        edgeData: *mut cudaGraphEdgeData,
12701        pNumDependencies: *mut usize,
12702    ) -> cudaError_t {
12703        (culib().cudaGraphNodeGetDependencies_v2)(node, pDependencies, edgeData, pNumDependencies)
12704    }
12705    #[cfg(any(
12706        feature = "cuda-11040",
12707        feature = "cuda-11050",
12708        feature = "cuda-11060",
12709        feature = "cuda-11070",
12710        feature = "cuda-11080",
12711        feature = "cuda-12000",
12712        feature = "cuda-12010",
12713        feature = "cuda-12020",
12714        feature = "cuda-12030",
12715        feature = "cuda-12040",
12716        feature = "cuda-12050",
12717        feature = "cuda-12060",
12718        feature = "cuda-12080",
12719        feature = "cuda-12090"
12720    ))]
12721    pub unsafe fn cudaGraphNodeGetDependentNodes(
12722        node: cudaGraphNode_t,
12723        pDependentNodes: *mut cudaGraphNode_t,
12724        pNumDependentNodes: *mut usize,
12725    ) -> cudaError_t {
12726        (culib().cudaGraphNodeGetDependentNodes)(node, pDependentNodes, pNumDependentNodes)
12727    }
12728    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
12729    pub unsafe fn cudaGraphNodeGetDependentNodes(
12730        node: cudaGraphNode_t,
12731        pDependentNodes: *mut cudaGraphNode_t,
12732        edgeData: *mut cudaGraphEdgeData,
12733        pNumDependentNodes: *mut usize,
12734    ) -> cudaError_t {
12735        (culib().cudaGraphNodeGetDependentNodes)(
12736            node,
12737            pDependentNodes,
12738            edgeData,
12739            pNumDependentNodes,
12740        )
12741    }
12742    #[cfg(any(
12743        feature = "cuda-12030",
12744        feature = "cuda-12040",
12745        feature = "cuda-12050",
12746        feature = "cuda-12060",
12747        feature = "cuda-12080",
12748        feature = "cuda-12090"
12749    ))]
12750    pub unsafe fn cudaGraphNodeGetDependentNodes_v2(
12751        node: cudaGraphNode_t,
12752        pDependentNodes: *mut cudaGraphNode_t,
12753        edgeData: *mut cudaGraphEdgeData,
12754        pNumDependentNodes: *mut usize,
12755    ) -> cudaError_t {
12756        (culib().cudaGraphNodeGetDependentNodes_v2)(
12757            node,
12758            pDependentNodes,
12759            edgeData,
12760            pNumDependentNodes,
12761        )
12762    }
12763    #[cfg(any(
12764        feature = "cuda-11060",
12765        feature = "cuda-11070",
12766        feature = "cuda-11080",
12767        feature = "cuda-12000",
12768        feature = "cuda-12010",
12769        feature = "cuda-12020",
12770        feature = "cuda-12030",
12771        feature = "cuda-12040",
12772        feature = "cuda-12050",
12773        feature = "cuda-12060",
12774        feature = "cuda-12080",
12775        feature = "cuda-12090",
12776        feature = "cuda-13000",
12777        feature = "cuda-13010",
12778        feature = "cuda-13020"
12779    ))]
12780    pub unsafe fn cudaGraphNodeGetEnabled(
12781        hGraphExec: cudaGraphExec_t,
12782        hNode: cudaGraphNode_t,
12783        isEnabled: *mut ::core::ffi::c_uint,
12784    ) -> cudaError_t {
12785        (culib().cudaGraphNodeGetEnabled)(hGraphExec, hNode, isEnabled)
12786    }
12787    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
12788    pub unsafe fn cudaGraphNodeGetLocalId(
12789        hNode: cudaGraphNode_t,
12790        nodeId: *mut ::core::ffi::c_uint,
12791    ) -> cudaError_t {
12792        (culib().cudaGraphNodeGetLocalId)(hNode, nodeId)
12793    }
12794    #[cfg(any(feature = "cuda-13020"))]
12795    pub unsafe fn cudaGraphNodeGetParams(
12796        node: cudaGraphNode_t,
12797        nodeParams: *mut cudaGraphNodeParams,
12798    ) -> cudaError_t {
12799        (culib().cudaGraphNodeGetParams)(node, nodeParams)
12800    }
12801    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
12802    pub unsafe fn cudaGraphNodeGetToolsId(
12803        hNode: cudaGraphNode_t,
12804        toolsNodeId: *mut ::core::ffi::c_ulonglong,
12805    ) -> cudaError_t {
12806        (culib().cudaGraphNodeGetToolsId)(hNode, toolsNodeId)
12807    }
12808    pub unsafe fn cudaGraphNodeGetType(
12809        node: cudaGraphNode_t,
12810        pType: *mut cudaGraphNodeType,
12811    ) -> cudaError_t {
12812        (culib().cudaGraphNodeGetType)(node, pType)
12813    }
12814    #[cfg(any(
12815        feature = "cuda-11060",
12816        feature = "cuda-11070",
12817        feature = "cuda-11080",
12818        feature = "cuda-12000",
12819        feature = "cuda-12010",
12820        feature = "cuda-12020",
12821        feature = "cuda-12030",
12822        feature = "cuda-12040",
12823        feature = "cuda-12050",
12824        feature = "cuda-12060",
12825        feature = "cuda-12080",
12826        feature = "cuda-12090",
12827        feature = "cuda-13000",
12828        feature = "cuda-13010",
12829        feature = "cuda-13020"
12830    ))]
12831    pub unsafe fn cudaGraphNodeSetEnabled(
12832        hGraphExec: cudaGraphExec_t,
12833        hNode: cudaGraphNode_t,
12834        isEnabled: ::core::ffi::c_uint,
12835    ) -> cudaError_t {
12836        (culib().cudaGraphNodeSetEnabled)(hGraphExec, hNode, isEnabled)
12837    }
12838    #[cfg(any(
12839        feature = "cuda-12020",
12840        feature = "cuda-12030",
12841        feature = "cuda-12040",
12842        feature = "cuda-12050",
12843        feature = "cuda-12060",
12844        feature = "cuda-12080",
12845        feature = "cuda-12090",
12846        feature = "cuda-13000",
12847        feature = "cuda-13010",
12848        feature = "cuda-13020"
12849    ))]
12850    pub unsafe fn cudaGraphNodeSetParams(
12851        node: cudaGraphNode_t,
12852        nodeParams: *mut cudaGraphNodeParams,
12853    ) -> cudaError_t {
12854        (culib().cudaGraphNodeSetParams)(node, nodeParams)
12855    }
12856    pub unsafe fn cudaGraphReleaseUserObject(
12857        graph: cudaGraph_t,
12858        object: cudaUserObject_t,
12859        count: ::core::ffi::c_uint,
12860    ) -> cudaError_t {
12861        (culib().cudaGraphReleaseUserObject)(graph, object, count)
12862    }
12863    #[cfg(any(
12864        feature = "cuda-11040",
12865        feature = "cuda-11050",
12866        feature = "cuda-11060",
12867        feature = "cuda-11070",
12868        feature = "cuda-11080",
12869        feature = "cuda-12000",
12870        feature = "cuda-12010",
12871        feature = "cuda-12020",
12872        feature = "cuda-12030",
12873        feature = "cuda-12040",
12874        feature = "cuda-12050",
12875        feature = "cuda-12060",
12876        feature = "cuda-12080",
12877        feature = "cuda-12090"
12878    ))]
12879    pub unsafe fn cudaGraphRemoveDependencies(
12880        graph: cudaGraph_t,
12881        from: *const cudaGraphNode_t,
12882        to: *const cudaGraphNode_t,
12883        numDependencies: usize,
12884    ) -> cudaError_t {
12885        (culib().cudaGraphRemoveDependencies)(graph, from, to, numDependencies)
12886    }
12887    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
12888    pub unsafe fn cudaGraphRemoveDependencies(
12889        graph: cudaGraph_t,
12890        from: *const cudaGraphNode_t,
12891        to: *const cudaGraphNode_t,
12892        edgeData: *const cudaGraphEdgeData,
12893        numDependencies: usize,
12894    ) -> cudaError_t {
12895        (culib().cudaGraphRemoveDependencies)(graph, from, to, edgeData, numDependencies)
12896    }
12897    #[cfg(any(
12898        feature = "cuda-12030",
12899        feature = "cuda-12040",
12900        feature = "cuda-12050",
12901        feature = "cuda-12060",
12902        feature = "cuda-12080",
12903        feature = "cuda-12090"
12904    ))]
12905    pub unsafe fn cudaGraphRemoveDependencies_v2(
12906        graph: cudaGraph_t,
12907        from: *const cudaGraphNode_t,
12908        to: *const cudaGraphNode_t,
12909        edgeData: *const cudaGraphEdgeData,
12910        numDependencies: usize,
12911    ) -> cudaError_t {
12912        (culib().cudaGraphRemoveDependencies_v2)(graph, from, to, edgeData, numDependencies)
12913    }
12914    pub unsafe fn cudaGraphRetainUserObject(
12915        graph: cudaGraph_t,
12916        object: cudaUserObject_t,
12917        count: ::core::ffi::c_uint,
12918        flags: ::core::ffi::c_uint,
12919    ) -> cudaError_t {
12920        (culib().cudaGraphRetainUserObject)(graph, object, count, flags)
12921    }
12922    pub unsafe fn cudaGraphUpload(graphExec: cudaGraphExec_t, stream: cudaStream_t) -> cudaError_t {
12923        (culib().cudaGraphUpload)(graphExec, stream)
12924    }
12925    pub unsafe fn cudaGraphicsMapResources(
12926        count: ::core::ffi::c_int,
12927        resources: *mut cudaGraphicsResource_t,
12928        stream: cudaStream_t,
12929    ) -> cudaError_t {
12930        (culib().cudaGraphicsMapResources)(count, resources, stream)
12931    }
12932    pub unsafe fn cudaGraphicsResourceGetMappedMipmappedArray(
12933        mipmappedArray: *mut cudaMipmappedArray_t,
12934        resource: cudaGraphicsResource_t,
12935    ) -> cudaError_t {
12936        (culib().cudaGraphicsResourceGetMappedMipmappedArray)(mipmappedArray, resource)
12937    }
12938    pub unsafe fn cudaGraphicsResourceGetMappedPointer(
12939        devPtr: *mut *mut ::core::ffi::c_void,
12940        size: *mut usize,
12941        resource: cudaGraphicsResource_t,
12942    ) -> cudaError_t {
12943        (culib().cudaGraphicsResourceGetMappedPointer)(devPtr, size, resource)
12944    }
12945    pub unsafe fn cudaGraphicsResourceSetMapFlags(
12946        resource: cudaGraphicsResource_t,
12947        flags: ::core::ffi::c_uint,
12948    ) -> cudaError_t {
12949        (culib().cudaGraphicsResourceSetMapFlags)(resource, flags)
12950    }
12951    pub unsafe fn cudaGraphicsSubResourceGetMappedArray(
12952        array: *mut cudaArray_t,
12953        resource: cudaGraphicsResource_t,
12954        arrayIndex: ::core::ffi::c_uint,
12955        mipLevel: ::core::ffi::c_uint,
12956    ) -> cudaError_t {
12957        (culib().cudaGraphicsSubResourceGetMappedArray)(array, resource, arrayIndex, mipLevel)
12958    }
12959    pub unsafe fn cudaGraphicsUnmapResources(
12960        count: ::core::ffi::c_int,
12961        resources: *mut cudaGraphicsResource_t,
12962        stream: cudaStream_t,
12963    ) -> cudaError_t {
12964        (culib().cudaGraphicsUnmapResources)(count, resources, stream)
12965    }
12966    pub unsafe fn cudaGraphicsUnregisterResource(resource: cudaGraphicsResource_t) -> cudaError_t {
12967        (culib().cudaGraphicsUnregisterResource)(resource)
12968    }
12969    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
12970    pub unsafe fn cudaGreenCtxCreate(
12971        phCtx: *mut cudaExecutionContext_t,
12972        desc: cudaDevResourceDesc_t,
12973        device: ::core::ffi::c_int,
12974        flags: ::core::ffi::c_uint,
12975    ) -> cudaError_t {
12976        (culib().cudaGreenCtxCreate)(phCtx, desc, device, flags)
12977    }
12978    pub unsafe fn cudaHostAlloc(
12979        pHost: *mut *mut ::core::ffi::c_void,
12980        size: usize,
12981        flags: ::core::ffi::c_uint,
12982    ) -> cudaError_t {
12983        (culib().cudaHostAlloc)(pHost, size, flags)
12984    }
12985    pub unsafe fn cudaHostGetDevicePointer(
12986        pDevice: *mut *mut ::core::ffi::c_void,
12987        pHost: *mut ::core::ffi::c_void,
12988        flags: ::core::ffi::c_uint,
12989    ) -> cudaError_t {
12990        (culib().cudaHostGetDevicePointer)(pDevice, pHost, flags)
12991    }
12992    pub unsafe fn cudaHostGetFlags(
12993        pFlags: *mut ::core::ffi::c_uint,
12994        pHost: *mut ::core::ffi::c_void,
12995    ) -> cudaError_t {
12996        (culib().cudaHostGetFlags)(pFlags, pHost)
12997    }
12998    pub unsafe fn cudaHostRegister(
12999        ptr: *mut ::core::ffi::c_void,
13000        size: usize,
13001        flags: ::core::ffi::c_uint,
13002    ) -> cudaError_t {
13003        (culib().cudaHostRegister)(ptr, size, flags)
13004    }
13005    pub unsafe fn cudaHostUnregister(ptr: *mut ::core::ffi::c_void) -> cudaError_t {
13006        (culib().cudaHostUnregister)(ptr)
13007    }
13008    pub unsafe fn cudaImportExternalMemory(
13009        extMem_out: *mut cudaExternalMemory_t,
13010        memHandleDesc: *const cudaExternalMemoryHandleDesc,
13011    ) -> cudaError_t {
13012        (culib().cudaImportExternalMemory)(extMem_out, memHandleDesc)
13013    }
13014    pub unsafe fn cudaImportExternalSemaphore(
13015        extSem_out: *mut cudaExternalSemaphore_t,
13016        semHandleDesc: *const cudaExternalSemaphoreHandleDesc,
13017    ) -> cudaError_t {
13018        (culib().cudaImportExternalSemaphore)(extSem_out, semHandleDesc)
13019    }
13020    #[cfg(any(
13021        feature = "cuda-12000",
13022        feature = "cuda-12010",
13023        feature = "cuda-12020",
13024        feature = "cuda-12030",
13025        feature = "cuda-12040",
13026        feature = "cuda-12050",
13027        feature = "cuda-12060",
13028        feature = "cuda-12080",
13029        feature = "cuda-12090",
13030        feature = "cuda-13000",
13031        feature = "cuda-13010",
13032        feature = "cuda-13020"
13033    ))]
13034    pub unsafe fn cudaInitDevice(
13035        device: ::core::ffi::c_int,
13036        deviceFlags: ::core::ffi::c_uint,
13037        flags: ::core::ffi::c_uint,
13038    ) -> cudaError_t {
13039        (culib().cudaInitDevice)(device, deviceFlags, flags)
13040    }
13041    pub unsafe fn cudaIpcCloseMemHandle(devPtr: *mut ::core::ffi::c_void) -> cudaError_t {
13042        (culib().cudaIpcCloseMemHandle)(devPtr)
13043    }
13044    pub unsafe fn cudaIpcGetEventHandle(
13045        handle: *mut cudaIpcEventHandle_t,
13046        event: cudaEvent_t,
13047    ) -> cudaError_t {
13048        (culib().cudaIpcGetEventHandle)(handle, event)
13049    }
13050    pub unsafe fn cudaIpcGetMemHandle(
13051        handle: *mut cudaIpcMemHandle_t,
13052        devPtr: *mut ::core::ffi::c_void,
13053    ) -> cudaError_t {
13054        (culib().cudaIpcGetMemHandle)(handle, devPtr)
13055    }
13056    pub unsafe fn cudaIpcOpenEventHandle(
13057        event: *mut cudaEvent_t,
13058        handle: cudaIpcEventHandle_t,
13059    ) -> cudaError_t {
13060        (culib().cudaIpcOpenEventHandle)(event, handle)
13061    }
13062    pub unsafe fn cudaIpcOpenMemHandle(
13063        devPtr: *mut *mut ::core::ffi::c_void,
13064        handle: cudaIpcMemHandle_t,
13065        flags: ::core::ffi::c_uint,
13066    ) -> cudaError_t {
13067        (culib().cudaIpcOpenMemHandle)(devPtr, handle, flags)
13068    }
13069    #[cfg(any(
13070        feature = "cuda-12080",
13071        feature = "cuda-12090",
13072        feature = "cuda-13000",
13073        feature = "cuda-13010",
13074        feature = "cuda-13020"
13075    ))]
13076    pub unsafe fn cudaKernelSetAttributeForDevice(
13077        kernel: cudaKernel_t,
13078        attr: cudaFuncAttribute,
13079        value: ::core::ffi::c_int,
13080        device: ::core::ffi::c_int,
13081    ) -> cudaError_t {
13082        (culib().cudaKernelSetAttributeForDevice)(kernel, attr, value, device)
13083    }
13084    pub unsafe fn cudaLaunchCooperativeKernel(
13085        func: *const ::core::ffi::c_void,
13086        gridDim: dim3,
13087        blockDim: dim3,
13088        args: *mut *mut ::core::ffi::c_void,
13089        sharedMem: usize,
13090        stream: cudaStream_t,
13091    ) -> cudaError_t {
13092        (culib().cudaLaunchCooperativeKernel)(func, gridDim, blockDim, args, sharedMem, stream)
13093    }
13094    #[cfg(any(
13095        feature = "cuda-11040",
13096        feature = "cuda-11050",
13097        feature = "cuda-11060",
13098        feature = "cuda-11070",
13099        feature = "cuda-11080",
13100        feature = "cuda-12000",
13101        feature = "cuda-12010",
13102        feature = "cuda-12020",
13103        feature = "cuda-12030",
13104        feature = "cuda-12040",
13105        feature = "cuda-12050",
13106        feature = "cuda-12060",
13107        feature = "cuda-12080",
13108        feature = "cuda-12090"
13109    ))]
13110    pub unsafe fn cudaLaunchCooperativeKernelMultiDevice(
13111        launchParamsList: *mut cudaLaunchParams,
13112        numDevices: ::core::ffi::c_uint,
13113        flags: ::core::ffi::c_uint,
13114    ) -> cudaError_t {
13115        (culib().cudaLaunchCooperativeKernelMultiDevice)(launchParamsList, numDevices, flags)
13116    }
13117    pub unsafe fn cudaLaunchHostFunc(
13118        stream: cudaStream_t,
13119        fn_: cudaHostFn_t,
13120        userData: *mut ::core::ffi::c_void,
13121    ) -> cudaError_t {
13122        (culib().cudaLaunchHostFunc)(stream, fn_, userData)
13123    }
13124    #[cfg(any(feature = "cuda-13020"))]
13125    pub unsafe fn cudaLaunchHostFunc_v2(
13126        stream: cudaStream_t,
13127        fn_: cudaHostFn_t,
13128        userData: *mut ::core::ffi::c_void,
13129        syncMode: ::core::ffi::c_uint,
13130    ) -> cudaError_t {
13131        (culib().cudaLaunchHostFunc_v2)(stream, fn_, userData, syncMode)
13132    }
13133    pub unsafe fn cudaLaunchKernel(
13134        func: *const ::core::ffi::c_void,
13135        gridDim: dim3,
13136        blockDim: dim3,
13137        args: *mut *mut ::core::ffi::c_void,
13138        sharedMem: usize,
13139        stream: cudaStream_t,
13140    ) -> cudaError_t {
13141        (culib().cudaLaunchKernel)(func, gridDim, blockDim, args, sharedMem, stream)
13142    }
13143    #[cfg(any(
13144        feature = "cuda-11080",
13145        feature = "cuda-12000",
13146        feature = "cuda-12010",
13147        feature = "cuda-12020",
13148        feature = "cuda-12030",
13149        feature = "cuda-12040",
13150        feature = "cuda-12050",
13151        feature = "cuda-12060",
13152        feature = "cuda-12080",
13153        feature = "cuda-12090",
13154        feature = "cuda-13000",
13155        feature = "cuda-13010",
13156        feature = "cuda-13020"
13157    ))]
13158    pub unsafe fn cudaLaunchKernelExC(
13159        config: *const cudaLaunchConfig_t,
13160        func: *const ::core::ffi::c_void,
13161        args: *mut *mut ::core::ffi::c_void,
13162    ) -> cudaError_t {
13163        (culib().cudaLaunchKernelExC)(config, func, args)
13164    }
13165    #[cfg(any(
13166        feature = "cuda-12080",
13167        feature = "cuda-12090",
13168        feature = "cuda-13000",
13169        feature = "cuda-13010",
13170        feature = "cuda-13020"
13171    ))]
13172    pub unsafe fn cudaLibraryEnumerateKernels(
13173        kernels: *mut cudaKernel_t,
13174        numKernels: ::core::ffi::c_uint,
13175        lib: cudaLibrary_t,
13176    ) -> cudaError_t {
13177        (culib().cudaLibraryEnumerateKernels)(kernels, numKernels, lib)
13178    }
13179    #[cfg(any(
13180        feature = "cuda-12080",
13181        feature = "cuda-12090",
13182        feature = "cuda-13000",
13183        feature = "cuda-13010",
13184        feature = "cuda-13020"
13185    ))]
13186    pub unsafe fn cudaLibraryGetGlobal(
13187        dptr: *mut *mut ::core::ffi::c_void,
13188        bytes: *mut usize,
13189        library: cudaLibrary_t,
13190        name: *const ::core::ffi::c_char,
13191    ) -> cudaError_t {
13192        (culib().cudaLibraryGetGlobal)(dptr, bytes, library, name)
13193    }
13194    #[cfg(any(
13195        feature = "cuda-12080",
13196        feature = "cuda-12090",
13197        feature = "cuda-13000",
13198        feature = "cuda-13010",
13199        feature = "cuda-13020"
13200    ))]
13201    pub unsafe fn cudaLibraryGetKernel(
13202        pKernel: *mut cudaKernel_t,
13203        library: cudaLibrary_t,
13204        name: *const ::core::ffi::c_char,
13205    ) -> cudaError_t {
13206        (culib().cudaLibraryGetKernel)(pKernel, library, name)
13207    }
13208    #[cfg(any(
13209        feature = "cuda-12080",
13210        feature = "cuda-12090",
13211        feature = "cuda-13000",
13212        feature = "cuda-13010",
13213        feature = "cuda-13020"
13214    ))]
13215    pub unsafe fn cudaLibraryGetKernelCount(
13216        count: *mut ::core::ffi::c_uint,
13217        lib: cudaLibrary_t,
13218    ) -> cudaError_t {
13219        (culib().cudaLibraryGetKernelCount)(count, lib)
13220    }
13221    #[cfg(any(
13222        feature = "cuda-12080",
13223        feature = "cuda-12090",
13224        feature = "cuda-13000",
13225        feature = "cuda-13010",
13226        feature = "cuda-13020"
13227    ))]
13228    pub unsafe fn cudaLibraryGetManaged(
13229        dptr: *mut *mut ::core::ffi::c_void,
13230        bytes: *mut usize,
13231        library: cudaLibrary_t,
13232        name: *const ::core::ffi::c_char,
13233    ) -> cudaError_t {
13234        (culib().cudaLibraryGetManaged)(dptr, bytes, library, name)
13235    }
13236    #[cfg(any(
13237        feature = "cuda-12080",
13238        feature = "cuda-12090",
13239        feature = "cuda-13000",
13240        feature = "cuda-13010",
13241        feature = "cuda-13020"
13242    ))]
13243    pub unsafe fn cudaLibraryGetUnifiedFunction(
13244        fptr: *mut *mut ::core::ffi::c_void,
13245        library: cudaLibrary_t,
13246        symbol: *const ::core::ffi::c_char,
13247    ) -> cudaError_t {
13248        (culib().cudaLibraryGetUnifiedFunction)(fptr, library, symbol)
13249    }
13250    #[cfg(any(
13251        feature = "cuda-12080",
13252        feature = "cuda-12090",
13253        feature = "cuda-13000",
13254        feature = "cuda-13010",
13255        feature = "cuda-13020"
13256    ))]
13257    pub unsafe fn cudaLibraryLoadData(
13258        library: *mut cudaLibrary_t,
13259        code: *const ::core::ffi::c_void,
13260        jitOptions: *mut cudaJitOption,
13261        jitOptionsValues: *mut *mut ::core::ffi::c_void,
13262        numJitOptions: ::core::ffi::c_uint,
13263        libraryOptions: *mut cudaLibraryOption,
13264        libraryOptionValues: *mut *mut ::core::ffi::c_void,
13265        numLibraryOptions: ::core::ffi::c_uint,
13266    ) -> cudaError_t {
13267        (culib().cudaLibraryLoadData)(
13268            library,
13269            code,
13270            jitOptions,
13271            jitOptionsValues,
13272            numJitOptions,
13273            libraryOptions,
13274            libraryOptionValues,
13275            numLibraryOptions,
13276        )
13277    }
13278    #[cfg(any(
13279        feature = "cuda-12080",
13280        feature = "cuda-12090",
13281        feature = "cuda-13000",
13282        feature = "cuda-13010",
13283        feature = "cuda-13020"
13284    ))]
13285    pub unsafe fn cudaLibraryLoadFromFile(
13286        library: *mut cudaLibrary_t,
13287        fileName: *const ::core::ffi::c_char,
13288        jitOptions: *mut cudaJitOption,
13289        jitOptionsValues: *mut *mut ::core::ffi::c_void,
13290        numJitOptions: ::core::ffi::c_uint,
13291        libraryOptions: *mut cudaLibraryOption,
13292        libraryOptionValues: *mut *mut ::core::ffi::c_void,
13293        numLibraryOptions: ::core::ffi::c_uint,
13294    ) -> cudaError_t {
13295        (culib().cudaLibraryLoadFromFile)(
13296            library,
13297            fileName,
13298            jitOptions,
13299            jitOptionsValues,
13300            numJitOptions,
13301            libraryOptions,
13302            libraryOptionValues,
13303            numLibraryOptions,
13304        )
13305    }
13306    #[cfg(any(
13307        feature = "cuda-12080",
13308        feature = "cuda-12090",
13309        feature = "cuda-13000",
13310        feature = "cuda-13010",
13311        feature = "cuda-13020"
13312    ))]
13313    pub unsafe fn cudaLibraryUnload(library: cudaLibrary_t) -> cudaError_t {
13314        (culib().cudaLibraryUnload)(library)
13315    }
13316    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13317    pub unsafe fn cudaLogsCurrent(
13318        iterator_out: *mut cudaLogIterator,
13319        flags: ::core::ffi::c_uint,
13320    ) -> cudaError_t {
13321        (culib().cudaLogsCurrent)(iterator_out, flags)
13322    }
13323    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13324    pub unsafe fn cudaLogsDumpToFile(
13325        iterator: *mut cudaLogIterator,
13326        pathToFile: *const ::core::ffi::c_char,
13327        flags: ::core::ffi::c_uint,
13328    ) -> cudaError_t {
13329        (culib().cudaLogsDumpToFile)(iterator, pathToFile, flags)
13330    }
13331    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13332    pub unsafe fn cudaLogsDumpToMemory(
13333        iterator: *mut cudaLogIterator,
13334        buffer: *mut ::core::ffi::c_char,
13335        size: *mut usize,
13336        flags: ::core::ffi::c_uint,
13337    ) -> cudaError_t {
13338        (culib().cudaLogsDumpToMemory)(iterator, buffer, size, flags)
13339    }
13340    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13341    pub unsafe fn cudaLogsRegisterCallback(
13342        callbackFunc: cudaLogsCallback_t,
13343        userData: *mut ::core::ffi::c_void,
13344        callback_out: *mut cudaLogsCallbackHandle,
13345    ) -> cudaError_t {
13346        (culib().cudaLogsRegisterCallback)(callbackFunc, userData, callback_out)
13347    }
13348    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13349    pub unsafe fn cudaLogsUnregisterCallback(callback: cudaLogsCallbackHandle) -> cudaError_t {
13350        (culib().cudaLogsUnregisterCallback)(callback)
13351    }
13352    pub unsafe fn cudaMalloc(devPtr: *mut *mut ::core::ffi::c_void, size: usize) -> cudaError_t {
13353        (culib().cudaMalloc)(devPtr, size)
13354    }
13355    pub unsafe fn cudaMalloc3D(
13356        pitchedDevPtr: *mut cudaPitchedPtr,
13357        extent: cudaExtent,
13358    ) -> cudaError_t {
13359        (culib().cudaMalloc3D)(pitchedDevPtr, extent)
13360    }
13361    pub unsafe fn cudaMalloc3DArray(
13362        array: *mut cudaArray_t,
13363        desc: *const cudaChannelFormatDesc,
13364        extent: cudaExtent,
13365        flags: ::core::ffi::c_uint,
13366    ) -> cudaError_t {
13367        (culib().cudaMalloc3DArray)(array, desc, extent, flags)
13368    }
13369    pub unsafe fn cudaMallocArray(
13370        array: *mut cudaArray_t,
13371        desc: *const cudaChannelFormatDesc,
13372        width: usize,
13373        height: usize,
13374        flags: ::core::ffi::c_uint,
13375    ) -> cudaError_t {
13376        (culib().cudaMallocArray)(array, desc, width, height, flags)
13377    }
13378    pub unsafe fn cudaMallocAsync(
13379        devPtr: *mut *mut ::core::ffi::c_void,
13380        size: usize,
13381        hStream: cudaStream_t,
13382    ) -> cudaError_t {
13383        (culib().cudaMallocAsync)(devPtr, size, hStream)
13384    }
13385    pub unsafe fn cudaMallocFromPoolAsync(
13386        ptr: *mut *mut ::core::ffi::c_void,
13387        size: usize,
13388        memPool: cudaMemPool_t,
13389        stream: cudaStream_t,
13390    ) -> cudaError_t {
13391        (culib().cudaMallocFromPoolAsync)(ptr, size, memPool, stream)
13392    }
13393    pub unsafe fn cudaMallocHost(ptr: *mut *mut ::core::ffi::c_void, size: usize) -> cudaError_t {
13394        (culib().cudaMallocHost)(ptr, size)
13395    }
13396    pub unsafe fn cudaMallocManaged(
13397        devPtr: *mut *mut ::core::ffi::c_void,
13398        size: usize,
13399        flags: ::core::ffi::c_uint,
13400    ) -> cudaError_t {
13401        (culib().cudaMallocManaged)(devPtr, size, flags)
13402    }
13403    pub unsafe fn cudaMallocMipmappedArray(
13404        mipmappedArray: *mut cudaMipmappedArray_t,
13405        desc: *const cudaChannelFormatDesc,
13406        extent: cudaExtent,
13407        numLevels: ::core::ffi::c_uint,
13408        flags: ::core::ffi::c_uint,
13409    ) -> cudaError_t {
13410        (culib().cudaMallocMipmappedArray)(mipmappedArray, desc, extent, numLevels, flags)
13411    }
13412    pub unsafe fn cudaMallocPitch(
13413        devPtr: *mut *mut ::core::ffi::c_void,
13414        pitch: *mut usize,
13415        width: usize,
13416        height: usize,
13417    ) -> cudaError_t {
13418        (culib().cudaMallocPitch)(devPtr, pitch, width, height)
13419    }
13420    #[cfg(any(
13421        feature = "cuda-11040",
13422        feature = "cuda-11050",
13423        feature = "cuda-11060",
13424        feature = "cuda-11070",
13425        feature = "cuda-11080",
13426        feature = "cuda-12000",
13427        feature = "cuda-12010",
13428        feature = "cuda-12020",
13429        feature = "cuda-12030",
13430        feature = "cuda-12040",
13431        feature = "cuda-12050",
13432        feature = "cuda-12060",
13433        feature = "cuda-12080",
13434        feature = "cuda-12090"
13435    ))]
13436    pub unsafe fn cudaMemAdvise(
13437        devPtr: *const ::core::ffi::c_void,
13438        count: usize,
13439        advice: cudaMemoryAdvise,
13440        device: ::core::ffi::c_int,
13441    ) -> cudaError_t {
13442        (culib().cudaMemAdvise)(devPtr, count, advice, device)
13443    }
13444    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13445    pub unsafe fn cudaMemAdvise(
13446        devPtr: *const ::core::ffi::c_void,
13447        count: usize,
13448        advice: cudaMemoryAdvise,
13449        location: cudaMemLocation,
13450    ) -> cudaError_t {
13451        (culib().cudaMemAdvise)(devPtr, count, advice, location)
13452    }
13453    #[cfg(any(
13454        feature = "cuda-12020",
13455        feature = "cuda-12030",
13456        feature = "cuda-12040",
13457        feature = "cuda-12050",
13458        feature = "cuda-12060",
13459        feature = "cuda-12080",
13460        feature = "cuda-12090"
13461    ))]
13462    pub unsafe fn cudaMemAdvise_v2(
13463        devPtr: *const ::core::ffi::c_void,
13464        count: usize,
13465        advice: cudaMemoryAdvise,
13466        location: cudaMemLocation,
13467    ) -> cudaError_t {
13468        (culib().cudaMemAdvise_v2)(devPtr, count, advice, location)
13469    }
13470    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13471    pub unsafe fn cudaMemDiscardAndPrefetchBatchAsync(
13472        dptrs: *mut *mut ::core::ffi::c_void,
13473        sizes: *mut usize,
13474        count: usize,
13475        prefetchLocs: *mut cudaMemLocation,
13476        prefetchLocIdxs: *mut usize,
13477        numPrefetchLocs: usize,
13478        flags: ::core::ffi::c_ulonglong,
13479        stream: cudaStream_t,
13480    ) -> cudaError_t {
13481        (culib().cudaMemDiscardAndPrefetchBatchAsync)(
13482            dptrs,
13483            sizes,
13484            count,
13485            prefetchLocs,
13486            prefetchLocIdxs,
13487            numPrefetchLocs,
13488            flags,
13489            stream,
13490        )
13491    }
13492    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13493    pub unsafe fn cudaMemDiscardBatchAsync(
13494        dptrs: *mut *mut ::core::ffi::c_void,
13495        sizes: *mut usize,
13496        count: usize,
13497        flags: ::core::ffi::c_ulonglong,
13498        stream: cudaStream_t,
13499    ) -> cudaError_t {
13500        (culib().cudaMemDiscardBatchAsync)(dptrs, sizes, count, flags, stream)
13501    }
13502    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13503    pub unsafe fn cudaMemGetDefaultMemPool(
13504        memPool: *mut cudaMemPool_t,
13505        location: *mut cudaMemLocation,
13506        type_: cudaMemAllocationType,
13507    ) -> cudaError_t {
13508        (culib().cudaMemGetDefaultMemPool)(memPool, location, type_)
13509    }
13510    pub unsafe fn cudaMemGetInfo(free: *mut usize, total: *mut usize) -> cudaError_t {
13511        (culib().cudaMemGetInfo)(free, total)
13512    }
13513    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13514    pub unsafe fn cudaMemGetMemPool(
13515        memPool: *mut cudaMemPool_t,
13516        location: *mut cudaMemLocation,
13517        type_: cudaMemAllocationType,
13518    ) -> cudaError_t {
13519        (culib().cudaMemGetMemPool)(memPool, location, type_)
13520    }
13521    pub unsafe fn cudaMemPoolCreate(
13522        memPool: *mut cudaMemPool_t,
13523        poolProps: *const cudaMemPoolProps,
13524    ) -> cudaError_t {
13525        (culib().cudaMemPoolCreate)(memPool, poolProps)
13526    }
13527    pub unsafe fn cudaMemPoolDestroy(memPool: cudaMemPool_t) -> cudaError_t {
13528        (culib().cudaMemPoolDestroy)(memPool)
13529    }
13530    pub unsafe fn cudaMemPoolExportPointer(
13531        exportData: *mut cudaMemPoolPtrExportData,
13532        ptr: *mut ::core::ffi::c_void,
13533    ) -> cudaError_t {
13534        (culib().cudaMemPoolExportPointer)(exportData, ptr)
13535    }
13536    pub unsafe fn cudaMemPoolExportToShareableHandle(
13537        shareableHandle: *mut ::core::ffi::c_void,
13538        memPool: cudaMemPool_t,
13539        handleType: cudaMemAllocationHandleType,
13540        flags: ::core::ffi::c_uint,
13541    ) -> cudaError_t {
13542        (culib().cudaMemPoolExportToShareableHandle)(shareableHandle, memPool, handleType, flags)
13543    }
13544    pub unsafe fn cudaMemPoolGetAccess(
13545        flags: *mut cudaMemAccessFlags,
13546        memPool: cudaMemPool_t,
13547        location: *mut cudaMemLocation,
13548    ) -> cudaError_t {
13549        (culib().cudaMemPoolGetAccess)(flags, memPool, location)
13550    }
13551    pub unsafe fn cudaMemPoolGetAttribute(
13552        memPool: cudaMemPool_t,
13553        attr: cudaMemPoolAttr,
13554        value: *mut ::core::ffi::c_void,
13555    ) -> cudaError_t {
13556        (culib().cudaMemPoolGetAttribute)(memPool, attr, value)
13557    }
13558    pub unsafe fn cudaMemPoolImportFromShareableHandle(
13559        memPool: *mut cudaMemPool_t,
13560        shareableHandle: *mut ::core::ffi::c_void,
13561        handleType: cudaMemAllocationHandleType,
13562        flags: ::core::ffi::c_uint,
13563    ) -> cudaError_t {
13564        (culib().cudaMemPoolImportFromShareableHandle)(memPool, shareableHandle, handleType, flags)
13565    }
13566    pub unsafe fn cudaMemPoolImportPointer(
13567        ptr: *mut *mut ::core::ffi::c_void,
13568        memPool: cudaMemPool_t,
13569        exportData: *mut cudaMemPoolPtrExportData,
13570    ) -> cudaError_t {
13571        (culib().cudaMemPoolImportPointer)(ptr, memPool, exportData)
13572    }
13573    pub unsafe fn cudaMemPoolSetAccess(
13574        memPool: cudaMemPool_t,
13575        descList: *const cudaMemAccessDesc,
13576        count: usize,
13577    ) -> cudaError_t {
13578        (culib().cudaMemPoolSetAccess)(memPool, descList, count)
13579    }
13580    pub unsafe fn cudaMemPoolSetAttribute(
13581        memPool: cudaMemPool_t,
13582        attr: cudaMemPoolAttr,
13583        value: *mut ::core::ffi::c_void,
13584    ) -> cudaError_t {
13585        (culib().cudaMemPoolSetAttribute)(memPool, attr, value)
13586    }
13587    pub unsafe fn cudaMemPoolTrimTo(memPool: cudaMemPool_t, minBytesToKeep: usize) -> cudaError_t {
13588        (culib().cudaMemPoolTrimTo)(memPool, minBytesToKeep)
13589    }
13590    #[cfg(any(
13591        feature = "cuda-11040",
13592        feature = "cuda-11050",
13593        feature = "cuda-11060",
13594        feature = "cuda-11070",
13595        feature = "cuda-11080",
13596        feature = "cuda-12000",
13597        feature = "cuda-12010",
13598        feature = "cuda-12020",
13599        feature = "cuda-12030",
13600        feature = "cuda-12040",
13601        feature = "cuda-12050",
13602        feature = "cuda-12060",
13603        feature = "cuda-12080",
13604        feature = "cuda-12090"
13605    ))]
13606    pub unsafe fn cudaMemPrefetchAsync(
13607        devPtr: *const ::core::ffi::c_void,
13608        count: usize,
13609        dstDevice: ::core::ffi::c_int,
13610        stream: cudaStream_t,
13611    ) -> cudaError_t {
13612        (culib().cudaMemPrefetchAsync)(devPtr, count, dstDevice, stream)
13613    }
13614    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13615    pub unsafe fn cudaMemPrefetchAsync(
13616        devPtr: *const ::core::ffi::c_void,
13617        count: usize,
13618        location: cudaMemLocation,
13619        flags: ::core::ffi::c_uint,
13620        stream: cudaStream_t,
13621    ) -> cudaError_t {
13622        (culib().cudaMemPrefetchAsync)(devPtr, count, location, flags, stream)
13623    }
13624    #[cfg(any(
13625        feature = "cuda-12020",
13626        feature = "cuda-12030",
13627        feature = "cuda-12040",
13628        feature = "cuda-12050",
13629        feature = "cuda-12060",
13630        feature = "cuda-12080",
13631        feature = "cuda-12090"
13632    ))]
13633    pub unsafe fn cudaMemPrefetchAsync_v2(
13634        devPtr: *const ::core::ffi::c_void,
13635        count: usize,
13636        location: cudaMemLocation,
13637        flags: ::core::ffi::c_uint,
13638        stream: cudaStream_t,
13639    ) -> cudaError_t {
13640        (culib().cudaMemPrefetchAsync_v2)(devPtr, count, location, flags, stream)
13641    }
13642    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13643    pub unsafe fn cudaMemPrefetchBatchAsync(
13644        dptrs: *mut *mut ::core::ffi::c_void,
13645        sizes: *mut usize,
13646        count: usize,
13647        prefetchLocs: *mut cudaMemLocation,
13648        prefetchLocIdxs: *mut usize,
13649        numPrefetchLocs: usize,
13650        flags: ::core::ffi::c_ulonglong,
13651        stream: cudaStream_t,
13652    ) -> cudaError_t {
13653        (culib().cudaMemPrefetchBatchAsync)(
13654            dptrs,
13655            sizes,
13656            count,
13657            prefetchLocs,
13658            prefetchLocIdxs,
13659            numPrefetchLocs,
13660            flags,
13661            stream,
13662        )
13663    }
13664    pub unsafe fn cudaMemRangeGetAttribute(
13665        data: *mut ::core::ffi::c_void,
13666        dataSize: usize,
13667        attribute: cudaMemRangeAttribute,
13668        devPtr: *const ::core::ffi::c_void,
13669        count: usize,
13670    ) -> cudaError_t {
13671        (culib().cudaMemRangeGetAttribute)(data, dataSize, attribute, devPtr, count)
13672    }
13673    pub unsafe fn cudaMemRangeGetAttributes(
13674        data: *mut *mut ::core::ffi::c_void,
13675        dataSizes: *mut usize,
13676        attributes: *mut cudaMemRangeAttribute,
13677        numAttributes: usize,
13678        devPtr: *const ::core::ffi::c_void,
13679        count: usize,
13680    ) -> cudaError_t {
13681        (culib().cudaMemRangeGetAttributes)(
13682            data,
13683            dataSizes,
13684            attributes,
13685            numAttributes,
13686            devPtr,
13687            count,
13688        )
13689    }
13690    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13691    pub unsafe fn cudaMemSetMemPool(
13692        location: *mut cudaMemLocation,
13693        type_: cudaMemAllocationType,
13694        memPool: cudaMemPool_t,
13695    ) -> cudaError_t {
13696        (culib().cudaMemSetMemPool)(location, type_, memPool)
13697    }
13698    pub unsafe fn cudaMemcpy(
13699        dst: *mut ::core::ffi::c_void,
13700        src: *const ::core::ffi::c_void,
13701        count: usize,
13702        kind: cudaMemcpyKind,
13703    ) -> cudaError_t {
13704        (culib().cudaMemcpy)(dst, src, count, kind)
13705    }
13706    pub unsafe fn cudaMemcpy2D(
13707        dst: *mut ::core::ffi::c_void,
13708        dpitch: usize,
13709        src: *const ::core::ffi::c_void,
13710        spitch: usize,
13711        width: usize,
13712        height: usize,
13713        kind: cudaMemcpyKind,
13714    ) -> cudaError_t {
13715        (culib().cudaMemcpy2D)(dst, dpitch, src, spitch, width, height, kind)
13716    }
13717    pub unsafe fn cudaMemcpy2DArrayToArray(
13718        dst: cudaArray_t,
13719        wOffsetDst: usize,
13720        hOffsetDst: usize,
13721        src: cudaArray_const_t,
13722        wOffsetSrc: usize,
13723        hOffsetSrc: usize,
13724        width: usize,
13725        height: usize,
13726        kind: cudaMemcpyKind,
13727    ) -> cudaError_t {
13728        (culib().cudaMemcpy2DArrayToArray)(
13729            dst, wOffsetDst, hOffsetDst, src, wOffsetSrc, hOffsetSrc, width, height, kind,
13730        )
13731    }
13732    pub unsafe fn cudaMemcpy2DAsync(
13733        dst: *mut ::core::ffi::c_void,
13734        dpitch: usize,
13735        src: *const ::core::ffi::c_void,
13736        spitch: usize,
13737        width: usize,
13738        height: usize,
13739        kind: cudaMemcpyKind,
13740        stream: cudaStream_t,
13741    ) -> cudaError_t {
13742        (culib().cudaMemcpy2DAsync)(dst, dpitch, src, spitch, width, height, kind, stream)
13743    }
13744    pub unsafe fn cudaMemcpy2DFromArray(
13745        dst: *mut ::core::ffi::c_void,
13746        dpitch: usize,
13747        src: cudaArray_const_t,
13748        wOffset: usize,
13749        hOffset: usize,
13750        width: usize,
13751        height: usize,
13752        kind: cudaMemcpyKind,
13753    ) -> cudaError_t {
13754        (culib().cudaMemcpy2DFromArray)(dst, dpitch, src, wOffset, hOffset, width, height, kind)
13755    }
13756    pub unsafe fn cudaMemcpy2DFromArrayAsync(
13757        dst: *mut ::core::ffi::c_void,
13758        dpitch: usize,
13759        src: cudaArray_const_t,
13760        wOffset: usize,
13761        hOffset: usize,
13762        width: usize,
13763        height: usize,
13764        kind: cudaMemcpyKind,
13765        stream: cudaStream_t,
13766    ) -> cudaError_t {
13767        (culib().cudaMemcpy2DFromArrayAsync)(
13768            dst, dpitch, src, wOffset, hOffset, width, height, kind, stream,
13769        )
13770    }
13771    pub unsafe fn cudaMemcpy2DToArray(
13772        dst: cudaArray_t,
13773        wOffset: usize,
13774        hOffset: usize,
13775        src: *const ::core::ffi::c_void,
13776        spitch: usize,
13777        width: usize,
13778        height: usize,
13779        kind: cudaMemcpyKind,
13780    ) -> cudaError_t {
13781        (culib().cudaMemcpy2DToArray)(dst, wOffset, hOffset, src, spitch, width, height, kind)
13782    }
13783    pub unsafe fn cudaMemcpy2DToArrayAsync(
13784        dst: cudaArray_t,
13785        wOffset: usize,
13786        hOffset: usize,
13787        src: *const ::core::ffi::c_void,
13788        spitch: usize,
13789        width: usize,
13790        height: usize,
13791        kind: cudaMemcpyKind,
13792        stream: cudaStream_t,
13793    ) -> cudaError_t {
13794        (culib().cudaMemcpy2DToArrayAsync)(
13795            dst, wOffset, hOffset, src, spitch, width, height, kind, stream,
13796        )
13797    }
13798    pub unsafe fn cudaMemcpy3D(p: *const cudaMemcpy3DParms) -> cudaError_t {
13799        (culib().cudaMemcpy3D)(p)
13800    }
13801    pub unsafe fn cudaMemcpy3DAsync(
13802        p: *const cudaMemcpy3DParms,
13803        stream: cudaStream_t,
13804    ) -> cudaError_t {
13805        (culib().cudaMemcpy3DAsync)(p, stream)
13806    }
13807    #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
13808    pub unsafe fn cudaMemcpy3DBatchAsync(
13809        numOps: usize,
13810        opList: *mut cudaMemcpy3DBatchOp,
13811        failIdx: *mut usize,
13812        flags: ::core::ffi::c_ulonglong,
13813        stream: cudaStream_t,
13814    ) -> cudaError_t {
13815        (culib().cudaMemcpy3DBatchAsync)(numOps, opList, failIdx, flags, stream)
13816    }
13817    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13818    pub unsafe fn cudaMemcpy3DBatchAsync(
13819        numOps: usize,
13820        opList: *mut cudaMemcpy3DBatchOp,
13821        flags: ::core::ffi::c_ulonglong,
13822        stream: cudaStream_t,
13823    ) -> cudaError_t {
13824        (culib().cudaMemcpy3DBatchAsync)(numOps, opList, flags, stream)
13825    }
13826    pub unsafe fn cudaMemcpy3DPeer(p: *const cudaMemcpy3DPeerParms) -> cudaError_t {
13827        (culib().cudaMemcpy3DPeer)(p)
13828    }
13829    pub unsafe fn cudaMemcpy3DPeerAsync(
13830        p: *const cudaMemcpy3DPeerParms,
13831        stream: cudaStream_t,
13832    ) -> cudaError_t {
13833        (culib().cudaMemcpy3DPeerAsync)(p, stream)
13834    }
13835    #[cfg(any(feature = "cuda-13020"))]
13836    pub unsafe fn cudaMemcpy3DWithAttributesAsync(
13837        op: *mut cudaMemcpy3DBatchOp,
13838        flags: ::core::ffi::c_ulonglong,
13839        stream: cudaStream_t,
13840    ) -> cudaError_t {
13841        (culib().cudaMemcpy3DWithAttributesAsync)(op, flags, stream)
13842    }
13843    pub unsafe fn cudaMemcpyArrayToArray(
13844        dst: cudaArray_t,
13845        wOffsetDst: usize,
13846        hOffsetDst: usize,
13847        src: cudaArray_const_t,
13848        wOffsetSrc: usize,
13849        hOffsetSrc: usize,
13850        count: usize,
13851        kind: cudaMemcpyKind,
13852    ) -> cudaError_t {
13853        (culib().cudaMemcpyArrayToArray)(
13854            dst, wOffsetDst, hOffsetDst, src, wOffsetSrc, hOffsetSrc, count, kind,
13855        )
13856    }
13857    pub unsafe fn cudaMemcpyAsync(
13858        dst: *mut ::core::ffi::c_void,
13859        src: *const ::core::ffi::c_void,
13860        count: usize,
13861        kind: cudaMemcpyKind,
13862        stream: cudaStream_t,
13863    ) -> cudaError_t {
13864        (culib().cudaMemcpyAsync)(dst, src, count, kind, stream)
13865    }
13866    #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
13867    pub unsafe fn cudaMemcpyBatchAsync(
13868        dsts: *mut *mut ::core::ffi::c_void,
13869        srcs: *mut *mut ::core::ffi::c_void,
13870        sizes: *mut usize,
13871        count: usize,
13872        attrs: *mut cudaMemcpyAttributes,
13873        attrsIdxs: *mut usize,
13874        numAttrs: usize,
13875        failIdx: *mut usize,
13876        stream: cudaStream_t,
13877    ) -> cudaError_t {
13878        (culib().cudaMemcpyBatchAsync)(
13879            dsts, srcs, sizes, count, attrs, attrsIdxs, numAttrs, failIdx, stream,
13880        )
13881    }
13882    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
13883    pub unsafe fn cudaMemcpyBatchAsync(
13884        dsts: *const *mut ::core::ffi::c_void,
13885        srcs: *const *const ::core::ffi::c_void,
13886        sizes: *const usize,
13887        count: usize,
13888        attrs: *mut cudaMemcpyAttributes,
13889        attrsIdxs: *mut usize,
13890        numAttrs: usize,
13891        stream: cudaStream_t,
13892    ) -> cudaError_t {
13893        (culib().cudaMemcpyBatchAsync)(dsts, srcs, sizes, count, attrs, attrsIdxs, numAttrs, stream)
13894    }
13895    pub unsafe fn cudaMemcpyFromArray(
13896        dst: *mut ::core::ffi::c_void,
13897        src: cudaArray_const_t,
13898        wOffset: usize,
13899        hOffset: usize,
13900        count: usize,
13901        kind: cudaMemcpyKind,
13902    ) -> cudaError_t {
13903        (culib().cudaMemcpyFromArray)(dst, src, wOffset, hOffset, count, kind)
13904    }
13905    pub unsafe fn cudaMemcpyFromArrayAsync(
13906        dst: *mut ::core::ffi::c_void,
13907        src: cudaArray_const_t,
13908        wOffset: usize,
13909        hOffset: usize,
13910        count: usize,
13911        kind: cudaMemcpyKind,
13912        stream: cudaStream_t,
13913    ) -> cudaError_t {
13914        (culib().cudaMemcpyFromArrayAsync)(dst, src, wOffset, hOffset, count, kind, stream)
13915    }
13916    pub unsafe fn cudaMemcpyFromSymbol(
13917        dst: *mut ::core::ffi::c_void,
13918        symbol: *const ::core::ffi::c_void,
13919        count: usize,
13920        offset: usize,
13921        kind: cudaMemcpyKind,
13922    ) -> cudaError_t {
13923        (culib().cudaMemcpyFromSymbol)(dst, symbol, count, offset, kind)
13924    }
13925    pub unsafe fn cudaMemcpyFromSymbolAsync(
13926        dst: *mut ::core::ffi::c_void,
13927        symbol: *const ::core::ffi::c_void,
13928        count: usize,
13929        offset: usize,
13930        kind: cudaMemcpyKind,
13931        stream: cudaStream_t,
13932    ) -> cudaError_t {
13933        (culib().cudaMemcpyFromSymbolAsync)(dst, symbol, count, offset, kind, stream)
13934    }
13935    pub unsafe fn cudaMemcpyPeer(
13936        dst: *mut ::core::ffi::c_void,
13937        dstDevice: ::core::ffi::c_int,
13938        src: *const ::core::ffi::c_void,
13939        srcDevice: ::core::ffi::c_int,
13940        count: usize,
13941    ) -> cudaError_t {
13942        (culib().cudaMemcpyPeer)(dst, dstDevice, src, srcDevice, count)
13943    }
13944    pub unsafe fn cudaMemcpyPeerAsync(
13945        dst: *mut ::core::ffi::c_void,
13946        dstDevice: ::core::ffi::c_int,
13947        src: *const ::core::ffi::c_void,
13948        srcDevice: ::core::ffi::c_int,
13949        count: usize,
13950        stream: cudaStream_t,
13951    ) -> cudaError_t {
13952        (culib().cudaMemcpyPeerAsync)(dst, dstDevice, src, srcDevice, count, stream)
13953    }
13954    pub unsafe fn cudaMemcpyToArray(
13955        dst: cudaArray_t,
13956        wOffset: usize,
13957        hOffset: usize,
13958        src: *const ::core::ffi::c_void,
13959        count: usize,
13960        kind: cudaMemcpyKind,
13961    ) -> cudaError_t {
13962        (culib().cudaMemcpyToArray)(dst, wOffset, hOffset, src, count, kind)
13963    }
13964    pub unsafe fn cudaMemcpyToArrayAsync(
13965        dst: cudaArray_t,
13966        wOffset: usize,
13967        hOffset: usize,
13968        src: *const ::core::ffi::c_void,
13969        count: usize,
13970        kind: cudaMemcpyKind,
13971        stream: cudaStream_t,
13972    ) -> cudaError_t {
13973        (culib().cudaMemcpyToArrayAsync)(dst, wOffset, hOffset, src, count, kind, stream)
13974    }
13975    pub unsafe fn cudaMemcpyToSymbol(
13976        symbol: *const ::core::ffi::c_void,
13977        src: *const ::core::ffi::c_void,
13978        count: usize,
13979        offset: usize,
13980        kind: cudaMemcpyKind,
13981    ) -> cudaError_t {
13982        (culib().cudaMemcpyToSymbol)(symbol, src, count, offset, kind)
13983    }
13984    pub unsafe fn cudaMemcpyToSymbolAsync(
13985        symbol: *const ::core::ffi::c_void,
13986        src: *const ::core::ffi::c_void,
13987        count: usize,
13988        offset: usize,
13989        kind: cudaMemcpyKind,
13990        stream: cudaStream_t,
13991    ) -> cudaError_t {
13992        (culib().cudaMemcpyToSymbolAsync)(symbol, src, count, offset, kind, stream)
13993    }
13994    #[cfg(any(feature = "cuda-13020"))]
13995    pub unsafe fn cudaMemcpyWithAttributesAsync(
13996        dst: *mut ::core::ffi::c_void,
13997        src: *const ::core::ffi::c_void,
13998        size: usize,
13999        attr: *mut cudaMemcpyAttributes,
14000        stream: cudaStream_t,
14001    ) -> cudaError_t {
14002        (culib().cudaMemcpyWithAttributesAsync)(dst, src, size, attr, stream)
14003    }
14004    pub unsafe fn cudaMemset(
14005        devPtr: *mut ::core::ffi::c_void,
14006        value: ::core::ffi::c_int,
14007        count: usize,
14008    ) -> cudaError_t {
14009        (culib().cudaMemset)(devPtr, value, count)
14010    }
14011    pub unsafe fn cudaMemset2D(
14012        devPtr: *mut ::core::ffi::c_void,
14013        pitch: usize,
14014        value: ::core::ffi::c_int,
14015        width: usize,
14016        height: usize,
14017    ) -> cudaError_t {
14018        (culib().cudaMemset2D)(devPtr, pitch, value, width, height)
14019    }
14020    pub unsafe fn cudaMemset2DAsync(
14021        devPtr: *mut ::core::ffi::c_void,
14022        pitch: usize,
14023        value: ::core::ffi::c_int,
14024        width: usize,
14025        height: usize,
14026        stream: cudaStream_t,
14027    ) -> cudaError_t {
14028        (culib().cudaMemset2DAsync)(devPtr, pitch, value, width, height, stream)
14029    }
14030    pub unsafe fn cudaMemset3D(
14031        pitchedDevPtr: cudaPitchedPtr,
14032        value: ::core::ffi::c_int,
14033        extent: cudaExtent,
14034    ) -> cudaError_t {
14035        (culib().cudaMemset3D)(pitchedDevPtr, value, extent)
14036    }
14037    pub unsafe fn cudaMemset3DAsync(
14038        pitchedDevPtr: cudaPitchedPtr,
14039        value: ::core::ffi::c_int,
14040        extent: cudaExtent,
14041        stream: cudaStream_t,
14042    ) -> cudaError_t {
14043        (culib().cudaMemset3DAsync)(pitchedDevPtr, value, extent, stream)
14044    }
14045    pub unsafe fn cudaMemsetAsync(
14046        devPtr: *mut ::core::ffi::c_void,
14047        value: ::core::ffi::c_int,
14048        count: usize,
14049        stream: cudaStream_t,
14050    ) -> cudaError_t {
14051        (culib().cudaMemsetAsync)(devPtr, value, count, stream)
14052    }
14053    #[cfg(any(
14054        feature = "cuda-11060",
14055        feature = "cuda-11070",
14056        feature = "cuda-11080",
14057        feature = "cuda-12000",
14058        feature = "cuda-12010",
14059        feature = "cuda-12020",
14060        feature = "cuda-12030",
14061        feature = "cuda-12040",
14062        feature = "cuda-12050",
14063        feature = "cuda-12060",
14064        feature = "cuda-12080",
14065        feature = "cuda-12090",
14066        feature = "cuda-13000",
14067        feature = "cuda-13010",
14068        feature = "cuda-13020"
14069    ))]
14070    pub unsafe fn cudaMipmappedArrayGetMemoryRequirements(
14071        memoryRequirements: *mut cudaArrayMemoryRequirements,
14072        mipmap: cudaMipmappedArray_t,
14073        device: ::core::ffi::c_int,
14074    ) -> cudaError_t {
14075        (culib().cudaMipmappedArrayGetMemoryRequirements)(memoryRequirements, mipmap, device)
14076    }
14077    pub unsafe fn cudaMipmappedArrayGetSparseProperties(
14078        sparseProperties: *mut cudaArraySparseProperties,
14079        mipmap: cudaMipmappedArray_t,
14080    ) -> cudaError_t {
14081        (culib().cudaMipmappedArrayGetSparseProperties)(sparseProperties, mipmap)
14082    }
14083    pub unsafe fn cudaOccupancyAvailableDynamicSMemPerBlock(
14084        dynamicSmemSize: *mut usize,
14085        func: *const ::core::ffi::c_void,
14086        numBlocks: ::core::ffi::c_int,
14087        blockSize: ::core::ffi::c_int,
14088    ) -> cudaError_t {
14089        (culib().cudaOccupancyAvailableDynamicSMemPerBlock)(
14090            dynamicSmemSize,
14091            func,
14092            numBlocks,
14093            blockSize,
14094        )
14095    }
14096    pub unsafe fn cudaOccupancyMaxActiveBlocksPerMultiprocessor(
14097        numBlocks: *mut ::core::ffi::c_int,
14098        func: *const ::core::ffi::c_void,
14099        blockSize: ::core::ffi::c_int,
14100        dynamicSMemSize: usize,
14101    ) -> cudaError_t {
14102        (culib().cudaOccupancyMaxActiveBlocksPerMultiprocessor)(
14103            numBlocks,
14104            func,
14105            blockSize,
14106            dynamicSMemSize,
14107        )
14108    }
14109    pub unsafe fn cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(
14110        numBlocks: *mut ::core::ffi::c_int,
14111        func: *const ::core::ffi::c_void,
14112        blockSize: ::core::ffi::c_int,
14113        dynamicSMemSize: usize,
14114        flags: ::core::ffi::c_uint,
14115    ) -> cudaError_t {
14116        (culib().cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags)(
14117            numBlocks,
14118            func,
14119            blockSize,
14120            dynamicSMemSize,
14121            flags,
14122        )
14123    }
14124    #[cfg(any(
14125        feature = "cuda-11080",
14126        feature = "cuda-12000",
14127        feature = "cuda-12010",
14128        feature = "cuda-12020",
14129        feature = "cuda-12030",
14130        feature = "cuda-12040",
14131        feature = "cuda-12050",
14132        feature = "cuda-12060",
14133        feature = "cuda-12080",
14134        feature = "cuda-12090",
14135        feature = "cuda-13000",
14136        feature = "cuda-13010",
14137        feature = "cuda-13020"
14138    ))]
14139    pub unsafe fn cudaOccupancyMaxActiveClusters(
14140        numClusters: *mut ::core::ffi::c_int,
14141        func: *const ::core::ffi::c_void,
14142        launchConfig: *const cudaLaunchConfig_t,
14143    ) -> cudaError_t {
14144        (culib().cudaOccupancyMaxActiveClusters)(numClusters, func, launchConfig)
14145    }
14146    #[cfg(any(
14147        feature = "cuda-11080",
14148        feature = "cuda-12000",
14149        feature = "cuda-12010",
14150        feature = "cuda-12020",
14151        feature = "cuda-12030",
14152        feature = "cuda-12040",
14153        feature = "cuda-12050",
14154        feature = "cuda-12060",
14155        feature = "cuda-12080",
14156        feature = "cuda-12090",
14157        feature = "cuda-13000",
14158        feature = "cuda-13010",
14159        feature = "cuda-13020"
14160    ))]
14161    pub unsafe fn cudaOccupancyMaxPotentialClusterSize(
14162        clusterSize: *mut ::core::ffi::c_int,
14163        func: *const ::core::ffi::c_void,
14164        launchConfig: *const cudaLaunchConfig_t,
14165    ) -> cudaError_t {
14166        (culib().cudaOccupancyMaxPotentialClusterSize)(clusterSize, func, launchConfig)
14167    }
14168    pub unsafe fn cudaPeekAtLastError() -> cudaError_t {
14169        (culib().cudaPeekAtLastError)()
14170    }
14171    pub unsafe fn cudaPointerGetAttributes(
14172        attributes: *mut cudaPointerAttributes,
14173        ptr: *const ::core::ffi::c_void,
14174    ) -> cudaError_t {
14175        (culib().cudaPointerGetAttributes)(attributes, ptr)
14176    }
14177    pub unsafe fn cudaProfilerStop() -> cudaError_t {
14178        (culib().cudaProfilerStop)()
14179    }
14180    pub unsafe fn cudaRuntimeGetVersion(runtimeVersion: *mut ::core::ffi::c_int) -> cudaError_t {
14181        (culib().cudaRuntimeGetVersion)(runtimeVersion)
14182    }
14183    pub unsafe fn cudaSetDevice(device: ::core::ffi::c_int) -> cudaError_t {
14184        (culib().cudaSetDevice)(device)
14185    }
14186    pub unsafe fn cudaSetDeviceFlags(flags: ::core::ffi::c_uint) -> cudaError_t {
14187        (culib().cudaSetDeviceFlags)(flags)
14188    }
14189    #[cfg(any(
14190        feature = "cuda-11040",
14191        feature = "cuda-11050",
14192        feature = "cuda-11060",
14193        feature = "cuda-11070",
14194        feature = "cuda-11080",
14195        feature = "cuda-12000",
14196        feature = "cuda-12010",
14197        feature = "cuda-12020",
14198        feature = "cuda-12030",
14199        feature = "cuda-12040",
14200        feature = "cuda-12050",
14201        feature = "cuda-12060",
14202        feature = "cuda-12080",
14203        feature = "cuda-12090"
14204    ))]
14205    pub unsafe fn cudaSetDoubleForDevice(d: *mut f64) -> cudaError_t {
14206        (culib().cudaSetDoubleForDevice)(d)
14207    }
14208    #[cfg(any(
14209        feature = "cuda-11040",
14210        feature = "cuda-11050",
14211        feature = "cuda-11060",
14212        feature = "cuda-11070",
14213        feature = "cuda-11080",
14214        feature = "cuda-12000",
14215        feature = "cuda-12010",
14216        feature = "cuda-12020",
14217        feature = "cuda-12030",
14218        feature = "cuda-12040",
14219        feature = "cuda-12050",
14220        feature = "cuda-12060",
14221        feature = "cuda-12080",
14222        feature = "cuda-12090"
14223    ))]
14224    pub unsafe fn cudaSetDoubleForHost(d: *mut f64) -> cudaError_t {
14225        (culib().cudaSetDoubleForHost)(d)
14226    }
14227    pub unsafe fn cudaSetValidDevices(
14228        device_arr: *mut ::core::ffi::c_int,
14229        len: ::core::ffi::c_int,
14230    ) -> cudaError_t {
14231        (culib().cudaSetValidDevices)(device_arr, len)
14232    }
14233    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
14234    pub unsafe fn cudaSignalExternalSemaphoresAsync(
14235        extSemArray: *const cudaExternalSemaphore_t,
14236        paramsArray: *const cudaExternalSemaphoreSignalParams,
14237        numExtSems: ::core::ffi::c_uint,
14238        stream: cudaStream_t,
14239    ) -> cudaError_t {
14240        (culib().cudaSignalExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
14241    }
14242    #[cfg(any(
14243        feature = "cuda-11040",
14244        feature = "cuda-11050",
14245        feature = "cuda-11060",
14246        feature = "cuda-11070",
14247        feature = "cuda-11080",
14248        feature = "cuda-12000",
14249        feature = "cuda-12010",
14250        feature = "cuda-12020",
14251        feature = "cuda-12030",
14252        feature = "cuda-12040",
14253        feature = "cuda-12050",
14254        feature = "cuda-12060",
14255        feature = "cuda-12080",
14256        feature = "cuda-12090"
14257    ))]
14258    pub unsafe fn cudaSignalExternalSemaphoresAsync_v2(
14259        extSemArray: *const cudaExternalSemaphore_t,
14260        paramsArray: *const cudaExternalSemaphoreSignalParams,
14261        numExtSems: ::core::ffi::c_uint,
14262        stream: cudaStream_t,
14263    ) -> cudaError_t {
14264        (culib().cudaSignalExternalSemaphoresAsync_v2)(extSemArray, paramsArray, numExtSems, stream)
14265    }
14266    pub unsafe fn cudaStreamAddCallback(
14267        stream: cudaStream_t,
14268        callback: cudaStreamCallback_t,
14269        userData: *mut ::core::ffi::c_void,
14270        flags: ::core::ffi::c_uint,
14271    ) -> cudaError_t {
14272        (culib().cudaStreamAddCallback)(stream, callback, userData, flags)
14273    }
14274    pub unsafe fn cudaStreamAttachMemAsync(
14275        stream: cudaStream_t,
14276        devPtr: *mut ::core::ffi::c_void,
14277        length: usize,
14278        flags: ::core::ffi::c_uint,
14279    ) -> cudaError_t {
14280        (culib().cudaStreamAttachMemAsync)(stream, devPtr, length, flags)
14281    }
14282    pub unsafe fn cudaStreamBeginCapture(
14283        stream: cudaStream_t,
14284        mode: cudaStreamCaptureMode,
14285    ) -> cudaError_t {
14286        (culib().cudaStreamBeginCapture)(stream, mode)
14287    }
14288    #[cfg(any(
14289        feature = "cuda-12030",
14290        feature = "cuda-12040",
14291        feature = "cuda-12050",
14292        feature = "cuda-12060",
14293        feature = "cuda-12080",
14294        feature = "cuda-12090",
14295        feature = "cuda-13000",
14296        feature = "cuda-13010",
14297        feature = "cuda-13020"
14298    ))]
14299    pub unsafe fn cudaStreamBeginCaptureToGraph(
14300        stream: cudaStream_t,
14301        graph: cudaGraph_t,
14302        dependencies: *const cudaGraphNode_t,
14303        dependencyData: *const cudaGraphEdgeData,
14304        numDependencies: usize,
14305        mode: cudaStreamCaptureMode,
14306    ) -> cudaError_t {
14307        (culib().cudaStreamBeginCaptureToGraph)(
14308            stream,
14309            graph,
14310            dependencies,
14311            dependencyData,
14312            numDependencies,
14313            mode,
14314        )
14315    }
14316    pub unsafe fn cudaStreamCopyAttributes(dst: cudaStream_t, src: cudaStream_t) -> cudaError_t {
14317        (culib().cudaStreamCopyAttributes)(dst, src)
14318    }
14319    pub unsafe fn cudaStreamCreate(pStream: *mut cudaStream_t) -> cudaError_t {
14320        (culib().cudaStreamCreate)(pStream)
14321    }
14322    pub unsafe fn cudaStreamCreateWithFlags(
14323        pStream: *mut cudaStream_t,
14324        flags: ::core::ffi::c_uint,
14325    ) -> cudaError_t {
14326        (culib().cudaStreamCreateWithFlags)(pStream, flags)
14327    }
14328    pub unsafe fn cudaStreamCreateWithPriority(
14329        pStream: *mut cudaStream_t,
14330        flags: ::core::ffi::c_uint,
14331        priority: ::core::ffi::c_int,
14332    ) -> cudaError_t {
14333        (culib().cudaStreamCreateWithPriority)(pStream, flags, priority)
14334    }
14335    pub unsafe fn cudaStreamDestroy(stream: cudaStream_t) -> cudaError_t {
14336        (culib().cudaStreamDestroy)(stream)
14337    }
14338    pub unsafe fn cudaStreamEndCapture(
14339        stream: cudaStream_t,
14340        pGraph: *mut cudaGraph_t,
14341    ) -> cudaError_t {
14342        (culib().cudaStreamEndCapture)(stream, pGraph)
14343    }
14344    #[cfg(any(
14345        feature = "cuda-11040",
14346        feature = "cuda-11050",
14347        feature = "cuda-11060",
14348        feature = "cuda-11070"
14349    ))]
14350    pub unsafe fn cudaStreamGetAttribute(
14351        hStream: cudaStream_t,
14352        attr: cudaStreamAttrID,
14353        value_out: *mut cudaStreamAttrValue,
14354    ) -> cudaError_t {
14355        (culib().cudaStreamGetAttribute)(hStream, attr, value_out)
14356    }
14357    #[cfg(any(
14358        feature = "cuda-11080",
14359        feature = "cuda-12000",
14360        feature = "cuda-12010",
14361        feature = "cuda-12020",
14362        feature = "cuda-12030",
14363        feature = "cuda-12040",
14364        feature = "cuda-12050",
14365        feature = "cuda-12060",
14366        feature = "cuda-12080",
14367        feature = "cuda-12090",
14368        feature = "cuda-13000",
14369        feature = "cuda-13010",
14370        feature = "cuda-13020"
14371    ))]
14372    pub unsafe fn cudaStreamGetAttribute(
14373        hStream: cudaStream_t,
14374        attr: cudaLaunchAttributeID,
14375        value_out: *mut cudaLaunchAttributeValue,
14376    ) -> cudaError_t {
14377        (culib().cudaStreamGetAttribute)(hStream, attr, value_out)
14378    }
14379    #[cfg(any(
14380        feature = "cuda-11040",
14381        feature = "cuda-11050",
14382        feature = "cuda-11060",
14383        feature = "cuda-11070",
14384        feature = "cuda-11080"
14385    ))]
14386    pub unsafe fn cudaStreamGetCaptureInfo(
14387        stream: cudaStream_t,
14388        pCaptureStatus: *mut cudaStreamCaptureStatus,
14389        pId: *mut ::core::ffi::c_ulonglong,
14390    ) -> cudaError_t {
14391        (culib().cudaStreamGetCaptureInfo)(stream, pCaptureStatus, pId)
14392    }
14393    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
14394    pub unsafe fn cudaStreamGetCaptureInfo(
14395        stream: cudaStream_t,
14396        captureStatus_out: *mut cudaStreamCaptureStatus,
14397        id_out: *mut ::core::ffi::c_ulonglong,
14398        graph_out: *mut cudaGraph_t,
14399        dependencies_out: *mut *const cudaGraphNode_t,
14400        edgeData_out: *mut *const cudaGraphEdgeData,
14401        numDependencies_out: *mut usize,
14402    ) -> cudaError_t {
14403        (culib().cudaStreamGetCaptureInfo)(
14404            stream,
14405            captureStatus_out,
14406            id_out,
14407            graph_out,
14408            dependencies_out,
14409            edgeData_out,
14410            numDependencies_out,
14411        )
14412    }
14413    #[cfg(any(
14414        feature = "cuda-11040",
14415        feature = "cuda-11050",
14416        feature = "cuda-11060",
14417        feature = "cuda-11070",
14418        feature = "cuda-11080",
14419        feature = "cuda-12000",
14420        feature = "cuda-12010",
14421        feature = "cuda-12020",
14422        feature = "cuda-12030",
14423        feature = "cuda-12040",
14424        feature = "cuda-12050",
14425        feature = "cuda-12060",
14426        feature = "cuda-12080",
14427        feature = "cuda-12090"
14428    ))]
14429    pub unsafe fn cudaStreamGetCaptureInfo_v2(
14430        stream: cudaStream_t,
14431        captureStatus_out: *mut cudaStreamCaptureStatus,
14432        id_out: *mut ::core::ffi::c_ulonglong,
14433        graph_out: *mut cudaGraph_t,
14434        dependencies_out: *mut *const cudaGraphNode_t,
14435        numDependencies_out: *mut usize,
14436    ) -> cudaError_t {
14437        (culib().cudaStreamGetCaptureInfo_v2)(
14438            stream,
14439            captureStatus_out,
14440            id_out,
14441            graph_out,
14442            dependencies_out,
14443            numDependencies_out,
14444        )
14445    }
14446    #[cfg(any(
14447        feature = "cuda-12030",
14448        feature = "cuda-12040",
14449        feature = "cuda-12050",
14450        feature = "cuda-12060",
14451        feature = "cuda-12080",
14452        feature = "cuda-12090"
14453    ))]
14454    pub unsafe fn cudaStreamGetCaptureInfo_v3(
14455        stream: cudaStream_t,
14456        captureStatus_out: *mut cudaStreamCaptureStatus,
14457        id_out: *mut ::core::ffi::c_ulonglong,
14458        graph_out: *mut cudaGraph_t,
14459        dependencies_out: *mut *const cudaGraphNode_t,
14460        edgeData_out: *mut *const cudaGraphEdgeData,
14461        numDependencies_out: *mut usize,
14462    ) -> cudaError_t {
14463        (culib().cudaStreamGetCaptureInfo_v3)(
14464            stream,
14465            captureStatus_out,
14466            id_out,
14467            graph_out,
14468            dependencies_out,
14469            edgeData_out,
14470            numDependencies_out,
14471        )
14472    }
14473    #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
14474    pub unsafe fn cudaStreamGetDevResource(
14475        hStream: cudaStream_t,
14476        resource: *mut cudaDevResource,
14477        type_: cudaDevResourceType,
14478    ) -> cudaError_t {
14479        (culib().cudaStreamGetDevResource)(hStream, resource, type_)
14480    }
14481    #[cfg(any(
14482        feature = "cuda-12080",
14483        feature = "cuda-12090",
14484        feature = "cuda-13000",
14485        feature = "cuda-13010",
14486        feature = "cuda-13020"
14487    ))]
14488    pub unsafe fn cudaStreamGetDevice(
14489        hStream: cudaStream_t,
14490        device: *mut ::core::ffi::c_int,
14491    ) -> cudaError_t {
14492        (culib().cudaStreamGetDevice)(hStream, device)
14493    }
14494    pub unsafe fn cudaStreamGetFlags(
14495        hStream: cudaStream_t,
14496        flags: *mut ::core::ffi::c_uint,
14497    ) -> cudaError_t {
14498        (culib().cudaStreamGetFlags)(hStream, flags)
14499    }
14500    #[cfg(any(
14501        feature = "cuda-12000",
14502        feature = "cuda-12010",
14503        feature = "cuda-12020",
14504        feature = "cuda-12030",
14505        feature = "cuda-12040",
14506        feature = "cuda-12050",
14507        feature = "cuda-12060",
14508        feature = "cuda-12080",
14509        feature = "cuda-12090",
14510        feature = "cuda-13000",
14511        feature = "cuda-13010",
14512        feature = "cuda-13020"
14513    ))]
14514    pub unsafe fn cudaStreamGetId(
14515        hStream: cudaStream_t,
14516        streamId: *mut ::core::ffi::c_ulonglong,
14517    ) -> cudaError_t {
14518        (culib().cudaStreamGetId)(hStream, streamId)
14519    }
14520    pub unsafe fn cudaStreamGetPriority(
14521        hStream: cudaStream_t,
14522        priority: *mut ::core::ffi::c_int,
14523    ) -> cudaError_t {
14524        (culib().cudaStreamGetPriority)(hStream, priority)
14525    }
14526    pub unsafe fn cudaStreamIsCapturing(
14527        stream: cudaStream_t,
14528        pCaptureStatus: *mut cudaStreamCaptureStatus,
14529    ) -> cudaError_t {
14530        (culib().cudaStreamIsCapturing)(stream, pCaptureStatus)
14531    }
14532    pub unsafe fn cudaStreamQuery(stream: cudaStream_t) -> cudaError_t {
14533        (culib().cudaStreamQuery)(stream)
14534    }
14535    #[cfg(any(
14536        feature = "cuda-11040",
14537        feature = "cuda-11050",
14538        feature = "cuda-11060",
14539        feature = "cuda-11070"
14540    ))]
14541    pub unsafe fn cudaStreamSetAttribute(
14542        hStream: cudaStream_t,
14543        attr: cudaStreamAttrID,
14544        value: *const cudaStreamAttrValue,
14545    ) -> cudaError_t {
14546        (culib().cudaStreamSetAttribute)(hStream, attr, value)
14547    }
14548    #[cfg(any(
14549        feature = "cuda-11080",
14550        feature = "cuda-12000",
14551        feature = "cuda-12010",
14552        feature = "cuda-12020",
14553        feature = "cuda-12030",
14554        feature = "cuda-12040",
14555        feature = "cuda-12050",
14556        feature = "cuda-12060",
14557        feature = "cuda-12080",
14558        feature = "cuda-12090",
14559        feature = "cuda-13000",
14560        feature = "cuda-13010",
14561        feature = "cuda-13020"
14562    ))]
14563    pub unsafe fn cudaStreamSetAttribute(
14564        hStream: cudaStream_t,
14565        attr: cudaLaunchAttributeID,
14566        value: *const cudaLaunchAttributeValue,
14567    ) -> cudaError_t {
14568        (culib().cudaStreamSetAttribute)(hStream, attr, value)
14569    }
14570    pub unsafe fn cudaStreamSynchronize(stream: cudaStream_t) -> cudaError_t {
14571        (culib().cudaStreamSynchronize)(stream)
14572    }
14573    #[cfg(any(
14574        feature = "cuda-11040",
14575        feature = "cuda-11050",
14576        feature = "cuda-11060",
14577        feature = "cuda-11070",
14578        feature = "cuda-11080",
14579        feature = "cuda-12000",
14580        feature = "cuda-12010",
14581        feature = "cuda-12020",
14582        feature = "cuda-12030",
14583        feature = "cuda-12040",
14584        feature = "cuda-12050",
14585        feature = "cuda-12060",
14586        feature = "cuda-12080",
14587        feature = "cuda-12090"
14588    ))]
14589    pub unsafe fn cudaStreamUpdateCaptureDependencies(
14590        stream: cudaStream_t,
14591        dependencies: *mut cudaGraphNode_t,
14592        numDependencies: usize,
14593        flags: ::core::ffi::c_uint,
14594    ) -> cudaError_t {
14595        (culib().cudaStreamUpdateCaptureDependencies)(stream, dependencies, numDependencies, flags)
14596    }
14597    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
14598    pub unsafe fn cudaStreamUpdateCaptureDependencies(
14599        stream: cudaStream_t,
14600        dependencies: *mut cudaGraphNode_t,
14601        dependencyData: *const cudaGraphEdgeData,
14602        numDependencies: usize,
14603        flags: ::core::ffi::c_uint,
14604    ) -> cudaError_t {
14605        (culib().cudaStreamUpdateCaptureDependencies)(
14606            stream,
14607            dependencies,
14608            dependencyData,
14609            numDependencies,
14610            flags,
14611        )
14612    }
14613    #[cfg(any(
14614        feature = "cuda-12030",
14615        feature = "cuda-12040",
14616        feature = "cuda-12050",
14617        feature = "cuda-12060",
14618        feature = "cuda-12080",
14619        feature = "cuda-12090"
14620    ))]
14621    pub unsafe fn cudaStreamUpdateCaptureDependencies_v2(
14622        stream: cudaStream_t,
14623        dependencies: *mut cudaGraphNode_t,
14624        dependencyData: *const cudaGraphEdgeData,
14625        numDependencies: usize,
14626        flags: ::core::ffi::c_uint,
14627    ) -> cudaError_t {
14628        (culib().cudaStreamUpdateCaptureDependencies_v2)(
14629            stream,
14630            dependencies,
14631            dependencyData,
14632            numDependencies,
14633            flags,
14634        )
14635    }
14636    pub unsafe fn cudaStreamWaitEvent(
14637        stream: cudaStream_t,
14638        event: cudaEvent_t,
14639        flags: ::core::ffi::c_uint,
14640    ) -> cudaError_t {
14641        (culib().cudaStreamWaitEvent)(stream, event, flags)
14642    }
14643    pub unsafe fn cudaThreadExchangeStreamCaptureMode(
14644        mode: *mut cudaStreamCaptureMode,
14645    ) -> cudaError_t {
14646        (culib().cudaThreadExchangeStreamCaptureMode)(mode)
14647    }
14648    #[cfg(any(
14649        feature = "cuda-11040",
14650        feature = "cuda-11050",
14651        feature = "cuda-11060",
14652        feature = "cuda-11070",
14653        feature = "cuda-11080",
14654        feature = "cuda-12000",
14655        feature = "cuda-12010",
14656        feature = "cuda-12020",
14657        feature = "cuda-12030",
14658        feature = "cuda-12040",
14659        feature = "cuda-12050",
14660        feature = "cuda-12060",
14661        feature = "cuda-12080",
14662        feature = "cuda-12090"
14663    ))]
14664    pub unsafe fn cudaThreadExit() -> cudaError_t {
14665        (culib().cudaThreadExit)()
14666    }
14667    #[cfg(any(
14668        feature = "cuda-11040",
14669        feature = "cuda-11050",
14670        feature = "cuda-11060",
14671        feature = "cuda-11070",
14672        feature = "cuda-11080",
14673        feature = "cuda-12000",
14674        feature = "cuda-12010",
14675        feature = "cuda-12020",
14676        feature = "cuda-12030",
14677        feature = "cuda-12040",
14678        feature = "cuda-12050",
14679        feature = "cuda-12060",
14680        feature = "cuda-12080",
14681        feature = "cuda-12090"
14682    ))]
14683    pub unsafe fn cudaThreadGetCacheConfig(pCacheConfig: *mut cudaFuncCache) -> cudaError_t {
14684        (culib().cudaThreadGetCacheConfig)(pCacheConfig)
14685    }
14686    #[cfg(any(
14687        feature = "cuda-11040",
14688        feature = "cuda-11050",
14689        feature = "cuda-11060",
14690        feature = "cuda-11070",
14691        feature = "cuda-11080",
14692        feature = "cuda-12000",
14693        feature = "cuda-12010",
14694        feature = "cuda-12020",
14695        feature = "cuda-12030",
14696        feature = "cuda-12040",
14697        feature = "cuda-12050",
14698        feature = "cuda-12060",
14699        feature = "cuda-12080",
14700        feature = "cuda-12090"
14701    ))]
14702    pub unsafe fn cudaThreadGetLimit(pValue: *mut usize, limit: cudaLimit) -> cudaError_t {
14703        (culib().cudaThreadGetLimit)(pValue, limit)
14704    }
14705    #[cfg(any(
14706        feature = "cuda-11040",
14707        feature = "cuda-11050",
14708        feature = "cuda-11060",
14709        feature = "cuda-11070",
14710        feature = "cuda-11080",
14711        feature = "cuda-12000",
14712        feature = "cuda-12010",
14713        feature = "cuda-12020",
14714        feature = "cuda-12030",
14715        feature = "cuda-12040",
14716        feature = "cuda-12050",
14717        feature = "cuda-12060",
14718        feature = "cuda-12080",
14719        feature = "cuda-12090"
14720    ))]
14721    pub unsafe fn cudaThreadSetCacheConfig(cacheConfig: cudaFuncCache) -> cudaError_t {
14722        (culib().cudaThreadSetCacheConfig)(cacheConfig)
14723    }
14724    #[cfg(any(
14725        feature = "cuda-11040",
14726        feature = "cuda-11050",
14727        feature = "cuda-11060",
14728        feature = "cuda-11070",
14729        feature = "cuda-11080",
14730        feature = "cuda-12000",
14731        feature = "cuda-12010",
14732        feature = "cuda-12020",
14733        feature = "cuda-12030",
14734        feature = "cuda-12040",
14735        feature = "cuda-12050",
14736        feature = "cuda-12060",
14737        feature = "cuda-12080",
14738        feature = "cuda-12090"
14739    ))]
14740    pub unsafe fn cudaThreadSetLimit(limit: cudaLimit, value: usize) -> cudaError_t {
14741        (culib().cudaThreadSetLimit)(limit, value)
14742    }
14743    #[cfg(any(
14744        feature = "cuda-11040",
14745        feature = "cuda-11050",
14746        feature = "cuda-11060",
14747        feature = "cuda-11070",
14748        feature = "cuda-11080",
14749        feature = "cuda-12000",
14750        feature = "cuda-12010",
14751        feature = "cuda-12020",
14752        feature = "cuda-12030",
14753        feature = "cuda-12040",
14754        feature = "cuda-12050",
14755        feature = "cuda-12060",
14756        feature = "cuda-12080",
14757        feature = "cuda-12090"
14758    ))]
14759    pub unsafe fn cudaThreadSynchronize() -> cudaError_t {
14760        (culib().cudaThreadSynchronize)()
14761    }
14762    #[cfg(any(
14763        feature = "cuda-11040",
14764        feature = "cuda-11050",
14765        feature = "cuda-11060",
14766        feature = "cuda-11070",
14767        feature = "cuda-11080"
14768    ))]
14769    pub unsafe fn cudaUnbindTexture(texref: *const textureReference) -> cudaError_t {
14770        (culib().cudaUnbindTexture)(texref)
14771    }
14772    pub unsafe fn cudaUserObjectCreate(
14773        object_out: *mut cudaUserObject_t,
14774        ptr: *mut ::core::ffi::c_void,
14775        destroy: cudaHostFn_t,
14776        initialRefcount: ::core::ffi::c_uint,
14777        flags: ::core::ffi::c_uint,
14778    ) -> cudaError_t {
14779        (culib().cudaUserObjectCreate)(object_out, ptr, destroy, initialRefcount, flags)
14780    }
14781    pub unsafe fn cudaUserObjectRelease(
14782        object: cudaUserObject_t,
14783        count: ::core::ffi::c_uint,
14784    ) -> cudaError_t {
14785        (culib().cudaUserObjectRelease)(object, count)
14786    }
14787    pub unsafe fn cudaUserObjectRetain(
14788        object: cudaUserObject_t,
14789        count: ::core::ffi::c_uint,
14790    ) -> cudaError_t {
14791        (culib().cudaUserObjectRetain)(object, count)
14792    }
14793    #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
14794    pub unsafe fn cudaWaitExternalSemaphoresAsync(
14795        extSemArray: *const cudaExternalSemaphore_t,
14796        paramsArray: *const cudaExternalSemaphoreWaitParams,
14797        numExtSems: ::core::ffi::c_uint,
14798        stream: cudaStream_t,
14799    ) -> cudaError_t {
14800        (culib().cudaWaitExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
14801    }
14802    #[cfg(any(
14803        feature = "cuda-11040",
14804        feature = "cuda-11050",
14805        feature = "cuda-11060",
14806        feature = "cuda-11070",
14807        feature = "cuda-11080",
14808        feature = "cuda-12000",
14809        feature = "cuda-12010",
14810        feature = "cuda-12020",
14811        feature = "cuda-12030",
14812        feature = "cuda-12040",
14813        feature = "cuda-12050",
14814        feature = "cuda-12060",
14815        feature = "cuda-12080",
14816        feature = "cuda-12090"
14817    ))]
14818    pub unsafe fn cudaWaitExternalSemaphoresAsync_v2(
14819        extSemArray: *const cudaExternalSemaphore_t,
14820        paramsArray: *const cudaExternalSemaphoreWaitParams,
14821        numExtSems: ::core::ffi::c_uint,
14822        stream: cudaStream_t,
14823    ) -> cudaError_t {
14824        (culib().cudaWaitExternalSemaphoresAsync_v2)(extSemArray, paramsArray, numExtSems, stream)
14825    }
14826    pub struct Lib {
14827        __library: ::libloading::Library,
14828        pub cudaArrayGetInfo: unsafe extern "C" fn(
14829            desc: *mut cudaChannelFormatDesc,
14830            extent: *mut cudaExtent,
14831            flags: *mut ::core::ffi::c_uint,
14832            array: cudaArray_t,
14833        ) -> cudaError_t,
14834        #[cfg(any(
14835            feature = "cuda-11060",
14836            feature = "cuda-11070",
14837            feature = "cuda-11080",
14838            feature = "cuda-12000",
14839            feature = "cuda-12010",
14840            feature = "cuda-12020",
14841            feature = "cuda-12030",
14842            feature = "cuda-12040",
14843            feature = "cuda-12050",
14844            feature = "cuda-12060",
14845            feature = "cuda-12080",
14846            feature = "cuda-12090",
14847            feature = "cuda-13000",
14848            feature = "cuda-13010",
14849            feature = "cuda-13020"
14850        ))]
14851        pub cudaArrayGetMemoryRequirements: unsafe extern "C" fn(
14852            memoryRequirements: *mut cudaArrayMemoryRequirements,
14853            array: cudaArray_t,
14854            device: ::core::ffi::c_int,
14855        ) -> cudaError_t,
14856        pub cudaArrayGetPlane: unsafe extern "C" fn(
14857            pPlaneArray: *mut cudaArray_t,
14858            hArray: cudaArray_t,
14859            planeIdx: ::core::ffi::c_uint,
14860        ) -> cudaError_t,
14861        pub cudaArrayGetSparseProperties: unsafe extern "C" fn(
14862            sparseProperties: *mut cudaArraySparseProperties,
14863            array: cudaArray_t,
14864        ) -> cudaError_t,
14865        #[cfg(any(
14866            feature = "cuda-11040",
14867            feature = "cuda-11050",
14868            feature = "cuda-11060",
14869            feature = "cuda-11070",
14870            feature = "cuda-11080"
14871        ))]
14872        pub cudaBindSurfaceToArray: unsafe extern "C" fn(
14873            surfref: *const surfaceReference,
14874            array: cudaArray_const_t,
14875            desc: *const cudaChannelFormatDesc,
14876        ) -> cudaError_t,
14877        #[cfg(any(
14878            feature = "cuda-11040",
14879            feature = "cuda-11050",
14880            feature = "cuda-11060",
14881            feature = "cuda-11070",
14882            feature = "cuda-11080"
14883        ))]
14884        pub cudaBindTexture: unsafe extern "C" fn(
14885            offset: *mut usize,
14886            texref: *const textureReference,
14887            devPtr: *const ::core::ffi::c_void,
14888            desc: *const cudaChannelFormatDesc,
14889            size: usize,
14890        ) -> cudaError_t,
14891        #[cfg(any(
14892            feature = "cuda-11040",
14893            feature = "cuda-11050",
14894            feature = "cuda-11060",
14895            feature = "cuda-11070",
14896            feature = "cuda-11080"
14897        ))]
14898        pub cudaBindTexture2D: unsafe extern "C" fn(
14899            offset: *mut usize,
14900            texref: *const textureReference,
14901            devPtr: *const ::core::ffi::c_void,
14902            desc: *const cudaChannelFormatDesc,
14903            width: usize,
14904            height: usize,
14905            pitch: usize,
14906        ) -> cudaError_t,
14907        #[cfg(any(
14908            feature = "cuda-11040",
14909            feature = "cuda-11050",
14910            feature = "cuda-11060",
14911            feature = "cuda-11070",
14912            feature = "cuda-11080"
14913        ))]
14914        pub cudaBindTextureToArray: unsafe extern "C" fn(
14915            texref: *const textureReference,
14916            array: cudaArray_const_t,
14917            desc: *const cudaChannelFormatDesc,
14918        ) -> cudaError_t,
14919        #[cfg(any(
14920            feature = "cuda-11040",
14921            feature = "cuda-11050",
14922            feature = "cuda-11060",
14923            feature = "cuda-11070",
14924            feature = "cuda-11080"
14925        ))]
14926        pub cudaBindTextureToMipmappedArray: unsafe extern "C" fn(
14927            texref: *const textureReference,
14928            mipmappedArray: cudaMipmappedArray_const_t,
14929            desc: *const cudaChannelFormatDesc,
14930        ) -> cudaError_t,
14931        pub cudaChooseDevice: unsafe extern "C" fn(
14932            device: *mut ::core::ffi::c_int,
14933            prop: *const cudaDeviceProp,
14934        ) -> cudaError_t,
14935        pub cudaCreateChannelDesc: unsafe extern "C" fn(
14936            x: ::core::ffi::c_int,
14937            y: ::core::ffi::c_int,
14938            z: ::core::ffi::c_int,
14939            w: ::core::ffi::c_int,
14940            f: cudaChannelFormatKind,
14941        ) -> cudaChannelFormatDesc,
14942        pub cudaCreateSurfaceObject: unsafe extern "C" fn(
14943            pSurfObject: *mut cudaSurfaceObject_t,
14944            pResDesc: *const cudaResourceDesc,
14945        ) -> cudaError_t,
14946        pub cudaCreateTextureObject: unsafe extern "C" fn(
14947            pTexObject: *mut cudaTextureObject_t,
14948            pResDesc: *const cudaResourceDesc,
14949            pTexDesc: *const cudaTextureDesc,
14950            pResViewDesc: *const cudaResourceViewDesc,
14951        ) -> cudaError_t,
14952        #[cfg(any(feature = "cuda-11080"))]
14953        pub cudaCreateTextureObject_v2: unsafe extern "C" fn(
14954            pTexObject: *mut cudaTextureObject_t,
14955            pResDesc: *const cudaResourceDesc,
14956            pTexDesc: *const cudaTextureDesc_v2,
14957            pResViewDesc: *const cudaResourceViewDesc,
14958        ) -> cudaError_t,
14959        pub cudaCtxResetPersistingL2Cache: unsafe extern "C" fn() -> cudaError_t,
14960        pub cudaDestroyExternalMemory:
14961            unsafe extern "C" fn(extMem: cudaExternalMemory_t) -> cudaError_t,
14962        pub cudaDestroyExternalSemaphore:
14963            unsafe extern "C" fn(extSem: cudaExternalSemaphore_t) -> cudaError_t,
14964        pub cudaDestroySurfaceObject:
14965            unsafe extern "C" fn(surfObject: cudaSurfaceObject_t) -> cudaError_t,
14966        pub cudaDestroyTextureObject:
14967            unsafe extern "C" fn(texObject: cudaTextureObject_t) -> cudaError_t,
14968        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
14969        pub cudaDevResourceGenerateDesc: unsafe extern "C" fn(
14970            phDesc: *mut cudaDevResourceDesc_t,
14971            resources: *mut cudaDevResource,
14972            nbResources: ::core::ffi::c_uint,
14973        ) -> cudaError_t,
14974        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
14975        pub cudaDevSmResourceSplit: unsafe extern "C" fn(
14976            result: *mut cudaDevResource,
14977            nbGroups: ::core::ffi::c_uint,
14978            input: *const cudaDevResource,
14979            remainder: *mut cudaDevResource,
14980            flags: ::core::ffi::c_uint,
14981            groupParams: *mut cudaDevSmResourceGroupParams,
14982        ) -> cudaError_t,
14983        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
14984        pub cudaDevSmResourceSplitByCount: unsafe extern "C" fn(
14985            result: *mut cudaDevResource,
14986            nbGroups: *mut ::core::ffi::c_uint,
14987            input: *const cudaDevResource,
14988            remaining: *mut cudaDevResource,
14989            flags: ::core::ffi::c_uint,
14990            minCount: ::core::ffi::c_uint,
14991        ) -> cudaError_t,
14992        pub cudaDeviceCanAccessPeer: unsafe extern "C" fn(
14993            canAccessPeer: *mut ::core::ffi::c_int,
14994            device: ::core::ffi::c_int,
14995            peerDevice: ::core::ffi::c_int,
14996        ) -> cudaError_t,
14997        pub cudaDeviceDisablePeerAccess:
14998            unsafe extern "C" fn(peerDevice: ::core::ffi::c_int) -> cudaError_t,
14999        pub cudaDeviceEnablePeerAccess: unsafe extern "C" fn(
15000            peerDevice: ::core::ffi::c_int,
15001            flags: ::core::ffi::c_uint,
15002        ) -> cudaError_t,
15003        pub cudaDeviceFlushGPUDirectRDMAWrites: unsafe extern "C" fn(
15004            target: cudaFlushGPUDirectRDMAWritesTarget,
15005            scope: cudaFlushGPUDirectRDMAWritesScope,
15006        ) -> cudaError_t,
15007        pub cudaDeviceGetAttribute: unsafe extern "C" fn(
15008            value: *mut ::core::ffi::c_int,
15009            attr: cudaDeviceAttr,
15010            device: ::core::ffi::c_int,
15011        ) -> cudaError_t,
15012        pub cudaDeviceGetByPCIBusId: unsafe extern "C" fn(
15013            device: *mut ::core::ffi::c_int,
15014            pciBusId: *const ::core::ffi::c_char,
15015        ) -> cudaError_t,
15016        pub cudaDeviceGetCacheConfig:
15017            unsafe extern "C" fn(pCacheConfig: *mut cudaFuncCache) -> cudaError_t,
15018        pub cudaDeviceGetDefaultMemPool: unsafe extern "C" fn(
15019            memPool: *mut cudaMemPool_t,
15020            device: ::core::ffi::c_int,
15021        ) -> cudaError_t,
15022        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15023        pub cudaDeviceGetDevResource: unsafe extern "C" fn(
15024            device: ::core::ffi::c_int,
15025            resource: *mut cudaDevResource,
15026            type_: cudaDevResourceType,
15027        ) -> cudaError_t,
15028        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15029        pub cudaDeviceGetExecutionCtx: unsafe extern "C" fn(
15030            ctx: *mut cudaExecutionContext_t,
15031            device: ::core::ffi::c_int,
15032        ) -> cudaError_t,
15033        pub cudaDeviceGetGraphMemAttribute: unsafe extern "C" fn(
15034            device: ::core::ffi::c_int,
15035            attr: cudaGraphMemAttributeType,
15036            value: *mut ::core::ffi::c_void,
15037        ) -> cudaError_t,
15038        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
15039        pub cudaDeviceGetHostAtomicCapabilities: unsafe extern "C" fn(
15040            capabilities: *mut ::core::ffi::c_uint,
15041            operations: *const cudaAtomicOperation,
15042            count: ::core::ffi::c_uint,
15043            device: ::core::ffi::c_int,
15044        ) -> cudaError_t,
15045        pub cudaDeviceGetLimit:
15046            unsafe extern "C" fn(pValue: *mut usize, limit: cudaLimit) -> cudaError_t,
15047        pub cudaDeviceGetMemPool: unsafe extern "C" fn(
15048            memPool: *mut cudaMemPool_t,
15049            device: ::core::ffi::c_int,
15050        ) -> cudaError_t,
15051        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
15052        pub cudaDeviceGetP2PAtomicCapabilities: unsafe extern "C" fn(
15053            capabilities: *mut ::core::ffi::c_uint,
15054            operations: *const cudaAtomicOperation,
15055            count: ::core::ffi::c_uint,
15056            srcDevice: ::core::ffi::c_int,
15057            dstDevice: ::core::ffi::c_int,
15058        ) -> cudaError_t,
15059        pub cudaDeviceGetP2PAttribute: unsafe extern "C" fn(
15060            value: *mut ::core::ffi::c_int,
15061            attr: cudaDeviceP2PAttr,
15062            srcDevice: ::core::ffi::c_int,
15063            dstDevice: ::core::ffi::c_int,
15064        ) -> cudaError_t,
15065        pub cudaDeviceGetPCIBusId: unsafe extern "C" fn(
15066            pciBusId: *mut ::core::ffi::c_char,
15067            len: ::core::ffi::c_int,
15068            device: ::core::ffi::c_int,
15069        ) -> cudaError_t,
15070        pub cudaDeviceGetSharedMemConfig:
15071            unsafe extern "C" fn(pConfig: *mut cudaSharedMemConfig) -> cudaError_t,
15072        pub cudaDeviceGetStreamPriorityRange: unsafe extern "C" fn(
15073            leastPriority: *mut ::core::ffi::c_int,
15074            greatestPriority: *mut ::core::ffi::c_int,
15075        ) -> cudaError_t,
15076        pub cudaDeviceGetTexture1DLinearMaxWidth: unsafe extern "C" fn(
15077            maxWidthInElements: *mut usize,
15078            fmtDesc: *const cudaChannelFormatDesc,
15079            device: ::core::ffi::c_int,
15080        ) -> cudaError_t,
15081        pub cudaDeviceGraphMemTrim: unsafe extern "C" fn(device: ::core::ffi::c_int) -> cudaError_t,
15082        #[cfg(any(
15083            feature = "cuda-12040",
15084            feature = "cuda-12050",
15085            feature = "cuda-12060",
15086            feature = "cuda-12080",
15087            feature = "cuda-12090",
15088            feature = "cuda-13000",
15089            feature = "cuda-13010",
15090            feature = "cuda-13020"
15091        ))]
15092        pub cudaDeviceRegisterAsyncNotification: unsafe extern "C" fn(
15093            device: ::core::ffi::c_int,
15094            callbackFunc: cudaAsyncCallback,
15095            userData: *mut ::core::ffi::c_void,
15096            callback: *mut cudaAsyncCallbackHandle_t,
15097        ) -> cudaError_t,
15098        pub cudaDeviceReset: unsafe extern "C" fn() -> cudaError_t,
15099        pub cudaDeviceSetCacheConfig:
15100            unsafe extern "C" fn(cacheConfig: cudaFuncCache) -> cudaError_t,
15101        pub cudaDeviceSetGraphMemAttribute: unsafe extern "C" fn(
15102            device: ::core::ffi::c_int,
15103            attr: cudaGraphMemAttributeType,
15104            value: *mut ::core::ffi::c_void,
15105        ) -> cudaError_t,
15106        pub cudaDeviceSetLimit: unsafe extern "C" fn(limit: cudaLimit, value: usize) -> cudaError_t,
15107        pub cudaDeviceSetMemPool:
15108            unsafe extern "C" fn(device: ::core::ffi::c_int, memPool: cudaMemPool_t) -> cudaError_t,
15109        pub cudaDeviceSetSharedMemConfig:
15110            unsafe extern "C" fn(config: cudaSharedMemConfig) -> cudaError_t,
15111        pub cudaDeviceSynchronize: unsafe extern "C" fn() -> cudaError_t,
15112        #[cfg(any(
15113            feature = "cuda-12040",
15114            feature = "cuda-12050",
15115            feature = "cuda-12060",
15116            feature = "cuda-12080",
15117            feature = "cuda-12090",
15118            feature = "cuda-13000",
15119            feature = "cuda-13010",
15120            feature = "cuda-13020"
15121        ))]
15122        pub cudaDeviceUnregisterAsyncNotification: unsafe extern "C" fn(
15123            device: ::core::ffi::c_int,
15124            callback: cudaAsyncCallbackHandle_t,
15125        ) -> cudaError_t,
15126        pub cudaDriverGetVersion:
15127            unsafe extern "C" fn(driverVersion: *mut ::core::ffi::c_int) -> cudaError_t,
15128        pub cudaEventCreate: unsafe extern "C" fn(event: *mut cudaEvent_t) -> cudaError_t,
15129        pub cudaEventCreateWithFlags: unsafe extern "C" fn(
15130            event: *mut cudaEvent_t,
15131            flags: ::core::ffi::c_uint,
15132        ) -> cudaError_t,
15133        pub cudaEventDestroy: unsafe extern "C" fn(event: cudaEvent_t) -> cudaError_t,
15134        pub cudaEventElapsedTime:
15135            unsafe extern "C" fn(ms: *mut f32, start: cudaEvent_t, end: cudaEvent_t) -> cudaError_t,
15136        #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
15137        pub cudaEventElapsedTime_v2:
15138            unsafe extern "C" fn(ms: *mut f32, start: cudaEvent_t, end: cudaEvent_t) -> cudaError_t,
15139        pub cudaEventQuery: unsafe extern "C" fn(event: cudaEvent_t) -> cudaError_t,
15140        pub cudaEventRecord:
15141            unsafe extern "C" fn(event: cudaEvent_t, stream: cudaStream_t) -> cudaError_t,
15142        pub cudaEventRecordWithFlags: unsafe extern "C" fn(
15143            event: cudaEvent_t,
15144            stream: cudaStream_t,
15145            flags: ::core::ffi::c_uint,
15146        ) -> cudaError_t,
15147        pub cudaEventSynchronize: unsafe extern "C" fn(event: cudaEvent_t) -> cudaError_t,
15148        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15149        pub cudaExecutionCtxDestroy:
15150            unsafe extern "C" fn(ctx: cudaExecutionContext_t) -> cudaError_t,
15151        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15152        pub cudaExecutionCtxGetDevResource: unsafe extern "C" fn(
15153            ctx: cudaExecutionContext_t,
15154            resource: *mut cudaDevResource,
15155            type_: cudaDevResourceType,
15156        ) -> cudaError_t,
15157        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15158        pub cudaExecutionCtxGetDevice: unsafe extern "C" fn(
15159            device: *mut ::core::ffi::c_int,
15160            ctx: cudaExecutionContext_t,
15161        ) -> cudaError_t,
15162        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15163        pub cudaExecutionCtxGetId: unsafe extern "C" fn(
15164            ctx: cudaExecutionContext_t,
15165            ctxId: *mut ::core::ffi::c_ulonglong,
15166        ) -> cudaError_t,
15167        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15168        pub cudaExecutionCtxRecordEvent:
15169            unsafe extern "C" fn(ctx: cudaExecutionContext_t, event: cudaEvent_t) -> cudaError_t,
15170        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15171        pub cudaExecutionCtxStreamCreate: unsafe extern "C" fn(
15172            phStream: *mut cudaStream_t,
15173            ctx: cudaExecutionContext_t,
15174            flags: ::core::ffi::c_uint,
15175            priority: ::core::ffi::c_int,
15176        ) -> cudaError_t,
15177        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15178        pub cudaExecutionCtxSynchronize:
15179            unsafe extern "C" fn(ctx: cudaExecutionContext_t) -> cudaError_t,
15180        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15181        pub cudaExecutionCtxWaitEvent:
15182            unsafe extern "C" fn(ctx: cudaExecutionContext_t, event: cudaEvent_t) -> cudaError_t,
15183        pub cudaExternalMemoryGetMappedBuffer: unsafe extern "C" fn(
15184            devPtr: *mut *mut ::core::ffi::c_void,
15185            extMem: cudaExternalMemory_t,
15186            bufferDesc: *const cudaExternalMemoryBufferDesc,
15187        ) -> cudaError_t,
15188        pub cudaExternalMemoryGetMappedMipmappedArray: unsafe extern "C" fn(
15189            mipmap: *mut cudaMipmappedArray_t,
15190            extMem: cudaExternalMemory_t,
15191            mipmapDesc: *const cudaExternalMemoryMipmappedArrayDesc,
15192        ) -> cudaError_t,
15193        pub cudaFree: unsafe extern "C" fn(devPtr: *mut ::core::ffi::c_void) -> cudaError_t,
15194        pub cudaFreeArray: unsafe extern "C" fn(array: cudaArray_t) -> cudaError_t,
15195        pub cudaFreeAsync: unsafe extern "C" fn(
15196            devPtr: *mut ::core::ffi::c_void,
15197            hStream: cudaStream_t,
15198        ) -> cudaError_t,
15199        pub cudaFreeHost: unsafe extern "C" fn(ptr: *mut ::core::ffi::c_void) -> cudaError_t,
15200        pub cudaFreeMipmappedArray:
15201            unsafe extern "C" fn(mipmappedArray: cudaMipmappedArray_t) -> cudaError_t,
15202        pub cudaFuncGetAttributes: unsafe extern "C" fn(
15203            attr: *mut cudaFuncAttributes,
15204            func: *const ::core::ffi::c_void,
15205        ) -> cudaError_t,
15206        #[cfg(any(
15207            feature = "cuda-12030",
15208            feature = "cuda-12040",
15209            feature = "cuda-12050",
15210            feature = "cuda-12060",
15211            feature = "cuda-12080",
15212            feature = "cuda-12090",
15213            feature = "cuda-13000",
15214            feature = "cuda-13010",
15215            feature = "cuda-13020"
15216        ))]
15217        pub cudaFuncGetName: unsafe extern "C" fn(
15218            name: *mut *const ::core::ffi::c_char,
15219            func: *const ::core::ffi::c_void,
15220        ) -> cudaError_t,
15221        #[cfg(any(feature = "cuda-13020"))]
15222        pub cudaFuncGetParamCount: unsafe extern "C" fn(
15223            func: *const ::core::ffi::c_void,
15224            paramCount: *mut usize,
15225        ) -> cudaError_t,
15226        #[cfg(any(
15227            feature = "cuda-12040",
15228            feature = "cuda-12050",
15229            feature = "cuda-12060",
15230            feature = "cuda-12080",
15231            feature = "cuda-12090",
15232            feature = "cuda-13000",
15233            feature = "cuda-13010",
15234            feature = "cuda-13020"
15235        ))]
15236        pub cudaFuncGetParamInfo: unsafe extern "C" fn(
15237            func: *const ::core::ffi::c_void,
15238            paramIndex: usize,
15239            paramOffset: *mut usize,
15240            paramSize: *mut usize,
15241        ) -> cudaError_t,
15242        pub cudaFuncSetAttribute: unsafe extern "C" fn(
15243            func: *const ::core::ffi::c_void,
15244            attr: cudaFuncAttribute,
15245            value: ::core::ffi::c_int,
15246        ) -> cudaError_t,
15247        pub cudaFuncSetCacheConfig: unsafe extern "C" fn(
15248            func: *const ::core::ffi::c_void,
15249            cacheConfig: cudaFuncCache,
15250        ) -> cudaError_t,
15251        pub cudaFuncSetSharedMemConfig: unsafe extern "C" fn(
15252            func: *const ::core::ffi::c_void,
15253            config: cudaSharedMemConfig,
15254        ) -> cudaError_t,
15255        pub cudaGetChannelDesc: unsafe extern "C" fn(
15256            desc: *mut cudaChannelFormatDesc,
15257            array: cudaArray_const_t,
15258        ) -> cudaError_t,
15259        pub cudaGetDevice: unsafe extern "C" fn(device: *mut ::core::ffi::c_int) -> cudaError_t,
15260        pub cudaGetDeviceCount: unsafe extern "C" fn(count: *mut ::core::ffi::c_int) -> cudaError_t,
15261        pub cudaGetDeviceFlags:
15262            unsafe extern "C" fn(flags: *mut ::core::ffi::c_uint) -> cudaError_t,
15263        #[cfg(any(
15264            feature = "cuda-11040",
15265            feature = "cuda-11050",
15266            feature = "cuda-11060",
15267            feature = "cuda-11070",
15268            feature = "cuda-11080",
15269            feature = "cuda-13000",
15270            feature = "cuda-13010",
15271            feature = "cuda-13020"
15272        ))]
15273        pub cudaGetDeviceProperties: unsafe extern "C" fn(
15274            prop: *mut cudaDeviceProp,
15275            device: ::core::ffi::c_int,
15276        ) -> cudaError_t,
15277        #[cfg(any(
15278            feature = "cuda-12000",
15279            feature = "cuda-12010",
15280            feature = "cuda-12020",
15281            feature = "cuda-12030",
15282            feature = "cuda-12040",
15283            feature = "cuda-12050",
15284            feature = "cuda-12060",
15285            feature = "cuda-12080",
15286            feature = "cuda-12090"
15287        ))]
15288        pub cudaGetDeviceProperties_v2: unsafe extern "C" fn(
15289            prop: *mut cudaDeviceProp,
15290            device: ::core::ffi::c_int,
15291        ) -> cudaError_t,
15292        #[cfg(any(
15293            feature = "cuda-11040",
15294            feature = "cuda-11050",
15295            feature = "cuda-11060",
15296            feature = "cuda-11070",
15297            feature = "cuda-11080"
15298        ))]
15299        pub cudaGetDriverEntryPoint: unsafe extern "C" fn(
15300            symbol: *const ::core::ffi::c_char,
15301            funcPtr: *mut *mut ::core::ffi::c_void,
15302            flags: ::core::ffi::c_ulonglong,
15303        ) -> cudaError_t,
15304        #[cfg(any(
15305            feature = "cuda-12000",
15306            feature = "cuda-12010",
15307            feature = "cuda-12020",
15308            feature = "cuda-12030",
15309            feature = "cuda-12040",
15310            feature = "cuda-12050",
15311            feature = "cuda-12060",
15312            feature = "cuda-12080",
15313            feature = "cuda-12090",
15314            feature = "cuda-13000",
15315            feature = "cuda-13010",
15316            feature = "cuda-13020"
15317        ))]
15318        pub cudaGetDriverEntryPoint: unsafe extern "C" fn(
15319            symbol: *const ::core::ffi::c_char,
15320            funcPtr: *mut *mut ::core::ffi::c_void,
15321            flags: ::core::ffi::c_ulonglong,
15322            driverStatus: *mut cudaDriverEntryPointQueryResult,
15323        ) -> cudaError_t,
15324        #[cfg(any(
15325            feature = "cuda-12050",
15326            feature = "cuda-12060",
15327            feature = "cuda-12080",
15328            feature = "cuda-12090",
15329            feature = "cuda-13000",
15330            feature = "cuda-13010",
15331            feature = "cuda-13020"
15332        ))]
15333        pub cudaGetDriverEntryPointByVersion: unsafe extern "C" fn(
15334            symbol: *const ::core::ffi::c_char,
15335            funcPtr: *mut *mut ::core::ffi::c_void,
15336            cudaVersion: ::core::ffi::c_uint,
15337            flags: ::core::ffi::c_ulonglong,
15338            driverStatus: *mut cudaDriverEntryPointQueryResult,
15339        ) -> cudaError_t,
15340        pub cudaGetErrorName:
15341            unsafe extern "C" fn(error: cudaError_t) -> *const ::core::ffi::c_char,
15342        pub cudaGetErrorString:
15343            unsafe extern "C" fn(error: cudaError_t) -> *const ::core::ffi::c_char,
15344        pub cudaGetExportTable: unsafe extern "C" fn(
15345            ppExportTable: *mut *const ::core::ffi::c_void,
15346            pExportTableId: *const cudaUUID_t,
15347        ) -> cudaError_t,
15348        pub cudaGetFuncBySymbol: unsafe extern "C" fn(
15349            functionPtr: *mut cudaFunction_t,
15350            symbolPtr: *const ::core::ffi::c_void,
15351        ) -> cudaError_t,
15352        #[cfg(any(
15353            feature = "cuda-12010",
15354            feature = "cuda-12020",
15355            feature = "cuda-12030",
15356            feature = "cuda-12040",
15357            feature = "cuda-12050",
15358            feature = "cuda-12060",
15359            feature = "cuda-12080",
15360            feature = "cuda-12090",
15361            feature = "cuda-13000",
15362            feature = "cuda-13010",
15363            feature = "cuda-13020"
15364        ))]
15365        pub cudaGetKernel: unsafe extern "C" fn(
15366            kernelPtr: *mut cudaKernel_t,
15367            entryFuncAddr: *const ::core::ffi::c_void,
15368        ) -> cudaError_t,
15369        pub cudaGetLastError: unsafe extern "C" fn() -> cudaError_t,
15370        pub cudaGetMipmappedArrayLevel: unsafe extern "C" fn(
15371            levelArray: *mut cudaArray_t,
15372            mipmappedArray: cudaMipmappedArray_const_t,
15373            level: ::core::ffi::c_uint,
15374        ) -> cudaError_t,
15375        pub cudaGetSurfaceObjectResourceDesc: unsafe extern "C" fn(
15376            pResDesc: *mut cudaResourceDesc,
15377            surfObject: cudaSurfaceObject_t,
15378        ) -> cudaError_t,
15379        #[cfg(any(
15380            feature = "cuda-11040",
15381            feature = "cuda-11050",
15382            feature = "cuda-11060",
15383            feature = "cuda-11070",
15384            feature = "cuda-11080"
15385        ))]
15386        pub cudaGetSurfaceReference: unsafe extern "C" fn(
15387            surfref: *mut *const surfaceReference,
15388            symbol: *const ::core::ffi::c_void,
15389        ) -> cudaError_t,
15390        pub cudaGetSymbolAddress: unsafe extern "C" fn(
15391            devPtr: *mut *mut ::core::ffi::c_void,
15392            symbol: *const ::core::ffi::c_void,
15393        ) -> cudaError_t,
15394        pub cudaGetSymbolSize: unsafe extern "C" fn(
15395            size: *mut usize,
15396            symbol: *const ::core::ffi::c_void,
15397        ) -> cudaError_t,
15398        #[cfg(any(
15399            feature = "cuda-11040",
15400            feature = "cuda-11050",
15401            feature = "cuda-11060",
15402            feature = "cuda-11070",
15403            feature = "cuda-11080"
15404        ))]
15405        pub cudaGetTextureAlignmentOffset: unsafe extern "C" fn(
15406            offset: *mut usize,
15407            texref: *const textureReference,
15408        ) -> cudaError_t,
15409        pub cudaGetTextureObjectResourceDesc: unsafe extern "C" fn(
15410            pResDesc: *mut cudaResourceDesc,
15411            texObject: cudaTextureObject_t,
15412        ) -> cudaError_t,
15413        pub cudaGetTextureObjectResourceViewDesc: unsafe extern "C" fn(
15414            pResViewDesc: *mut cudaResourceViewDesc,
15415            texObject: cudaTextureObject_t,
15416        ) -> cudaError_t,
15417        pub cudaGetTextureObjectTextureDesc: unsafe extern "C" fn(
15418            pTexDesc: *mut cudaTextureDesc,
15419            texObject: cudaTextureObject_t,
15420        ) -> cudaError_t,
15421        #[cfg(any(feature = "cuda-11080"))]
15422        pub cudaGetTextureObjectTextureDesc_v2: unsafe extern "C" fn(
15423            pTexDesc: *mut cudaTextureDesc_v2,
15424            texObject: cudaTextureObject_t,
15425        ) -> cudaError_t,
15426        #[cfg(any(
15427            feature = "cuda-11040",
15428            feature = "cuda-11050",
15429            feature = "cuda-11060",
15430            feature = "cuda-11070",
15431            feature = "cuda-11080"
15432        ))]
15433        pub cudaGetTextureReference: unsafe extern "C" fn(
15434            texref: *mut *const textureReference,
15435            symbol: *const ::core::ffi::c_void,
15436        ) -> cudaError_t,
15437        pub cudaGraphAddChildGraphNode: unsafe extern "C" fn(
15438            pGraphNode: *mut cudaGraphNode_t,
15439            graph: cudaGraph_t,
15440            pDependencies: *const cudaGraphNode_t,
15441            numDependencies: usize,
15442            childGraph: cudaGraph_t,
15443        ) -> cudaError_t,
15444        #[cfg(any(
15445            feature = "cuda-11040",
15446            feature = "cuda-11050",
15447            feature = "cuda-11060",
15448            feature = "cuda-11070",
15449            feature = "cuda-11080",
15450            feature = "cuda-12000",
15451            feature = "cuda-12010",
15452            feature = "cuda-12020",
15453            feature = "cuda-12030",
15454            feature = "cuda-12040",
15455            feature = "cuda-12050",
15456            feature = "cuda-12060",
15457            feature = "cuda-12080",
15458            feature = "cuda-12090"
15459        ))]
15460        pub cudaGraphAddDependencies: unsafe extern "C" fn(
15461            graph: cudaGraph_t,
15462            from: *const cudaGraphNode_t,
15463            to: *const cudaGraphNode_t,
15464            numDependencies: usize,
15465        ) -> cudaError_t,
15466        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
15467        pub cudaGraphAddDependencies: unsafe extern "C" fn(
15468            graph: cudaGraph_t,
15469            from: *const cudaGraphNode_t,
15470            to: *const cudaGraphNode_t,
15471            edgeData: *const cudaGraphEdgeData,
15472            numDependencies: usize,
15473        ) -> cudaError_t,
15474        #[cfg(any(
15475            feature = "cuda-12030",
15476            feature = "cuda-12040",
15477            feature = "cuda-12050",
15478            feature = "cuda-12060",
15479            feature = "cuda-12080",
15480            feature = "cuda-12090"
15481        ))]
15482        pub cudaGraphAddDependencies_v2: unsafe extern "C" fn(
15483            graph: cudaGraph_t,
15484            from: *const cudaGraphNode_t,
15485            to: *const cudaGraphNode_t,
15486            edgeData: *const cudaGraphEdgeData,
15487            numDependencies: usize,
15488        ) -> cudaError_t,
15489        pub cudaGraphAddEmptyNode: unsafe extern "C" fn(
15490            pGraphNode: *mut cudaGraphNode_t,
15491            graph: cudaGraph_t,
15492            pDependencies: *const cudaGraphNode_t,
15493            numDependencies: usize,
15494        ) -> cudaError_t,
15495        pub cudaGraphAddEventRecordNode: unsafe extern "C" fn(
15496            pGraphNode: *mut cudaGraphNode_t,
15497            graph: cudaGraph_t,
15498            pDependencies: *const cudaGraphNode_t,
15499            numDependencies: usize,
15500            event: cudaEvent_t,
15501        ) -> cudaError_t,
15502        pub cudaGraphAddEventWaitNode: unsafe extern "C" fn(
15503            pGraphNode: *mut cudaGraphNode_t,
15504            graph: cudaGraph_t,
15505            pDependencies: *const cudaGraphNode_t,
15506            numDependencies: usize,
15507            event: cudaEvent_t,
15508        ) -> cudaError_t,
15509        pub cudaGraphAddExternalSemaphoresSignalNode: unsafe extern "C" fn(
15510            pGraphNode: *mut cudaGraphNode_t,
15511            graph: cudaGraph_t,
15512            pDependencies: *const cudaGraphNode_t,
15513            numDependencies: usize,
15514            nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
15515        ) -> cudaError_t,
15516        pub cudaGraphAddExternalSemaphoresWaitNode: unsafe extern "C" fn(
15517            pGraphNode: *mut cudaGraphNode_t,
15518            graph: cudaGraph_t,
15519            pDependencies: *const cudaGraphNode_t,
15520            numDependencies: usize,
15521            nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
15522        ) -> cudaError_t,
15523        pub cudaGraphAddHostNode: unsafe extern "C" fn(
15524            pGraphNode: *mut cudaGraphNode_t,
15525            graph: cudaGraph_t,
15526            pDependencies: *const cudaGraphNode_t,
15527            numDependencies: usize,
15528            pNodeParams: *const cudaHostNodeParams,
15529        ) -> cudaError_t,
15530        pub cudaGraphAddKernelNode: unsafe extern "C" fn(
15531            pGraphNode: *mut cudaGraphNode_t,
15532            graph: cudaGraph_t,
15533            pDependencies: *const cudaGraphNode_t,
15534            numDependencies: usize,
15535            pNodeParams: *const cudaKernelNodeParams,
15536        ) -> cudaError_t,
15537        pub cudaGraphAddMemAllocNode: unsafe extern "C" fn(
15538            pGraphNode: *mut cudaGraphNode_t,
15539            graph: cudaGraph_t,
15540            pDependencies: *const cudaGraphNode_t,
15541            numDependencies: usize,
15542            nodeParams: *mut cudaMemAllocNodeParams,
15543        ) -> cudaError_t,
15544        pub cudaGraphAddMemFreeNode: unsafe extern "C" fn(
15545            pGraphNode: *mut cudaGraphNode_t,
15546            graph: cudaGraph_t,
15547            pDependencies: *const cudaGraphNode_t,
15548            numDependencies: usize,
15549            dptr: *mut ::core::ffi::c_void,
15550        ) -> cudaError_t,
15551        pub cudaGraphAddMemcpyNode: unsafe extern "C" fn(
15552            pGraphNode: *mut cudaGraphNode_t,
15553            graph: cudaGraph_t,
15554            pDependencies: *const cudaGraphNode_t,
15555            numDependencies: usize,
15556            pCopyParams: *const cudaMemcpy3DParms,
15557        ) -> cudaError_t,
15558        pub cudaGraphAddMemcpyNode1D: unsafe extern "C" fn(
15559            pGraphNode: *mut cudaGraphNode_t,
15560            graph: cudaGraph_t,
15561            pDependencies: *const cudaGraphNode_t,
15562            numDependencies: usize,
15563            dst: *mut ::core::ffi::c_void,
15564            src: *const ::core::ffi::c_void,
15565            count: usize,
15566            kind: cudaMemcpyKind,
15567        ) -> cudaError_t,
15568        pub cudaGraphAddMemcpyNodeFromSymbol: unsafe extern "C" fn(
15569            pGraphNode: *mut cudaGraphNode_t,
15570            graph: cudaGraph_t,
15571            pDependencies: *const cudaGraphNode_t,
15572            numDependencies: usize,
15573            dst: *mut ::core::ffi::c_void,
15574            symbol: *const ::core::ffi::c_void,
15575            count: usize,
15576            offset: usize,
15577            kind: cudaMemcpyKind,
15578        ) -> cudaError_t,
15579        pub cudaGraphAddMemcpyNodeToSymbol: unsafe extern "C" fn(
15580            pGraphNode: *mut cudaGraphNode_t,
15581            graph: cudaGraph_t,
15582            pDependencies: *const cudaGraphNode_t,
15583            numDependencies: usize,
15584            symbol: *const ::core::ffi::c_void,
15585            src: *const ::core::ffi::c_void,
15586            count: usize,
15587            offset: usize,
15588            kind: cudaMemcpyKind,
15589        ) -> cudaError_t,
15590        pub cudaGraphAddMemsetNode: unsafe extern "C" fn(
15591            pGraphNode: *mut cudaGraphNode_t,
15592            graph: cudaGraph_t,
15593            pDependencies: *const cudaGraphNode_t,
15594            numDependencies: usize,
15595            pMemsetParams: *const cudaMemsetParams,
15596        ) -> cudaError_t,
15597        #[cfg(any(
15598            feature = "cuda-12020",
15599            feature = "cuda-12030",
15600            feature = "cuda-12040",
15601            feature = "cuda-12050",
15602            feature = "cuda-12060",
15603            feature = "cuda-12080",
15604            feature = "cuda-12090"
15605        ))]
15606        pub cudaGraphAddNode: unsafe extern "C" fn(
15607            pGraphNode: *mut cudaGraphNode_t,
15608            graph: cudaGraph_t,
15609            pDependencies: *const cudaGraphNode_t,
15610            numDependencies: usize,
15611            nodeParams: *mut cudaGraphNodeParams,
15612        ) -> cudaError_t,
15613        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
15614        pub cudaGraphAddNode: unsafe extern "C" fn(
15615            pGraphNode: *mut cudaGraphNode_t,
15616            graph: cudaGraph_t,
15617            pDependencies: *const cudaGraphNode_t,
15618            dependencyData: *const cudaGraphEdgeData,
15619            numDependencies: usize,
15620            nodeParams: *mut cudaGraphNodeParams,
15621        ) -> cudaError_t,
15622        #[cfg(any(
15623            feature = "cuda-12030",
15624            feature = "cuda-12040",
15625            feature = "cuda-12050",
15626            feature = "cuda-12060",
15627            feature = "cuda-12080",
15628            feature = "cuda-12090"
15629        ))]
15630        pub cudaGraphAddNode_v2: unsafe extern "C" fn(
15631            pGraphNode: *mut cudaGraphNode_t,
15632            graph: cudaGraph_t,
15633            pDependencies: *const cudaGraphNode_t,
15634            dependencyData: *const cudaGraphEdgeData,
15635            numDependencies: usize,
15636            nodeParams: *mut cudaGraphNodeParams,
15637        ) -> cudaError_t,
15638        pub cudaGraphChildGraphNodeGetGraph:
15639            unsafe extern "C" fn(node: cudaGraphNode_t, pGraph: *mut cudaGraph_t) -> cudaError_t,
15640        pub cudaGraphClone: unsafe extern "C" fn(
15641            pGraphClone: *mut cudaGraph_t,
15642            originalGraph: cudaGraph_t,
15643        ) -> cudaError_t,
15644        #[cfg(any(
15645            feature = "cuda-12030",
15646            feature = "cuda-12040",
15647            feature = "cuda-12050",
15648            feature = "cuda-12060",
15649            feature = "cuda-12080",
15650            feature = "cuda-12090",
15651            feature = "cuda-13000",
15652            feature = "cuda-13010",
15653            feature = "cuda-13020"
15654        ))]
15655        pub cudaGraphConditionalHandleCreate: unsafe extern "C" fn(
15656            pHandle_out: *mut cudaGraphConditionalHandle,
15657            graph: cudaGraph_t,
15658            defaultLaunchValue: ::core::ffi::c_uint,
15659            flags: ::core::ffi::c_uint,
15660        ) -> cudaError_t,
15661        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15662        pub cudaGraphConditionalHandleCreate_v2: unsafe extern "C" fn(
15663            pHandle_out: *mut cudaGraphConditionalHandle,
15664            graph: cudaGraph_t,
15665            ctx: cudaExecutionContext_t,
15666            defaultLaunchValue: ::core::ffi::c_uint,
15667            flags: ::core::ffi::c_uint,
15668        ) -> cudaError_t,
15669        pub cudaGraphCreate: unsafe extern "C" fn(
15670            pGraph: *mut cudaGraph_t,
15671            flags: ::core::ffi::c_uint,
15672        ) -> cudaError_t,
15673        pub cudaGraphDebugDotPrint: unsafe extern "C" fn(
15674            graph: cudaGraph_t,
15675            path: *const ::core::ffi::c_char,
15676            flags: ::core::ffi::c_uint,
15677        ) -> cudaError_t,
15678        pub cudaGraphDestroy: unsafe extern "C" fn(graph: cudaGraph_t) -> cudaError_t,
15679        pub cudaGraphDestroyNode: unsafe extern "C" fn(node: cudaGraphNode_t) -> cudaError_t,
15680        pub cudaGraphEventRecordNodeGetEvent:
15681            unsafe extern "C" fn(node: cudaGraphNode_t, event_out: *mut cudaEvent_t) -> cudaError_t,
15682        pub cudaGraphEventRecordNodeSetEvent:
15683            unsafe extern "C" fn(node: cudaGraphNode_t, event: cudaEvent_t) -> cudaError_t,
15684        pub cudaGraphEventWaitNodeGetEvent:
15685            unsafe extern "C" fn(node: cudaGraphNode_t, event_out: *mut cudaEvent_t) -> cudaError_t,
15686        pub cudaGraphEventWaitNodeSetEvent:
15687            unsafe extern "C" fn(node: cudaGraphNode_t, event: cudaEvent_t) -> cudaError_t,
15688        pub cudaGraphExecChildGraphNodeSetParams: unsafe extern "C" fn(
15689            hGraphExec: cudaGraphExec_t,
15690            node: cudaGraphNode_t,
15691            childGraph: cudaGraph_t,
15692        ) -> cudaError_t,
15693        pub cudaGraphExecDestroy: unsafe extern "C" fn(graphExec: cudaGraphExec_t) -> cudaError_t,
15694        pub cudaGraphExecEventRecordNodeSetEvent: unsafe extern "C" fn(
15695            hGraphExec: cudaGraphExec_t,
15696            hNode: cudaGraphNode_t,
15697            event: cudaEvent_t,
15698        ) -> cudaError_t,
15699        pub cudaGraphExecEventWaitNodeSetEvent: unsafe extern "C" fn(
15700            hGraphExec: cudaGraphExec_t,
15701            hNode: cudaGraphNode_t,
15702            event: cudaEvent_t,
15703        ) -> cudaError_t,
15704        pub cudaGraphExecExternalSemaphoresSignalNodeSetParams: unsafe extern "C" fn(
15705            hGraphExec: cudaGraphExec_t,
15706            hNode: cudaGraphNode_t,
15707            nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
15708        )
15709            -> cudaError_t,
15710        pub cudaGraphExecExternalSemaphoresWaitNodeSetParams: unsafe extern "C" fn(
15711            hGraphExec: cudaGraphExec_t,
15712            hNode: cudaGraphNode_t,
15713            nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
15714        )
15715            -> cudaError_t,
15716        #[cfg(any(
15717            feature = "cuda-12000",
15718            feature = "cuda-12010",
15719            feature = "cuda-12020",
15720            feature = "cuda-12030",
15721            feature = "cuda-12040",
15722            feature = "cuda-12050",
15723            feature = "cuda-12060",
15724            feature = "cuda-12080",
15725            feature = "cuda-12090",
15726            feature = "cuda-13000",
15727            feature = "cuda-13010",
15728            feature = "cuda-13020"
15729        ))]
15730        pub cudaGraphExecGetFlags: unsafe extern "C" fn(
15731            graphExec: cudaGraphExec_t,
15732            flags: *mut ::core::ffi::c_ulonglong,
15733        ) -> cudaError_t,
15734        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15735        pub cudaGraphExecGetId: unsafe extern "C" fn(
15736            hGraphExec: cudaGraphExec_t,
15737            graphID: *mut ::core::ffi::c_uint,
15738        ) -> cudaError_t,
15739        pub cudaGraphExecHostNodeSetParams: unsafe extern "C" fn(
15740            hGraphExec: cudaGraphExec_t,
15741            node: cudaGraphNode_t,
15742            pNodeParams: *const cudaHostNodeParams,
15743        ) -> cudaError_t,
15744        pub cudaGraphExecKernelNodeSetParams: unsafe extern "C" fn(
15745            hGraphExec: cudaGraphExec_t,
15746            node: cudaGraphNode_t,
15747            pNodeParams: *const cudaKernelNodeParams,
15748        ) -> cudaError_t,
15749        pub cudaGraphExecMemcpyNodeSetParams: unsafe extern "C" fn(
15750            hGraphExec: cudaGraphExec_t,
15751            node: cudaGraphNode_t,
15752            pNodeParams: *const cudaMemcpy3DParms,
15753        ) -> cudaError_t,
15754        pub cudaGraphExecMemcpyNodeSetParams1D: unsafe extern "C" fn(
15755            hGraphExec: cudaGraphExec_t,
15756            node: cudaGraphNode_t,
15757            dst: *mut ::core::ffi::c_void,
15758            src: *const ::core::ffi::c_void,
15759            count: usize,
15760            kind: cudaMemcpyKind,
15761        ) -> cudaError_t,
15762        pub cudaGraphExecMemcpyNodeSetParamsFromSymbol: unsafe extern "C" fn(
15763            hGraphExec: cudaGraphExec_t,
15764            node: cudaGraphNode_t,
15765            dst: *mut ::core::ffi::c_void,
15766            symbol: *const ::core::ffi::c_void,
15767            count: usize,
15768            offset: usize,
15769            kind: cudaMemcpyKind,
15770        )
15771            -> cudaError_t,
15772        pub cudaGraphExecMemcpyNodeSetParamsToSymbol: unsafe extern "C" fn(
15773            hGraphExec: cudaGraphExec_t,
15774            node: cudaGraphNode_t,
15775            symbol: *const ::core::ffi::c_void,
15776            src: *const ::core::ffi::c_void,
15777            count: usize,
15778            offset: usize,
15779            kind: cudaMemcpyKind,
15780        ) -> cudaError_t,
15781        pub cudaGraphExecMemsetNodeSetParams: unsafe extern "C" fn(
15782            hGraphExec: cudaGraphExec_t,
15783            node: cudaGraphNode_t,
15784            pNodeParams: *const cudaMemsetParams,
15785        ) -> cudaError_t,
15786        #[cfg(any(
15787            feature = "cuda-12020",
15788            feature = "cuda-12030",
15789            feature = "cuda-12040",
15790            feature = "cuda-12050",
15791            feature = "cuda-12060",
15792            feature = "cuda-12080",
15793            feature = "cuda-12090",
15794            feature = "cuda-13000",
15795            feature = "cuda-13010",
15796            feature = "cuda-13020"
15797        ))]
15798        pub cudaGraphExecNodeSetParams: unsafe extern "C" fn(
15799            graphExec: cudaGraphExec_t,
15800            node: cudaGraphNode_t,
15801            nodeParams: *mut cudaGraphNodeParams,
15802        ) -> cudaError_t,
15803        #[cfg(any(
15804            feature = "cuda-11040",
15805            feature = "cuda-11050",
15806            feature = "cuda-11060",
15807            feature = "cuda-11070",
15808            feature = "cuda-11080"
15809        ))]
15810        pub cudaGraphExecUpdate: unsafe extern "C" fn(
15811            hGraphExec: cudaGraphExec_t,
15812            hGraph: cudaGraph_t,
15813            hErrorNode_out: *mut cudaGraphNode_t,
15814            updateResult_out: *mut cudaGraphExecUpdateResult,
15815        ) -> cudaError_t,
15816        #[cfg(any(
15817            feature = "cuda-12000",
15818            feature = "cuda-12010",
15819            feature = "cuda-12020",
15820            feature = "cuda-12030",
15821            feature = "cuda-12040",
15822            feature = "cuda-12050",
15823            feature = "cuda-12060",
15824            feature = "cuda-12080",
15825            feature = "cuda-12090",
15826            feature = "cuda-13000",
15827            feature = "cuda-13010",
15828            feature = "cuda-13020"
15829        ))]
15830        pub cudaGraphExecUpdate: unsafe extern "C" fn(
15831            hGraphExec: cudaGraphExec_t,
15832            hGraph: cudaGraph_t,
15833            resultInfo: *mut cudaGraphExecUpdateResultInfo,
15834        ) -> cudaError_t,
15835        pub cudaGraphExternalSemaphoresSignalNodeGetParams: unsafe extern "C" fn(
15836            hNode: cudaGraphNode_t,
15837            params_out: *mut cudaExternalSemaphoreSignalNodeParams,
15838        )
15839            -> cudaError_t,
15840        pub cudaGraphExternalSemaphoresSignalNodeSetParams: unsafe extern "C" fn(
15841            hNode: cudaGraphNode_t,
15842            nodeParams: *const cudaExternalSemaphoreSignalNodeParams,
15843        )
15844            -> cudaError_t,
15845        pub cudaGraphExternalSemaphoresWaitNodeGetParams: unsafe extern "C" fn(
15846            hNode: cudaGraphNode_t,
15847            params_out: *mut cudaExternalSemaphoreWaitNodeParams,
15848        )
15849            -> cudaError_t,
15850        pub cudaGraphExternalSemaphoresWaitNodeSetParams: unsafe extern "C" fn(
15851            hNode: cudaGraphNode_t,
15852            nodeParams: *const cudaExternalSemaphoreWaitNodeParams,
15853        )
15854            -> cudaError_t,
15855        #[cfg(any(
15856            feature = "cuda-11040",
15857            feature = "cuda-11050",
15858            feature = "cuda-11060",
15859            feature = "cuda-11070",
15860            feature = "cuda-11080",
15861            feature = "cuda-12000",
15862            feature = "cuda-12010",
15863            feature = "cuda-12020",
15864            feature = "cuda-12030",
15865            feature = "cuda-12040",
15866            feature = "cuda-12050",
15867            feature = "cuda-12060",
15868            feature = "cuda-12080",
15869            feature = "cuda-12090"
15870        ))]
15871        pub cudaGraphGetEdges: unsafe extern "C" fn(
15872            graph: cudaGraph_t,
15873            from: *mut cudaGraphNode_t,
15874            to: *mut cudaGraphNode_t,
15875            numEdges: *mut usize,
15876        ) -> cudaError_t,
15877        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
15878        pub cudaGraphGetEdges: unsafe extern "C" fn(
15879            graph: cudaGraph_t,
15880            from: *mut cudaGraphNode_t,
15881            to: *mut cudaGraphNode_t,
15882            edgeData: *mut cudaGraphEdgeData,
15883            numEdges: *mut usize,
15884        ) -> cudaError_t,
15885        #[cfg(any(
15886            feature = "cuda-12030",
15887            feature = "cuda-12040",
15888            feature = "cuda-12050",
15889            feature = "cuda-12060",
15890            feature = "cuda-12080",
15891            feature = "cuda-12090"
15892        ))]
15893        pub cudaGraphGetEdges_v2: unsafe extern "C" fn(
15894            graph: cudaGraph_t,
15895            from: *mut cudaGraphNode_t,
15896            to: *mut cudaGraphNode_t,
15897            edgeData: *mut cudaGraphEdgeData,
15898            numEdges: *mut usize,
15899        ) -> cudaError_t,
15900        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
15901        pub cudaGraphGetId: unsafe extern "C" fn(
15902            hGraph: cudaGraph_t,
15903            graphID: *mut ::core::ffi::c_uint,
15904        ) -> cudaError_t,
15905        pub cudaGraphGetNodes: unsafe extern "C" fn(
15906            graph: cudaGraph_t,
15907            nodes: *mut cudaGraphNode_t,
15908            numNodes: *mut usize,
15909        ) -> cudaError_t,
15910        pub cudaGraphGetRootNodes: unsafe extern "C" fn(
15911            graph: cudaGraph_t,
15912            pRootNodes: *mut cudaGraphNode_t,
15913            pNumRootNodes: *mut usize,
15914        ) -> cudaError_t,
15915        pub cudaGraphHostNodeGetParams: unsafe extern "C" fn(
15916            node: cudaGraphNode_t,
15917            pNodeParams: *mut cudaHostNodeParams,
15918        ) -> cudaError_t,
15919        pub cudaGraphHostNodeSetParams: unsafe extern "C" fn(
15920            node: cudaGraphNode_t,
15921            pNodeParams: *const cudaHostNodeParams,
15922        ) -> cudaError_t,
15923        #[cfg(any(
15924            feature = "cuda-11040",
15925            feature = "cuda-11050",
15926            feature = "cuda-11060",
15927            feature = "cuda-11070",
15928            feature = "cuda-11080"
15929        ))]
15930        pub cudaGraphInstantiate: unsafe extern "C" fn(
15931            pGraphExec: *mut cudaGraphExec_t,
15932            graph: cudaGraph_t,
15933            pErrorNode: *mut cudaGraphNode_t,
15934            pLogBuffer: *mut ::core::ffi::c_char,
15935            bufferSize: usize,
15936        ) -> cudaError_t,
15937        #[cfg(any(
15938            feature = "cuda-12000",
15939            feature = "cuda-12010",
15940            feature = "cuda-12020",
15941            feature = "cuda-12030",
15942            feature = "cuda-12040",
15943            feature = "cuda-12050",
15944            feature = "cuda-12060",
15945            feature = "cuda-12080",
15946            feature = "cuda-12090",
15947            feature = "cuda-13000",
15948            feature = "cuda-13010",
15949            feature = "cuda-13020"
15950        ))]
15951        pub cudaGraphInstantiate: unsafe extern "C" fn(
15952            pGraphExec: *mut cudaGraphExec_t,
15953            graph: cudaGraph_t,
15954            flags: ::core::ffi::c_ulonglong,
15955        ) -> cudaError_t,
15956        pub cudaGraphInstantiateWithFlags: unsafe extern "C" fn(
15957            pGraphExec: *mut cudaGraphExec_t,
15958            graph: cudaGraph_t,
15959            flags: ::core::ffi::c_ulonglong,
15960        ) -> cudaError_t,
15961        #[cfg(any(
15962            feature = "cuda-12000",
15963            feature = "cuda-12010",
15964            feature = "cuda-12020",
15965            feature = "cuda-12030",
15966            feature = "cuda-12040",
15967            feature = "cuda-12050",
15968            feature = "cuda-12060",
15969            feature = "cuda-12080",
15970            feature = "cuda-12090",
15971            feature = "cuda-13000",
15972            feature = "cuda-13010",
15973            feature = "cuda-13020"
15974        ))]
15975        pub cudaGraphInstantiateWithParams: unsafe extern "C" fn(
15976            pGraphExec: *mut cudaGraphExec_t,
15977            graph: cudaGraph_t,
15978            instantiateParams: *mut cudaGraphInstantiateParams,
15979        ) -> cudaError_t,
15980        #[cfg(any(
15981            feature = "cuda-11040",
15982            feature = "cuda-11050",
15983            feature = "cuda-11060",
15984            feature = "cuda-11070",
15985            feature = "cuda-11080",
15986            feature = "cuda-12000",
15987            feature = "cuda-12010",
15988            feature = "cuda-12020",
15989            feature = "cuda-12030",
15990            feature = "cuda-12040",
15991            feature = "cuda-12050",
15992            feature = "cuda-12060",
15993            feature = "cuda-12080",
15994            feature = "cuda-12090"
15995        ))]
15996        pub cudaGraphKernelNodeCopyAttributes:
15997            unsafe extern "C" fn(hSrc: cudaGraphNode_t, hDst: cudaGraphNode_t) -> cudaError_t,
15998        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
15999        pub cudaGraphKernelNodeCopyAttributes:
16000            unsafe extern "C" fn(hDst: cudaGraphNode_t, hSrc: cudaGraphNode_t) -> cudaError_t,
16001        #[cfg(any(
16002            feature = "cuda-11040",
16003            feature = "cuda-11050",
16004            feature = "cuda-11060",
16005            feature = "cuda-11070"
16006        ))]
16007        pub cudaGraphKernelNodeGetAttribute: unsafe extern "C" fn(
16008            hNode: cudaGraphNode_t,
16009            attr: cudaKernelNodeAttrID,
16010            value_out: *mut cudaKernelNodeAttrValue,
16011        ) -> cudaError_t,
16012        #[cfg(any(
16013            feature = "cuda-11080",
16014            feature = "cuda-12000",
16015            feature = "cuda-12010",
16016            feature = "cuda-12020",
16017            feature = "cuda-12030",
16018            feature = "cuda-12040",
16019            feature = "cuda-12050",
16020            feature = "cuda-12060",
16021            feature = "cuda-12080",
16022            feature = "cuda-12090",
16023            feature = "cuda-13000",
16024            feature = "cuda-13010",
16025            feature = "cuda-13020"
16026        ))]
16027        pub cudaGraphKernelNodeGetAttribute: unsafe extern "C" fn(
16028            hNode: cudaGraphNode_t,
16029            attr: cudaLaunchAttributeID,
16030            value_out: *mut cudaLaunchAttributeValue,
16031        ) -> cudaError_t,
16032        pub cudaGraphKernelNodeGetParams: unsafe extern "C" fn(
16033            node: cudaGraphNode_t,
16034            pNodeParams: *mut cudaKernelNodeParams,
16035        ) -> cudaError_t,
16036        #[cfg(any(
16037            feature = "cuda-11040",
16038            feature = "cuda-11050",
16039            feature = "cuda-11060",
16040            feature = "cuda-11070"
16041        ))]
16042        pub cudaGraphKernelNodeSetAttribute: unsafe extern "C" fn(
16043            hNode: cudaGraphNode_t,
16044            attr: cudaKernelNodeAttrID,
16045            value: *const cudaKernelNodeAttrValue,
16046        ) -> cudaError_t,
16047        #[cfg(any(
16048            feature = "cuda-11080",
16049            feature = "cuda-12000",
16050            feature = "cuda-12010",
16051            feature = "cuda-12020",
16052            feature = "cuda-12030",
16053            feature = "cuda-12040",
16054            feature = "cuda-12050",
16055            feature = "cuda-12060",
16056            feature = "cuda-12080",
16057            feature = "cuda-12090",
16058            feature = "cuda-13000",
16059            feature = "cuda-13010",
16060            feature = "cuda-13020"
16061        ))]
16062        pub cudaGraphKernelNodeSetAttribute: unsafe extern "C" fn(
16063            hNode: cudaGraphNode_t,
16064            attr: cudaLaunchAttributeID,
16065            value: *const cudaLaunchAttributeValue,
16066        ) -> cudaError_t,
16067        pub cudaGraphKernelNodeSetParams: unsafe extern "C" fn(
16068            node: cudaGraphNode_t,
16069            pNodeParams: *const cudaKernelNodeParams,
16070        ) -> cudaError_t,
16071        pub cudaGraphLaunch:
16072            unsafe extern "C" fn(graphExec: cudaGraphExec_t, stream: cudaStream_t) -> cudaError_t,
16073        pub cudaGraphMemAllocNodeGetParams: unsafe extern "C" fn(
16074            node: cudaGraphNode_t,
16075            params_out: *mut cudaMemAllocNodeParams,
16076        ) -> cudaError_t,
16077        pub cudaGraphMemFreeNodeGetParams: unsafe extern "C" fn(
16078            node: cudaGraphNode_t,
16079            dptr_out: *mut ::core::ffi::c_void,
16080        ) -> cudaError_t,
16081        pub cudaGraphMemcpyNodeGetParams: unsafe extern "C" fn(
16082            node: cudaGraphNode_t,
16083            pNodeParams: *mut cudaMemcpy3DParms,
16084        ) -> cudaError_t,
16085        pub cudaGraphMemcpyNodeSetParams: unsafe extern "C" fn(
16086            node: cudaGraphNode_t,
16087            pNodeParams: *const cudaMemcpy3DParms,
16088        ) -> cudaError_t,
16089        pub cudaGraphMemcpyNodeSetParams1D: unsafe extern "C" fn(
16090            node: cudaGraphNode_t,
16091            dst: *mut ::core::ffi::c_void,
16092            src: *const ::core::ffi::c_void,
16093            count: usize,
16094            kind: cudaMemcpyKind,
16095        ) -> cudaError_t,
16096        pub cudaGraphMemcpyNodeSetParamsFromSymbol: unsafe extern "C" fn(
16097            node: cudaGraphNode_t,
16098            dst: *mut ::core::ffi::c_void,
16099            symbol: *const ::core::ffi::c_void,
16100            count: usize,
16101            offset: usize,
16102            kind: cudaMemcpyKind,
16103        ) -> cudaError_t,
16104        pub cudaGraphMemcpyNodeSetParamsToSymbol: unsafe extern "C" fn(
16105            node: cudaGraphNode_t,
16106            symbol: *const ::core::ffi::c_void,
16107            src: *const ::core::ffi::c_void,
16108            count: usize,
16109            offset: usize,
16110            kind: cudaMemcpyKind,
16111        ) -> cudaError_t,
16112        pub cudaGraphMemsetNodeGetParams: unsafe extern "C" fn(
16113            node: cudaGraphNode_t,
16114            pNodeParams: *mut cudaMemsetParams,
16115        ) -> cudaError_t,
16116        pub cudaGraphMemsetNodeSetParams: unsafe extern "C" fn(
16117            node: cudaGraphNode_t,
16118            pNodeParams: *const cudaMemsetParams,
16119        ) -> cudaError_t,
16120        pub cudaGraphNodeFindInClone: unsafe extern "C" fn(
16121            pNode: *mut cudaGraphNode_t,
16122            originalNode: cudaGraphNode_t,
16123            clonedGraph: cudaGraph_t,
16124        ) -> cudaError_t,
16125        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
16126        pub cudaGraphNodeGetContainingGraph:
16127            unsafe extern "C" fn(hNode: cudaGraphNode_t, phGraph: *mut cudaGraph_t) -> cudaError_t,
16128        #[cfg(any(
16129            feature = "cuda-11040",
16130            feature = "cuda-11050",
16131            feature = "cuda-11060",
16132            feature = "cuda-11070",
16133            feature = "cuda-11080",
16134            feature = "cuda-12000",
16135            feature = "cuda-12010",
16136            feature = "cuda-12020",
16137            feature = "cuda-12030",
16138            feature = "cuda-12040",
16139            feature = "cuda-12050",
16140            feature = "cuda-12060",
16141            feature = "cuda-12080",
16142            feature = "cuda-12090"
16143        ))]
16144        pub cudaGraphNodeGetDependencies: unsafe extern "C" fn(
16145            node: cudaGraphNode_t,
16146            pDependencies: *mut cudaGraphNode_t,
16147            pNumDependencies: *mut usize,
16148        ) -> cudaError_t,
16149        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16150        pub cudaGraphNodeGetDependencies: unsafe extern "C" fn(
16151            node: cudaGraphNode_t,
16152            pDependencies: *mut cudaGraphNode_t,
16153            edgeData: *mut cudaGraphEdgeData,
16154            pNumDependencies: *mut usize,
16155        ) -> cudaError_t,
16156        #[cfg(any(
16157            feature = "cuda-12030",
16158            feature = "cuda-12040",
16159            feature = "cuda-12050",
16160            feature = "cuda-12060",
16161            feature = "cuda-12080",
16162            feature = "cuda-12090"
16163        ))]
16164        pub cudaGraphNodeGetDependencies_v2: unsafe extern "C" fn(
16165            node: cudaGraphNode_t,
16166            pDependencies: *mut cudaGraphNode_t,
16167            edgeData: *mut cudaGraphEdgeData,
16168            pNumDependencies: *mut usize,
16169        ) -> cudaError_t,
16170        #[cfg(any(
16171            feature = "cuda-11040",
16172            feature = "cuda-11050",
16173            feature = "cuda-11060",
16174            feature = "cuda-11070",
16175            feature = "cuda-11080",
16176            feature = "cuda-12000",
16177            feature = "cuda-12010",
16178            feature = "cuda-12020",
16179            feature = "cuda-12030",
16180            feature = "cuda-12040",
16181            feature = "cuda-12050",
16182            feature = "cuda-12060",
16183            feature = "cuda-12080",
16184            feature = "cuda-12090"
16185        ))]
16186        pub cudaGraphNodeGetDependentNodes: unsafe extern "C" fn(
16187            node: cudaGraphNode_t,
16188            pDependentNodes: *mut cudaGraphNode_t,
16189            pNumDependentNodes: *mut usize,
16190        ) -> cudaError_t,
16191        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16192        pub cudaGraphNodeGetDependentNodes: unsafe extern "C" fn(
16193            node: cudaGraphNode_t,
16194            pDependentNodes: *mut cudaGraphNode_t,
16195            edgeData: *mut cudaGraphEdgeData,
16196            pNumDependentNodes: *mut usize,
16197        ) -> cudaError_t,
16198        #[cfg(any(
16199            feature = "cuda-12030",
16200            feature = "cuda-12040",
16201            feature = "cuda-12050",
16202            feature = "cuda-12060",
16203            feature = "cuda-12080",
16204            feature = "cuda-12090"
16205        ))]
16206        pub cudaGraphNodeGetDependentNodes_v2: unsafe extern "C" fn(
16207            node: cudaGraphNode_t,
16208            pDependentNodes: *mut cudaGraphNode_t,
16209            edgeData: *mut cudaGraphEdgeData,
16210            pNumDependentNodes: *mut usize,
16211        ) -> cudaError_t,
16212        #[cfg(any(
16213            feature = "cuda-11060",
16214            feature = "cuda-11070",
16215            feature = "cuda-11080",
16216            feature = "cuda-12000",
16217            feature = "cuda-12010",
16218            feature = "cuda-12020",
16219            feature = "cuda-12030",
16220            feature = "cuda-12040",
16221            feature = "cuda-12050",
16222            feature = "cuda-12060",
16223            feature = "cuda-12080",
16224            feature = "cuda-12090",
16225            feature = "cuda-13000",
16226            feature = "cuda-13010",
16227            feature = "cuda-13020"
16228        ))]
16229        pub cudaGraphNodeGetEnabled: unsafe extern "C" fn(
16230            hGraphExec: cudaGraphExec_t,
16231            hNode: cudaGraphNode_t,
16232            isEnabled: *mut ::core::ffi::c_uint,
16233        ) -> cudaError_t,
16234        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
16235        pub cudaGraphNodeGetLocalId: unsafe extern "C" fn(
16236            hNode: cudaGraphNode_t,
16237            nodeId: *mut ::core::ffi::c_uint,
16238        ) -> cudaError_t,
16239        #[cfg(any(feature = "cuda-13020"))]
16240        pub cudaGraphNodeGetParams: unsafe extern "C" fn(
16241            node: cudaGraphNode_t,
16242            nodeParams: *mut cudaGraphNodeParams,
16243        ) -> cudaError_t,
16244        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
16245        pub cudaGraphNodeGetToolsId: unsafe extern "C" fn(
16246            hNode: cudaGraphNode_t,
16247            toolsNodeId: *mut ::core::ffi::c_ulonglong,
16248        ) -> cudaError_t,
16249        pub cudaGraphNodeGetType: unsafe extern "C" fn(
16250            node: cudaGraphNode_t,
16251            pType: *mut cudaGraphNodeType,
16252        ) -> cudaError_t,
16253        #[cfg(any(
16254            feature = "cuda-11060",
16255            feature = "cuda-11070",
16256            feature = "cuda-11080",
16257            feature = "cuda-12000",
16258            feature = "cuda-12010",
16259            feature = "cuda-12020",
16260            feature = "cuda-12030",
16261            feature = "cuda-12040",
16262            feature = "cuda-12050",
16263            feature = "cuda-12060",
16264            feature = "cuda-12080",
16265            feature = "cuda-12090",
16266            feature = "cuda-13000",
16267            feature = "cuda-13010",
16268            feature = "cuda-13020"
16269        ))]
16270        pub cudaGraphNodeSetEnabled: unsafe extern "C" fn(
16271            hGraphExec: cudaGraphExec_t,
16272            hNode: cudaGraphNode_t,
16273            isEnabled: ::core::ffi::c_uint,
16274        ) -> cudaError_t,
16275        #[cfg(any(
16276            feature = "cuda-12020",
16277            feature = "cuda-12030",
16278            feature = "cuda-12040",
16279            feature = "cuda-12050",
16280            feature = "cuda-12060",
16281            feature = "cuda-12080",
16282            feature = "cuda-12090",
16283            feature = "cuda-13000",
16284            feature = "cuda-13010",
16285            feature = "cuda-13020"
16286        ))]
16287        pub cudaGraphNodeSetParams: unsafe extern "C" fn(
16288            node: cudaGraphNode_t,
16289            nodeParams: *mut cudaGraphNodeParams,
16290        ) -> cudaError_t,
16291        pub cudaGraphReleaseUserObject: unsafe extern "C" fn(
16292            graph: cudaGraph_t,
16293            object: cudaUserObject_t,
16294            count: ::core::ffi::c_uint,
16295        ) -> cudaError_t,
16296        #[cfg(any(
16297            feature = "cuda-11040",
16298            feature = "cuda-11050",
16299            feature = "cuda-11060",
16300            feature = "cuda-11070",
16301            feature = "cuda-11080",
16302            feature = "cuda-12000",
16303            feature = "cuda-12010",
16304            feature = "cuda-12020",
16305            feature = "cuda-12030",
16306            feature = "cuda-12040",
16307            feature = "cuda-12050",
16308            feature = "cuda-12060",
16309            feature = "cuda-12080",
16310            feature = "cuda-12090"
16311        ))]
16312        pub cudaGraphRemoveDependencies: unsafe extern "C" fn(
16313            graph: cudaGraph_t,
16314            from: *const cudaGraphNode_t,
16315            to: *const cudaGraphNode_t,
16316            numDependencies: usize,
16317        ) -> cudaError_t,
16318        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16319        pub cudaGraphRemoveDependencies: unsafe extern "C" fn(
16320            graph: cudaGraph_t,
16321            from: *const cudaGraphNode_t,
16322            to: *const cudaGraphNode_t,
16323            edgeData: *const cudaGraphEdgeData,
16324            numDependencies: usize,
16325        ) -> cudaError_t,
16326        #[cfg(any(
16327            feature = "cuda-12030",
16328            feature = "cuda-12040",
16329            feature = "cuda-12050",
16330            feature = "cuda-12060",
16331            feature = "cuda-12080",
16332            feature = "cuda-12090"
16333        ))]
16334        pub cudaGraphRemoveDependencies_v2: unsafe extern "C" fn(
16335            graph: cudaGraph_t,
16336            from: *const cudaGraphNode_t,
16337            to: *const cudaGraphNode_t,
16338            edgeData: *const cudaGraphEdgeData,
16339            numDependencies: usize,
16340        ) -> cudaError_t,
16341        pub cudaGraphRetainUserObject: unsafe extern "C" fn(
16342            graph: cudaGraph_t,
16343            object: cudaUserObject_t,
16344            count: ::core::ffi::c_uint,
16345            flags: ::core::ffi::c_uint,
16346        ) -> cudaError_t,
16347        pub cudaGraphUpload:
16348            unsafe extern "C" fn(graphExec: cudaGraphExec_t, stream: cudaStream_t) -> cudaError_t,
16349        pub cudaGraphicsMapResources: unsafe extern "C" fn(
16350            count: ::core::ffi::c_int,
16351            resources: *mut cudaGraphicsResource_t,
16352            stream: cudaStream_t,
16353        ) -> cudaError_t,
16354        pub cudaGraphicsResourceGetMappedMipmappedArray: unsafe extern "C" fn(
16355            mipmappedArray: *mut cudaMipmappedArray_t,
16356            resource: cudaGraphicsResource_t,
16357        )
16358            -> cudaError_t,
16359        pub cudaGraphicsResourceGetMappedPointer: unsafe extern "C" fn(
16360            devPtr: *mut *mut ::core::ffi::c_void,
16361            size: *mut usize,
16362            resource: cudaGraphicsResource_t,
16363        ) -> cudaError_t,
16364        pub cudaGraphicsResourceSetMapFlags: unsafe extern "C" fn(
16365            resource: cudaGraphicsResource_t,
16366            flags: ::core::ffi::c_uint,
16367        ) -> cudaError_t,
16368        pub cudaGraphicsSubResourceGetMappedArray: unsafe extern "C" fn(
16369            array: *mut cudaArray_t,
16370            resource: cudaGraphicsResource_t,
16371            arrayIndex: ::core::ffi::c_uint,
16372            mipLevel: ::core::ffi::c_uint,
16373        ) -> cudaError_t,
16374        pub cudaGraphicsUnmapResources: unsafe extern "C" fn(
16375            count: ::core::ffi::c_int,
16376            resources: *mut cudaGraphicsResource_t,
16377            stream: cudaStream_t,
16378        ) -> cudaError_t,
16379        pub cudaGraphicsUnregisterResource:
16380            unsafe extern "C" fn(resource: cudaGraphicsResource_t) -> cudaError_t,
16381        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
16382        pub cudaGreenCtxCreate: unsafe extern "C" fn(
16383            phCtx: *mut cudaExecutionContext_t,
16384            desc: cudaDevResourceDesc_t,
16385            device: ::core::ffi::c_int,
16386            flags: ::core::ffi::c_uint,
16387        ) -> cudaError_t,
16388        pub cudaHostAlloc: unsafe extern "C" fn(
16389            pHost: *mut *mut ::core::ffi::c_void,
16390            size: usize,
16391            flags: ::core::ffi::c_uint,
16392        ) -> cudaError_t,
16393        pub cudaHostGetDevicePointer: unsafe extern "C" fn(
16394            pDevice: *mut *mut ::core::ffi::c_void,
16395            pHost: *mut ::core::ffi::c_void,
16396            flags: ::core::ffi::c_uint,
16397        ) -> cudaError_t,
16398        pub cudaHostGetFlags: unsafe extern "C" fn(
16399            pFlags: *mut ::core::ffi::c_uint,
16400            pHost: *mut ::core::ffi::c_void,
16401        ) -> cudaError_t,
16402        pub cudaHostRegister: unsafe extern "C" fn(
16403            ptr: *mut ::core::ffi::c_void,
16404            size: usize,
16405            flags: ::core::ffi::c_uint,
16406        ) -> cudaError_t,
16407        pub cudaHostUnregister: unsafe extern "C" fn(ptr: *mut ::core::ffi::c_void) -> cudaError_t,
16408        pub cudaImportExternalMemory: unsafe extern "C" fn(
16409            extMem_out: *mut cudaExternalMemory_t,
16410            memHandleDesc: *const cudaExternalMemoryHandleDesc,
16411        ) -> cudaError_t,
16412        pub cudaImportExternalSemaphore: unsafe extern "C" fn(
16413            extSem_out: *mut cudaExternalSemaphore_t,
16414            semHandleDesc: *const cudaExternalSemaphoreHandleDesc,
16415        ) -> cudaError_t,
16416        #[cfg(any(
16417            feature = "cuda-12000",
16418            feature = "cuda-12010",
16419            feature = "cuda-12020",
16420            feature = "cuda-12030",
16421            feature = "cuda-12040",
16422            feature = "cuda-12050",
16423            feature = "cuda-12060",
16424            feature = "cuda-12080",
16425            feature = "cuda-12090",
16426            feature = "cuda-13000",
16427            feature = "cuda-13010",
16428            feature = "cuda-13020"
16429        ))]
16430        pub cudaInitDevice: unsafe extern "C" fn(
16431            device: ::core::ffi::c_int,
16432            deviceFlags: ::core::ffi::c_uint,
16433            flags: ::core::ffi::c_uint,
16434        ) -> cudaError_t,
16435        pub cudaIpcCloseMemHandle:
16436            unsafe extern "C" fn(devPtr: *mut ::core::ffi::c_void) -> cudaError_t,
16437        pub cudaIpcGetEventHandle: unsafe extern "C" fn(
16438            handle: *mut cudaIpcEventHandle_t,
16439            event: cudaEvent_t,
16440        ) -> cudaError_t,
16441        pub cudaIpcGetMemHandle: unsafe extern "C" fn(
16442            handle: *mut cudaIpcMemHandle_t,
16443            devPtr: *mut ::core::ffi::c_void,
16444        ) -> cudaError_t,
16445        pub cudaIpcOpenEventHandle: unsafe extern "C" fn(
16446            event: *mut cudaEvent_t,
16447            handle: cudaIpcEventHandle_t,
16448        ) -> cudaError_t,
16449        pub cudaIpcOpenMemHandle: unsafe extern "C" fn(
16450            devPtr: *mut *mut ::core::ffi::c_void,
16451            handle: cudaIpcMemHandle_t,
16452            flags: ::core::ffi::c_uint,
16453        ) -> cudaError_t,
16454        #[cfg(any(
16455            feature = "cuda-12080",
16456            feature = "cuda-12090",
16457            feature = "cuda-13000",
16458            feature = "cuda-13010",
16459            feature = "cuda-13020"
16460        ))]
16461        pub cudaKernelSetAttributeForDevice: unsafe extern "C" fn(
16462            kernel: cudaKernel_t,
16463            attr: cudaFuncAttribute,
16464            value: ::core::ffi::c_int,
16465            device: ::core::ffi::c_int,
16466        ) -> cudaError_t,
16467        pub cudaLaunchCooperativeKernel: unsafe extern "C" fn(
16468            func: *const ::core::ffi::c_void,
16469            gridDim: dim3,
16470            blockDim: dim3,
16471            args: *mut *mut ::core::ffi::c_void,
16472            sharedMem: usize,
16473            stream: cudaStream_t,
16474        ) -> cudaError_t,
16475        #[cfg(any(
16476            feature = "cuda-11040",
16477            feature = "cuda-11050",
16478            feature = "cuda-11060",
16479            feature = "cuda-11070",
16480            feature = "cuda-11080",
16481            feature = "cuda-12000",
16482            feature = "cuda-12010",
16483            feature = "cuda-12020",
16484            feature = "cuda-12030",
16485            feature = "cuda-12040",
16486            feature = "cuda-12050",
16487            feature = "cuda-12060",
16488            feature = "cuda-12080",
16489            feature = "cuda-12090"
16490        ))]
16491        pub cudaLaunchCooperativeKernelMultiDevice: unsafe extern "C" fn(
16492            launchParamsList: *mut cudaLaunchParams,
16493            numDevices: ::core::ffi::c_uint,
16494            flags: ::core::ffi::c_uint,
16495        ) -> cudaError_t,
16496        pub cudaLaunchHostFunc: unsafe extern "C" fn(
16497            stream: cudaStream_t,
16498            fn_: cudaHostFn_t,
16499            userData: *mut ::core::ffi::c_void,
16500        ) -> cudaError_t,
16501        #[cfg(any(feature = "cuda-13020"))]
16502        pub cudaLaunchHostFunc_v2: unsafe extern "C" fn(
16503            stream: cudaStream_t,
16504            fn_: cudaHostFn_t,
16505            userData: *mut ::core::ffi::c_void,
16506            syncMode: ::core::ffi::c_uint,
16507        ) -> cudaError_t,
16508        pub cudaLaunchKernel: unsafe extern "C" fn(
16509            func: *const ::core::ffi::c_void,
16510            gridDim: dim3,
16511            blockDim: dim3,
16512            args: *mut *mut ::core::ffi::c_void,
16513            sharedMem: usize,
16514            stream: cudaStream_t,
16515        ) -> cudaError_t,
16516        #[cfg(any(
16517            feature = "cuda-11080",
16518            feature = "cuda-12000",
16519            feature = "cuda-12010",
16520            feature = "cuda-12020",
16521            feature = "cuda-12030",
16522            feature = "cuda-12040",
16523            feature = "cuda-12050",
16524            feature = "cuda-12060",
16525            feature = "cuda-12080",
16526            feature = "cuda-12090",
16527            feature = "cuda-13000",
16528            feature = "cuda-13010",
16529            feature = "cuda-13020"
16530        ))]
16531        pub cudaLaunchKernelExC: unsafe extern "C" fn(
16532            config: *const cudaLaunchConfig_t,
16533            func: *const ::core::ffi::c_void,
16534            args: *mut *mut ::core::ffi::c_void,
16535        ) -> cudaError_t,
16536        #[cfg(any(
16537            feature = "cuda-12080",
16538            feature = "cuda-12090",
16539            feature = "cuda-13000",
16540            feature = "cuda-13010",
16541            feature = "cuda-13020"
16542        ))]
16543        pub cudaLibraryEnumerateKernels: unsafe extern "C" fn(
16544            kernels: *mut cudaKernel_t,
16545            numKernels: ::core::ffi::c_uint,
16546            lib: cudaLibrary_t,
16547        ) -> cudaError_t,
16548        #[cfg(any(
16549            feature = "cuda-12080",
16550            feature = "cuda-12090",
16551            feature = "cuda-13000",
16552            feature = "cuda-13010",
16553            feature = "cuda-13020"
16554        ))]
16555        pub cudaLibraryGetGlobal: unsafe extern "C" fn(
16556            dptr: *mut *mut ::core::ffi::c_void,
16557            bytes: *mut usize,
16558            library: cudaLibrary_t,
16559            name: *const ::core::ffi::c_char,
16560        ) -> cudaError_t,
16561        #[cfg(any(
16562            feature = "cuda-12080",
16563            feature = "cuda-12090",
16564            feature = "cuda-13000",
16565            feature = "cuda-13010",
16566            feature = "cuda-13020"
16567        ))]
16568        pub cudaLibraryGetKernel: unsafe extern "C" fn(
16569            pKernel: *mut cudaKernel_t,
16570            library: cudaLibrary_t,
16571            name: *const ::core::ffi::c_char,
16572        ) -> cudaError_t,
16573        #[cfg(any(
16574            feature = "cuda-12080",
16575            feature = "cuda-12090",
16576            feature = "cuda-13000",
16577            feature = "cuda-13010",
16578            feature = "cuda-13020"
16579        ))]
16580        pub cudaLibraryGetKernelCount: unsafe extern "C" fn(
16581            count: *mut ::core::ffi::c_uint,
16582            lib: cudaLibrary_t,
16583        ) -> cudaError_t,
16584        #[cfg(any(
16585            feature = "cuda-12080",
16586            feature = "cuda-12090",
16587            feature = "cuda-13000",
16588            feature = "cuda-13010",
16589            feature = "cuda-13020"
16590        ))]
16591        pub cudaLibraryGetManaged: unsafe extern "C" fn(
16592            dptr: *mut *mut ::core::ffi::c_void,
16593            bytes: *mut usize,
16594            library: cudaLibrary_t,
16595            name: *const ::core::ffi::c_char,
16596        ) -> cudaError_t,
16597        #[cfg(any(
16598            feature = "cuda-12080",
16599            feature = "cuda-12090",
16600            feature = "cuda-13000",
16601            feature = "cuda-13010",
16602            feature = "cuda-13020"
16603        ))]
16604        pub cudaLibraryGetUnifiedFunction: unsafe extern "C" fn(
16605            fptr: *mut *mut ::core::ffi::c_void,
16606            library: cudaLibrary_t,
16607            symbol: *const ::core::ffi::c_char,
16608        ) -> cudaError_t,
16609        #[cfg(any(
16610            feature = "cuda-12080",
16611            feature = "cuda-12090",
16612            feature = "cuda-13000",
16613            feature = "cuda-13010",
16614            feature = "cuda-13020"
16615        ))]
16616        pub cudaLibraryLoadData: unsafe extern "C" fn(
16617            library: *mut cudaLibrary_t,
16618            code: *const ::core::ffi::c_void,
16619            jitOptions: *mut cudaJitOption,
16620            jitOptionsValues: *mut *mut ::core::ffi::c_void,
16621            numJitOptions: ::core::ffi::c_uint,
16622            libraryOptions: *mut cudaLibraryOption,
16623            libraryOptionValues: *mut *mut ::core::ffi::c_void,
16624            numLibraryOptions: ::core::ffi::c_uint,
16625        ) -> cudaError_t,
16626        #[cfg(any(
16627            feature = "cuda-12080",
16628            feature = "cuda-12090",
16629            feature = "cuda-13000",
16630            feature = "cuda-13010",
16631            feature = "cuda-13020"
16632        ))]
16633        pub cudaLibraryLoadFromFile: unsafe extern "C" fn(
16634            library: *mut cudaLibrary_t,
16635            fileName: *const ::core::ffi::c_char,
16636            jitOptions: *mut cudaJitOption,
16637            jitOptionsValues: *mut *mut ::core::ffi::c_void,
16638            numJitOptions: ::core::ffi::c_uint,
16639            libraryOptions: *mut cudaLibraryOption,
16640            libraryOptionValues: *mut *mut ::core::ffi::c_void,
16641            numLibraryOptions: ::core::ffi::c_uint,
16642        ) -> cudaError_t,
16643        #[cfg(any(
16644            feature = "cuda-12080",
16645            feature = "cuda-12090",
16646            feature = "cuda-13000",
16647            feature = "cuda-13010",
16648            feature = "cuda-13020"
16649        ))]
16650        pub cudaLibraryUnload: unsafe extern "C" fn(library: cudaLibrary_t) -> cudaError_t,
16651        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16652        pub cudaLogsCurrent: unsafe extern "C" fn(
16653            iterator_out: *mut cudaLogIterator,
16654            flags: ::core::ffi::c_uint,
16655        ) -> cudaError_t,
16656        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16657        pub cudaLogsDumpToFile: unsafe extern "C" fn(
16658            iterator: *mut cudaLogIterator,
16659            pathToFile: *const ::core::ffi::c_char,
16660            flags: ::core::ffi::c_uint,
16661        ) -> cudaError_t,
16662        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16663        pub cudaLogsDumpToMemory: unsafe extern "C" fn(
16664            iterator: *mut cudaLogIterator,
16665            buffer: *mut ::core::ffi::c_char,
16666            size: *mut usize,
16667            flags: ::core::ffi::c_uint,
16668        ) -> cudaError_t,
16669        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16670        pub cudaLogsRegisterCallback: unsafe extern "C" fn(
16671            callbackFunc: cudaLogsCallback_t,
16672            userData: *mut ::core::ffi::c_void,
16673            callback_out: *mut cudaLogsCallbackHandle,
16674        ) -> cudaError_t,
16675        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16676        pub cudaLogsUnregisterCallback:
16677            unsafe extern "C" fn(callback: cudaLogsCallbackHandle) -> cudaError_t,
16678        pub cudaMalloc:
16679            unsafe extern "C" fn(devPtr: *mut *mut ::core::ffi::c_void, size: usize) -> cudaError_t,
16680        pub cudaMalloc3D: unsafe extern "C" fn(
16681            pitchedDevPtr: *mut cudaPitchedPtr,
16682            extent: cudaExtent,
16683        ) -> cudaError_t,
16684        pub cudaMalloc3DArray: unsafe extern "C" fn(
16685            array: *mut cudaArray_t,
16686            desc: *const cudaChannelFormatDesc,
16687            extent: cudaExtent,
16688            flags: ::core::ffi::c_uint,
16689        ) -> cudaError_t,
16690        pub cudaMallocArray: unsafe extern "C" fn(
16691            array: *mut cudaArray_t,
16692            desc: *const cudaChannelFormatDesc,
16693            width: usize,
16694            height: usize,
16695            flags: ::core::ffi::c_uint,
16696        ) -> cudaError_t,
16697        pub cudaMallocAsync: unsafe extern "C" fn(
16698            devPtr: *mut *mut ::core::ffi::c_void,
16699            size: usize,
16700            hStream: cudaStream_t,
16701        ) -> cudaError_t,
16702        pub cudaMallocFromPoolAsync: unsafe extern "C" fn(
16703            ptr: *mut *mut ::core::ffi::c_void,
16704            size: usize,
16705            memPool: cudaMemPool_t,
16706            stream: cudaStream_t,
16707        ) -> cudaError_t,
16708        pub cudaMallocHost:
16709            unsafe extern "C" fn(ptr: *mut *mut ::core::ffi::c_void, size: usize) -> cudaError_t,
16710        pub cudaMallocManaged: unsafe extern "C" fn(
16711            devPtr: *mut *mut ::core::ffi::c_void,
16712            size: usize,
16713            flags: ::core::ffi::c_uint,
16714        ) -> cudaError_t,
16715        pub cudaMallocMipmappedArray: unsafe extern "C" fn(
16716            mipmappedArray: *mut cudaMipmappedArray_t,
16717            desc: *const cudaChannelFormatDesc,
16718            extent: cudaExtent,
16719            numLevels: ::core::ffi::c_uint,
16720            flags: ::core::ffi::c_uint,
16721        ) -> cudaError_t,
16722        pub cudaMallocPitch: unsafe extern "C" fn(
16723            devPtr: *mut *mut ::core::ffi::c_void,
16724            pitch: *mut usize,
16725            width: usize,
16726            height: usize,
16727        ) -> cudaError_t,
16728        #[cfg(any(
16729            feature = "cuda-11040",
16730            feature = "cuda-11050",
16731            feature = "cuda-11060",
16732            feature = "cuda-11070",
16733            feature = "cuda-11080",
16734            feature = "cuda-12000",
16735            feature = "cuda-12010",
16736            feature = "cuda-12020",
16737            feature = "cuda-12030",
16738            feature = "cuda-12040",
16739            feature = "cuda-12050",
16740            feature = "cuda-12060",
16741            feature = "cuda-12080",
16742            feature = "cuda-12090"
16743        ))]
16744        pub cudaMemAdvise: unsafe extern "C" fn(
16745            devPtr: *const ::core::ffi::c_void,
16746            count: usize,
16747            advice: cudaMemoryAdvise,
16748            device: ::core::ffi::c_int,
16749        ) -> cudaError_t,
16750        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16751        pub cudaMemAdvise: unsafe extern "C" fn(
16752            devPtr: *const ::core::ffi::c_void,
16753            count: usize,
16754            advice: cudaMemoryAdvise,
16755            location: cudaMemLocation,
16756        ) -> cudaError_t,
16757        #[cfg(any(
16758            feature = "cuda-12020",
16759            feature = "cuda-12030",
16760            feature = "cuda-12040",
16761            feature = "cuda-12050",
16762            feature = "cuda-12060",
16763            feature = "cuda-12080",
16764            feature = "cuda-12090"
16765        ))]
16766        pub cudaMemAdvise_v2: unsafe extern "C" fn(
16767            devPtr: *const ::core::ffi::c_void,
16768            count: usize,
16769            advice: cudaMemoryAdvise,
16770            location: cudaMemLocation,
16771        ) -> cudaError_t,
16772        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16773        pub cudaMemDiscardAndPrefetchBatchAsync: unsafe extern "C" fn(
16774            dptrs: *mut *mut ::core::ffi::c_void,
16775            sizes: *mut usize,
16776            count: usize,
16777            prefetchLocs: *mut cudaMemLocation,
16778            prefetchLocIdxs: *mut usize,
16779            numPrefetchLocs: usize,
16780            flags: ::core::ffi::c_ulonglong,
16781            stream: cudaStream_t,
16782        ) -> cudaError_t,
16783        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16784        pub cudaMemDiscardBatchAsync: unsafe extern "C" fn(
16785            dptrs: *mut *mut ::core::ffi::c_void,
16786            sizes: *mut usize,
16787            count: usize,
16788            flags: ::core::ffi::c_ulonglong,
16789            stream: cudaStream_t,
16790        ) -> cudaError_t,
16791        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16792        pub cudaMemGetDefaultMemPool: unsafe extern "C" fn(
16793            memPool: *mut cudaMemPool_t,
16794            location: *mut cudaMemLocation,
16795            type_: cudaMemAllocationType,
16796        ) -> cudaError_t,
16797        pub cudaMemGetInfo:
16798            unsafe extern "C" fn(free: *mut usize, total: *mut usize) -> cudaError_t,
16799        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16800        pub cudaMemGetMemPool: unsafe extern "C" fn(
16801            memPool: *mut cudaMemPool_t,
16802            location: *mut cudaMemLocation,
16803            type_: cudaMemAllocationType,
16804        ) -> cudaError_t,
16805        pub cudaMemPoolCreate: unsafe extern "C" fn(
16806            memPool: *mut cudaMemPool_t,
16807            poolProps: *const cudaMemPoolProps,
16808        ) -> cudaError_t,
16809        pub cudaMemPoolDestroy: unsafe extern "C" fn(memPool: cudaMemPool_t) -> cudaError_t,
16810        pub cudaMemPoolExportPointer: unsafe extern "C" fn(
16811            exportData: *mut cudaMemPoolPtrExportData,
16812            ptr: *mut ::core::ffi::c_void,
16813        ) -> cudaError_t,
16814        pub cudaMemPoolExportToShareableHandle: unsafe extern "C" fn(
16815            shareableHandle: *mut ::core::ffi::c_void,
16816            memPool: cudaMemPool_t,
16817            handleType: cudaMemAllocationHandleType,
16818            flags: ::core::ffi::c_uint,
16819        ) -> cudaError_t,
16820        pub cudaMemPoolGetAccess: unsafe extern "C" fn(
16821            flags: *mut cudaMemAccessFlags,
16822            memPool: cudaMemPool_t,
16823            location: *mut cudaMemLocation,
16824        ) -> cudaError_t,
16825        pub cudaMemPoolGetAttribute: unsafe extern "C" fn(
16826            memPool: cudaMemPool_t,
16827            attr: cudaMemPoolAttr,
16828            value: *mut ::core::ffi::c_void,
16829        ) -> cudaError_t,
16830        pub cudaMemPoolImportFromShareableHandle: unsafe extern "C" fn(
16831            memPool: *mut cudaMemPool_t,
16832            shareableHandle: *mut ::core::ffi::c_void,
16833            handleType: cudaMemAllocationHandleType,
16834            flags: ::core::ffi::c_uint,
16835        ) -> cudaError_t,
16836        pub cudaMemPoolImportPointer: unsafe extern "C" fn(
16837            ptr: *mut *mut ::core::ffi::c_void,
16838            memPool: cudaMemPool_t,
16839            exportData: *mut cudaMemPoolPtrExportData,
16840        ) -> cudaError_t,
16841        pub cudaMemPoolSetAccess: unsafe extern "C" fn(
16842            memPool: cudaMemPool_t,
16843            descList: *const cudaMemAccessDesc,
16844            count: usize,
16845        ) -> cudaError_t,
16846        pub cudaMemPoolSetAttribute: unsafe extern "C" fn(
16847            memPool: cudaMemPool_t,
16848            attr: cudaMemPoolAttr,
16849            value: *mut ::core::ffi::c_void,
16850        ) -> cudaError_t,
16851        pub cudaMemPoolTrimTo:
16852            unsafe extern "C" fn(memPool: cudaMemPool_t, minBytesToKeep: usize) -> cudaError_t,
16853        #[cfg(any(
16854            feature = "cuda-11040",
16855            feature = "cuda-11050",
16856            feature = "cuda-11060",
16857            feature = "cuda-11070",
16858            feature = "cuda-11080",
16859            feature = "cuda-12000",
16860            feature = "cuda-12010",
16861            feature = "cuda-12020",
16862            feature = "cuda-12030",
16863            feature = "cuda-12040",
16864            feature = "cuda-12050",
16865            feature = "cuda-12060",
16866            feature = "cuda-12080",
16867            feature = "cuda-12090"
16868        ))]
16869        pub cudaMemPrefetchAsync: unsafe extern "C" fn(
16870            devPtr: *const ::core::ffi::c_void,
16871            count: usize,
16872            dstDevice: ::core::ffi::c_int,
16873            stream: cudaStream_t,
16874        ) -> cudaError_t,
16875        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16876        pub cudaMemPrefetchAsync: unsafe extern "C" fn(
16877            devPtr: *const ::core::ffi::c_void,
16878            count: usize,
16879            location: cudaMemLocation,
16880            flags: ::core::ffi::c_uint,
16881            stream: cudaStream_t,
16882        ) -> cudaError_t,
16883        #[cfg(any(
16884            feature = "cuda-12020",
16885            feature = "cuda-12030",
16886            feature = "cuda-12040",
16887            feature = "cuda-12050",
16888            feature = "cuda-12060",
16889            feature = "cuda-12080",
16890            feature = "cuda-12090"
16891        ))]
16892        pub cudaMemPrefetchAsync_v2: unsafe extern "C" fn(
16893            devPtr: *const ::core::ffi::c_void,
16894            count: usize,
16895            location: cudaMemLocation,
16896            flags: ::core::ffi::c_uint,
16897            stream: cudaStream_t,
16898        ) -> cudaError_t,
16899        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16900        pub cudaMemPrefetchBatchAsync: unsafe extern "C" fn(
16901            dptrs: *mut *mut ::core::ffi::c_void,
16902            sizes: *mut usize,
16903            count: usize,
16904            prefetchLocs: *mut cudaMemLocation,
16905            prefetchLocIdxs: *mut usize,
16906            numPrefetchLocs: usize,
16907            flags: ::core::ffi::c_ulonglong,
16908            stream: cudaStream_t,
16909        ) -> cudaError_t,
16910        pub cudaMemRangeGetAttribute: unsafe extern "C" fn(
16911            data: *mut ::core::ffi::c_void,
16912            dataSize: usize,
16913            attribute: cudaMemRangeAttribute,
16914            devPtr: *const ::core::ffi::c_void,
16915            count: usize,
16916        ) -> cudaError_t,
16917        pub cudaMemRangeGetAttributes: unsafe extern "C" fn(
16918            data: *mut *mut ::core::ffi::c_void,
16919            dataSizes: *mut usize,
16920            attributes: *mut cudaMemRangeAttribute,
16921            numAttributes: usize,
16922            devPtr: *const ::core::ffi::c_void,
16923            count: usize,
16924        ) -> cudaError_t,
16925        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
16926        pub cudaMemSetMemPool: unsafe extern "C" fn(
16927            location: *mut cudaMemLocation,
16928            type_: cudaMemAllocationType,
16929            memPool: cudaMemPool_t,
16930        ) -> cudaError_t,
16931        pub cudaMemcpy: unsafe extern "C" fn(
16932            dst: *mut ::core::ffi::c_void,
16933            src: *const ::core::ffi::c_void,
16934            count: usize,
16935            kind: cudaMemcpyKind,
16936        ) -> cudaError_t,
16937        pub cudaMemcpy2D: unsafe extern "C" fn(
16938            dst: *mut ::core::ffi::c_void,
16939            dpitch: usize,
16940            src: *const ::core::ffi::c_void,
16941            spitch: usize,
16942            width: usize,
16943            height: usize,
16944            kind: cudaMemcpyKind,
16945        ) -> cudaError_t,
16946        pub cudaMemcpy2DArrayToArray: unsafe extern "C" fn(
16947            dst: cudaArray_t,
16948            wOffsetDst: usize,
16949            hOffsetDst: usize,
16950            src: cudaArray_const_t,
16951            wOffsetSrc: usize,
16952            hOffsetSrc: usize,
16953            width: usize,
16954            height: usize,
16955            kind: cudaMemcpyKind,
16956        ) -> cudaError_t,
16957        pub cudaMemcpy2DAsync: unsafe extern "C" fn(
16958            dst: *mut ::core::ffi::c_void,
16959            dpitch: usize,
16960            src: *const ::core::ffi::c_void,
16961            spitch: usize,
16962            width: usize,
16963            height: usize,
16964            kind: cudaMemcpyKind,
16965            stream: cudaStream_t,
16966        ) -> cudaError_t,
16967        pub cudaMemcpy2DFromArray: unsafe extern "C" fn(
16968            dst: *mut ::core::ffi::c_void,
16969            dpitch: usize,
16970            src: cudaArray_const_t,
16971            wOffset: usize,
16972            hOffset: usize,
16973            width: usize,
16974            height: usize,
16975            kind: cudaMemcpyKind,
16976        ) -> cudaError_t,
16977        pub cudaMemcpy2DFromArrayAsync: unsafe extern "C" fn(
16978            dst: *mut ::core::ffi::c_void,
16979            dpitch: usize,
16980            src: cudaArray_const_t,
16981            wOffset: usize,
16982            hOffset: usize,
16983            width: usize,
16984            height: usize,
16985            kind: cudaMemcpyKind,
16986            stream: cudaStream_t,
16987        ) -> cudaError_t,
16988        pub cudaMemcpy2DToArray: unsafe extern "C" fn(
16989            dst: cudaArray_t,
16990            wOffset: usize,
16991            hOffset: usize,
16992            src: *const ::core::ffi::c_void,
16993            spitch: usize,
16994            width: usize,
16995            height: usize,
16996            kind: cudaMemcpyKind,
16997        ) -> cudaError_t,
16998        pub cudaMemcpy2DToArrayAsync: unsafe extern "C" fn(
16999            dst: cudaArray_t,
17000            wOffset: usize,
17001            hOffset: usize,
17002            src: *const ::core::ffi::c_void,
17003            spitch: usize,
17004            width: usize,
17005            height: usize,
17006            kind: cudaMemcpyKind,
17007            stream: cudaStream_t,
17008        ) -> cudaError_t,
17009        pub cudaMemcpy3D: unsafe extern "C" fn(p: *const cudaMemcpy3DParms) -> cudaError_t,
17010        pub cudaMemcpy3DAsync:
17011            unsafe extern "C" fn(p: *const cudaMemcpy3DParms, stream: cudaStream_t) -> cudaError_t,
17012        #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
17013        pub cudaMemcpy3DBatchAsync: unsafe extern "C" fn(
17014            numOps: usize,
17015            opList: *mut cudaMemcpy3DBatchOp,
17016            failIdx: *mut usize,
17017            flags: ::core::ffi::c_ulonglong,
17018            stream: cudaStream_t,
17019        ) -> cudaError_t,
17020        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
17021        pub cudaMemcpy3DBatchAsync: unsafe extern "C" fn(
17022            numOps: usize,
17023            opList: *mut cudaMemcpy3DBatchOp,
17024            flags: ::core::ffi::c_ulonglong,
17025            stream: cudaStream_t,
17026        ) -> cudaError_t,
17027        pub cudaMemcpy3DPeer: unsafe extern "C" fn(p: *const cudaMemcpy3DPeerParms) -> cudaError_t,
17028        pub cudaMemcpy3DPeerAsync: unsafe extern "C" fn(
17029            p: *const cudaMemcpy3DPeerParms,
17030            stream: cudaStream_t,
17031        ) -> cudaError_t,
17032        #[cfg(any(feature = "cuda-13020"))]
17033        pub cudaMemcpy3DWithAttributesAsync: unsafe extern "C" fn(
17034            op: *mut cudaMemcpy3DBatchOp,
17035            flags: ::core::ffi::c_ulonglong,
17036            stream: cudaStream_t,
17037        ) -> cudaError_t,
17038        pub cudaMemcpyArrayToArray: unsafe extern "C" fn(
17039            dst: cudaArray_t,
17040            wOffsetDst: usize,
17041            hOffsetDst: usize,
17042            src: cudaArray_const_t,
17043            wOffsetSrc: usize,
17044            hOffsetSrc: usize,
17045            count: usize,
17046            kind: cudaMemcpyKind,
17047        ) -> cudaError_t,
17048        pub cudaMemcpyAsync: unsafe extern "C" fn(
17049            dst: *mut ::core::ffi::c_void,
17050            src: *const ::core::ffi::c_void,
17051            count: usize,
17052            kind: cudaMemcpyKind,
17053            stream: cudaStream_t,
17054        ) -> cudaError_t,
17055        #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
17056        pub cudaMemcpyBatchAsync: unsafe extern "C" fn(
17057            dsts: *mut *mut ::core::ffi::c_void,
17058            srcs: *mut *mut ::core::ffi::c_void,
17059            sizes: *mut usize,
17060            count: usize,
17061            attrs: *mut cudaMemcpyAttributes,
17062            attrsIdxs: *mut usize,
17063            numAttrs: usize,
17064            failIdx: *mut usize,
17065            stream: cudaStream_t,
17066        ) -> cudaError_t,
17067        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
17068        pub cudaMemcpyBatchAsync: unsafe extern "C" fn(
17069            dsts: *const *mut ::core::ffi::c_void,
17070            srcs: *const *const ::core::ffi::c_void,
17071            sizes: *const usize,
17072            count: usize,
17073            attrs: *mut cudaMemcpyAttributes,
17074            attrsIdxs: *mut usize,
17075            numAttrs: usize,
17076            stream: cudaStream_t,
17077        ) -> cudaError_t,
17078        pub cudaMemcpyFromArray: unsafe extern "C" fn(
17079            dst: *mut ::core::ffi::c_void,
17080            src: cudaArray_const_t,
17081            wOffset: usize,
17082            hOffset: usize,
17083            count: usize,
17084            kind: cudaMemcpyKind,
17085        ) -> cudaError_t,
17086        pub cudaMemcpyFromArrayAsync: unsafe extern "C" fn(
17087            dst: *mut ::core::ffi::c_void,
17088            src: cudaArray_const_t,
17089            wOffset: usize,
17090            hOffset: usize,
17091            count: usize,
17092            kind: cudaMemcpyKind,
17093            stream: cudaStream_t,
17094        ) -> cudaError_t,
17095        pub cudaMemcpyFromSymbol: unsafe extern "C" fn(
17096            dst: *mut ::core::ffi::c_void,
17097            symbol: *const ::core::ffi::c_void,
17098            count: usize,
17099            offset: usize,
17100            kind: cudaMemcpyKind,
17101        ) -> cudaError_t,
17102        pub cudaMemcpyFromSymbolAsync: unsafe extern "C" fn(
17103            dst: *mut ::core::ffi::c_void,
17104            symbol: *const ::core::ffi::c_void,
17105            count: usize,
17106            offset: usize,
17107            kind: cudaMemcpyKind,
17108            stream: cudaStream_t,
17109        ) -> cudaError_t,
17110        pub cudaMemcpyPeer: unsafe extern "C" fn(
17111            dst: *mut ::core::ffi::c_void,
17112            dstDevice: ::core::ffi::c_int,
17113            src: *const ::core::ffi::c_void,
17114            srcDevice: ::core::ffi::c_int,
17115            count: usize,
17116        ) -> cudaError_t,
17117        pub cudaMemcpyPeerAsync: unsafe extern "C" fn(
17118            dst: *mut ::core::ffi::c_void,
17119            dstDevice: ::core::ffi::c_int,
17120            src: *const ::core::ffi::c_void,
17121            srcDevice: ::core::ffi::c_int,
17122            count: usize,
17123            stream: cudaStream_t,
17124        ) -> cudaError_t,
17125        pub cudaMemcpyToArray: unsafe extern "C" fn(
17126            dst: cudaArray_t,
17127            wOffset: usize,
17128            hOffset: usize,
17129            src: *const ::core::ffi::c_void,
17130            count: usize,
17131            kind: cudaMemcpyKind,
17132        ) -> cudaError_t,
17133        pub cudaMemcpyToArrayAsync: unsafe extern "C" fn(
17134            dst: cudaArray_t,
17135            wOffset: usize,
17136            hOffset: usize,
17137            src: *const ::core::ffi::c_void,
17138            count: usize,
17139            kind: cudaMemcpyKind,
17140            stream: cudaStream_t,
17141        ) -> cudaError_t,
17142        pub cudaMemcpyToSymbol: unsafe extern "C" fn(
17143            symbol: *const ::core::ffi::c_void,
17144            src: *const ::core::ffi::c_void,
17145            count: usize,
17146            offset: usize,
17147            kind: cudaMemcpyKind,
17148        ) -> cudaError_t,
17149        pub cudaMemcpyToSymbolAsync: unsafe extern "C" fn(
17150            symbol: *const ::core::ffi::c_void,
17151            src: *const ::core::ffi::c_void,
17152            count: usize,
17153            offset: usize,
17154            kind: cudaMemcpyKind,
17155            stream: cudaStream_t,
17156        ) -> cudaError_t,
17157        #[cfg(any(feature = "cuda-13020"))]
17158        pub cudaMemcpyWithAttributesAsync: unsafe extern "C" fn(
17159            dst: *mut ::core::ffi::c_void,
17160            src: *const ::core::ffi::c_void,
17161            size: usize,
17162            attr: *mut cudaMemcpyAttributes,
17163            stream: cudaStream_t,
17164        ) -> cudaError_t,
17165        pub cudaMemset: unsafe extern "C" fn(
17166            devPtr: *mut ::core::ffi::c_void,
17167            value: ::core::ffi::c_int,
17168            count: usize,
17169        ) -> cudaError_t,
17170        pub cudaMemset2D: unsafe extern "C" fn(
17171            devPtr: *mut ::core::ffi::c_void,
17172            pitch: usize,
17173            value: ::core::ffi::c_int,
17174            width: usize,
17175            height: usize,
17176        ) -> cudaError_t,
17177        pub cudaMemset2DAsync: unsafe extern "C" fn(
17178            devPtr: *mut ::core::ffi::c_void,
17179            pitch: usize,
17180            value: ::core::ffi::c_int,
17181            width: usize,
17182            height: usize,
17183            stream: cudaStream_t,
17184        ) -> cudaError_t,
17185        pub cudaMemset3D: unsafe extern "C" fn(
17186            pitchedDevPtr: cudaPitchedPtr,
17187            value: ::core::ffi::c_int,
17188            extent: cudaExtent,
17189        ) -> cudaError_t,
17190        pub cudaMemset3DAsync: unsafe extern "C" fn(
17191            pitchedDevPtr: cudaPitchedPtr,
17192            value: ::core::ffi::c_int,
17193            extent: cudaExtent,
17194            stream: cudaStream_t,
17195        ) -> cudaError_t,
17196        pub cudaMemsetAsync: unsafe extern "C" fn(
17197            devPtr: *mut ::core::ffi::c_void,
17198            value: ::core::ffi::c_int,
17199            count: usize,
17200            stream: cudaStream_t,
17201        ) -> cudaError_t,
17202        #[cfg(any(
17203            feature = "cuda-11060",
17204            feature = "cuda-11070",
17205            feature = "cuda-11080",
17206            feature = "cuda-12000",
17207            feature = "cuda-12010",
17208            feature = "cuda-12020",
17209            feature = "cuda-12030",
17210            feature = "cuda-12040",
17211            feature = "cuda-12050",
17212            feature = "cuda-12060",
17213            feature = "cuda-12080",
17214            feature = "cuda-12090",
17215            feature = "cuda-13000",
17216            feature = "cuda-13010",
17217            feature = "cuda-13020"
17218        ))]
17219        pub cudaMipmappedArrayGetMemoryRequirements: unsafe extern "C" fn(
17220            memoryRequirements: *mut cudaArrayMemoryRequirements,
17221            mipmap: cudaMipmappedArray_t,
17222            device: ::core::ffi::c_int,
17223        ) -> cudaError_t,
17224        pub cudaMipmappedArrayGetSparseProperties: unsafe extern "C" fn(
17225            sparseProperties: *mut cudaArraySparseProperties,
17226            mipmap: cudaMipmappedArray_t,
17227        ) -> cudaError_t,
17228        pub cudaOccupancyAvailableDynamicSMemPerBlock: unsafe extern "C" fn(
17229            dynamicSmemSize: *mut usize,
17230            func: *const ::core::ffi::c_void,
17231            numBlocks: ::core::ffi::c_int,
17232            blockSize: ::core::ffi::c_int,
17233        ) -> cudaError_t,
17234        pub cudaOccupancyMaxActiveBlocksPerMultiprocessor: unsafe extern "C" fn(
17235            numBlocks: *mut ::core::ffi::c_int,
17236            func: *const ::core::ffi::c_void,
17237            blockSize: ::core::ffi::c_int,
17238            dynamicSMemSize: usize,
17239        )
17240            -> cudaError_t,
17241        pub cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags:
17242            unsafe extern "C" fn(
17243                numBlocks: *mut ::core::ffi::c_int,
17244                func: *const ::core::ffi::c_void,
17245                blockSize: ::core::ffi::c_int,
17246                dynamicSMemSize: usize,
17247                flags: ::core::ffi::c_uint,
17248            ) -> cudaError_t,
17249        #[cfg(any(
17250            feature = "cuda-11080",
17251            feature = "cuda-12000",
17252            feature = "cuda-12010",
17253            feature = "cuda-12020",
17254            feature = "cuda-12030",
17255            feature = "cuda-12040",
17256            feature = "cuda-12050",
17257            feature = "cuda-12060",
17258            feature = "cuda-12080",
17259            feature = "cuda-12090",
17260            feature = "cuda-13000",
17261            feature = "cuda-13010",
17262            feature = "cuda-13020"
17263        ))]
17264        pub cudaOccupancyMaxActiveClusters: unsafe extern "C" fn(
17265            numClusters: *mut ::core::ffi::c_int,
17266            func: *const ::core::ffi::c_void,
17267            launchConfig: *const cudaLaunchConfig_t,
17268        ) -> cudaError_t,
17269        #[cfg(any(
17270            feature = "cuda-11080",
17271            feature = "cuda-12000",
17272            feature = "cuda-12010",
17273            feature = "cuda-12020",
17274            feature = "cuda-12030",
17275            feature = "cuda-12040",
17276            feature = "cuda-12050",
17277            feature = "cuda-12060",
17278            feature = "cuda-12080",
17279            feature = "cuda-12090",
17280            feature = "cuda-13000",
17281            feature = "cuda-13010",
17282            feature = "cuda-13020"
17283        ))]
17284        pub cudaOccupancyMaxPotentialClusterSize: unsafe extern "C" fn(
17285            clusterSize: *mut ::core::ffi::c_int,
17286            func: *const ::core::ffi::c_void,
17287            launchConfig: *const cudaLaunchConfig_t,
17288        ) -> cudaError_t,
17289        pub cudaPeekAtLastError: unsafe extern "C" fn() -> cudaError_t,
17290        pub cudaPointerGetAttributes: unsafe extern "C" fn(
17291            attributes: *mut cudaPointerAttributes,
17292            ptr: *const ::core::ffi::c_void,
17293        ) -> cudaError_t,
17294        pub cudaProfilerStop: unsafe extern "C" fn() -> cudaError_t,
17295        pub cudaRuntimeGetVersion:
17296            unsafe extern "C" fn(runtimeVersion: *mut ::core::ffi::c_int) -> cudaError_t,
17297        pub cudaSetDevice: unsafe extern "C" fn(device: ::core::ffi::c_int) -> cudaError_t,
17298        pub cudaSetDeviceFlags: unsafe extern "C" fn(flags: ::core::ffi::c_uint) -> cudaError_t,
17299        #[cfg(any(
17300            feature = "cuda-11040",
17301            feature = "cuda-11050",
17302            feature = "cuda-11060",
17303            feature = "cuda-11070",
17304            feature = "cuda-11080",
17305            feature = "cuda-12000",
17306            feature = "cuda-12010",
17307            feature = "cuda-12020",
17308            feature = "cuda-12030",
17309            feature = "cuda-12040",
17310            feature = "cuda-12050",
17311            feature = "cuda-12060",
17312            feature = "cuda-12080",
17313            feature = "cuda-12090"
17314        ))]
17315        pub cudaSetDoubleForDevice: unsafe extern "C" fn(d: *mut f64) -> cudaError_t,
17316        #[cfg(any(
17317            feature = "cuda-11040",
17318            feature = "cuda-11050",
17319            feature = "cuda-11060",
17320            feature = "cuda-11070",
17321            feature = "cuda-11080",
17322            feature = "cuda-12000",
17323            feature = "cuda-12010",
17324            feature = "cuda-12020",
17325            feature = "cuda-12030",
17326            feature = "cuda-12040",
17327            feature = "cuda-12050",
17328            feature = "cuda-12060",
17329            feature = "cuda-12080",
17330            feature = "cuda-12090"
17331        ))]
17332        pub cudaSetDoubleForHost: unsafe extern "C" fn(d: *mut f64) -> cudaError_t,
17333        pub cudaSetValidDevices: unsafe extern "C" fn(
17334            device_arr: *mut ::core::ffi::c_int,
17335            len: ::core::ffi::c_int,
17336        ) -> cudaError_t,
17337        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
17338        pub cudaSignalExternalSemaphoresAsync: unsafe extern "C" fn(
17339            extSemArray: *const cudaExternalSemaphore_t,
17340            paramsArray: *const cudaExternalSemaphoreSignalParams,
17341            numExtSems: ::core::ffi::c_uint,
17342            stream: cudaStream_t,
17343        ) -> cudaError_t,
17344        #[cfg(any(
17345            feature = "cuda-11040",
17346            feature = "cuda-11050",
17347            feature = "cuda-11060",
17348            feature = "cuda-11070",
17349            feature = "cuda-11080",
17350            feature = "cuda-12000",
17351            feature = "cuda-12010",
17352            feature = "cuda-12020",
17353            feature = "cuda-12030",
17354            feature = "cuda-12040",
17355            feature = "cuda-12050",
17356            feature = "cuda-12060",
17357            feature = "cuda-12080",
17358            feature = "cuda-12090"
17359        ))]
17360        pub cudaSignalExternalSemaphoresAsync_v2: unsafe extern "C" fn(
17361            extSemArray: *const cudaExternalSemaphore_t,
17362            paramsArray: *const cudaExternalSemaphoreSignalParams,
17363            numExtSems: ::core::ffi::c_uint,
17364            stream: cudaStream_t,
17365        ) -> cudaError_t,
17366        pub cudaStreamAddCallback: unsafe extern "C" fn(
17367            stream: cudaStream_t,
17368            callback: cudaStreamCallback_t,
17369            userData: *mut ::core::ffi::c_void,
17370            flags: ::core::ffi::c_uint,
17371        ) -> cudaError_t,
17372        pub cudaStreamAttachMemAsync: unsafe extern "C" fn(
17373            stream: cudaStream_t,
17374            devPtr: *mut ::core::ffi::c_void,
17375            length: usize,
17376            flags: ::core::ffi::c_uint,
17377        ) -> cudaError_t,
17378        pub cudaStreamBeginCapture:
17379            unsafe extern "C" fn(stream: cudaStream_t, mode: cudaStreamCaptureMode) -> cudaError_t,
17380        #[cfg(any(
17381            feature = "cuda-12030",
17382            feature = "cuda-12040",
17383            feature = "cuda-12050",
17384            feature = "cuda-12060",
17385            feature = "cuda-12080",
17386            feature = "cuda-12090",
17387            feature = "cuda-13000",
17388            feature = "cuda-13010",
17389            feature = "cuda-13020"
17390        ))]
17391        pub cudaStreamBeginCaptureToGraph: unsafe extern "C" fn(
17392            stream: cudaStream_t,
17393            graph: cudaGraph_t,
17394            dependencies: *const cudaGraphNode_t,
17395            dependencyData: *const cudaGraphEdgeData,
17396            numDependencies: usize,
17397            mode: cudaStreamCaptureMode,
17398        ) -> cudaError_t,
17399        pub cudaStreamCopyAttributes:
17400            unsafe extern "C" fn(dst: cudaStream_t, src: cudaStream_t) -> cudaError_t,
17401        pub cudaStreamCreate: unsafe extern "C" fn(pStream: *mut cudaStream_t) -> cudaError_t,
17402        pub cudaStreamCreateWithFlags: unsafe extern "C" fn(
17403            pStream: *mut cudaStream_t,
17404            flags: ::core::ffi::c_uint,
17405        ) -> cudaError_t,
17406        pub cudaStreamCreateWithPriority: unsafe extern "C" fn(
17407            pStream: *mut cudaStream_t,
17408            flags: ::core::ffi::c_uint,
17409            priority: ::core::ffi::c_int,
17410        ) -> cudaError_t,
17411        pub cudaStreamDestroy: unsafe extern "C" fn(stream: cudaStream_t) -> cudaError_t,
17412        pub cudaStreamEndCapture:
17413            unsafe extern "C" fn(stream: cudaStream_t, pGraph: *mut cudaGraph_t) -> cudaError_t,
17414        #[cfg(any(
17415            feature = "cuda-11040",
17416            feature = "cuda-11050",
17417            feature = "cuda-11060",
17418            feature = "cuda-11070"
17419        ))]
17420        pub cudaStreamGetAttribute: unsafe extern "C" fn(
17421            hStream: cudaStream_t,
17422            attr: cudaStreamAttrID,
17423            value_out: *mut cudaStreamAttrValue,
17424        ) -> cudaError_t,
17425        #[cfg(any(
17426            feature = "cuda-11080",
17427            feature = "cuda-12000",
17428            feature = "cuda-12010",
17429            feature = "cuda-12020",
17430            feature = "cuda-12030",
17431            feature = "cuda-12040",
17432            feature = "cuda-12050",
17433            feature = "cuda-12060",
17434            feature = "cuda-12080",
17435            feature = "cuda-12090",
17436            feature = "cuda-13000",
17437            feature = "cuda-13010",
17438            feature = "cuda-13020"
17439        ))]
17440        pub cudaStreamGetAttribute: unsafe extern "C" fn(
17441            hStream: cudaStream_t,
17442            attr: cudaLaunchAttributeID,
17443            value_out: *mut cudaLaunchAttributeValue,
17444        ) -> cudaError_t,
17445        #[cfg(any(
17446            feature = "cuda-11040",
17447            feature = "cuda-11050",
17448            feature = "cuda-11060",
17449            feature = "cuda-11070",
17450            feature = "cuda-11080"
17451        ))]
17452        pub cudaStreamGetCaptureInfo: unsafe extern "C" fn(
17453            stream: cudaStream_t,
17454            pCaptureStatus: *mut cudaStreamCaptureStatus,
17455            pId: *mut ::core::ffi::c_ulonglong,
17456        ) -> cudaError_t,
17457        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
17458        pub cudaStreamGetCaptureInfo: unsafe extern "C" fn(
17459            stream: cudaStream_t,
17460            captureStatus_out: *mut cudaStreamCaptureStatus,
17461            id_out: *mut ::core::ffi::c_ulonglong,
17462            graph_out: *mut cudaGraph_t,
17463            dependencies_out: *mut *const cudaGraphNode_t,
17464            edgeData_out: *mut *const cudaGraphEdgeData,
17465            numDependencies_out: *mut usize,
17466        ) -> cudaError_t,
17467        #[cfg(any(
17468            feature = "cuda-11040",
17469            feature = "cuda-11050",
17470            feature = "cuda-11060",
17471            feature = "cuda-11070",
17472            feature = "cuda-11080",
17473            feature = "cuda-12000",
17474            feature = "cuda-12010",
17475            feature = "cuda-12020",
17476            feature = "cuda-12030",
17477            feature = "cuda-12040",
17478            feature = "cuda-12050",
17479            feature = "cuda-12060",
17480            feature = "cuda-12080",
17481            feature = "cuda-12090"
17482        ))]
17483        pub cudaStreamGetCaptureInfo_v2: unsafe extern "C" fn(
17484            stream: cudaStream_t,
17485            captureStatus_out: *mut cudaStreamCaptureStatus,
17486            id_out: *mut ::core::ffi::c_ulonglong,
17487            graph_out: *mut cudaGraph_t,
17488            dependencies_out: *mut *const cudaGraphNode_t,
17489            numDependencies_out: *mut usize,
17490        ) -> cudaError_t,
17491        #[cfg(any(
17492            feature = "cuda-12030",
17493            feature = "cuda-12040",
17494            feature = "cuda-12050",
17495            feature = "cuda-12060",
17496            feature = "cuda-12080",
17497            feature = "cuda-12090"
17498        ))]
17499        pub cudaStreamGetCaptureInfo_v3: unsafe extern "C" fn(
17500            stream: cudaStream_t,
17501            captureStatus_out: *mut cudaStreamCaptureStatus,
17502            id_out: *mut ::core::ffi::c_ulonglong,
17503            graph_out: *mut cudaGraph_t,
17504            dependencies_out: *mut *const cudaGraphNode_t,
17505            edgeData_out: *mut *const cudaGraphEdgeData,
17506            numDependencies_out: *mut usize,
17507        ) -> cudaError_t,
17508        #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
17509        pub cudaStreamGetDevResource: unsafe extern "C" fn(
17510            hStream: cudaStream_t,
17511            resource: *mut cudaDevResource,
17512            type_: cudaDevResourceType,
17513        ) -> cudaError_t,
17514        #[cfg(any(
17515            feature = "cuda-12080",
17516            feature = "cuda-12090",
17517            feature = "cuda-13000",
17518            feature = "cuda-13010",
17519            feature = "cuda-13020"
17520        ))]
17521        pub cudaStreamGetDevice: unsafe extern "C" fn(
17522            hStream: cudaStream_t,
17523            device: *mut ::core::ffi::c_int,
17524        ) -> cudaError_t,
17525        pub cudaStreamGetFlags: unsafe extern "C" fn(
17526            hStream: cudaStream_t,
17527            flags: *mut ::core::ffi::c_uint,
17528        ) -> cudaError_t,
17529        #[cfg(any(
17530            feature = "cuda-12000",
17531            feature = "cuda-12010",
17532            feature = "cuda-12020",
17533            feature = "cuda-12030",
17534            feature = "cuda-12040",
17535            feature = "cuda-12050",
17536            feature = "cuda-12060",
17537            feature = "cuda-12080",
17538            feature = "cuda-12090",
17539            feature = "cuda-13000",
17540            feature = "cuda-13010",
17541            feature = "cuda-13020"
17542        ))]
17543        pub cudaStreamGetId: unsafe extern "C" fn(
17544            hStream: cudaStream_t,
17545            streamId: *mut ::core::ffi::c_ulonglong,
17546        ) -> cudaError_t,
17547        pub cudaStreamGetPriority: unsafe extern "C" fn(
17548            hStream: cudaStream_t,
17549            priority: *mut ::core::ffi::c_int,
17550        ) -> cudaError_t,
17551        pub cudaStreamIsCapturing: unsafe extern "C" fn(
17552            stream: cudaStream_t,
17553            pCaptureStatus: *mut cudaStreamCaptureStatus,
17554        ) -> cudaError_t,
17555        pub cudaStreamQuery: unsafe extern "C" fn(stream: cudaStream_t) -> cudaError_t,
17556        #[cfg(any(
17557            feature = "cuda-11040",
17558            feature = "cuda-11050",
17559            feature = "cuda-11060",
17560            feature = "cuda-11070"
17561        ))]
17562        pub cudaStreamSetAttribute: unsafe extern "C" fn(
17563            hStream: cudaStream_t,
17564            attr: cudaStreamAttrID,
17565            value: *const cudaStreamAttrValue,
17566        ) -> cudaError_t,
17567        #[cfg(any(
17568            feature = "cuda-11080",
17569            feature = "cuda-12000",
17570            feature = "cuda-12010",
17571            feature = "cuda-12020",
17572            feature = "cuda-12030",
17573            feature = "cuda-12040",
17574            feature = "cuda-12050",
17575            feature = "cuda-12060",
17576            feature = "cuda-12080",
17577            feature = "cuda-12090",
17578            feature = "cuda-13000",
17579            feature = "cuda-13010",
17580            feature = "cuda-13020"
17581        ))]
17582        pub cudaStreamSetAttribute: unsafe extern "C" fn(
17583            hStream: cudaStream_t,
17584            attr: cudaLaunchAttributeID,
17585            value: *const cudaLaunchAttributeValue,
17586        ) -> cudaError_t,
17587        pub cudaStreamSynchronize: unsafe extern "C" fn(stream: cudaStream_t) -> cudaError_t,
17588        #[cfg(any(
17589            feature = "cuda-11040",
17590            feature = "cuda-11050",
17591            feature = "cuda-11060",
17592            feature = "cuda-11070",
17593            feature = "cuda-11080",
17594            feature = "cuda-12000",
17595            feature = "cuda-12010",
17596            feature = "cuda-12020",
17597            feature = "cuda-12030",
17598            feature = "cuda-12040",
17599            feature = "cuda-12050",
17600            feature = "cuda-12060",
17601            feature = "cuda-12080",
17602            feature = "cuda-12090"
17603        ))]
17604        pub cudaStreamUpdateCaptureDependencies: unsafe extern "C" fn(
17605            stream: cudaStream_t,
17606            dependencies: *mut cudaGraphNode_t,
17607            numDependencies: usize,
17608            flags: ::core::ffi::c_uint,
17609        ) -> cudaError_t,
17610        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
17611        pub cudaStreamUpdateCaptureDependencies: unsafe extern "C" fn(
17612            stream: cudaStream_t,
17613            dependencies: *mut cudaGraphNode_t,
17614            dependencyData: *const cudaGraphEdgeData,
17615            numDependencies: usize,
17616            flags: ::core::ffi::c_uint,
17617        ) -> cudaError_t,
17618        #[cfg(any(
17619            feature = "cuda-12030",
17620            feature = "cuda-12040",
17621            feature = "cuda-12050",
17622            feature = "cuda-12060",
17623            feature = "cuda-12080",
17624            feature = "cuda-12090"
17625        ))]
17626        pub cudaStreamUpdateCaptureDependencies_v2: unsafe extern "C" fn(
17627            stream: cudaStream_t,
17628            dependencies: *mut cudaGraphNode_t,
17629            dependencyData: *const cudaGraphEdgeData,
17630            numDependencies: usize,
17631            flags: ::core::ffi::c_uint,
17632        ) -> cudaError_t,
17633        pub cudaStreamWaitEvent: unsafe extern "C" fn(
17634            stream: cudaStream_t,
17635            event: cudaEvent_t,
17636            flags: ::core::ffi::c_uint,
17637        ) -> cudaError_t,
17638        pub cudaThreadExchangeStreamCaptureMode:
17639            unsafe extern "C" fn(mode: *mut cudaStreamCaptureMode) -> cudaError_t,
17640        #[cfg(any(
17641            feature = "cuda-11040",
17642            feature = "cuda-11050",
17643            feature = "cuda-11060",
17644            feature = "cuda-11070",
17645            feature = "cuda-11080",
17646            feature = "cuda-12000",
17647            feature = "cuda-12010",
17648            feature = "cuda-12020",
17649            feature = "cuda-12030",
17650            feature = "cuda-12040",
17651            feature = "cuda-12050",
17652            feature = "cuda-12060",
17653            feature = "cuda-12080",
17654            feature = "cuda-12090"
17655        ))]
17656        pub cudaThreadExit: unsafe extern "C" fn() -> cudaError_t,
17657        #[cfg(any(
17658            feature = "cuda-11040",
17659            feature = "cuda-11050",
17660            feature = "cuda-11060",
17661            feature = "cuda-11070",
17662            feature = "cuda-11080",
17663            feature = "cuda-12000",
17664            feature = "cuda-12010",
17665            feature = "cuda-12020",
17666            feature = "cuda-12030",
17667            feature = "cuda-12040",
17668            feature = "cuda-12050",
17669            feature = "cuda-12060",
17670            feature = "cuda-12080",
17671            feature = "cuda-12090"
17672        ))]
17673        pub cudaThreadGetCacheConfig:
17674            unsafe extern "C" fn(pCacheConfig: *mut cudaFuncCache) -> cudaError_t,
17675        #[cfg(any(
17676            feature = "cuda-11040",
17677            feature = "cuda-11050",
17678            feature = "cuda-11060",
17679            feature = "cuda-11070",
17680            feature = "cuda-11080",
17681            feature = "cuda-12000",
17682            feature = "cuda-12010",
17683            feature = "cuda-12020",
17684            feature = "cuda-12030",
17685            feature = "cuda-12040",
17686            feature = "cuda-12050",
17687            feature = "cuda-12060",
17688            feature = "cuda-12080",
17689            feature = "cuda-12090"
17690        ))]
17691        pub cudaThreadGetLimit:
17692            unsafe extern "C" fn(pValue: *mut usize, limit: cudaLimit) -> cudaError_t,
17693        #[cfg(any(
17694            feature = "cuda-11040",
17695            feature = "cuda-11050",
17696            feature = "cuda-11060",
17697            feature = "cuda-11070",
17698            feature = "cuda-11080",
17699            feature = "cuda-12000",
17700            feature = "cuda-12010",
17701            feature = "cuda-12020",
17702            feature = "cuda-12030",
17703            feature = "cuda-12040",
17704            feature = "cuda-12050",
17705            feature = "cuda-12060",
17706            feature = "cuda-12080",
17707            feature = "cuda-12090"
17708        ))]
17709        pub cudaThreadSetCacheConfig:
17710            unsafe extern "C" fn(cacheConfig: cudaFuncCache) -> cudaError_t,
17711        #[cfg(any(
17712            feature = "cuda-11040",
17713            feature = "cuda-11050",
17714            feature = "cuda-11060",
17715            feature = "cuda-11070",
17716            feature = "cuda-11080",
17717            feature = "cuda-12000",
17718            feature = "cuda-12010",
17719            feature = "cuda-12020",
17720            feature = "cuda-12030",
17721            feature = "cuda-12040",
17722            feature = "cuda-12050",
17723            feature = "cuda-12060",
17724            feature = "cuda-12080",
17725            feature = "cuda-12090"
17726        ))]
17727        pub cudaThreadSetLimit: unsafe extern "C" fn(limit: cudaLimit, value: usize) -> cudaError_t,
17728        #[cfg(any(
17729            feature = "cuda-11040",
17730            feature = "cuda-11050",
17731            feature = "cuda-11060",
17732            feature = "cuda-11070",
17733            feature = "cuda-11080",
17734            feature = "cuda-12000",
17735            feature = "cuda-12010",
17736            feature = "cuda-12020",
17737            feature = "cuda-12030",
17738            feature = "cuda-12040",
17739            feature = "cuda-12050",
17740            feature = "cuda-12060",
17741            feature = "cuda-12080",
17742            feature = "cuda-12090"
17743        ))]
17744        pub cudaThreadSynchronize: unsafe extern "C" fn() -> cudaError_t,
17745        #[cfg(any(
17746            feature = "cuda-11040",
17747            feature = "cuda-11050",
17748            feature = "cuda-11060",
17749            feature = "cuda-11070",
17750            feature = "cuda-11080"
17751        ))]
17752        pub cudaUnbindTexture: unsafe extern "C" fn(texref: *const textureReference) -> cudaError_t,
17753        pub cudaUserObjectCreate: unsafe extern "C" fn(
17754            object_out: *mut cudaUserObject_t,
17755            ptr: *mut ::core::ffi::c_void,
17756            destroy: cudaHostFn_t,
17757            initialRefcount: ::core::ffi::c_uint,
17758            flags: ::core::ffi::c_uint,
17759        ) -> cudaError_t,
17760        pub cudaUserObjectRelease: unsafe extern "C" fn(
17761            object: cudaUserObject_t,
17762            count: ::core::ffi::c_uint,
17763        ) -> cudaError_t,
17764        pub cudaUserObjectRetain: unsafe extern "C" fn(
17765            object: cudaUserObject_t,
17766            count: ::core::ffi::c_uint,
17767        ) -> cudaError_t,
17768        #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
17769        pub cudaWaitExternalSemaphoresAsync: unsafe extern "C" fn(
17770            extSemArray: *const cudaExternalSemaphore_t,
17771            paramsArray: *const cudaExternalSemaphoreWaitParams,
17772            numExtSems: ::core::ffi::c_uint,
17773            stream: cudaStream_t,
17774        ) -> cudaError_t,
17775        #[cfg(any(
17776            feature = "cuda-11040",
17777            feature = "cuda-11050",
17778            feature = "cuda-11060",
17779            feature = "cuda-11070",
17780            feature = "cuda-11080",
17781            feature = "cuda-12000",
17782            feature = "cuda-12010",
17783            feature = "cuda-12020",
17784            feature = "cuda-12030",
17785            feature = "cuda-12040",
17786            feature = "cuda-12050",
17787            feature = "cuda-12060",
17788            feature = "cuda-12080",
17789            feature = "cuda-12090"
17790        ))]
17791        pub cudaWaitExternalSemaphoresAsync_v2: unsafe extern "C" fn(
17792            extSemArray: *const cudaExternalSemaphore_t,
17793            paramsArray: *const cudaExternalSemaphoreWaitParams,
17794            numExtSems: ::core::ffi::c_uint,
17795            stream: cudaStream_t,
17796        ) -> cudaError_t,
17797    }
17798    impl Lib {
17799        pub unsafe fn new<P>(path: P) -> Result<Self, ::libloading::Error>
17800        where
17801            P: AsRef<::std::ffi::OsStr>,
17802        {
17803            let library = ::libloading::Library::new(path.as_ref())?;
17804            Self::from_library(library)
17805        }
17806        pub unsafe fn from_library<L>(library: L) -> Result<Self, ::libloading::Error>
17807        where
17808            L: Into<::libloading::Library>,
17809        {
17810            let __library = library.into();
17811            let cudaArrayGetInfo = __library
17812                .get(b"cudaArrayGetInfo\0")
17813                .map(|sym| *sym)
17814                .expect("Expected symbol in library");
17815            #[cfg(any(
17816                feature = "cuda-11060",
17817                feature = "cuda-11070",
17818                feature = "cuda-11080",
17819                feature = "cuda-12000",
17820                feature = "cuda-12010",
17821                feature = "cuda-12020",
17822                feature = "cuda-12030",
17823                feature = "cuda-12040",
17824                feature = "cuda-12050",
17825                feature = "cuda-12060",
17826                feature = "cuda-12080",
17827                feature = "cuda-12090",
17828                feature = "cuda-13000",
17829                feature = "cuda-13010",
17830                feature = "cuda-13020"
17831            ))]
17832            let cudaArrayGetMemoryRequirements = __library
17833                .get(b"cudaArrayGetMemoryRequirements\0")
17834                .map(|sym| *sym)
17835                .expect("Expected symbol in library");
17836            let cudaArrayGetPlane = __library
17837                .get(b"cudaArrayGetPlane\0")
17838                .map(|sym| *sym)
17839                .expect("Expected symbol in library");
17840            let cudaArrayGetSparseProperties = __library
17841                .get(b"cudaArrayGetSparseProperties\0")
17842                .map(|sym| *sym)
17843                .expect("Expected symbol in library");
17844            #[cfg(any(
17845                feature = "cuda-11040",
17846                feature = "cuda-11050",
17847                feature = "cuda-11060",
17848                feature = "cuda-11070",
17849                feature = "cuda-11080"
17850            ))]
17851            let cudaBindSurfaceToArray = __library
17852                .get(b"cudaBindSurfaceToArray\0")
17853                .map(|sym| *sym)
17854                .expect("Expected symbol in library");
17855            #[cfg(any(
17856                feature = "cuda-11040",
17857                feature = "cuda-11050",
17858                feature = "cuda-11060",
17859                feature = "cuda-11070",
17860                feature = "cuda-11080"
17861            ))]
17862            let cudaBindTexture = __library
17863                .get(b"cudaBindTexture\0")
17864                .map(|sym| *sym)
17865                .expect("Expected symbol in library");
17866            #[cfg(any(
17867                feature = "cuda-11040",
17868                feature = "cuda-11050",
17869                feature = "cuda-11060",
17870                feature = "cuda-11070",
17871                feature = "cuda-11080"
17872            ))]
17873            let cudaBindTexture2D = __library
17874                .get(b"cudaBindTexture2D\0")
17875                .map(|sym| *sym)
17876                .expect("Expected symbol in library");
17877            #[cfg(any(
17878                feature = "cuda-11040",
17879                feature = "cuda-11050",
17880                feature = "cuda-11060",
17881                feature = "cuda-11070",
17882                feature = "cuda-11080"
17883            ))]
17884            let cudaBindTextureToArray = __library
17885                .get(b"cudaBindTextureToArray\0")
17886                .map(|sym| *sym)
17887                .expect("Expected symbol in library");
17888            #[cfg(any(
17889                feature = "cuda-11040",
17890                feature = "cuda-11050",
17891                feature = "cuda-11060",
17892                feature = "cuda-11070",
17893                feature = "cuda-11080"
17894            ))]
17895            let cudaBindTextureToMipmappedArray = __library
17896                .get(b"cudaBindTextureToMipmappedArray\0")
17897                .map(|sym| *sym)
17898                .expect("Expected symbol in library");
17899            let cudaChooseDevice = __library
17900                .get(b"cudaChooseDevice\0")
17901                .map(|sym| *sym)
17902                .expect("Expected symbol in library");
17903            let cudaCreateChannelDesc = __library
17904                .get(b"cudaCreateChannelDesc\0")
17905                .map(|sym| *sym)
17906                .expect("Expected symbol in library");
17907            let cudaCreateSurfaceObject = __library
17908                .get(b"cudaCreateSurfaceObject\0")
17909                .map(|sym| *sym)
17910                .expect("Expected symbol in library");
17911            let cudaCreateTextureObject = __library
17912                .get(b"cudaCreateTextureObject\0")
17913                .map(|sym| *sym)
17914                .expect("Expected symbol in library");
17915            #[cfg(any(feature = "cuda-11080"))]
17916            let cudaCreateTextureObject_v2 = __library
17917                .get(b"cudaCreateTextureObject_v2\0")
17918                .map(|sym| *sym)
17919                .expect("Expected symbol in library");
17920            let cudaCtxResetPersistingL2Cache = __library
17921                .get(b"cudaCtxResetPersistingL2Cache\0")
17922                .map(|sym| *sym)
17923                .expect("Expected symbol in library");
17924            let cudaDestroyExternalMemory = __library
17925                .get(b"cudaDestroyExternalMemory\0")
17926                .map(|sym| *sym)
17927                .expect("Expected symbol in library");
17928            let cudaDestroyExternalSemaphore = __library
17929                .get(b"cudaDestroyExternalSemaphore\0")
17930                .map(|sym| *sym)
17931                .expect("Expected symbol in library");
17932            let cudaDestroySurfaceObject = __library
17933                .get(b"cudaDestroySurfaceObject\0")
17934                .map(|sym| *sym)
17935                .expect("Expected symbol in library");
17936            let cudaDestroyTextureObject = __library
17937                .get(b"cudaDestroyTextureObject\0")
17938                .map(|sym| *sym)
17939                .expect("Expected symbol in library");
17940            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
17941            let cudaDevResourceGenerateDesc = __library
17942                .get(b"cudaDevResourceGenerateDesc\0")
17943                .map(|sym| *sym)
17944                .expect("Expected symbol in library");
17945            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
17946            let cudaDevSmResourceSplit = __library
17947                .get(b"cudaDevSmResourceSplit\0")
17948                .map(|sym| *sym)
17949                .expect("Expected symbol in library");
17950            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
17951            let cudaDevSmResourceSplitByCount = __library
17952                .get(b"cudaDevSmResourceSplitByCount\0")
17953                .map(|sym| *sym)
17954                .expect("Expected symbol in library");
17955            let cudaDeviceCanAccessPeer = __library
17956                .get(b"cudaDeviceCanAccessPeer\0")
17957                .map(|sym| *sym)
17958                .expect("Expected symbol in library");
17959            let cudaDeviceDisablePeerAccess = __library
17960                .get(b"cudaDeviceDisablePeerAccess\0")
17961                .map(|sym| *sym)
17962                .expect("Expected symbol in library");
17963            let cudaDeviceEnablePeerAccess = __library
17964                .get(b"cudaDeviceEnablePeerAccess\0")
17965                .map(|sym| *sym)
17966                .expect("Expected symbol in library");
17967            let cudaDeviceFlushGPUDirectRDMAWrites = __library
17968                .get(b"cudaDeviceFlushGPUDirectRDMAWrites\0")
17969                .map(|sym| *sym)
17970                .expect("Expected symbol in library");
17971            let cudaDeviceGetAttribute = __library
17972                .get(b"cudaDeviceGetAttribute\0")
17973                .map(|sym| *sym)
17974                .expect("Expected symbol in library");
17975            let cudaDeviceGetByPCIBusId = __library
17976                .get(b"cudaDeviceGetByPCIBusId\0")
17977                .map(|sym| *sym)
17978                .expect("Expected symbol in library");
17979            let cudaDeviceGetCacheConfig = __library
17980                .get(b"cudaDeviceGetCacheConfig\0")
17981                .map(|sym| *sym)
17982                .expect("Expected symbol in library");
17983            let cudaDeviceGetDefaultMemPool = __library
17984                .get(b"cudaDeviceGetDefaultMemPool\0")
17985                .map(|sym| *sym)
17986                .expect("Expected symbol in library");
17987            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
17988            let cudaDeviceGetDevResource = __library
17989                .get(b"cudaDeviceGetDevResource\0")
17990                .map(|sym| *sym)
17991                .expect("Expected symbol in library");
17992            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
17993            let cudaDeviceGetExecutionCtx = __library
17994                .get(b"cudaDeviceGetExecutionCtx\0")
17995                .map(|sym| *sym)
17996                .expect("Expected symbol in library");
17997            let cudaDeviceGetGraphMemAttribute = __library
17998                .get(b"cudaDeviceGetGraphMemAttribute\0")
17999                .map(|sym| *sym)
18000                .expect("Expected symbol in library");
18001            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
18002            let cudaDeviceGetHostAtomicCapabilities = __library
18003                .get(b"cudaDeviceGetHostAtomicCapabilities\0")
18004                .map(|sym| *sym)
18005                .expect("Expected symbol in library");
18006            let cudaDeviceGetLimit = __library
18007                .get(b"cudaDeviceGetLimit\0")
18008                .map(|sym| *sym)
18009                .expect("Expected symbol in library");
18010            let cudaDeviceGetMemPool = __library
18011                .get(b"cudaDeviceGetMemPool\0")
18012                .map(|sym| *sym)
18013                .expect("Expected symbol in library");
18014            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
18015            let cudaDeviceGetP2PAtomicCapabilities = __library
18016                .get(b"cudaDeviceGetP2PAtomicCapabilities\0")
18017                .map(|sym| *sym)
18018                .expect("Expected symbol in library");
18019            let cudaDeviceGetP2PAttribute = __library
18020                .get(b"cudaDeviceGetP2PAttribute\0")
18021                .map(|sym| *sym)
18022                .expect("Expected symbol in library");
18023            let cudaDeviceGetPCIBusId = __library
18024                .get(b"cudaDeviceGetPCIBusId\0")
18025                .map(|sym| *sym)
18026                .expect("Expected symbol in library");
18027            let cudaDeviceGetSharedMemConfig = __library
18028                .get(b"cudaDeviceGetSharedMemConfig\0")
18029                .map(|sym| *sym)
18030                .expect("Expected symbol in library");
18031            let cudaDeviceGetStreamPriorityRange = __library
18032                .get(b"cudaDeviceGetStreamPriorityRange\0")
18033                .map(|sym| *sym)
18034                .expect("Expected symbol in library");
18035            let cudaDeviceGetTexture1DLinearMaxWidth = __library
18036                .get(b"cudaDeviceGetTexture1DLinearMaxWidth\0")
18037                .map(|sym| *sym)
18038                .expect("Expected symbol in library");
18039            let cudaDeviceGraphMemTrim = __library
18040                .get(b"cudaDeviceGraphMemTrim\0")
18041                .map(|sym| *sym)
18042                .expect("Expected symbol in library");
18043            #[cfg(any(
18044                feature = "cuda-12040",
18045                feature = "cuda-12050",
18046                feature = "cuda-12060",
18047                feature = "cuda-12080",
18048                feature = "cuda-12090",
18049                feature = "cuda-13000",
18050                feature = "cuda-13010",
18051                feature = "cuda-13020"
18052            ))]
18053            let cudaDeviceRegisterAsyncNotification = __library
18054                .get(b"cudaDeviceRegisterAsyncNotification\0")
18055                .map(|sym| *sym)
18056                .expect("Expected symbol in library");
18057            let cudaDeviceReset = __library
18058                .get(b"cudaDeviceReset\0")
18059                .map(|sym| *sym)
18060                .expect("Expected symbol in library");
18061            let cudaDeviceSetCacheConfig = __library
18062                .get(b"cudaDeviceSetCacheConfig\0")
18063                .map(|sym| *sym)
18064                .expect("Expected symbol in library");
18065            let cudaDeviceSetGraphMemAttribute = __library
18066                .get(b"cudaDeviceSetGraphMemAttribute\0")
18067                .map(|sym| *sym)
18068                .expect("Expected symbol in library");
18069            let cudaDeviceSetLimit = __library
18070                .get(b"cudaDeviceSetLimit\0")
18071                .map(|sym| *sym)
18072                .expect("Expected symbol in library");
18073            let cudaDeviceSetMemPool = __library
18074                .get(b"cudaDeviceSetMemPool\0")
18075                .map(|sym| *sym)
18076                .expect("Expected symbol in library");
18077            let cudaDeviceSetSharedMemConfig = __library
18078                .get(b"cudaDeviceSetSharedMemConfig\0")
18079                .map(|sym| *sym)
18080                .expect("Expected symbol in library");
18081            let cudaDeviceSynchronize = __library
18082                .get(b"cudaDeviceSynchronize\0")
18083                .map(|sym| *sym)
18084                .expect("Expected symbol in library");
18085            #[cfg(any(
18086                feature = "cuda-12040",
18087                feature = "cuda-12050",
18088                feature = "cuda-12060",
18089                feature = "cuda-12080",
18090                feature = "cuda-12090",
18091                feature = "cuda-13000",
18092                feature = "cuda-13010",
18093                feature = "cuda-13020"
18094            ))]
18095            let cudaDeviceUnregisterAsyncNotification = __library
18096                .get(b"cudaDeviceUnregisterAsyncNotification\0")
18097                .map(|sym| *sym)
18098                .expect("Expected symbol in library");
18099            let cudaDriverGetVersion = __library
18100                .get(b"cudaDriverGetVersion\0")
18101                .map(|sym| *sym)
18102                .expect("Expected symbol in library");
18103            let cudaEventCreate = __library
18104                .get(b"cudaEventCreate\0")
18105                .map(|sym| *sym)
18106                .expect("Expected symbol in library");
18107            let cudaEventCreateWithFlags = __library
18108                .get(b"cudaEventCreateWithFlags\0")
18109                .map(|sym| *sym)
18110                .expect("Expected symbol in library");
18111            let cudaEventDestroy = __library
18112                .get(b"cudaEventDestroy\0")
18113                .map(|sym| *sym)
18114                .expect("Expected symbol in library");
18115            let cudaEventElapsedTime = __library
18116                .get(b"cudaEventElapsedTime\0")
18117                .map(|sym| *sym)
18118                .expect("Expected symbol in library");
18119            #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
18120            let cudaEventElapsedTime_v2 = __library
18121                .get(b"cudaEventElapsedTime_v2\0")
18122                .map(|sym| *sym)
18123                .expect("Expected symbol in library");
18124            let cudaEventQuery = __library
18125                .get(b"cudaEventQuery\0")
18126                .map(|sym| *sym)
18127                .expect("Expected symbol in library");
18128            let cudaEventRecord = __library
18129                .get(b"cudaEventRecord\0")
18130                .map(|sym| *sym)
18131                .expect("Expected symbol in library");
18132            let cudaEventRecordWithFlags = __library
18133                .get(b"cudaEventRecordWithFlags\0")
18134                .map(|sym| *sym)
18135                .expect("Expected symbol in library");
18136            let cudaEventSynchronize = __library
18137                .get(b"cudaEventSynchronize\0")
18138                .map(|sym| *sym)
18139                .expect("Expected symbol in library");
18140            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18141            let cudaExecutionCtxDestroy = __library
18142                .get(b"cudaExecutionCtxDestroy\0")
18143                .map(|sym| *sym)
18144                .expect("Expected symbol in library");
18145            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18146            let cudaExecutionCtxGetDevResource = __library
18147                .get(b"cudaExecutionCtxGetDevResource\0")
18148                .map(|sym| *sym)
18149                .expect("Expected symbol in library");
18150            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18151            let cudaExecutionCtxGetDevice = __library
18152                .get(b"cudaExecutionCtxGetDevice\0")
18153                .map(|sym| *sym)
18154                .expect("Expected symbol in library");
18155            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18156            let cudaExecutionCtxGetId = __library
18157                .get(b"cudaExecutionCtxGetId\0")
18158                .map(|sym| *sym)
18159                .expect("Expected symbol in library");
18160            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18161            let cudaExecutionCtxRecordEvent = __library
18162                .get(b"cudaExecutionCtxRecordEvent\0")
18163                .map(|sym| *sym)
18164                .expect("Expected symbol in library");
18165            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18166            let cudaExecutionCtxStreamCreate = __library
18167                .get(b"cudaExecutionCtxStreamCreate\0")
18168                .map(|sym| *sym)
18169                .expect("Expected symbol in library");
18170            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18171            let cudaExecutionCtxSynchronize = __library
18172                .get(b"cudaExecutionCtxSynchronize\0")
18173                .map(|sym| *sym)
18174                .expect("Expected symbol in library");
18175            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18176            let cudaExecutionCtxWaitEvent = __library
18177                .get(b"cudaExecutionCtxWaitEvent\0")
18178                .map(|sym| *sym)
18179                .expect("Expected symbol in library");
18180            let cudaExternalMemoryGetMappedBuffer = __library
18181                .get(b"cudaExternalMemoryGetMappedBuffer\0")
18182                .map(|sym| *sym)
18183                .expect("Expected symbol in library");
18184            let cudaExternalMemoryGetMappedMipmappedArray = __library
18185                .get(b"cudaExternalMemoryGetMappedMipmappedArray\0")
18186                .map(|sym| *sym)
18187                .expect("Expected symbol in library");
18188            let cudaFree = __library
18189                .get(b"cudaFree\0")
18190                .map(|sym| *sym)
18191                .expect("Expected symbol in library");
18192            let cudaFreeArray = __library
18193                .get(b"cudaFreeArray\0")
18194                .map(|sym| *sym)
18195                .expect("Expected symbol in library");
18196            let cudaFreeAsync = __library
18197                .get(b"cudaFreeAsync\0")
18198                .map(|sym| *sym)
18199                .expect("Expected symbol in library");
18200            let cudaFreeHost = __library
18201                .get(b"cudaFreeHost\0")
18202                .map(|sym| *sym)
18203                .expect("Expected symbol in library");
18204            let cudaFreeMipmappedArray = __library
18205                .get(b"cudaFreeMipmappedArray\0")
18206                .map(|sym| *sym)
18207                .expect("Expected symbol in library");
18208            let cudaFuncGetAttributes = __library
18209                .get(b"cudaFuncGetAttributes\0")
18210                .map(|sym| *sym)
18211                .expect("Expected symbol in library");
18212            #[cfg(any(
18213                feature = "cuda-12030",
18214                feature = "cuda-12040",
18215                feature = "cuda-12050",
18216                feature = "cuda-12060",
18217                feature = "cuda-12080",
18218                feature = "cuda-12090",
18219                feature = "cuda-13000",
18220                feature = "cuda-13010",
18221                feature = "cuda-13020"
18222            ))]
18223            let cudaFuncGetName = __library
18224                .get(b"cudaFuncGetName\0")
18225                .map(|sym| *sym)
18226                .expect("Expected symbol in library");
18227            #[cfg(any(feature = "cuda-13020"))]
18228            let cudaFuncGetParamCount = __library
18229                .get(b"cudaFuncGetParamCount\0")
18230                .map(|sym| *sym)
18231                .expect("Expected symbol in library");
18232            #[cfg(any(
18233                feature = "cuda-12040",
18234                feature = "cuda-12050",
18235                feature = "cuda-12060",
18236                feature = "cuda-12080",
18237                feature = "cuda-12090",
18238                feature = "cuda-13000",
18239                feature = "cuda-13010",
18240                feature = "cuda-13020"
18241            ))]
18242            let cudaFuncGetParamInfo = __library
18243                .get(b"cudaFuncGetParamInfo\0")
18244                .map(|sym| *sym)
18245                .expect("Expected symbol in library");
18246            let cudaFuncSetAttribute = __library
18247                .get(b"cudaFuncSetAttribute\0")
18248                .map(|sym| *sym)
18249                .expect("Expected symbol in library");
18250            let cudaFuncSetCacheConfig = __library
18251                .get(b"cudaFuncSetCacheConfig\0")
18252                .map(|sym| *sym)
18253                .expect("Expected symbol in library");
18254            let cudaFuncSetSharedMemConfig = __library
18255                .get(b"cudaFuncSetSharedMemConfig\0")
18256                .map(|sym| *sym)
18257                .expect("Expected symbol in library");
18258            let cudaGetChannelDesc = __library
18259                .get(b"cudaGetChannelDesc\0")
18260                .map(|sym| *sym)
18261                .expect("Expected symbol in library");
18262            let cudaGetDevice = __library
18263                .get(b"cudaGetDevice\0")
18264                .map(|sym| *sym)
18265                .expect("Expected symbol in library");
18266            let cudaGetDeviceCount = __library
18267                .get(b"cudaGetDeviceCount\0")
18268                .map(|sym| *sym)
18269                .expect("Expected symbol in library");
18270            let cudaGetDeviceFlags = __library
18271                .get(b"cudaGetDeviceFlags\0")
18272                .map(|sym| *sym)
18273                .expect("Expected symbol in library");
18274            #[cfg(any(
18275                feature = "cuda-11040",
18276                feature = "cuda-11050",
18277                feature = "cuda-11060",
18278                feature = "cuda-11070",
18279                feature = "cuda-11080",
18280                feature = "cuda-13000",
18281                feature = "cuda-13010",
18282                feature = "cuda-13020"
18283            ))]
18284            let cudaGetDeviceProperties = __library
18285                .get(b"cudaGetDeviceProperties\0")
18286                .map(|sym| *sym)
18287                .expect("Expected symbol in library");
18288            #[cfg(any(
18289                feature = "cuda-12000",
18290                feature = "cuda-12010",
18291                feature = "cuda-12020",
18292                feature = "cuda-12030",
18293                feature = "cuda-12040",
18294                feature = "cuda-12050",
18295                feature = "cuda-12060",
18296                feature = "cuda-12080",
18297                feature = "cuda-12090"
18298            ))]
18299            let cudaGetDeviceProperties_v2 = __library
18300                .get(b"cudaGetDeviceProperties_v2\0")
18301                .map(|sym| *sym)
18302                .expect("Expected symbol in library");
18303            #[cfg(any(
18304                feature = "cuda-11040",
18305                feature = "cuda-11050",
18306                feature = "cuda-11060",
18307                feature = "cuda-11070",
18308                feature = "cuda-11080"
18309            ))]
18310            let cudaGetDriverEntryPoint = __library
18311                .get(b"cudaGetDriverEntryPoint\0")
18312                .map(|sym| *sym)
18313                .expect("Expected symbol in library");
18314            #[cfg(any(
18315                feature = "cuda-12000",
18316                feature = "cuda-12010",
18317                feature = "cuda-12020",
18318                feature = "cuda-12030",
18319                feature = "cuda-12040",
18320                feature = "cuda-12050",
18321                feature = "cuda-12060",
18322                feature = "cuda-12080",
18323                feature = "cuda-12090",
18324                feature = "cuda-13000",
18325                feature = "cuda-13010",
18326                feature = "cuda-13020"
18327            ))]
18328            let cudaGetDriverEntryPoint = __library
18329                .get(b"cudaGetDriverEntryPoint\0")
18330                .map(|sym| *sym)
18331                .expect("Expected symbol in library");
18332            #[cfg(any(
18333                feature = "cuda-12050",
18334                feature = "cuda-12060",
18335                feature = "cuda-12080",
18336                feature = "cuda-12090",
18337                feature = "cuda-13000",
18338                feature = "cuda-13010",
18339                feature = "cuda-13020"
18340            ))]
18341            let cudaGetDriverEntryPointByVersion = __library
18342                .get(b"cudaGetDriverEntryPointByVersion\0")
18343                .map(|sym| *sym)
18344                .expect("Expected symbol in library");
18345            let cudaGetErrorName = __library
18346                .get(b"cudaGetErrorName\0")
18347                .map(|sym| *sym)
18348                .expect("Expected symbol in library");
18349            let cudaGetErrorString = __library
18350                .get(b"cudaGetErrorString\0")
18351                .map(|sym| *sym)
18352                .expect("Expected symbol in library");
18353            let cudaGetExportTable = __library
18354                .get(b"cudaGetExportTable\0")
18355                .map(|sym| *sym)
18356                .expect("Expected symbol in library");
18357            let cudaGetFuncBySymbol = __library
18358                .get(b"cudaGetFuncBySymbol\0")
18359                .map(|sym| *sym)
18360                .expect("Expected symbol in library");
18361            #[cfg(any(
18362                feature = "cuda-12010",
18363                feature = "cuda-12020",
18364                feature = "cuda-12030",
18365                feature = "cuda-12040",
18366                feature = "cuda-12050",
18367                feature = "cuda-12060",
18368                feature = "cuda-12080",
18369                feature = "cuda-12090",
18370                feature = "cuda-13000",
18371                feature = "cuda-13010",
18372                feature = "cuda-13020"
18373            ))]
18374            let cudaGetKernel = __library
18375                .get(b"cudaGetKernel\0")
18376                .map(|sym| *sym)
18377                .expect("Expected symbol in library");
18378            let cudaGetLastError = __library
18379                .get(b"cudaGetLastError\0")
18380                .map(|sym| *sym)
18381                .expect("Expected symbol in library");
18382            let cudaGetMipmappedArrayLevel = __library
18383                .get(b"cudaGetMipmappedArrayLevel\0")
18384                .map(|sym| *sym)
18385                .expect("Expected symbol in library");
18386            let cudaGetSurfaceObjectResourceDesc = __library
18387                .get(b"cudaGetSurfaceObjectResourceDesc\0")
18388                .map(|sym| *sym)
18389                .expect("Expected symbol in library");
18390            #[cfg(any(
18391                feature = "cuda-11040",
18392                feature = "cuda-11050",
18393                feature = "cuda-11060",
18394                feature = "cuda-11070",
18395                feature = "cuda-11080"
18396            ))]
18397            let cudaGetSurfaceReference = __library
18398                .get(b"cudaGetSurfaceReference\0")
18399                .map(|sym| *sym)
18400                .expect("Expected symbol in library");
18401            let cudaGetSymbolAddress = __library
18402                .get(b"cudaGetSymbolAddress\0")
18403                .map(|sym| *sym)
18404                .expect("Expected symbol in library");
18405            let cudaGetSymbolSize = __library
18406                .get(b"cudaGetSymbolSize\0")
18407                .map(|sym| *sym)
18408                .expect("Expected symbol in library");
18409            #[cfg(any(
18410                feature = "cuda-11040",
18411                feature = "cuda-11050",
18412                feature = "cuda-11060",
18413                feature = "cuda-11070",
18414                feature = "cuda-11080"
18415            ))]
18416            let cudaGetTextureAlignmentOffset = __library
18417                .get(b"cudaGetTextureAlignmentOffset\0")
18418                .map(|sym| *sym)
18419                .expect("Expected symbol in library");
18420            let cudaGetTextureObjectResourceDesc = __library
18421                .get(b"cudaGetTextureObjectResourceDesc\0")
18422                .map(|sym| *sym)
18423                .expect("Expected symbol in library");
18424            let cudaGetTextureObjectResourceViewDesc = __library
18425                .get(b"cudaGetTextureObjectResourceViewDesc\0")
18426                .map(|sym| *sym)
18427                .expect("Expected symbol in library");
18428            let cudaGetTextureObjectTextureDesc = __library
18429                .get(b"cudaGetTextureObjectTextureDesc\0")
18430                .map(|sym| *sym)
18431                .expect("Expected symbol in library");
18432            #[cfg(any(feature = "cuda-11080"))]
18433            let cudaGetTextureObjectTextureDesc_v2 = __library
18434                .get(b"cudaGetTextureObjectTextureDesc_v2\0")
18435                .map(|sym| *sym)
18436                .expect("Expected symbol in library");
18437            #[cfg(any(
18438                feature = "cuda-11040",
18439                feature = "cuda-11050",
18440                feature = "cuda-11060",
18441                feature = "cuda-11070",
18442                feature = "cuda-11080"
18443            ))]
18444            let cudaGetTextureReference = __library
18445                .get(b"cudaGetTextureReference\0")
18446                .map(|sym| *sym)
18447                .expect("Expected symbol in library");
18448            let cudaGraphAddChildGraphNode = __library
18449                .get(b"cudaGraphAddChildGraphNode\0")
18450                .map(|sym| *sym)
18451                .expect("Expected symbol in library");
18452            #[cfg(any(
18453                feature = "cuda-11040",
18454                feature = "cuda-11050",
18455                feature = "cuda-11060",
18456                feature = "cuda-11070",
18457                feature = "cuda-11080",
18458                feature = "cuda-12000",
18459                feature = "cuda-12010",
18460                feature = "cuda-12020",
18461                feature = "cuda-12030",
18462                feature = "cuda-12040",
18463                feature = "cuda-12050",
18464                feature = "cuda-12060",
18465                feature = "cuda-12080",
18466                feature = "cuda-12090"
18467            ))]
18468            let cudaGraphAddDependencies = __library
18469                .get(b"cudaGraphAddDependencies\0")
18470                .map(|sym| *sym)
18471                .expect("Expected symbol in library");
18472            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
18473            let cudaGraphAddDependencies = __library
18474                .get(b"cudaGraphAddDependencies\0")
18475                .map(|sym| *sym)
18476                .expect("Expected symbol in library");
18477            #[cfg(any(
18478                feature = "cuda-12030",
18479                feature = "cuda-12040",
18480                feature = "cuda-12050",
18481                feature = "cuda-12060",
18482                feature = "cuda-12080",
18483                feature = "cuda-12090"
18484            ))]
18485            let cudaGraphAddDependencies_v2 = __library
18486                .get(b"cudaGraphAddDependencies_v2\0")
18487                .map(|sym| *sym)
18488                .expect("Expected symbol in library");
18489            let cudaGraphAddEmptyNode = __library
18490                .get(b"cudaGraphAddEmptyNode\0")
18491                .map(|sym| *sym)
18492                .expect("Expected symbol in library");
18493            let cudaGraphAddEventRecordNode = __library
18494                .get(b"cudaGraphAddEventRecordNode\0")
18495                .map(|sym| *sym)
18496                .expect("Expected symbol in library");
18497            let cudaGraphAddEventWaitNode = __library
18498                .get(b"cudaGraphAddEventWaitNode\0")
18499                .map(|sym| *sym)
18500                .expect("Expected symbol in library");
18501            let cudaGraphAddExternalSemaphoresSignalNode = __library
18502                .get(b"cudaGraphAddExternalSemaphoresSignalNode\0")
18503                .map(|sym| *sym)
18504                .expect("Expected symbol in library");
18505            let cudaGraphAddExternalSemaphoresWaitNode = __library
18506                .get(b"cudaGraphAddExternalSemaphoresWaitNode\0")
18507                .map(|sym| *sym)
18508                .expect("Expected symbol in library");
18509            let cudaGraphAddHostNode = __library
18510                .get(b"cudaGraphAddHostNode\0")
18511                .map(|sym| *sym)
18512                .expect("Expected symbol in library");
18513            let cudaGraphAddKernelNode = __library
18514                .get(b"cudaGraphAddKernelNode\0")
18515                .map(|sym| *sym)
18516                .expect("Expected symbol in library");
18517            let cudaGraphAddMemAllocNode = __library
18518                .get(b"cudaGraphAddMemAllocNode\0")
18519                .map(|sym| *sym)
18520                .expect("Expected symbol in library");
18521            let cudaGraphAddMemFreeNode = __library
18522                .get(b"cudaGraphAddMemFreeNode\0")
18523                .map(|sym| *sym)
18524                .expect("Expected symbol in library");
18525            let cudaGraphAddMemcpyNode = __library
18526                .get(b"cudaGraphAddMemcpyNode\0")
18527                .map(|sym| *sym)
18528                .expect("Expected symbol in library");
18529            let cudaGraphAddMemcpyNode1D = __library
18530                .get(b"cudaGraphAddMemcpyNode1D\0")
18531                .map(|sym| *sym)
18532                .expect("Expected symbol in library");
18533            let cudaGraphAddMemcpyNodeFromSymbol = __library
18534                .get(b"cudaGraphAddMemcpyNodeFromSymbol\0")
18535                .map(|sym| *sym)
18536                .expect("Expected symbol in library");
18537            let cudaGraphAddMemcpyNodeToSymbol = __library
18538                .get(b"cudaGraphAddMemcpyNodeToSymbol\0")
18539                .map(|sym| *sym)
18540                .expect("Expected symbol in library");
18541            let cudaGraphAddMemsetNode = __library
18542                .get(b"cudaGraphAddMemsetNode\0")
18543                .map(|sym| *sym)
18544                .expect("Expected symbol in library");
18545            #[cfg(any(
18546                feature = "cuda-12020",
18547                feature = "cuda-12030",
18548                feature = "cuda-12040",
18549                feature = "cuda-12050",
18550                feature = "cuda-12060",
18551                feature = "cuda-12080",
18552                feature = "cuda-12090"
18553            ))]
18554            let cudaGraphAddNode = __library
18555                .get(b"cudaGraphAddNode\0")
18556                .map(|sym| *sym)
18557                .expect("Expected symbol in library");
18558            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
18559            let cudaGraphAddNode = __library
18560                .get(b"cudaGraphAddNode\0")
18561                .map(|sym| *sym)
18562                .expect("Expected symbol in library");
18563            #[cfg(any(
18564                feature = "cuda-12030",
18565                feature = "cuda-12040",
18566                feature = "cuda-12050",
18567                feature = "cuda-12060",
18568                feature = "cuda-12080",
18569                feature = "cuda-12090"
18570            ))]
18571            let cudaGraphAddNode_v2 = __library
18572                .get(b"cudaGraphAddNode_v2\0")
18573                .map(|sym| *sym)
18574                .expect("Expected symbol in library");
18575            let cudaGraphChildGraphNodeGetGraph = __library
18576                .get(b"cudaGraphChildGraphNodeGetGraph\0")
18577                .map(|sym| *sym)
18578                .expect("Expected symbol in library");
18579            let cudaGraphClone = __library
18580                .get(b"cudaGraphClone\0")
18581                .map(|sym| *sym)
18582                .expect("Expected symbol in library");
18583            #[cfg(any(
18584                feature = "cuda-12030",
18585                feature = "cuda-12040",
18586                feature = "cuda-12050",
18587                feature = "cuda-12060",
18588                feature = "cuda-12080",
18589                feature = "cuda-12090",
18590                feature = "cuda-13000",
18591                feature = "cuda-13010",
18592                feature = "cuda-13020"
18593            ))]
18594            let cudaGraphConditionalHandleCreate = __library
18595                .get(b"cudaGraphConditionalHandleCreate\0")
18596                .map(|sym| *sym)
18597                .expect("Expected symbol in library");
18598            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18599            let cudaGraphConditionalHandleCreate_v2 = __library
18600                .get(b"cudaGraphConditionalHandleCreate_v2\0")
18601                .map(|sym| *sym)
18602                .expect("Expected symbol in library");
18603            let cudaGraphCreate = __library
18604                .get(b"cudaGraphCreate\0")
18605                .map(|sym| *sym)
18606                .expect("Expected symbol in library");
18607            let cudaGraphDebugDotPrint = __library
18608                .get(b"cudaGraphDebugDotPrint\0")
18609                .map(|sym| *sym)
18610                .expect("Expected symbol in library");
18611            let cudaGraphDestroy = __library
18612                .get(b"cudaGraphDestroy\0")
18613                .map(|sym| *sym)
18614                .expect("Expected symbol in library");
18615            let cudaGraphDestroyNode = __library
18616                .get(b"cudaGraphDestroyNode\0")
18617                .map(|sym| *sym)
18618                .expect("Expected symbol in library");
18619            let cudaGraphEventRecordNodeGetEvent = __library
18620                .get(b"cudaGraphEventRecordNodeGetEvent\0")
18621                .map(|sym| *sym)
18622                .expect("Expected symbol in library");
18623            let cudaGraphEventRecordNodeSetEvent = __library
18624                .get(b"cudaGraphEventRecordNodeSetEvent\0")
18625                .map(|sym| *sym)
18626                .expect("Expected symbol in library");
18627            let cudaGraphEventWaitNodeGetEvent = __library
18628                .get(b"cudaGraphEventWaitNodeGetEvent\0")
18629                .map(|sym| *sym)
18630                .expect("Expected symbol in library");
18631            let cudaGraphEventWaitNodeSetEvent = __library
18632                .get(b"cudaGraphEventWaitNodeSetEvent\0")
18633                .map(|sym| *sym)
18634                .expect("Expected symbol in library");
18635            let cudaGraphExecChildGraphNodeSetParams = __library
18636                .get(b"cudaGraphExecChildGraphNodeSetParams\0")
18637                .map(|sym| *sym)
18638                .expect("Expected symbol in library");
18639            let cudaGraphExecDestroy = __library
18640                .get(b"cudaGraphExecDestroy\0")
18641                .map(|sym| *sym)
18642                .expect("Expected symbol in library");
18643            let cudaGraphExecEventRecordNodeSetEvent = __library
18644                .get(b"cudaGraphExecEventRecordNodeSetEvent\0")
18645                .map(|sym| *sym)
18646                .expect("Expected symbol in library");
18647            let cudaGraphExecEventWaitNodeSetEvent = __library
18648                .get(b"cudaGraphExecEventWaitNodeSetEvent\0")
18649                .map(|sym| *sym)
18650                .expect("Expected symbol in library");
18651            let cudaGraphExecExternalSemaphoresSignalNodeSetParams = __library
18652                .get(b"cudaGraphExecExternalSemaphoresSignalNodeSetParams\0")
18653                .map(|sym| *sym)
18654                .expect("Expected symbol in library");
18655            let cudaGraphExecExternalSemaphoresWaitNodeSetParams = __library
18656                .get(b"cudaGraphExecExternalSemaphoresWaitNodeSetParams\0")
18657                .map(|sym| *sym)
18658                .expect("Expected symbol in library");
18659            #[cfg(any(
18660                feature = "cuda-12000",
18661                feature = "cuda-12010",
18662                feature = "cuda-12020",
18663                feature = "cuda-12030",
18664                feature = "cuda-12040",
18665                feature = "cuda-12050",
18666                feature = "cuda-12060",
18667                feature = "cuda-12080",
18668                feature = "cuda-12090",
18669                feature = "cuda-13000",
18670                feature = "cuda-13010",
18671                feature = "cuda-13020"
18672            ))]
18673            let cudaGraphExecGetFlags = __library
18674                .get(b"cudaGraphExecGetFlags\0")
18675                .map(|sym| *sym)
18676                .expect("Expected symbol in library");
18677            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18678            let cudaGraphExecGetId = __library
18679                .get(b"cudaGraphExecGetId\0")
18680                .map(|sym| *sym)
18681                .expect("Expected symbol in library");
18682            let cudaGraphExecHostNodeSetParams = __library
18683                .get(b"cudaGraphExecHostNodeSetParams\0")
18684                .map(|sym| *sym)
18685                .expect("Expected symbol in library");
18686            let cudaGraphExecKernelNodeSetParams = __library
18687                .get(b"cudaGraphExecKernelNodeSetParams\0")
18688                .map(|sym| *sym)
18689                .expect("Expected symbol in library");
18690            let cudaGraphExecMemcpyNodeSetParams = __library
18691                .get(b"cudaGraphExecMemcpyNodeSetParams\0")
18692                .map(|sym| *sym)
18693                .expect("Expected symbol in library");
18694            let cudaGraphExecMemcpyNodeSetParams1D = __library
18695                .get(b"cudaGraphExecMemcpyNodeSetParams1D\0")
18696                .map(|sym| *sym)
18697                .expect("Expected symbol in library");
18698            let cudaGraphExecMemcpyNodeSetParamsFromSymbol = __library
18699                .get(b"cudaGraphExecMemcpyNodeSetParamsFromSymbol\0")
18700                .map(|sym| *sym)
18701                .expect("Expected symbol in library");
18702            let cudaGraphExecMemcpyNodeSetParamsToSymbol = __library
18703                .get(b"cudaGraphExecMemcpyNodeSetParamsToSymbol\0")
18704                .map(|sym| *sym)
18705                .expect("Expected symbol in library");
18706            let cudaGraphExecMemsetNodeSetParams = __library
18707                .get(b"cudaGraphExecMemsetNodeSetParams\0")
18708                .map(|sym| *sym)
18709                .expect("Expected symbol in library");
18710            #[cfg(any(
18711                feature = "cuda-12020",
18712                feature = "cuda-12030",
18713                feature = "cuda-12040",
18714                feature = "cuda-12050",
18715                feature = "cuda-12060",
18716                feature = "cuda-12080",
18717                feature = "cuda-12090",
18718                feature = "cuda-13000",
18719                feature = "cuda-13010",
18720                feature = "cuda-13020"
18721            ))]
18722            let cudaGraphExecNodeSetParams = __library
18723                .get(b"cudaGraphExecNodeSetParams\0")
18724                .map(|sym| *sym)
18725                .expect("Expected symbol in library");
18726            #[cfg(any(
18727                feature = "cuda-11040",
18728                feature = "cuda-11050",
18729                feature = "cuda-11060",
18730                feature = "cuda-11070",
18731                feature = "cuda-11080"
18732            ))]
18733            let cudaGraphExecUpdate = __library
18734                .get(b"cudaGraphExecUpdate\0")
18735                .map(|sym| *sym)
18736                .expect("Expected symbol in library");
18737            #[cfg(any(
18738                feature = "cuda-12000",
18739                feature = "cuda-12010",
18740                feature = "cuda-12020",
18741                feature = "cuda-12030",
18742                feature = "cuda-12040",
18743                feature = "cuda-12050",
18744                feature = "cuda-12060",
18745                feature = "cuda-12080",
18746                feature = "cuda-12090",
18747                feature = "cuda-13000",
18748                feature = "cuda-13010",
18749                feature = "cuda-13020"
18750            ))]
18751            let cudaGraphExecUpdate = __library
18752                .get(b"cudaGraphExecUpdate\0")
18753                .map(|sym| *sym)
18754                .expect("Expected symbol in library");
18755            let cudaGraphExternalSemaphoresSignalNodeGetParams = __library
18756                .get(b"cudaGraphExternalSemaphoresSignalNodeGetParams\0")
18757                .map(|sym| *sym)
18758                .expect("Expected symbol in library");
18759            let cudaGraphExternalSemaphoresSignalNodeSetParams = __library
18760                .get(b"cudaGraphExternalSemaphoresSignalNodeSetParams\0")
18761                .map(|sym| *sym)
18762                .expect("Expected symbol in library");
18763            let cudaGraphExternalSemaphoresWaitNodeGetParams = __library
18764                .get(b"cudaGraphExternalSemaphoresWaitNodeGetParams\0")
18765                .map(|sym| *sym)
18766                .expect("Expected symbol in library");
18767            let cudaGraphExternalSemaphoresWaitNodeSetParams = __library
18768                .get(b"cudaGraphExternalSemaphoresWaitNodeSetParams\0")
18769                .map(|sym| *sym)
18770                .expect("Expected symbol in library");
18771            #[cfg(any(
18772                feature = "cuda-11040",
18773                feature = "cuda-11050",
18774                feature = "cuda-11060",
18775                feature = "cuda-11070",
18776                feature = "cuda-11080",
18777                feature = "cuda-12000",
18778                feature = "cuda-12010",
18779                feature = "cuda-12020",
18780                feature = "cuda-12030",
18781                feature = "cuda-12040",
18782                feature = "cuda-12050",
18783                feature = "cuda-12060",
18784                feature = "cuda-12080",
18785                feature = "cuda-12090"
18786            ))]
18787            let cudaGraphGetEdges = __library
18788                .get(b"cudaGraphGetEdges\0")
18789                .map(|sym| *sym)
18790                .expect("Expected symbol in library");
18791            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
18792            let cudaGraphGetEdges = __library
18793                .get(b"cudaGraphGetEdges\0")
18794                .map(|sym| *sym)
18795                .expect("Expected symbol in library");
18796            #[cfg(any(
18797                feature = "cuda-12030",
18798                feature = "cuda-12040",
18799                feature = "cuda-12050",
18800                feature = "cuda-12060",
18801                feature = "cuda-12080",
18802                feature = "cuda-12090"
18803            ))]
18804            let cudaGraphGetEdges_v2 = __library
18805                .get(b"cudaGraphGetEdges_v2\0")
18806                .map(|sym| *sym)
18807                .expect("Expected symbol in library");
18808            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
18809            let cudaGraphGetId = __library
18810                .get(b"cudaGraphGetId\0")
18811                .map(|sym| *sym)
18812                .expect("Expected symbol in library");
18813            let cudaGraphGetNodes = __library
18814                .get(b"cudaGraphGetNodes\0")
18815                .map(|sym| *sym)
18816                .expect("Expected symbol in library");
18817            let cudaGraphGetRootNodes = __library
18818                .get(b"cudaGraphGetRootNodes\0")
18819                .map(|sym| *sym)
18820                .expect("Expected symbol in library");
18821            let cudaGraphHostNodeGetParams = __library
18822                .get(b"cudaGraphHostNodeGetParams\0")
18823                .map(|sym| *sym)
18824                .expect("Expected symbol in library");
18825            let cudaGraphHostNodeSetParams = __library
18826                .get(b"cudaGraphHostNodeSetParams\0")
18827                .map(|sym| *sym)
18828                .expect("Expected symbol in library");
18829            #[cfg(any(
18830                feature = "cuda-11040",
18831                feature = "cuda-11050",
18832                feature = "cuda-11060",
18833                feature = "cuda-11070",
18834                feature = "cuda-11080"
18835            ))]
18836            let cudaGraphInstantiate = __library
18837                .get(b"cudaGraphInstantiate\0")
18838                .map(|sym| *sym)
18839                .expect("Expected symbol in library");
18840            #[cfg(any(
18841                feature = "cuda-12000",
18842                feature = "cuda-12010",
18843                feature = "cuda-12020",
18844                feature = "cuda-12030",
18845                feature = "cuda-12040",
18846                feature = "cuda-12050",
18847                feature = "cuda-12060",
18848                feature = "cuda-12080",
18849                feature = "cuda-12090",
18850                feature = "cuda-13000",
18851                feature = "cuda-13010",
18852                feature = "cuda-13020"
18853            ))]
18854            let cudaGraphInstantiate = __library
18855                .get(b"cudaGraphInstantiate\0")
18856                .map(|sym| *sym)
18857                .expect("Expected symbol in library");
18858            let cudaGraphInstantiateWithFlags = __library
18859                .get(b"cudaGraphInstantiateWithFlags\0")
18860                .map(|sym| *sym)
18861                .expect("Expected symbol in library");
18862            #[cfg(any(
18863                feature = "cuda-12000",
18864                feature = "cuda-12010",
18865                feature = "cuda-12020",
18866                feature = "cuda-12030",
18867                feature = "cuda-12040",
18868                feature = "cuda-12050",
18869                feature = "cuda-12060",
18870                feature = "cuda-12080",
18871                feature = "cuda-12090",
18872                feature = "cuda-13000",
18873                feature = "cuda-13010",
18874                feature = "cuda-13020"
18875            ))]
18876            let cudaGraphInstantiateWithParams = __library
18877                .get(b"cudaGraphInstantiateWithParams\0")
18878                .map(|sym| *sym)
18879                .expect("Expected symbol in library");
18880            #[cfg(any(
18881                feature = "cuda-11040",
18882                feature = "cuda-11050",
18883                feature = "cuda-11060",
18884                feature = "cuda-11070",
18885                feature = "cuda-11080",
18886                feature = "cuda-12000",
18887                feature = "cuda-12010",
18888                feature = "cuda-12020",
18889                feature = "cuda-12030",
18890                feature = "cuda-12040",
18891                feature = "cuda-12050",
18892                feature = "cuda-12060",
18893                feature = "cuda-12080",
18894                feature = "cuda-12090"
18895            ))]
18896            let cudaGraphKernelNodeCopyAttributes = __library
18897                .get(b"cudaGraphKernelNodeCopyAttributes\0")
18898                .map(|sym| *sym)
18899                .expect("Expected symbol in library");
18900            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
18901            let cudaGraphKernelNodeCopyAttributes = __library
18902                .get(b"cudaGraphKernelNodeCopyAttributes\0")
18903                .map(|sym| *sym)
18904                .expect("Expected symbol in library");
18905            #[cfg(any(
18906                feature = "cuda-11040",
18907                feature = "cuda-11050",
18908                feature = "cuda-11060",
18909                feature = "cuda-11070"
18910            ))]
18911            let cudaGraphKernelNodeGetAttribute = __library
18912                .get(b"cudaGraphKernelNodeGetAttribute\0")
18913                .map(|sym| *sym)
18914                .expect("Expected symbol in library");
18915            #[cfg(any(
18916                feature = "cuda-11080",
18917                feature = "cuda-12000",
18918                feature = "cuda-12010",
18919                feature = "cuda-12020",
18920                feature = "cuda-12030",
18921                feature = "cuda-12040",
18922                feature = "cuda-12050",
18923                feature = "cuda-12060",
18924                feature = "cuda-12080",
18925                feature = "cuda-12090",
18926                feature = "cuda-13000",
18927                feature = "cuda-13010",
18928                feature = "cuda-13020"
18929            ))]
18930            let cudaGraphKernelNodeGetAttribute = __library
18931                .get(b"cudaGraphKernelNodeGetAttribute\0")
18932                .map(|sym| *sym)
18933                .expect("Expected symbol in library");
18934            let cudaGraphKernelNodeGetParams = __library
18935                .get(b"cudaGraphKernelNodeGetParams\0")
18936                .map(|sym| *sym)
18937                .expect("Expected symbol in library");
18938            #[cfg(any(
18939                feature = "cuda-11040",
18940                feature = "cuda-11050",
18941                feature = "cuda-11060",
18942                feature = "cuda-11070"
18943            ))]
18944            let cudaGraphKernelNodeSetAttribute = __library
18945                .get(b"cudaGraphKernelNodeSetAttribute\0")
18946                .map(|sym| *sym)
18947                .expect("Expected symbol in library");
18948            #[cfg(any(
18949                feature = "cuda-11080",
18950                feature = "cuda-12000",
18951                feature = "cuda-12010",
18952                feature = "cuda-12020",
18953                feature = "cuda-12030",
18954                feature = "cuda-12040",
18955                feature = "cuda-12050",
18956                feature = "cuda-12060",
18957                feature = "cuda-12080",
18958                feature = "cuda-12090",
18959                feature = "cuda-13000",
18960                feature = "cuda-13010",
18961                feature = "cuda-13020"
18962            ))]
18963            let cudaGraphKernelNodeSetAttribute = __library
18964                .get(b"cudaGraphKernelNodeSetAttribute\0")
18965                .map(|sym| *sym)
18966                .expect("Expected symbol in library");
18967            let cudaGraphKernelNodeSetParams = __library
18968                .get(b"cudaGraphKernelNodeSetParams\0")
18969                .map(|sym| *sym)
18970                .expect("Expected symbol in library");
18971            let cudaGraphLaunch = __library
18972                .get(b"cudaGraphLaunch\0")
18973                .map(|sym| *sym)
18974                .expect("Expected symbol in library");
18975            let cudaGraphMemAllocNodeGetParams = __library
18976                .get(b"cudaGraphMemAllocNodeGetParams\0")
18977                .map(|sym| *sym)
18978                .expect("Expected symbol in library");
18979            let cudaGraphMemFreeNodeGetParams = __library
18980                .get(b"cudaGraphMemFreeNodeGetParams\0")
18981                .map(|sym| *sym)
18982                .expect("Expected symbol in library");
18983            let cudaGraphMemcpyNodeGetParams = __library
18984                .get(b"cudaGraphMemcpyNodeGetParams\0")
18985                .map(|sym| *sym)
18986                .expect("Expected symbol in library");
18987            let cudaGraphMemcpyNodeSetParams = __library
18988                .get(b"cudaGraphMemcpyNodeSetParams\0")
18989                .map(|sym| *sym)
18990                .expect("Expected symbol in library");
18991            let cudaGraphMemcpyNodeSetParams1D = __library
18992                .get(b"cudaGraphMemcpyNodeSetParams1D\0")
18993                .map(|sym| *sym)
18994                .expect("Expected symbol in library");
18995            let cudaGraphMemcpyNodeSetParamsFromSymbol = __library
18996                .get(b"cudaGraphMemcpyNodeSetParamsFromSymbol\0")
18997                .map(|sym| *sym)
18998                .expect("Expected symbol in library");
18999            let cudaGraphMemcpyNodeSetParamsToSymbol = __library
19000                .get(b"cudaGraphMemcpyNodeSetParamsToSymbol\0")
19001                .map(|sym| *sym)
19002                .expect("Expected symbol in library");
19003            let cudaGraphMemsetNodeGetParams = __library
19004                .get(b"cudaGraphMemsetNodeGetParams\0")
19005                .map(|sym| *sym)
19006                .expect("Expected symbol in library");
19007            let cudaGraphMemsetNodeSetParams = __library
19008                .get(b"cudaGraphMemsetNodeSetParams\0")
19009                .map(|sym| *sym)
19010                .expect("Expected symbol in library");
19011            let cudaGraphNodeFindInClone = __library
19012                .get(b"cudaGraphNodeFindInClone\0")
19013                .map(|sym| *sym)
19014                .expect("Expected symbol in library");
19015            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
19016            let cudaGraphNodeGetContainingGraph = __library
19017                .get(b"cudaGraphNodeGetContainingGraph\0")
19018                .map(|sym| *sym)
19019                .expect("Expected symbol in library");
19020            #[cfg(any(
19021                feature = "cuda-11040",
19022                feature = "cuda-11050",
19023                feature = "cuda-11060",
19024                feature = "cuda-11070",
19025                feature = "cuda-11080",
19026                feature = "cuda-12000",
19027                feature = "cuda-12010",
19028                feature = "cuda-12020",
19029                feature = "cuda-12030",
19030                feature = "cuda-12040",
19031                feature = "cuda-12050",
19032                feature = "cuda-12060",
19033                feature = "cuda-12080",
19034                feature = "cuda-12090"
19035            ))]
19036            let cudaGraphNodeGetDependencies = __library
19037                .get(b"cudaGraphNodeGetDependencies\0")
19038                .map(|sym| *sym)
19039                .expect("Expected symbol in library");
19040            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19041            let cudaGraphNodeGetDependencies = __library
19042                .get(b"cudaGraphNodeGetDependencies\0")
19043                .map(|sym| *sym)
19044                .expect("Expected symbol in library");
19045            #[cfg(any(
19046                feature = "cuda-12030",
19047                feature = "cuda-12040",
19048                feature = "cuda-12050",
19049                feature = "cuda-12060",
19050                feature = "cuda-12080",
19051                feature = "cuda-12090"
19052            ))]
19053            let cudaGraphNodeGetDependencies_v2 = __library
19054                .get(b"cudaGraphNodeGetDependencies_v2\0")
19055                .map(|sym| *sym)
19056                .expect("Expected symbol in library");
19057            #[cfg(any(
19058                feature = "cuda-11040",
19059                feature = "cuda-11050",
19060                feature = "cuda-11060",
19061                feature = "cuda-11070",
19062                feature = "cuda-11080",
19063                feature = "cuda-12000",
19064                feature = "cuda-12010",
19065                feature = "cuda-12020",
19066                feature = "cuda-12030",
19067                feature = "cuda-12040",
19068                feature = "cuda-12050",
19069                feature = "cuda-12060",
19070                feature = "cuda-12080",
19071                feature = "cuda-12090"
19072            ))]
19073            let cudaGraphNodeGetDependentNodes = __library
19074                .get(b"cudaGraphNodeGetDependentNodes\0")
19075                .map(|sym| *sym)
19076                .expect("Expected symbol in library");
19077            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19078            let cudaGraphNodeGetDependentNodes = __library
19079                .get(b"cudaGraphNodeGetDependentNodes\0")
19080                .map(|sym| *sym)
19081                .expect("Expected symbol in library");
19082            #[cfg(any(
19083                feature = "cuda-12030",
19084                feature = "cuda-12040",
19085                feature = "cuda-12050",
19086                feature = "cuda-12060",
19087                feature = "cuda-12080",
19088                feature = "cuda-12090"
19089            ))]
19090            let cudaGraphNodeGetDependentNodes_v2 = __library
19091                .get(b"cudaGraphNodeGetDependentNodes_v2\0")
19092                .map(|sym| *sym)
19093                .expect("Expected symbol in library");
19094            #[cfg(any(
19095                feature = "cuda-11060",
19096                feature = "cuda-11070",
19097                feature = "cuda-11080",
19098                feature = "cuda-12000",
19099                feature = "cuda-12010",
19100                feature = "cuda-12020",
19101                feature = "cuda-12030",
19102                feature = "cuda-12040",
19103                feature = "cuda-12050",
19104                feature = "cuda-12060",
19105                feature = "cuda-12080",
19106                feature = "cuda-12090",
19107                feature = "cuda-13000",
19108                feature = "cuda-13010",
19109                feature = "cuda-13020"
19110            ))]
19111            let cudaGraphNodeGetEnabled = __library
19112                .get(b"cudaGraphNodeGetEnabled\0")
19113                .map(|sym| *sym)
19114                .expect("Expected symbol in library");
19115            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
19116            let cudaGraphNodeGetLocalId = __library
19117                .get(b"cudaGraphNodeGetLocalId\0")
19118                .map(|sym| *sym)
19119                .expect("Expected symbol in library");
19120            #[cfg(any(feature = "cuda-13020"))]
19121            let cudaGraphNodeGetParams = __library
19122                .get(b"cudaGraphNodeGetParams\0")
19123                .map(|sym| *sym)
19124                .expect("Expected symbol in library");
19125            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
19126            let cudaGraphNodeGetToolsId = __library
19127                .get(b"cudaGraphNodeGetToolsId\0")
19128                .map(|sym| *sym)
19129                .expect("Expected symbol in library");
19130            let cudaGraphNodeGetType = __library
19131                .get(b"cudaGraphNodeGetType\0")
19132                .map(|sym| *sym)
19133                .expect("Expected symbol in library");
19134            #[cfg(any(
19135                feature = "cuda-11060",
19136                feature = "cuda-11070",
19137                feature = "cuda-11080",
19138                feature = "cuda-12000",
19139                feature = "cuda-12010",
19140                feature = "cuda-12020",
19141                feature = "cuda-12030",
19142                feature = "cuda-12040",
19143                feature = "cuda-12050",
19144                feature = "cuda-12060",
19145                feature = "cuda-12080",
19146                feature = "cuda-12090",
19147                feature = "cuda-13000",
19148                feature = "cuda-13010",
19149                feature = "cuda-13020"
19150            ))]
19151            let cudaGraphNodeSetEnabled = __library
19152                .get(b"cudaGraphNodeSetEnabled\0")
19153                .map(|sym| *sym)
19154                .expect("Expected symbol in library");
19155            #[cfg(any(
19156                feature = "cuda-12020",
19157                feature = "cuda-12030",
19158                feature = "cuda-12040",
19159                feature = "cuda-12050",
19160                feature = "cuda-12060",
19161                feature = "cuda-12080",
19162                feature = "cuda-12090",
19163                feature = "cuda-13000",
19164                feature = "cuda-13010",
19165                feature = "cuda-13020"
19166            ))]
19167            let cudaGraphNodeSetParams = __library
19168                .get(b"cudaGraphNodeSetParams\0")
19169                .map(|sym| *sym)
19170                .expect("Expected symbol in library");
19171            let cudaGraphReleaseUserObject = __library
19172                .get(b"cudaGraphReleaseUserObject\0")
19173                .map(|sym| *sym)
19174                .expect("Expected symbol in library");
19175            #[cfg(any(
19176                feature = "cuda-11040",
19177                feature = "cuda-11050",
19178                feature = "cuda-11060",
19179                feature = "cuda-11070",
19180                feature = "cuda-11080",
19181                feature = "cuda-12000",
19182                feature = "cuda-12010",
19183                feature = "cuda-12020",
19184                feature = "cuda-12030",
19185                feature = "cuda-12040",
19186                feature = "cuda-12050",
19187                feature = "cuda-12060",
19188                feature = "cuda-12080",
19189                feature = "cuda-12090"
19190            ))]
19191            let cudaGraphRemoveDependencies = __library
19192                .get(b"cudaGraphRemoveDependencies\0")
19193                .map(|sym| *sym)
19194                .expect("Expected symbol in library");
19195            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19196            let cudaGraphRemoveDependencies = __library
19197                .get(b"cudaGraphRemoveDependencies\0")
19198                .map(|sym| *sym)
19199                .expect("Expected symbol in library");
19200            #[cfg(any(
19201                feature = "cuda-12030",
19202                feature = "cuda-12040",
19203                feature = "cuda-12050",
19204                feature = "cuda-12060",
19205                feature = "cuda-12080",
19206                feature = "cuda-12090"
19207            ))]
19208            let cudaGraphRemoveDependencies_v2 = __library
19209                .get(b"cudaGraphRemoveDependencies_v2\0")
19210                .map(|sym| *sym)
19211                .expect("Expected symbol in library");
19212            let cudaGraphRetainUserObject = __library
19213                .get(b"cudaGraphRetainUserObject\0")
19214                .map(|sym| *sym)
19215                .expect("Expected symbol in library");
19216            let cudaGraphUpload = __library
19217                .get(b"cudaGraphUpload\0")
19218                .map(|sym| *sym)
19219                .expect("Expected symbol in library");
19220            let cudaGraphicsMapResources = __library
19221                .get(b"cudaGraphicsMapResources\0")
19222                .map(|sym| *sym)
19223                .expect("Expected symbol in library");
19224            let cudaGraphicsResourceGetMappedMipmappedArray = __library
19225                .get(b"cudaGraphicsResourceGetMappedMipmappedArray\0")
19226                .map(|sym| *sym)
19227                .expect("Expected symbol in library");
19228            let cudaGraphicsResourceGetMappedPointer = __library
19229                .get(b"cudaGraphicsResourceGetMappedPointer\0")
19230                .map(|sym| *sym)
19231                .expect("Expected symbol in library");
19232            let cudaGraphicsResourceSetMapFlags = __library
19233                .get(b"cudaGraphicsResourceSetMapFlags\0")
19234                .map(|sym| *sym)
19235                .expect("Expected symbol in library");
19236            let cudaGraphicsSubResourceGetMappedArray = __library
19237                .get(b"cudaGraphicsSubResourceGetMappedArray\0")
19238                .map(|sym| *sym)
19239                .expect("Expected symbol in library");
19240            let cudaGraphicsUnmapResources = __library
19241                .get(b"cudaGraphicsUnmapResources\0")
19242                .map(|sym| *sym)
19243                .expect("Expected symbol in library");
19244            let cudaGraphicsUnregisterResource = __library
19245                .get(b"cudaGraphicsUnregisterResource\0")
19246                .map(|sym| *sym)
19247                .expect("Expected symbol in library");
19248            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
19249            let cudaGreenCtxCreate = __library
19250                .get(b"cudaGreenCtxCreate\0")
19251                .map(|sym| *sym)
19252                .expect("Expected symbol in library");
19253            let cudaHostAlloc = __library
19254                .get(b"cudaHostAlloc\0")
19255                .map(|sym| *sym)
19256                .expect("Expected symbol in library");
19257            let cudaHostGetDevicePointer = __library
19258                .get(b"cudaHostGetDevicePointer\0")
19259                .map(|sym| *sym)
19260                .expect("Expected symbol in library");
19261            let cudaHostGetFlags = __library
19262                .get(b"cudaHostGetFlags\0")
19263                .map(|sym| *sym)
19264                .expect("Expected symbol in library");
19265            let cudaHostRegister = __library
19266                .get(b"cudaHostRegister\0")
19267                .map(|sym| *sym)
19268                .expect("Expected symbol in library");
19269            let cudaHostUnregister = __library
19270                .get(b"cudaHostUnregister\0")
19271                .map(|sym| *sym)
19272                .expect("Expected symbol in library");
19273            let cudaImportExternalMemory = __library
19274                .get(b"cudaImportExternalMemory\0")
19275                .map(|sym| *sym)
19276                .expect("Expected symbol in library");
19277            let cudaImportExternalSemaphore = __library
19278                .get(b"cudaImportExternalSemaphore\0")
19279                .map(|sym| *sym)
19280                .expect("Expected symbol in library");
19281            #[cfg(any(
19282                feature = "cuda-12000",
19283                feature = "cuda-12010",
19284                feature = "cuda-12020",
19285                feature = "cuda-12030",
19286                feature = "cuda-12040",
19287                feature = "cuda-12050",
19288                feature = "cuda-12060",
19289                feature = "cuda-12080",
19290                feature = "cuda-12090",
19291                feature = "cuda-13000",
19292                feature = "cuda-13010",
19293                feature = "cuda-13020"
19294            ))]
19295            let cudaInitDevice = __library
19296                .get(b"cudaInitDevice\0")
19297                .map(|sym| *sym)
19298                .expect("Expected symbol in library");
19299            let cudaIpcCloseMemHandle = __library
19300                .get(b"cudaIpcCloseMemHandle\0")
19301                .map(|sym| *sym)
19302                .expect("Expected symbol in library");
19303            let cudaIpcGetEventHandle = __library
19304                .get(b"cudaIpcGetEventHandle\0")
19305                .map(|sym| *sym)
19306                .expect("Expected symbol in library");
19307            let cudaIpcGetMemHandle = __library
19308                .get(b"cudaIpcGetMemHandle\0")
19309                .map(|sym| *sym)
19310                .expect("Expected symbol in library");
19311            let cudaIpcOpenEventHandle = __library
19312                .get(b"cudaIpcOpenEventHandle\0")
19313                .map(|sym| *sym)
19314                .expect("Expected symbol in library");
19315            let cudaIpcOpenMemHandle = __library
19316                .get(b"cudaIpcOpenMemHandle\0")
19317                .map(|sym| *sym)
19318                .expect("Expected symbol in library");
19319            #[cfg(any(
19320                feature = "cuda-12080",
19321                feature = "cuda-12090",
19322                feature = "cuda-13000",
19323                feature = "cuda-13010",
19324                feature = "cuda-13020"
19325            ))]
19326            let cudaKernelSetAttributeForDevice = __library
19327                .get(b"cudaKernelSetAttributeForDevice\0")
19328                .map(|sym| *sym)
19329                .expect("Expected symbol in library");
19330            let cudaLaunchCooperativeKernel = __library
19331                .get(b"cudaLaunchCooperativeKernel\0")
19332                .map(|sym| *sym)
19333                .expect("Expected symbol in library");
19334            #[cfg(any(
19335                feature = "cuda-11040",
19336                feature = "cuda-11050",
19337                feature = "cuda-11060",
19338                feature = "cuda-11070",
19339                feature = "cuda-11080",
19340                feature = "cuda-12000",
19341                feature = "cuda-12010",
19342                feature = "cuda-12020",
19343                feature = "cuda-12030",
19344                feature = "cuda-12040",
19345                feature = "cuda-12050",
19346                feature = "cuda-12060",
19347                feature = "cuda-12080",
19348                feature = "cuda-12090"
19349            ))]
19350            let cudaLaunchCooperativeKernelMultiDevice = __library
19351                .get(b"cudaLaunchCooperativeKernelMultiDevice\0")
19352                .map(|sym| *sym)
19353                .expect("Expected symbol in library");
19354            let cudaLaunchHostFunc = __library
19355                .get(b"cudaLaunchHostFunc\0")
19356                .map(|sym| *sym)
19357                .expect("Expected symbol in library");
19358            #[cfg(any(feature = "cuda-13020"))]
19359            let cudaLaunchHostFunc_v2 = __library
19360                .get(b"cudaLaunchHostFunc_v2\0")
19361                .map(|sym| *sym)
19362                .expect("Expected symbol in library");
19363            let cudaLaunchKernel = __library
19364                .get(b"cudaLaunchKernel\0")
19365                .map(|sym| *sym)
19366                .expect("Expected symbol in library");
19367            #[cfg(any(
19368                feature = "cuda-11080",
19369                feature = "cuda-12000",
19370                feature = "cuda-12010",
19371                feature = "cuda-12020",
19372                feature = "cuda-12030",
19373                feature = "cuda-12040",
19374                feature = "cuda-12050",
19375                feature = "cuda-12060",
19376                feature = "cuda-12080",
19377                feature = "cuda-12090",
19378                feature = "cuda-13000",
19379                feature = "cuda-13010",
19380                feature = "cuda-13020"
19381            ))]
19382            let cudaLaunchKernelExC = __library
19383                .get(b"cudaLaunchKernelExC\0")
19384                .map(|sym| *sym)
19385                .expect("Expected symbol in library");
19386            #[cfg(any(
19387                feature = "cuda-12080",
19388                feature = "cuda-12090",
19389                feature = "cuda-13000",
19390                feature = "cuda-13010",
19391                feature = "cuda-13020"
19392            ))]
19393            let cudaLibraryEnumerateKernels = __library
19394                .get(b"cudaLibraryEnumerateKernels\0")
19395                .map(|sym| *sym)
19396                .expect("Expected symbol in library");
19397            #[cfg(any(
19398                feature = "cuda-12080",
19399                feature = "cuda-12090",
19400                feature = "cuda-13000",
19401                feature = "cuda-13010",
19402                feature = "cuda-13020"
19403            ))]
19404            let cudaLibraryGetGlobal = __library
19405                .get(b"cudaLibraryGetGlobal\0")
19406                .map(|sym| *sym)
19407                .expect("Expected symbol in library");
19408            #[cfg(any(
19409                feature = "cuda-12080",
19410                feature = "cuda-12090",
19411                feature = "cuda-13000",
19412                feature = "cuda-13010",
19413                feature = "cuda-13020"
19414            ))]
19415            let cudaLibraryGetKernel = __library
19416                .get(b"cudaLibraryGetKernel\0")
19417                .map(|sym| *sym)
19418                .expect("Expected symbol in library");
19419            #[cfg(any(
19420                feature = "cuda-12080",
19421                feature = "cuda-12090",
19422                feature = "cuda-13000",
19423                feature = "cuda-13010",
19424                feature = "cuda-13020"
19425            ))]
19426            let cudaLibraryGetKernelCount = __library
19427                .get(b"cudaLibraryGetKernelCount\0")
19428                .map(|sym| *sym)
19429                .expect("Expected symbol in library");
19430            #[cfg(any(
19431                feature = "cuda-12080",
19432                feature = "cuda-12090",
19433                feature = "cuda-13000",
19434                feature = "cuda-13010",
19435                feature = "cuda-13020"
19436            ))]
19437            let cudaLibraryGetManaged = __library
19438                .get(b"cudaLibraryGetManaged\0")
19439                .map(|sym| *sym)
19440                .expect("Expected symbol in library");
19441            #[cfg(any(
19442                feature = "cuda-12080",
19443                feature = "cuda-12090",
19444                feature = "cuda-13000",
19445                feature = "cuda-13010",
19446                feature = "cuda-13020"
19447            ))]
19448            let cudaLibraryGetUnifiedFunction = __library
19449                .get(b"cudaLibraryGetUnifiedFunction\0")
19450                .map(|sym| *sym)
19451                .expect("Expected symbol in library");
19452            #[cfg(any(
19453                feature = "cuda-12080",
19454                feature = "cuda-12090",
19455                feature = "cuda-13000",
19456                feature = "cuda-13010",
19457                feature = "cuda-13020"
19458            ))]
19459            let cudaLibraryLoadData = __library
19460                .get(b"cudaLibraryLoadData\0")
19461                .map(|sym| *sym)
19462                .expect("Expected symbol in library");
19463            #[cfg(any(
19464                feature = "cuda-12080",
19465                feature = "cuda-12090",
19466                feature = "cuda-13000",
19467                feature = "cuda-13010",
19468                feature = "cuda-13020"
19469            ))]
19470            let cudaLibraryLoadFromFile = __library
19471                .get(b"cudaLibraryLoadFromFile\0")
19472                .map(|sym| *sym)
19473                .expect("Expected symbol in library");
19474            #[cfg(any(
19475                feature = "cuda-12080",
19476                feature = "cuda-12090",
19477                feature = "cuda-13000",
19478                feature = "cuda-13010",
19479                feature = "cuda-13020"
19480            ))]
19481            let cudaLibraryUnload = __library
19482                .get(b"cudaLibraryUnload\0")
19483                .map(|sym| *sym)
19484                .expect("Expected symbol in library");
19485            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19486            let cudaLogsCurrent = __library
19487                .get(b"cudaLogsCurrent\0")
19488                .map(|sym| *sym)
19489                .expect("Expected symbol in library");
19490            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19491            let cudaLogsDumpToFile = __library
19492                .get(b"cudaLogsDumpToFile\0")
19493                .map(|sym| *sym)
19494                .expect("Expected symbol in library");
19495            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19496            let cudaLogsDumpToMemory = __library
19497                .get(b"cudaLogsDumpToMemory\0")
19498                .map(|sym| *sym)
19499                .expect("Expected symbol in library");
19500            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19501            let cudaLogsRegisterCallback = __library
19502                .get(b"cudaLogsRegisterCallback\0")
19503                .map(|sym| *sym)
19504                .expect("Expected symbol in library");
19505            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19506            let cudaLogsUnregisterCallback = __library
19507                .get(b"cudaLogsUnregisterCallback\0")
19508                .map(|sym| *sym)
19509                .expect("Expected symbol in library");
19510            let cudaMalloc = __library
19511                .get(b"cudaMalloc\0")
19512                .map(|sym| *sym)
19513                .expect("Expected symbol in library");
19514            let cudaMalloc3D = __library
19515                .get(b"cudaMalloc3D\0")
19516                .map(|sym| *sym)
19517                .expect("Expected symbol in library");
19518            let cudaMalloc3DArray = __library
19519                .get(b"cudaMalloc3DArray\0")
19520                .map(|sym| *sym)
19521                .expect("Expected symbol in library");
19522            let cudaMallocArray = __library
19523                .get(b"cudaMallocArray\0")
19524                .map(|sym| *sym)
19525                .expect("Expected symbol in library");
19526            let cudaMallocAsync = __library
19527                .get(b"cudaMallocAsync\0")
19528                .map(|sym| *sym)
19529                .expect("Expected symbol in library");
19530            let cudaMallocFromPoolAsync = __library
19531                .get(b"cudaMallocFromPoolAsync\0")
19532                .map(|sym| *sym)
19533                .expect("Expected symbol in library");
19534            let cudaMallocHost = __library
19535                .get(b"cudaMallocHost\0")
19536                .map(|sym| *sym)
19537                .expect("Expected symbol in library");
19538            let cudaMallocManaged = __library
19539                .get(b"cudaMallocManaged\0")
19540                .map(|sym| *sym)
19541                .expect("Expected symbol in library");
19542            let cudaMallocMipmappedArray = __library
19543                .get(b"cudaMallocMipmappedArray\0")
19544                .map(|sym| *sym)
19545                .expect("Expected symbol in library");
19546            let cudaMallocPitch = __library
19547                .get(b"cudaMallocPitch\0")
19548                .map(|sym| *sym)
19549                .expect("Expected symbol in library");
19550            #[cfg(any(
19551                feature = "cuda-11040",
19552                feature = "cuda-11050",
19553                feature = "cuda-11060",
19554                feature = "cuda-11070",
19555                feature = "cuda-11080",
19556                feature = "cuda-12000",
19557                feature = "cuda-12010",
19558                feature = "cuda-12020",
19559                feature = "cuda-12030",
19560                feature = "cuda-12040",
19561                feature = "cuda-12050",
19562                feature = "cuda-12060",
19563                feature = "cuda-12080",
19564                feature = "cuda-12090"
19565            ))]
19566            let cudaMemAdvise = __library
19567                .get(b"cudaMemAdvise\0")
19568                .map(|sym| *sym)
19569                .expect("Expected symbol in library");
19570            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19571            let cudaMemAdvise = __library
19572                .get(b"cudaMemAdvise\0")
19573                .map(|sym| *sym)
19574                .expect("Expected symbol in library");
19575            #[cfg(any(
19576                feature = "cuda-12020",
19577                feature = "cuda-12030",
19578                feature = "cuda-12040",
19579                feature = "cuda-12050",
19580                feature = "cuda-12060",
19581                feature = "cuda-12080",
19582                feature = "cuda-12090"
19583            ))]
19584            let cudaMemAdvise_v2 = __library
19585                .get(b"cudaMemAdvise_v2\0")
19586                .map(|sym| *sym)
19587                .expect("Expected symbol in library");
19588            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19589            let cudaMemDiscardAndPrefetchBatchAsync = __library
19590                .get(b"cudaMemDiscardAndPrefetchBatchAsync\0")
19591                .map(|sym| *sym)
19592                .expect("Expected symbol in library");
19593            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19594            let cudaMemDiscardBatchAsync = __library
19595                .get(b"cudaMemDiscardBatchAsync\0")
19596                .map(|sym| *sym)
19597                .expect("Expected symbol in library");
19598            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19599            let cudaMemGetDefaultMemPool = __library
19600                .get(b"cudaMemGetDefaultMemPool\0")
19601                .map(|sym| *sym)
19602                .expect("Expected symbol in library");
19603            let cudaMemGetInfo = __library
19604                .get(b"cudaMemGetInfo\0")
19605                .map(|sym| *sym)
19606                .expect("Expected symbol in library");
19607            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19608            let cudaMemGetMemPool = __library
19609                .get(b"cudaMemGetMemPool\0")
19610                .map(|sym| *sym)
19611                .expect("Expected symbol in library");
19612            let cudaMemPoolCreate = __library
19613                .get(b"cudaMemPoolCreate\0")
19614                .map(|sym| *sym)
19615                .expect("Expected symbol in library");
19616            let cudaMemPoolDestroy = __library
19617                .get(b"cudaMemPoolDestroy\0")
19618                .map(|sym| *sym)
19619                .expect("Expected symbol in library");
19620            let cudaMemPoolExportPointer = __library
19621                .get(b"cudaMemPoolExportPointer\0")
19622                .map(|sym| *sym)
19623                .expect("Expected symbol in library");
19624            let cudaMemPoolExportToShareableHandle = __library
19625                .get(b"cudaMemPoolExportToShareableHandle\0")
19626                .map(|sym| *sym)
19627                .expect("Expected symbol in library");
19628            let cudaMemPoolGetAccess = __library
19629                .get(b"cudaMemPoolGetAccess\0")
19630                .map(|sym| *sym)
19631                .expect("Expected symbol in library");
19632            let cudaMemPoolGetAttribute = __library
19633                .get(b"cudaMemPoolGetAttribute\0")
19634                .map(|sym| *sym)
19635                .expect("Expected symbol in library");
19636            let cudaMemPoolImportFromShareableHandle = __library
19637                .get(b"cudaMemPoolImportFromShareableHandle\0")
19638                .map(|sym| *sym)
19639                .expect("Expected symbol in library");
19640            let cudaMemPoolImportPointer = __library
19641                .get(b"cudaMemPoolImportPointer\0")
19642                .map(|sym| *sym)
19643                .expect("Expected symbol in library");
19644            let cudaMemPoolSetAccess = __library
19645                .get(b"cudaMemPoolSetAccess\0")
19646                .map(|sym| *sym)
19647                .expect("Expected symbol in library");
19648            let cudaMemPoolSetAttribute = __library
19649                .get(b"cudaMemPoolSetAttribute\0")
19650                .map(|sym| *sym)
19651                .expect("Expected symbol in library");
19652            let cudaMemPoolTrimTo = __library
19653                .get(b"cudaMemPoolTrimTo\0")
19654                .map(|sym| *sym)
19655                .expect("Expected symbol in library");
19656            #[cfg(any(
19657                feature = "cuda-11040",
19658                feature = "cuda-11050",
19659                feature = "cuda-11060",
19660                feature = "cuda-11070",
19661                feature = "cuda-11080",
19662                feature = "cuda-12000",
19663                feature = "cuda-12010",
19664                feature = "cuda-12020",
19665                feature = "cuda-12030",
19666                feature = "cuda-12040",
19667                feature = "cuda-12050",
19668                feature = "cuda-12060",
19669                feature = "cuda-12080",
19670                feature = "cuda-12090"
19671            ))]
19672            let cudaMemPrefetchAsync = __library
19673                .get(b"cudaMemPrefetchAsync\0")
19674                .map(|sym| *sym)
19675                .expect("Expected symbol in library");
19676            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19677            let cudaMemPrefetchAsync = __library
19678                .get(b"cudaMemPrefetchAsync\0")
19679                .map(|sym| *sym)
19680                .expect("Expected symbol in library");
19681            #[cfg(any(
19682                feature = "cuda-12020",
19683                feature = "cuda-12030",
19684                feature = "cuda-12040",
19685                feature = "cuda-12050",
19686                feature = "cuda-12060",
19687                feature = "cuda-12080",
19688                feature = "cuda-12090"
19689            ))]
19690            let cudaMemPrefetchAsync_v2 = __library
19691                .get(b"cudaMemPrefetchAsync_v2\0")
19692                .map(|sym| *sym)
19693                .expect("Expected symbol in library");
19694            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19695            let cudaMemPrefetchBatchAsync = __library
19696                .get(b"cudaMemPrefetchBatchAsync\0")
19697                .map(|sym| *sym)
19698                .expect("Expected symbol in library");
19699            let cudaMemRangeGetAttribute = __library
19700                .get(b"cudaMemRangeGetAttribute\0")
19701                .map(|sym| *sym)
19702                .expect("Expected symbol in library");
19703            let cudaMemRangeGetAttributes = __library
19704                .get(b"cudaMemRangeGetAttributes\0")
19705                .map(|sym| *sym)
19706                .expect("Expected symbol in library");
19707            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19708            let cudaMemSetMemPool = __library
19709                .get(b"cudaMemSetMemPool\0")
19710                .map(|sym| *sym)
19711                .expect("Expected symbol in library");
19712            let cudaMemcpy = __library
19713                .get(b"cudaMemcpy\0")
19714                .map(|sym| *sym)
19715                .expect("Expected symbol in library");
19716            let cudaMemcpy2D = __library
19717                .get(b"cudaMemcpy2D\0")
19718                .map(|sym| *sym)
19719                .expect("Expected symbol in library");
19720            let cudaMemcpy2DArrayToArray = __library
19721                .get(b"cudaMemcpy2DArrayToArray\0")
19722                .map(|sym| *sym)
19723                .expect("Expected symbol in library");
19724            let cudaMemcpy2DAsync = __library
19725                .get(b"cudaMemcpy2DAsync\0")
19726                .map(|sym| *sym)
19727                .expect("Expected symbol in library");
19728            let cudaMemcpy2DFromArray = __library
19729                .get(b"cudaMemcpy2DFromArray\0")
19730                .map(|sym| *sym)
19731                .expect("Expected symbol in library");
19732            let cudaMemcpy2DFromArrayAsync = __library
19733                .get(b"cudaMemcpy2DFromArrayAsync\0")
19734                .map(|sym| *sym)
19735                .expect("Expected symbol in library");
19736            let cudaMemcpy2DToArray = __library
19737                .get(b"cudaMemcpy2DToArray\0")
19738                .map(|sym| *sym)
19739                .expect("Expected symbol in library");
19740            let cudaMemcpy2DToArrayAsync = __library
19741                .get(b"cudaMemcpy2DToArrayAsync\0")
19742                .map(|sym| *sym)
19743                .expect("Expected symbol in library");
19744            let cudaMemcpy3D = __library
19745                .get(b"cudaMemcpy3D\0")
19746                .map(|sym| *sym)
19747                .expect("Expected symbol in library");
19748            let cudaMemcpy3DAsync = __library
19749                .get(b"cudaMemcpy3DAsync\0")
19750                .map(|sym| *sym)
19751                .expect("Expected symbol in library");
19752            #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
19753            let cudaMemcpy3DBatchAsync = __library
19754                .get(b"cudaMemcpy3DBatchAsync\0")
19755                .map(|sym| *sym)
19756                .expect("Expected symbol in library");
19757            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19758            let cudaMemcpy3DBatchAsync = __library
19759                .get(b"cudaMemcpy3DBatchAsync\0")
19760                .map(|sym| *sym)
19761                .expect("Expected symbol in library");
19762            let cudaMemcpy3DPeer = __library
19763                .get(b"cudaMemcpy3DPeer\0")
19764                .map(|sym| *sym)
19765                .expect("Expected symbol in library");
19766            let cudaMemcpy3DPeerAsync = __library
19767                .get(b"cudaMemcpy3DPeerAsync\0")
19768                .map(|sym| *sym)
19769                .expect("Expected symbol in library");
19770            #[cfg(any(feature = "cuda-13020"))]
19771            let cudaMemcpy3DWithAttributesAsync = __library
19772                .get(b"cudaMemcpy3DWithAttributesAsync\0")
19773                .map(|sym| *sym)
19774                .expect("Expected symbol in library");
19775            let cudaMemcpyArrayToArray = __library
19776                .get(b"cudaMemcpyArrayToArray\0")
19777                .map(|sym| *sym)
19778                .expect("Expected symbol in library");
19779            let cudaMemcpyAsync = __library
19780                .get(b"cudaMemcpyAsync\0")
19781                .map(|sym| *sym)
19782                .expect("Expected symbol in library");
19783            #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
19784            let cudaMemcpyBatchAsync = __library
19785                .get(b"cudaMemcpyBatchAsync\0")
19786                .map(|sym| *sym)
19787                .expect("Expected symbol in library");
19788            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
19789            let cudaMemcpyBatchAsync = __library
19790                .get(b"cudaMemcpyBatchAsync\0")
19791                .map(|sym| *sym)
19792                .expect("Expected symbol in library");
19793            let cudaMemcpyFromArray = __library
19794                .get(b"cudaMemcpyFromArray\0")
19795                .map(|sym| *sym)
19796                .expect("Expected symbol in library");
19797            let cudaMemcpyFromArrayAsync = __library
19798                .get(b"cudaMemcpyFromArrayAsync\0")
19799                .map(|sym| *sym)
19800                .expect("Expected symbol in library");
19801            let cudaMemcpyFromSymbol = __library
19802                .get(b"cudaMemcpyFromSymbol\0")
19803                .map(|sym| *sym)
19804                .expect("Expected symbol in library");
19805            let cudaMemcpyFromSymbolAsync = __library
19806                .get(b"cudaMemcpyFromSymbolAsync\0")
19807                .map(|sym| *sym)
19808                .expect("Expected symbol in library");
19809            let cudaMemcpyPeer = __library
19810                .get(b"cudaMemcpyPeer\0")
19811                .map(|sym| *sym)
19812                .expect("Expected symbol in library");
19813            let cudaMemcpyPeerAsync = __library
19814                .get(b"cudaMemcpyPeerAsync\0")
19815                .map(|sym| *sym)
19816                .expect("Expected symbol in library");
19817            let cudaMemcpyToArray = __library
19818                .get(b"cudaMemcpyToArray\0")
19819                .map(|sym| *sym)
19820                .expect("Expected symbol in library");
19821            let cudaMemcpyToArrayAsync = __library
19822                .get(b"cudaMemcpyToArrayAsync\0")
19823                .map(|sym| *sym)
19824                .expect("Expected symbol in library");
19825            let cudaMemcpyToSymbol = __library
19826                .get(b"cudaMemcpyToSymbol\0")
19827                .map(|sym| *sym)
19828                .expect("Expected symbol in library");
19829            let cudaMemcpyToSymbolAsync = __library
19830                .get(b"cudaMemcpyToSymbolAsync\0")
19831                .map(|sym| *sym)
19832                .expect("Expected symbol in library");
19833            #[cfg(any(feature = "cuda-13020"))]
19834            let cudaMemcpyWithAttributesAsync = __library
19835                .get(b"cudaMemcpyWithAttributesAsync\0")
19836                .map(|sym| *sym)
19837                .expect("Expected symbol in library");
19838            let cudaMemset = __library
19839                .get(b"cudaMemset\0")
19840                .map(|sym| *sym)
19841                .expect("Expected symbol in library");
19842            let cudaMemset2D = __library
19843                .get(b"cudaMemset2D\0")
19844                .map(|sym| *sym)
19845                .expect("Expected symbol in library");
19846            let cudaMemset2DAsync = __library
19847                .get(b"cudaMemset2DAsync\0")
19848                .map(|sym| *sym)
19849                .expect("Expected symbol in library");
19850            let cudaMemset3D = __library
19851                .get(b"cudaMemset3D\0")
19852                .map(|sym| *sym)
19853                .expect("Expected symbol in library");
19854            let cudaMemset3DAsync = __library
19855                .get(b"cudaMemset3DAsync\0")
19856                .map(|sym| *sym)
19857                .expect("Expected symbol in library");
19858            let cudaMemsetAsync = __library
19859                .get(b"cudaMemsetAsync\0")
19860                .map(|sym| *sym)
19861                .expect("Expected symbol in library");
19862            #[cfg(any(
19863                feature = "cuda-11060",
19864                feature = "cuda-11070",
19865                feature = "cuda-11080",
19866                feature = "cuda-12000",
19867                feature = "cuda-12010",
19868                feature = "cuda-12020",
19869                feature = "cuda-12030",
19870                feature = "cuda-12040",
19871                feature = "cuda-12050",
19872                feature = "cuda-12060",
19873                feature = "cuda-12080",
19874                feature = "cuda-12090",
19875                feature = "cuda-13000",
19876                feature = "cuda-13010",
19877                feature = "cuda-13020"
19878            ))]
19879            let cudaMipmappedArrayGetMemoryRequirements = __library
19880                .get(b"cudaMipmappedArrayGetMemoryRequirements\0")
19881                .map(|sym| *sym)
19882                .expect("Expected symbol in library");
19883            let cudaMipmappedArrayGetSparseProperties = __library
19884                .get(b"cudaMipmappedArrayGetSparseProperties\0")
19885                .map(|sym| *sym)
19886                .expect("Expected symbol in library");
19887            let cudaOccupancyAvailableDynamicSMemPerBlock = __library
19888                .get(b"cudaOccupancyAvailableDynamicSMemPerBlock\0")
19889                .map(|sym| *sym)
19890                .expect("Expected symbol in library");
19891            let cudaOccupancyMaxActiveBlocksPerMultiprocessor = __library
19892                .get(b"cudaOccupancyMaxActiveBlocksPerMultiprocessor\0")
19893                .map(|sym| *sym)
19894                .expect("Expected symbol in library");
19895            let cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = __library
19896                .get(b"cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags\0")
19897                .map(|sym| *sym)
19898                .expect("Expected symbol in library");
19899            #[cfg(any(
19900                feature = "cuda-11080",
19901                feature = "cuda-12000",
19902                feature = "cuda-12010",
19903                feature = "cuda-12020",
19904                feature = "cuda-12030",
19905                feature = "cuda-12040",
19906                feature = "cuda-12050",
19907                feature = "cuda-12060",
19908                feature = "cuda-12080",
19909                feature = "cuda-12090",
19910                feature = "cuda-13000",
19911                feature = "cuda-13010",
19912                feature = "cuda-13020"
19913            ))]
19914            let cudaOccupancyMaxActiveClusters = __library
19915                .get(b"cudaOccupancyMaxActiveClusters\0")
19916                .map(|sym| *sym)
19917                .expect("Expected symbol in library");
19918            #[cfg(any(
19919                feature = "cuda-11080",
19920                feature = "cuda-12000",
19921                feature = "cuda-12010",
19922                feature = "cuda-12020",
19923                feature = "cuda-12030",
19924                feature = "cuda-12040",
19925                feature = "cuda-12050",
19926                feature = "cuda-12060",
19927                feature = "cuda-12080",
19928                feature = "cuda-12090",
19929                feature = "cuda-13000",
19930                feature = "cuda-13010",
19931                feature = "cuda-13020"
19932            ))]
19933            let cudaOccupancyMaxPotentialClusterSize = __library
19934                .get(b"cudaOccupancyMaxPotentialClusterSize\0")
19935                .map(|sym| *sym)
19936                .expect("Expected symbol in library");
19937            let cudaPeekAtLastError = __library
19938                .get(b"cudaPeekAtLastError\0")
19939                .map(|sym| *sym)
19940                .expect("Expected symbol in library");
19941            let cudaPointerGetAttributes = __library
19942                .get(b"cudaPointerGetAttributes\0")
19943                .map(|sym| *sym)
19944                .expect("Expected symbol in library");
19945            let cudaProfilerStop = __library
19946                .get(b"cudaProfilerStop\0")
19947                .map(|sym| *sym)
19948                .expect("Expected symbol in library");
19949            let cudaRuntimeGetVersion = __library
19950                .get(b"cudaRuntimeGetVersion\0")
19951                .map(|sym| *sym)
19952                .expect("Expected symbol in library");
19953            let cudaSetDevice = __library
19954                .get(b"cudaSetDevice\0")
19955                .map(|sym| *sym)
19956                .expect("Expected symbol in library");
19957            let cudaSetDeviceFlags = __library
19958                .get(b"cudaSetDeviceFlags\0")
19959                .map(|sym| *sym)
19960                .expect("Expected symbol in library");
19961            #[cfg(any(
19962                feature = "cuda-11040",
19963                feature = "cuda-11050",
19964                feature = "cuda-11060",
19965                feature = "cuda-11070",
19966                feature = "cuda-11080",
19967                feature = "cuda-12000",
19968                feature = "cuda-12010",
19969                feature = "cuda-12020",
19970                feature = "cuda-12030",
19971                feature = "cuda-12040",
19972                feature = "cuda-12050",
19973                feature = "cuda-12060",
19974                feature = "cuda-12080",
19975                feature = "cuda-12090"
19976            ))]
19977            let cudaSetDoubleForDevice = __library
19978                .get(b"cudaSetDoubleForDevice\0")
19979                .map(|sym| *sym)
19980                .expect("Expected symbol in library");
19981            #[cfg(any(
19982                feature = "cuda-11040",
19983                feature = "cuda-11050",
19984                feature = "cuda-11060",
19985                feature = "cuda-11070",
19986                feature = "cuda-11080",
19987                feature = "cuda-12000",
19988                feature = "cuda-12010",
19989                feature = "cuda-12020",
19990                feature = "cuda-12030",
19991                feature = "cuda-12040",
19992                feature = "cuda-12050",
19993                feature = "cuda-12060",
19994                feature = "cuda-12080",
19995                feature = "cuda-12090"
19996            ))]
19997            let cudaSetDoubleForHost = __library
19998                .get(b"cudaSetDoubleForHost\0")
19999                .map(|sym| *sym)
20000                .expect("Expected symbol in library");
20001            let cudaSetValidDevices = __library
20002                .get(b"cudaSetValidDevices\0")
20003                .map(|sym| *sym)
20004                .expect("Expected symbol in library");
20005            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
20006            let cudaSignalExternalSemaphoresAsync = __library
20007                .get(b"cudaSignalExternalSemaphoresAsync\0")
20008                .map(|sym| *sym)
20009                .expect("Expected symbol in library");
20010            #[cfg(any(
20011                feature = "cuda-11040",
20012                feature = "cuda-11050",
20013                feature = "cuda-11060",
20014                feature = "cuda-11070",
20015                feature = "cuda-11080",
20016                feature = "cuda-12000",
20017                feature = "cuda-12010",
20018                feature = "cuda-12020",
20019                feature = "cuda-12030",
20020                feature = "cuda-12040",
20021                feature = "cuda-12050",
20022                feature = "cuda-12060",
20023                feature = "cuda-12080",
20024                feature = "cuda-12090"
20025            ))]
20026            let cudaSignalExternalSemaphoresAsync_v2 = __library
20027                .get(b"cudaSignalExternalSemaphoresAsync_v2\0")
20028                .map(|sym| *sym)
20029                .expect("Expected symbol in library");
20030            let cudaStreamAddCallback = __library
20031                .get(b"cudaStreamAddCallback\0")
20032                .map(|sym| *sym)
20033                .expect("Expected symbol in library");
20034            let cudaStreamAttachMemAsync = __library
20035                .get(b"cudaStreamAttachMemAsync\0")
20036                .map(|sym| *sym)
20037                .expect("Expected symbol in library");
20038            let cudaStreamBeginCapture = __library
20039                .get(b"cudaStreamBeginCapture\0")
20040                .map(|sym| *sym)
20041                .expect("Expected symbol in library");
20042            #[cfg(any(
20043                feature = "cuda-12030",
20044                feature = "cuda-12040",
20045                feature = "cuda-12050",
20046                feature = "cuda-12060",
20047                feature = "cuda-12080",
20048                feature = "cuda-12090",
20049                feature = "cuda-13000",
20050                feature = "cuda-13010",
20051                feature = "cuda-13020"
20052            ))]
20053            let cudaStreamBeginCaptureToGraph = __library
20054                .get(b"cudaStreamBeginCaptureToGraph\0")
20055                .map(|sym| *sym)
20056                .expect("Expected symbol in library");
20057            let cudaStreamCopyAttributes = __library
20058                .get(b"cudaStreamCopyAttributes\0")
20059                .map(|sym| *sym)
20060                .expect("Expected symbol in library");
20061            let cudaStreamCreate = __library
20062                .get(b"cudaStreamCreate\0")
20063                .map(|sym| *sym)
20064                .expect("Expected symbol in library");
20065            let cudaStreamCreateWithFlags = __library
20066                .get(b"cudaStreamCreateWithFlags\0")
20067                .map(|sym| *sym)
20068                .expect("Expected symbol in library");
20069            let cudaStreamCreateWithPriority = __library
20070                .get(b"cudaStreamCreateWithPriority\0")
20071                .map(|sym| *sym)
20072                .expect("Expected symbol in library");
20073            let cudaStreamDestroy = __library
20074                .get(b"cudaStreamDestroy\0")
20075                .map(|sym| *sym)
20076                .expect("Expected symbol in library");
20077            let cudaStreamEndCapture = __library
20078                .get(b"cudaStreamEndCapture\0")
20079                .map(|sym| *sym)
20080                .expect("Expected symbol in library");
20081            #[cfg(any(
20082                feature = "cuda-11040",
20083                feature = "cuda-11050",
20084                feature = "cuda-11060",
20085                feature = "cuda-11070"
20086            ))]
20087            let cudaStreamGetAttribute = __library
20088                .get(b"cudaStreamGetAttribute\0")
20089                .map(|sym| *sym)
20090                .expect("Expected symbol in library");
20091            #[cfg(any(
20092                feature = "cuda-11080",
20093                feature = "cuda-12000",
20094                feature = "cuda-12010",
20095                feature = "cuda-12020",
20096                feature = "cuda-12030",
20097                feature = "cuda-12040",
20098                feature = "cuda-12050",
20099                feature = "cuda-12060",
20100                feature = "cuda-12080",
20101                feature = "cuda-12090",
20102                feature = "cuda-13000",
20103                feature = "cuda-13010",
20104                feature = "cuda-13020"
20105            ))]
20106            let cudaStreamGetAttribute = __library
20107                .get(b"cudaStreamGetAttribute\0")
20108                .map(|sym| *sym)
20109                .expect("Expected symbol in library");
20110            #[cfg(any(
20111                feature = "cuda-11040",
20112                feature = "cuda-11050",
20113                feature = "cuda-11060",
20114                feature = "cuda-11070",
20115                feature = "cuda-11080"
20116            ))]
20117            let cudaStreamGetCaptureInfo = __library
20118                .get(b"cudaStreamGetCaptureInfo\0")
20119                .map(|sym| *sym)
20120                .expect("Expected symbol in library");
20121            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
20122            let cudaStreamGetCaptureInfo = __library
20123                .get(b"cudaStreamGetCaptureInfo\0")
20124                .map(|sym| *sym)
20125                .expect("Expected symbol in library");
20126            #[cfg(any(
20127                feature = "cuda-11040",
20128                feature = "cuda-11050",
20129                feature = "cuda-11060",
20130                feature = "cuda-11070",
20131                feature = "cuda-11080",
20132                feature = "cuda-12000",
20133                feature = "cuda-12010",
20134                feature = "cuda-12020",
20135                feature = "cuda-12030",
20136                feature = "cuda-12040",
20137                feature = "cuda-12050",
20138                feature = "cuda-12060",
20139                feature = "cuda-12080",
20140                feature = "cuda-12090"
20141            ))]
20142            let cudaStreamGetCaptureInfo_v2 = __library
20143                .get(b"cudaStreamGetCaptureInfo_v2\0")
20144                .map(|sym| *sym)
20145                .expect("Expected symbol in library");
20146            #[cfg(any(
20147                feature = "cuda-12030",
20148                feature = "cuda-12040",
20149                feature = "cuda-12050",
20150                feature = "cuda-12060",
20151                feature = "cuda-12080",
20152                feature = "cuda-12090"
20153            ))]
20154            let cudaStreamGetCaptureInfo_v3 = __library
20155                .get(b"cudaStreamGetCaptureInfo_v3\0")
20156                .map(|sym| *sym)
20157                .expect("Expected symbol in library");
20158            #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20159            let cudaStreamGetDevResource = __library
20160                .get(b"cudaStreamGetDevResource\0")
20161                .map(|sym| *sym)
20162                .expect("Expected symbol in library");
20163            #[cfg(any(
20164                feature = "cuda-12080",
20165                feature = "cuda-12090",
20166                feature = "cuda-13000",
20167                feature = "cuda-13010",
20168                feature = "cuda-13020"
20169            ))]
20170            let cudaStreamGetDevice = __library
20171                .get(b"cudaStreamGetDevice\0")
20172                .map(|sym| *sym)
20173                .expect("Expected symbol in library");
20174            let cudaStreamGetFlags = __library
20175                .get(b"cudaStreamGetFlags\0")
20176                .map(|sym| *sym)
20177                .expect("Expected symbol in library");
20178            #[cfg(any(
20179                feature = "cuda-12000",
20180                feature = "cuda-12010",
20181                feature = "cuda-12020",
20182                feature = "cuda-12030",
20183                feature = "cuda-12040",
20184                feature = "cuda-12050",
20185                feature = "cuda-12060",
20186                feature = "cuda-12080",
20187                feature = "cuda-12090",
20188                feature = "cuda-13000",
20189                feature = "cuda-13010",
20190                feature = "cuda-13020"
20191            ))]
20192            let cudaStreamGetId = __library
20193                .get(b"cudaStreamGetId\0")
20194                .map(|sym| *sym)
20195                .expect("Expected symbol in library");
20196            let cudaStreamGetPriority = __library
20197                .get(b"cudaStreamGetPriority\0")
20198                .map(|sym| *sym)
20199                .expect("Expected symbol in library");
20200            let cudaStreamIsCapturing = __library
20201                .get(b"cudaStreamIsCapturing\0")
20202                .map(|sym| *sym)
20203                .expect("Expected symbol in library");
20204            let cudaStreamQuery = __library
20205                .get(b"cudaStreamQuery\0")
20206                .map(|sym| *sym)
20207                .expect("Expected symbol in library");
20208            #[cfg(any(
20209                feature = "cuda-11040",
20210                feature = "cuda-11050",
20211                feature = "cuda-11060",
20212                feature = "cuda-11070"
20213            ))]
20214            let cudaStreamSetAttribute = __library
20215                .get(b"cudaStreamSetAttribute\0")
20216                .map(|sym| *sym)
20217                .expect("Expected symbol in library");
20218            #[cfg(any(
20219                feature = "cuda-11080",
20220                feature = "cuda-12000",
20221                feature = "cuda-12010",
20222                feature = "cuda-12020",
20223                feature = "cuda-12030",
20224                feature = "cuda-12040",
20225                feature = "cuda-12050",
20226                feature = "cuda-12060",
20227                feature = "cuda-12080",
20228                feature = "cuda-12090",
20229                feature = "cuda-13000",
20230                feature = "cuda-13010",
20231                feature = "cuda-13020"
20232            ))]
20233            let cudaStreamSetAttribute = __library
20234                .get(b"cudaStreamSetAttribute\0")
20235                .map(|sym| *sym)
20236                .expect("Expected symbol in library");
20237            let cudaStreamSynchronize = __library
20238                .get(b"cudaStreamSynchronize\0")
20239                .map(|sym| *sym)
20240                .expect("Expected symbol in library");
20241            #[cfg(any(
20242                feature = "cuda-11040",
20243                feature = "cuda-11050",
20244                feature = "cuda-11060",
20245                feature = "cuda-11070",
20246                feature = "cuda-11080",
20247                feature = "cuda-12000",
20248                feature = "cuda-12010",
20249                feature = "cuda-12020",
20250                feature = "cuda-12030",
20251                feature = "cuda-12040",
20252                feature = "cuda-12050",
20253                feature = "cuda-12060",
20254                feature = "cuda-12080",
20255                feature = "cuda-12090"
20256            ))]
20257            let cudaStreamUpdateCaptureDependencies = __library
20258                .get(b"cudaStreamUpdateCaptureDependencies\0")
20259                .map(|sym| *sym)
20260                .expect("Expected symbol in library");
20261            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
20262            let cudaStreamUpdateCaptureDependencies = __library
20263                .get(b"cudaStreamUpdateCaptureDependencies\0")
20264                .map(|sym| *sym)
20265                .expect("Expected symbol in library");
20266            #[cfg(any(
20267                feature = "cuda-12030",
20268                feature = "cuda-12040",
20269                feature = "cuda-12050",
20270                feature = "cuda-12060",
20271                feature = "cuda-12080",
20272                feature = "cuda-12090"
20273            ))]
20274            let cudaStreamUpdateCaptureDependencies_v2 = __library
20275                .get(b"cudaStreamUpdateCaptureDependencies_v2\0")
20276                .map(|sym| *sym)
20277                .expect("Expected symbol in library");
20278            let cudaStreamWaitEvent = __library
20279                .get(b"cudaStreamWaitEvent\0")
20280                .map(|sym| *sym)
20281                .expect("Expected symbol in library");
20282            let cudaThreadExchangeStreamCaptureMode = __library
20283                .get(b"cudaThreadExchangeStreamCaptureMode\0")
20284                .map(|sym| *sym)
20285                .expect("Expected symbol in library");
20286            #[cfg(any(
20287                feature = "cuda-11040",
20288                feature = "cuda-11050",
20289                feature = "cuda-11060",
20290                feature = "cuda-11070",
20291                feature = "cuda-11080",
20292                feature = "cuda-12000",
20293                feature = "cuda-12010",
20294                feature = "cuda-12020",
20295                feature = "cuda-12030",
20296                feature = "cuda-12040",
20297                feature = "cuda-12050",
20298                feature = "cuda-12060",
20299                feature = "cuda-12080",
20300                feature = "cuda-12090"
20301            ))]
20302            let cudaThreadExit = __library
20303                .get(b"cudaThreadExit\0")
20304                .map(|sym| *sym)
20305                .expect("Expected symbol in library");
20306            #[cfg(any(
20307                feature = "cuda-11040",
20308                feature = "cuda-11050",
20309                feature = "cuda-11060",
20310                feature = "cuda-11070",
20311                feature = "cuda-11080",
20312                feature = "cuda-12000",
20313                feature = "cuda-12010",
20314                feature = "cuda-12020",
20315                feature = "cuda-12030",
20316                feature = "cuda-12040",
20317                feature = "cuda-12050",
20318                feature = "cuda-12060",
20319                feature = "cuda-12080",
20320                feature = "cuda-12090"
20321            ))]
20322            let cudaThreadGetCacheConfig = __library
20323                .get(b"cudaThreadGetCacheConfig\0")
20324                .map(|sym| *sym)
20325                .expect("Expected symbol in library");
20326            #[cfg(any(
20327                feature = "cuda-11040",
20328                feature = "cuda-11050",
20329                feature = "cuda-11060",
20330                feature = "cuda-11070",
20331                feature = "cuda-11080",
20332                feature = "cuda-12000",
20333                feature = "cuda-12010",
20334                feature = "cuda-12020",
20335                feature = "cuda-12030",
20336                feature = "cuda-12040",
20337                feature = "cuda-12050",
20338                feature = "cuda-12060",
20339                feature = "cuda-12080",
20340                feature = "cuda-12090"
20341            ))]
20342            let cudaThreadGetLimit = __library
20343                .get(b"cudaThreadGetLimit\0")
20344                .map(|sym| *sym)
20345                .expect("Expected symbol in library");
20346            #[cfg(any(
20347                feature = "cuda-11040",
20348                feature = "cuda-11050",
20349                feature = "cuda-11060",
20350                feature = "cuda-11070",
20351                feature = "cuda-11080",
20352                feature = "cuda-12000",
20353                feature = "cuda-12010",
20354                feature = "cuda-12020",
20355                feature = "cuda-12030",
20356                feature = "cuda-12040",
20357                feature = "cuda-12050",
20358                feature = "cuda-12060",
20359                feature = "cuda-12080",
20360                feature = "cuda-12090"
20361            ))]
20362            let cudaThreadSetCacheConfig = __library
20363                .get(b"cudaThreadSetCacheConfig\0")
20364                .map(|sym| *sym)
20365                .expect("Expected symbol in library");
20366            #[cfg(any(
20367                feature = "cuda-11040",
20368                feature = "cuda-11050",
20369                feature = "cuda-11060",
20370                feature = "cuda-11070",
20371                feature = "cuda-11080",
20372                feature = "cuda-12000",
20373                feature = "cuda-12010",
20374                feature = "cuda-12020",
20375                feature = "cuda-12030",
20376                feature = "cuda-12040",
20377                feature = "cuda-12050",
20378                feature = "cuda-12060",
20379                feature = "cuda-12080",
20380                feature = "cuda-12090"
20381            ))]
20382            let cudaThreadSetLimit = __library
20383                .get(b"cudaThreadSetLimit\0")
20384                .map(|sym| *sym)
20385                .expect("Expected symbol in library");
20386            #[cfg(any(
20387                feature = "cuda-11040",
20388                feature = "cuda-11050",
20389                feature = "cuda-11060",
20390                feature = "cuda-11070",
20391                feature = "cuda-11080",
20392                feature = "cuda-12000",
20393                feature = "cuda-12010",
20394                feature = "cuda-12020",
20395                feature = "cuda-12030",
20396                feature = "cuda-12040",
20397                feature = "cuda-12050",
20398                feature = "cuda-12060",
20399                feature = "cuda-12080",
20400                feature = "cuda-12090"
20401            ))]
20402            let cudaThreadSynchronize = __library
20403                .get(b"cudaThreadSynchronize\0")
20404                .map(|sym| *sym)
20405                .expect("Expected symbol in library");
20406            #[cfg(any(
20407                feature = "cuda-11040",
20408                feature = "cuda-11050",
20409                feature = "cuda-11060",
20410                feature = "cuda-11070",
20411                feature = "cuda-11080"
20412            ))]
20413            let cudaUnbindTexture = __library
20414                .get(b"cudaUnbindTexture\0")
20415                .map(|sym| *sym)
20416                .expect("Expected symbol in library");
20417            let cudaUserObjectCreate = __library
20418                .get(b"cudaUserObjectCreate\0")
20419                .map(|sym| *sym)
20420                .expect("Expected symbol in library");
20421            let cudaUserObjectRelease = __library
20422                .get(b"cudaUserObjectRelease\0")
20423                .map(|sym| *sym)
20424                .expect("Expected symbol in library");
20425            let cudaUserObjectRetain = __library
20426                .get(b"cudaUserObjectRetain\0")
20427                .map(|sym| *sym)
20428                .expect("Expected symbol in library");
20429            #[cfg(any(feature = "cuda-13000", feature = "cuda-13010", feature = "cuda-13020"))]
20430            let cudaWaitExternalSemaphoresAsync = __library
20431                .get(b"cudaWaitExternalSemaphoresAsync\0")
20432                .map(|sym| *sym)
20433                .expect("Expected symbol in library");
20434            #[cfg(any(
20435                feature = "cuda-11040",
20436                feature = "cuda-11050",
20437                feature = "cuda-11060",
20438                feature = "cuda-11070",
20439                feature = "cuda-11080",
20440                feature = "cuda-12000",
20441                feature = "cuda-12010",
20442                feature = "cuda-12020",
20443                feature = "cuda-12030",
20444                feature = "cuda-12040",
20445                feature = "cuda-12050",
20446                feature = "cuda-12060",
20447                feature = "cuda-12080",
20448                feature = "cuda-12090"
20449            ))]
20450            let cudaWaitExternalSemaphoresAsync_v2 = __library
20451                .get(b"cudaWaitExternalSemaphoresAsync_v2\0")
20452                .map(|sym| *sym)
20453                .expect("Expected symbol in library");
20454            Ok(Self {
20455                __library,
20456                cudaArrayGetInfo,
20457                #[cfg(any(
20458                    feature = "cuda-11060",
20459                    feature = "cuda-11070",
20460                    feature = "cuda-11080",
20461                    feature = "cuda-12000",
20462                    feature = "cuda-12010",
20463                    feature = "cuda-12020",
20464                    feature = "cuda-12030",
20465                    feature = "cuda-12040",
20466                    feature = "cuda-12050",
20467                    feature = "cuda-12060",
20468                    feature = "cuda-12080",
20469                    feature = "cuda-12090",
20470                    feature = "cuda-13000",
20471                    feature = "cuda-13010",
20472                    feature = "cuda-13020"
20473                ))]
20474                cudaArrayGetMemoryRequirements,
20475                cudaArrayGetPlane,
20476                cudaArrayGetSparseProperties,
20477                #[cfg(any(
20478                    feature = "cuda-11040",
20479                    feature = "cuda-11050",
20480                    feature = "cuda-11060",
20481                    feature = "cuda-11070",
20482                    feature = "cuda-11080"
20483                ))]
20484                cudaBindSurfaceToArray,
20485                #[cfg(any(
20486                    feature = "cuda-11040",
20487                    feature = "cuda-11050",
20488                    feature = "cuda-11060",
20489                    feature = "cuda-11070",
20490                    feature = "cuda-11080"
20491                ))]
20492                cudaBindTexture,
20493                #[cfg(any(
20494                    feature = "cuda-11040",
20495                    feature = "cuda-11050",
20496                    feature = "cuda-11060",
20497                    feature = "cuda-11070",
20498                    feature = "cuda-11080"
20499                ))]
20500                cudaBindTexture2D,
20501                #[cfg(any(
20502                    feature = "cuda-11040",
20503                    feature = "cuda-11050",
20504                    feature = "cuda-11060",
20505                    feature = "cuda-11070",
20506                    feature = "cuda-11080"
20507                ))]
20508                cudaBindTextureToArray,
20509                #[cfg(any(
20510                    feature = "cuda-11040",
20511                    feature = "cuda-11050",
20512                    feature = "cuda-11060",
20513                    feature = "cuda-11070",
20514                    feature = "cuda-11080"
20515                ))]
20516                cudaBindTextureToMipmappedArray,
20517                cudaChooseDevice,
20518                cudaCreateChannelDesc,
20519                cudaCreateSurfaceObject,
20520                cudaCreateTextureObject,
20521                #[cfg(any(feature = "cuda-11080"))]
20522                cudaCreateTextureObject_v2,
20523                cudaCtxResetPersistingL2Cache,
20524                cudaDestroyExternalMemory,
20525                cudaDestroyExternalSemaphore,
20526                cudaDestroySurfaceObject,
20527                cudaDestroyTextureObject,
20528                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20529                cudaDevResourceGenerateDesc,
20530                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20531                cudaDevSmResourceSplit,
20532                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20533                cudaDevSmResourceSplitByCount,
20534                cudaDeviceCanAccessPeer,
20535                cudaDeviceDisablePeerAccess,
20536                cudaDeviceEnablePeerAccess,
20537                cudaDeviceFlushGPUDirectRDMAWrites,
20538                cudaDeviceGetAttribute,
20539                cudaDeviceGetByPCIBusId,
20540                cudaDeviceGetCacheConfig,
20541                cudaDeviceGetDefaultMemPool,
20542                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20543                cudaDeviceGetDevResource,
20544                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20545                cudaDeviceGetExecutionCtx,
20546                cudaDeviceGetGraphMemAttribute,
20547                #[cfg(any(
20548                    feature = "cuda-13000",
20549                    feature = "cuda-13010",
20550                    feature = "cuda-13020"
20551                ))]
20552                cudaDeviceGetHostAtomicCapabilities,
20553                cudaDeviceGetLimit,
20554                cudaDeviceGetMemPool,
20555                #[cfg(any(
20556                    feature = "cuda-13000",
20557                    feature = "cuda-13010",
20558                    feature = "cuda-13020"
20559                ))]
20560                cudaDeviceGetP2PAtomicCapabilities,
20561                cudaDeviceGetP2PAttribute,
20562                cudaDeviceGetPCIBusId,
20563                cudaDeviceGetSharedMemConfig,
20564                cudaDeviceGetStreamPriorityRange,
20565                cudaDeviceGetTexture1DLinearMaxWidth,
20566                cudaDeviceGraphMemTrim,
20567                #[cfg(any(
20568                    feature = "cuda-12040",
20569                    feature = "cuda-12050",
20570                    feature = "cuda-12060",
20571                    feature = "cuda-12080",
20572                    feature = "cuda-12090",
20573                    feature = "cuda-13000",
20574                    feature = "cuda-13010",
20575                    feature = "cuda-13020"
20576                ))]
20577                cudaDeviceRegisterAsyncNotification,
20578                cudaDeviceReset,
20579                cudaDeviceSetCacheConfig,
20580                cudaDeviceSetGraphMemAttribute,
20581                cudaDeviceSetLimit,
20582                cudaDeviceSetMemPool,
20583                cudaDeviceSetSharedMemConfig,
20584                cudaDeviceSynchronize,
20585                #[cfg(any(
20586                    feature = "cuda-12040",
20587                    feature = "cuda-12050",
20588                    feature = "cuda-12060",
20589                    feature = "cuda-12080",
20590                    feature = "cuda-12090",
20591                    feature = "cuda-13000",
20592                    feature = "cuda-13010",
20593                    feature = "cuda-13020"
20594                ))]
20595                cudaDeviceUnregisterAsyncNotification,
20596                cudaDriverGetVersion,
20597                cudaEventCreate,
20598                cudaEventCreateWithFlags,
20599                cudaEventDestroy,
20600                cudaEventElapsedTime,
20601                #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
20602                cudaEventElapsedTime_v2,
20603                cudaEventQuery,
20604                cudaEventRecord,
20605                cudaEventRecordWithFlags,
20606                cudaEventSynchronize,
20607                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20608                cudaExecutionCtxDestroy,
20609                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20610                cudaExecutionCtxGetDevResource,
20611                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20612                cudaExecutionCtxGetDevice,
20613                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20614                cudaExecutionCtxGetId,
20615                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20616                cudaExecutionCtxRecordEvent,
20617                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20618                cudaExecutionCtxStreamCreate,
20619                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20620                cudaExecutionCtxSynchronize,
20621                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20622                cudaExecutionCtxWaitEvent,
20623                cudaExternalMemoryGetMappedBuffer,
20624                cudaExternalMemoryGetMappedMipmappedArray,
20625                cudaFree,
20626                cudaFreeArray,
20627                cudaFreeAsync,
20628                cudaFreeHost,
20629                cudaFreeMipmappedArray,
20630                cudaFuncGetAttributes,
20631                #[cfg(any(
20632                    feature = "cuda-12030",
20633                    feature = "cuda-12040",
20634                    feature = "cuda-12050",
20635                    feature = "cuda-12060",
20636                    feature = "cuda-12080",
20637                    feature = "cuda-12090",
20638                    feature = "cuda-13000",
20639                    feature = "cuda-13010",
20640                    feature = "cuda-13020"
20641                ))]
20642                cudaFuncGetName,
20643                #[cfg(any(feature = "cuda-13020"))]
20644                cudaFuncGetParamCount,
20645                #[cfg(any(
20646                    feature = "cuda-12040",
20647                    feature = "cuda-12050",
20648                    feature = "cuda-12060",
20649                    feature = "cuda-12080",
20650                    feature = "cuda-12090",
20651                    feature = "cuda-13000",
20652                    feature = "cuda-13010",
20653                    feature = "cuda-13020"
20654                ))]
20655                cudaFuncGetParamInfo,
20656                cudaFuncSetAttribute,
20657                cudaFuncSetCacheConfig,
20658                cudaFuncSetSharedMemConfig,
20659                cudaGetChannelDesc,
20660                cudaGetDevice,
20661                cudaGetDeviceCount,
20662                cudaGetDeviceFlags,
20663                #[cfg(any(
20664                    feature = "cuda-11040",
20665                    feature = "cuda-11050",
20666                    feature = "cuda-11060",
20667                    feature = "cuda-11070",
20668                    feature = "cuda-11080",
20669                    feature = "cuda-13000",
20670                    feature = "cuda-13010",
20671                    feature = "cuda-13020"
20672                ))]
20673                cudaGetDeviceProperties,
20674                #[cfg(any(
20675                    feature = "cuda-12000",
20676                    feature = "cuda-12010",
20677                    feature = "cuda-12020",
20678                    feature = "cuda-12030",
20679                    feature = "cuda-12040",
20680                    feature = "cuda-12050",
20681                    feature = "cuda-12060",
20682                    feature = "cuda-12080",
20683                    feature = "cuda-12090"
20684                ))]
20685                cudaGetDeviceProperties_v2,
20686                #[cfg(any(
20687                    feature = "cuda-11040",
20688                    feature = "cuda-11050",
20689                    feature = "cuda-11060",
20690                    feature = "cuda-11070",
20691                    feature = "cuda-11080"
20692                ))]
20693                cudaGetDriverEntryPoint,
20694                #[cfg(any(
20695                    feature = "cuda-12000",
20696                    feature = "cuda-12010",
20697                    feature = "cuda-12020",
20698                    feature = "cuda-12030",
20699                    feature = "cuda-12040",
20700                    feature = "cuda-12050",
20701                    feature = "cuda-12060",
20702                    feature = "cuda-12080",
20703                    feature = "cuda-12090",
20704                    feature = "cuda-13000",
20705                    feature = "cuda-13010",
20706                    feature = "cuda-13020"
20707                ))]
20708                cudaGetDriverEntryPoint,
20709                #[cfg(any(
20710                    feature = "cuda-12050",
20711                    feature = "cuda-12060",
20712                    feature = "cuda-12080",
20713                    feature = "cuda-12090",
20714                    feature = "cuda-13000",
20715                    feature = "cuda-13010",
20716                    feature = "cuda-13020"
20717                ))]
20718                cudaGetDriverEntryPointByVersion,
20719                cudaGetErrorName,
20720                cudaGetErrorString,
20721                cudaGetExportTable,
20722                cudaGetFuncBySymbol,
20723                #[cfg(any(
20724                    feature = "cuda-12010",
20725                    feature = "cuda-12020",
20726                    feature = "cuda-12030",
20727                    feature = "cuda-12040",
20728                    feature = "cuda-12050",
20729                    feature = "cuda-12060",
20730                    feature = "cuda-12080",
20731                    feature = "cuda-12090",
20732                    feature = "cuda-13000",
20733                    feature = "cuda-13010",
20734                    feature = "cuda-13020"
20735                ))]
20736                cudaGetKernel,
20737                cudaGetLastError,
20738                cudaGetMipmappedArrayLevel,
20739                cudaGetSurfaceObjectResourceDesc,
20740                #[cfg(any(
20741                    feature = "cuda-11040",
20742                    feature = "cuda-11050",
20743                    feature = "cuda-11060",
20744                    feature = "cuda-11070",
20745                    feature = "cuda-11080"
20746                ))]
20747                cudaGetSurfaceReference,
20748                cudaGetSymbolAddress,
20749                cudaGetSymbolSize,
20750                #[cfg(any(
20751                    feature = "cuda-11040",
20752                    feature = "cuda-11050",
20753                    feature = "cuda-11060",
20754                    feature = "cuda-11070",
20755                    feature = "cuda-11080"
20756                ))]
20757                cudaGetTextureAlignmentOffset,
20758                cudaGetTextureObjectResourceDesc,
20759                cudaGetTextureObjectResourceViewDesc,
20760                cudaGetTextureObjectTextureDesc,
20761                #[cfg(any(feature = "cuda-11080"))]
20762                cudaGetTextureObjectTextureDesc_v2,
20763                #[cfg(any(
20764                    feature = "cuda-11040",
20765                    feature = "cuda-11050",
20766                    feature = "cuda-11060",
20767                    feature = "cuda-11070",
20768                    feature = "cuda-11080"
20769                ))]
20770                cudaGetTextureReference,
20771                cudaGraphAddChildGraphNode,
20772                #[cfg(any(
20773                    feature = "cuda-11040",
20774                    feature = "cuda-11050",
20775                    feature = "cuda-11060",
20776                    feature = "cuda-11070",
20777                    feature = "cuda-11080",
20778                    feature = "cuda-12000",
20779                    feature = "cuda-12010",
20780                    feature = "cuda-12020",
20781                    feature = "cuda-12030",
20782                    feature = "cuda-12040",
20783                    feature = "cuda-12050",
20784                    feature = "cuda-12060",
20785                    feature = "cuda-12080",
20786                    feature = "cuda-12090"
20787                ))]
20788                cudaGraphAddDependencies,
20789                #[cfg(any(
20790                    feature = "cuda-13000",
20791                    feature = "cuda-13010",
20792                    feature = "cuda-13020"
20793                ))]
20794                cudaGraphAddDependencies,
20795                #[cfg(any(
20796                    feature = "cuda-12030",
20797                    feature = "cuda-12040",
20798                    feature = "cuda-12050",
20799                    feature = "cuda-12060",
20800                    feature = "cuda-12080",
20801                    feature = "cuda-12090"
20802                ))]
20803                cudaGraphAddDependencies_v2,
20804                cudaGraphAddEmptyNode,
20805                cudaGraphAddEventRecordNode,
20806                cudaGraphAddEventWaitNode,
20807                cudaGraphAddExternalSemaphoresSignalNode,
20808                cudaGraphAddExternalSemaphoresWaitNode,
20809                cudaGraphAddHostNode,
20810                cudaGraphAddKernelNode,
20811                cudaGraphAddMemAllocNode,
20812                cudaGraphAddMemFreeNode,
20813                cudaGraphAddMemcpyNode,
20814                cudaGraphAddMemcpyNode1D,
20815                cudaGraphAddMemcpyNodeFromSymbol,
20816                cudaGraphAddMemcpyNodeToSymbol,
20817                cudaGraphAddMemsetNode,
20818                #[cfg(any(
20819                    feature = "cuda-12020",
20820                    feature = "cuda-12030",
20821                    feature = "cuda-12040",
20822                    feature = "cuda-12050",
20823                    feature = "cuda-12060",
20824                    feature = "cuda-12080",
20825                    feature = "cuda-12090"
20826                ))]
20827                cudaGraphAddNode,
20828                #[cfg(any(
20829                    feature = "cuda-13000",
20830                    feature = "cuda-13010",
20831                    feature = "cuda-13020"
20832                ))]
20833                cudaGraphAddNode,
20834                #[cfg(any(
20835                    feature = "cuda-12030",
20836                    feature = "cuda-12040",
20837                    feature = "cuda-12050",
20838                    feature = "cuda-12060",
20839                    feature = "cuda-12080",
20840                    feature = "cuda-12090"
20841                ))]
20842                cudaGraphAddNode_v2,
20843                cudaGraphChildGraphNodeGetGraph,
20844                cudaGraphClone,
20845                #[cfg(any(
20846                    feature = "cuda-12030",
20847                    feature = "cuda-12040",
20848                    feature = "cuda-12050",
20849                    feature = "cuda-12060",
20850                    feature = "cuda-12080",
20851                    feature = "cuda-12090",
20852                    feature = "cuda-13000",
20853                    feature = "cuda-13010",
20854                    feature = "cuda-13020"
20855                ))]
20856                cudaGraphConditionalHandleCreate,
20857                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20858                cudaGraphConditionalHandleCreate_v2,
20859                cudaGraphCreate,
20860                cudaGraphDebugDotPrint,
20861                cudaGraphDestroy,
20862                cudaGraphDestroyNode,
20863                cudaGraphEventRecordNodeGetEvent,
20864                cudaGraphEventRecordNodeSetEvent,
20865                cudaGraphEventWaitNodeGetEvent,
20866                cudaGraphEventWaitNodeSetEvent,
20867                cudaGraphExecChildGraphNodeSetParams,
20868                cudaGraphExecDestroy,
20869                cudaGraphExecEventRecordNodeSetEvent,
20870                cudaGraphExecEventWaitNodeSetEvent,
20871                cudaGraphExecExternalSemaphoresSignalNodeSetParams,
20872                cudaGraphExecExternalSemaphoresWaitNodeSetParams,
20873                #[cfg(any(
20874                    feature = "cuda-12000",
20875                    feature = "cuda-12010",
20876                    feature = "cuda-12020",
20877                    feature = "cuda-12030",
20878                    feature = "cuda-12040",
20879                    feature = "cuda-12050",
20880                    feature = "cuda-12060",
20881                    feature = "cuda-12080",
20882                    feature = "cuda-12090",
20883                    feature = "cuda-13000",
20884                    feature = "cuda-13010",
20885                    feature = "cuda-13020"
20886                ))]
20887                cudaGraphExecGetFlags,
20888                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20889                cudaGraphExecGetId,
20890                cudaGraphExecHostNodeSetParams,
20891                cudaGraphExecKernelNodeSetParams,
20892                cudaGraphExecMemcpyNodeSetParams,
20893                cudaGraphExecMemcpyNodeSetParams1D,
20894                cudaGraphExecMemcpyNodeSetParamsFromSymbol,
20895                cudaGraphExecMemcpyNodeSetParamsToSymbol,
20896                cudaGraphExecMemsetNodeSetParams,
20897                #[cfg(any(
20898                    feature = "cuda-12020",
20899                    feature = "cuda-12030",
20900                    feature = "cuda-12040",
20901                    feature = "cuda-12050",
20902                    feature = "cuda-12060",
20903                    feature = "cuda-12080",
20904                    feature = "cuda-12090",
20905                    feature = "cuda-13000",
20906                    feature = "cuda-13010",
20907                    feature = "cuda-13020"
20908                ))]
20909                cudaGraphExecNodeSetParams,
20910                #[cfg(any(
20911                    feature = "cuda-11040",
20912                    feature = "cuda-11050",
20913                    feature = "cuda-11060",
20914                    feature = "cuda-11070",
20915                    feature = "cuda-11080"
20916                ))]
20917                cudaGraphExecUpdate,
20918                #[cfg(any(
20919                    feature = "cuda-12000",
20920                    feature = "cuda-12010",
20921                    feature = "cuda-12020",
20922                    feature = "cuda-12030",
20923                    feature = "cuda-12040",
20924                    feature = "cuda-12050",
20925                    feature = "cuda-12060",
20926                    feature = "cuda-12080",
20927                    feature = "cuda-12090",
20928                    feature = "cuda-13000",
20929                    feature = "cuda-13010",
20930                    feature = "cuda-13020"
20931                ))]
20932                cudaGraphExecUpdate,
20933                cudaGraphExternalSemaphoresSignalNodeGetParams,
20934                cudaGraphExternalSemaphoresSignalNodeSetParams,
20935                cudaGraphExternalSemaphoresWaitNodeGetParams,
20936                cudaGraphExternalSemaphoresWaitNodeSetParams,
20937                #[cfg(any(
20938                    feature = "cuda-11040",
20939                    feature = "cuda-11050",
20940                    feature = "cuda-11060",
20941                    feature = "cuda-11070",
20942                    feature = "cuda-11080",
20943                    feature = "cuda-12000",
20944                    feature = "cuda-12010",
20945                    feature = "cuda-12020",
20946                    feature = "cuda-12030",
20947                    feature = "cuda-12040",
20948                    feature = "cuda-12050",
20949                    feature = "cuda-12060",
20950                    feature = "cuda-12080",
20951                    feature = "cuda-12090"
20952                ))]
20953                cudaGraphGetEdges,
20954                #[cfg(any(
20955                    feature = "cuda-13000",
20956                    feature = "cuda-13010",
20957                    feature = "cuda-13020"
20958                ))]
20959                cudaGraphGetEdges,
20960                #[cfg(any(
20961                    feature = "cuda-12030",
20962                    feature = "cuda-12040",
20963                    feature = "cuda-12050",
20964                    feature = "cuda-12060",
20965                    feature = "cuda-12080",
20966                    feature = "cuda-12090"
20967                ))]
20968                cudaGraphGetEdges_v2,
20969                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
20970                cudaGraphGetId,
20971                cudaGraphGetNodes,
20972                cudaGraphGetRootNodes,
20973                cudaGraphHostNodeGetParams,
20974                cudaGraphHostNodeSetParams,
20975                #[cfg(any(
20976                    feature = "cuda-11040",
20977                    feature = "cuda-11050",
20978                    feature = "cuda-11060",
20979                    feature = "cuda-11070",
20980                    feature = "cuda-11080"
20981                ))]
20982                cudaGraphInstantiate,
20983                #[cfg(any(
20984                    feature = "cuda-12000",
20985                    feature = "cuda-12010",
20986                    feature = "cuda-12020",
20987                    feature = "cuda-12030",
20988                    feature = "cuda-12040",
20989                    feature = "cuda-12050",
20990                    feature = "cuda-12060",
20991                    feature = "cuda-12080",
20992                    feature = "cuda-12090",
20993                    feature = "cuda-13000",
20994                    feature = "cuda-13010",
20995                    feature = "cuda-13020"
20996                ))]
20997                cudaGraphInstantiate,
20998                cudaGraphInstantiateWithFlags,
20999                #[cfg(any(
21000                    feature = "cuda-12000",
21001                    feature = "cuda-12010",
21002                    feature = "cuda-12020",
21003                    feature = "cuda-12030",
21004                    feature = "cuda-12040",
21005                    feature = "cuda-12050",
21006                    feature = "cuda-12060",
21007                    feature = "cuda-12080",
21008                    feature = "cuda-12090",
21009                    feature = "cuda-13000",
21010                    feature = "cuda-13010",
21011                    feature = "cuda-13020"
21012                ))]
21013                cudaGraphInstantiateWithParams,
21014                #[cfg(any(
21015                    feature = "cuda-11040",
21016                    feature = "cuda-11050",
21017                    feature = "cuda-11060",
21018                    feature = "cuda-11070",
21019                    feature = "cuda-11080",
21020                    feature = "cuda-12000",
21021                    feature = "cuda-12010",
21022                    feature = "cuda-12020",
21023                    feature = "cuda-12030",
21024                    feature = "cuda-12040",
21025                    feature = "cuda-12050",
21026                    feature = "cuda-12060",
21027                    feature = "cuda-12080",
21028                    feature = "cuda-12090"
21029                ))]
21030                cudaGraphKernelNodeCopyAttributes,
21031                #[cfg(any(
21032                    feature = "cuda-13000",
21033                    feature = "cuda-13010",
21034                    feature = "cuda-13020"
21035                ))]
21036                cudaGraphKernelNodeCopyAttributes,
21037                #[cfg(any(
21038                    feature = "cuda-11040",
21039                    feature = "cuda-11050",
21040                    feature = "cuda-11060",
21041                    feature = "cuda-11070"
21042                ))]
21043                cudaGraphKernelNodeGetAttribute,
21044                #[cfg(any(
21045                    feature = "cuda-11080",
21046                    feature = "cuda-12000",
21047                    feature = "cuda-12010",
21048                    feature = "cuda-12020",
21049                    feature = "cuda-12030",
21050                    feature = "cuda-12040",
21051                    feature = "cuda-12050",
21052                    feature = "cuda-12060",
21053                    feature = "cuda-12080",
21054                    feature = "cuda-12090",
21055                    feature = "cuda-13000",
21056                    feature = "cuda-13010",
21057                    feature = "cuda-13020"
21058                ))]
21059                cudaGraphKernelNodeGetAttribute,
21060                cudaGraphKernelNodeGetParams,
21061                #[cfg(any(
21062                    feature = "cuda-11040",
21063                    feature = "cuda-11050",
21064                    feature = "cuda-11060",
21065                    feature = "cuda-11070"
21066                ))]
21067                cudaGraphKernelNodeSetAttribute,
21068                #[cfg(any(
21069                    feature = "cuda-11080",
21070                    feature = "cuda-12000",
21071                    feature = "cuda-12010",
21072                    feature = "cuda-12020",
21073                    feature = "cuda-12030",
21074                    feature = "cuda-12040",
21075                    feature = "cuda-12050",
21076                    feature = "cuda-12060",
21077                    feature = "cuda-12080",
21078                    feature = "cuda-12090",
21079                    feature = "cuda-13000",
21080                    feature = "cuda-13010",
21081                    feature = "cuda-13020"
21082                ))]
21083                cudaGraphKernelNodeSetAttribute,
21084                cudaGraphKernelNodeSetParams,
21085                cudaGraphLaunch,
21086                cudaGraphMemAllocNodeGetParams,
21087                cudaGraphMemFreeNodeGetParams,
21088                cudaGraphMemcpyNodeGetParams,
21089                cudaGraphMemcpyNodeSetParams,
21090                cudaGraphMemcpyNodeSetParams1D,
21091                cudaGraphMemcpyNodeSetParamsFromSymbol,
21092                cudaGraphMemcpyNodeSetParamsToSymbol,
21093                cudaGraphMemsetNodeGetParams,
21094                cudaGraphMemsetNodeSetParams,
21095                cudaGraphNodeFindInClone,
21096                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
21097                cudaGraphNodeGetContainingGraph,
21098                #[cfg(any(
21099                    feature = "cuda-11040",
21100                    feature = "cuda-11050",
21101                    feature = "cuda-11060",
21102                    feature = "cuda-11070",
21103                    feature = "cuda-11080",
21104                    feature = "cuda-12000",
21105                    feature = "cuda-12010",
21106                    feature = "cuda-12020",
21107                    feature = "cuda-12030",
21108                    feature = "cuda-12040",
21109                    feature = "cuda-12050",
21110                    feature = "cuda-12060",
21111                    feature = "cuda-12080",
21112                    feature = "cuda-12090"
21113                ))]
21114                cudaGraphNodeGetDependencies,
21115                #[cfg(any(
21116                    feature = "cuda-13000",
21117                    feature = "cuda-13010",
21118                    feature = "cuda-13020"
21119                ))]
21120                cudaGraphNodeGetDependencies,
21121                #[cfg(any(
21122                    feature = "cuda-12030",
21123                    feature = "cuda-12040",
21124                    feature = "cuda-12050",
21125                    feature = "cuda-12060",
21126                    feature = "cuda-12080",
21127                    feature = "cuda-12090"
21128                ))]
21129                cudaGraphNodeGetDependencies_v2,
21130                #[cfg(any(
21131                    feature = "cuda-11040",
21132                    feature = "cuda-11050",
21133                    feature = "cuda-11060",
21134                    feature = "cuda-11070",
21135                    feature = "cuda-11080",
21136                    feature = "cuda-12000",
21137                    feature = "cuda-12010",
21138                    feature = "cuda-12020",
21139                    feature = "cuda-12030",
21140                    feature = "cuda-12040",
21141                    feature = "cuda-12050",
21142                    feature = "cuda-12060",
21143                    feature = "cuda-12080",
21144                    feature = "cuda-12090"
21145                ))]
21146                cudaGraphNodeGetDependentNodes,
21147                #[cfg(any(
21148                    feature = "cuda-13000",
21149                    feature = "cuda-13010",
21150                    feature = "cuda-13020"
21151                ))]
21152                cudaGraphNodeGetDependentNodes,
21153                #[cfg(any(
21154                    feature = "cuda-12030",
21155                    feature = "cuda-12040",
21156                    feature = "cuda-12050",
21157                    feature = "cuda-12060",
21158                    feature = "cuda-12080",
21159                    feature = "cuda-12090"
21160                ))]
21161                cudaGraphNodeGetDependentNodes_v2,
21162                #[cfg(any(
21163                    feature = "cuda-11060",
21164                    feature = "cuda-11070",
21165                    feature = "cuda-11080",
21166                    feature = "cuda-12000",
21167                    feature = "cuda-12010",
21168                    feature = "cuda-12020",
21169                    feature = "cuda-12030",
21170                    feature = "cuda-12040",
21171                    feature = "cuda-12050",
21172                    feature = "cuda-12060",
21173                    feature = "cuda-12080",
21174                    feature = "cuda-12090",
21175                    feature = "cuda-13000",
21176                    feature = "cuda-13010",
21177                    feature = "cuda-13020"
21178                ))]
21179                cudaGraphNodeGetEnabled,
21180                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
21181                cudaGraphNodeGetLocalId,
21182                #[cfg(any(feature = "cuda-13020"))]
21183                cudaGraphNodeGetParams,
21184                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
21185                cudaGraphNodeGetToolsId,
21186                cudaGraphNodeGetType,
21187                #[cfg(any(
21188                    feature = "cuda-11060",
21189                    feature = "cuda-11070",
21190                    feature = "cuda-11080",
21191                    feature = "cuda-12000",
21192                    feature = "cuda-12010",
21193                    feature = "cuda-12020",
21194                    feature = "cuda-12030",
21195                    feature = "cuda-12040",
21196                    feature = "cuda-12050",
21197                    feature = "cuda-12060",
21198                    feature = "cuda-12080",
21199                    feature = "cuda-12090",
21200                    feature = "cuda-13000",
21201                    feature = "cuda-13010",
21202                    feature = "cuda-13020"
21203                ))]
21204                cudaGraphNodeSetEnabled,
21205                #[cfg(any(
21206                    feature = "cuda-12020",
21207                    feature = "cuda-12030",
21208                    feature = "cuda-12040",
21209                    feature = "cuda-12050",
21210                    feature = "cuda-12060",
21211                    feature = "cuda-12080",
21212                    feature = "cuda-12090",
21213                    feature = "cuda-13000",
21214                    feature = "cuda-13010",
21215                    feature = "cuda-13020"
21216                ))]
21217                cudaGraphNodeSetParams,
21218                cudaGraphReleaseUserObject,
21219                #[cfg(any(
21220                    feature = "cuda-11040",
21221                    feature = "cuda-11050",
21222                    feature = "cuda-11060",
21223                    feature = "cuda-11070",
21224                    feature = "cuda-11080",
21225                    feature = "cuda-12000",
21226                    feature = "cuda-12010",
21227                    feature = "cuda-12020",
21228                    feature = "cuda-12030",
21229                    feature = "cuda-12040",
21230                    feature = "cuda-12050",
21231                    feature = "cuda-12060",
21232                    feature = "cuda-12080",
21233                    feature = "cuda-12090"
21234                ))]
21235                cudaGraphRemoveDependencies,
21236                #[cfg(any(
21237                    feature = "cuda-13000",
21238                    feature = "cuda-13010",
21239                    feature = "cuda-13020"
21240                ))]
21241                cudaGraphRemoveDependencies,
21242                #[cfg(any(
21243                    feature = "cuda-12030",
21244                    feature = "cuda-12040",
21245                    feature = "cuda-12050",
21246                    feature = "cuda-12060",
21247                    feature = "cuda-12080",
21248                    feature = "cuda-12090"
21249                ))]
21250                cudaGraphRemoveDependencies_v2,
21251                cudaGraphRetainUserObject,
21252                cudaGraphUpload,
21253                cudaGraphicsMapResources,
21254                cudaGraphicsResourceGetMappedMipmappedArray,
21255                cudaGraphicsResourceGetMappedPointer,
21256                cudaGraphicsResourceSetMapFlags,
21257                cudaGraphicsSubResourceGetMappedArray,
21258                cudaGraphicsUnmapResources,
21259                cudaGraphicsUnregisterResource,
21260                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
21261                cudaGreenCtxCreate,
21262                cudaHostAlloc,
21263                cudaHostGetDevicePointer,
21264                cudaHostGetFlags,
21265                cudaHostRegister,
21266                cudaHostUnregister,
21267                cudaImportExternalMemory,
21268                cudaImportExternalSemaphore,
21269                #[cfg(any(
21270                    feature = "cuda-12000",
21271                    feature = "cuda-12010",
21272                    feature = "cuda-12020",
21273                    feature = "cuda-12030",
21274                    feature = "cuda-12040",
21275                    feature = "cuda-12050",
21276                    feature = "cuda-12060",
21277                    feature = "cuda-12080",
21278                    feature = "cuda-12090",
21279                    feature = "cuda-13000",
21280                    feature = "cuda-13010",
21281                    feature = "cuda-13020"
21282                ))]
21283                cudaInitDevice,
21284                cudaIpcCloseMemHandle,
21285                cudaIpcGetEventHandle,
21286                cudaIpcGetMemHandle,
21287                cudaIpcOpenEventHandle,
21288                cudaIpcOpenMemHandle,
21289                #[cfg(any(
21290                    feature = "cuda-12080",
21291                    feature = "cuda-12090",
21292                    feature = "cuda-13000",
21293                    feature = "cuda-13010",
21294                    feature = "cuda-13020"
21295                ))]
21296                cudaKernelSetAttributeForDevice,
21297                cudaLaunchCooperativeKernel,
21298                #[cfg(any(
21299                    feature = "cuda-11040",
21300                    feature = "cuda-11050",
21301                    feature = "cuda-11060",
21302                    feature = "cuda-11070",
21303                    feature = "cuda-11080",
21304                    feature = "cuda-12000",
21305                    feature = "cuda-12010",
21306                    feature = "cuda-12020",
21307                    feature = "cuda-12030",
21308                    feature = "cuda-12040",
21309                    feature = "cuda-12050",
21310                    feature = "cuda-12060",
21311                    feature = "cuda-12080",
21312                    feature = "cuda-12090"
21313                ))]
21314                cudaLaunchCooperativeKernelMultiDevice,
21315                cudaLaunchHostFunc,
21316                #[cfg(any(feature = "cuda-13020"))]
21317                cudaLaunchHostFunc_v2,
21318                cudaLaunchKernel,
21319                #[cfg(any(
21320                    feature = "cuda-11080",
21321                    feature = "cuda-12000",
21322                    feature = "cuda-12010",
21323                    feature = "cuda-12020",
21324                    feature = "cuda-12030",
21325                    feature = "cuda-12040",
21326                    feature = "cuda-12050",
21327                    feature = "cuda-12060",
21328                    feature = "cuda-12080",
21329                    feature = "cuda-12090",
21330                    feature = "cuda-13000",
21331                    feature = "cuda-13010",
21332                    feature = "cuda-13020"
21333                ))]
21334                cudaLaunchKernelExC,
21335                #[cfg(any(
21336                    feature = "cuda-12080",
21337                    feature = "cuda-12090",
21338                    feature = "cuda-13000",
21339                    feature = "cuda-13010",
21340                    feature = "cuda-13020"
21341                ))]
21342                cudaLibraryEnumerateKernels,
21343                #[cfg(any(
21344                    feature = "cuda-12080",
21345                    feature = "cuda-12090",
21346                    feature = "cuda-13000",
21347                    feature = "cuda-13010",
21348                    feature = "cuda-13020"
21349                ))]
21350                cudaLibraryGetGlobal,
21351                #[cfg(any(
21352                    feature = "cuda-12080",
21353                    feature = "cuda-12090",
21354                    feature = "cuda-13000",
21355                    feature = "cuda-13010",
21356                    feature = "cuda-13020"
21357                ))]
21358                cudaLibraryGetKernel,
21359                #[cfg(any(
21360                    feature = "cuda-12080",
21361                    feature = "cuda-12090",
21362                    feature = "cuda-13000",
21363                    feature = "cuda-13010",
21364                    feature = "cuda-13020"
21365                ))]
21366                cudaLibraryGetKernelCount,
21367                #[cfg(any(
21368                    feature = "cuda-12080",
21369                    feature = "cuda-12090",
21370                    feature = "cuda-13000",
21371                    feature = "cuda-13010",
21372                    feature = "cuda-13020"
21373                ))]
21374                cudaLibraryGetManaged,
21375                #[cfg(any(
21376                    feature = "cuda-12080",
21377                    feature = "cuda-12090",
21378                    feature = "cuda-13000",
21379                    feature = "cuda-13010",
21380                    feature = "cuda-13020"
21381                ))]
21382                cudaLibraryGetUnifiedFunction,
21383                #[cfg(any(
21384                    feature = "cuda-12080",
21385                    feature = "cuda-12090",
21386                    feature = "cuda-13000",
21387                    feature = "cuda-13010",
21388                    feature = "cuda-13020"
21389                ))]
21390                cudaLibraryLoadData,
21391                #[cfg(any(
21392                    feature = "cuda-12080",
21393                    feature = "cuda-12090",
21394                    feature = "cuda-13000",
21395                    feature = "cuda-13010",
21396                    feature = "cuda-13020"
21397                ))]
21398                cudaLibraryLoadFromFile,
21399                #[cfg(any(
21400                    feature = "cuda-12080",
21401                    feature = "cuda-12090",
21402                    feature = "cuda-13000",
21403                    feature = "cuda-13010",
21404                    feature = "cuda-13020"
21405                ))]
21406                cudaLibraryUnload,
21407                #[cfg(any(
21408                    feature = "cuda-13000",
21409                    feature = "cuda-13010",
21410                    feature = "cuda-13020"
21411                ))]
21412                cudaLogsCurrent,
21413                #[cfg(any(
21414                    feature = "cuda-13000",
21415                    feature = "cuda-13010",
21416                    feature = "cuda-13020"
21417                ))]
21418                cudaLogsDumpToFile,
21419                #[cfg(any(
21420                    feature = "cuda-13000",
21421                    feature = "cuda-13010",
21422                    feature = "cuda-13020"
21423                ))]
21424                cudaLogsDumpToMemory,
21425                #[cfg(any(
21426                    feature = "cuda-13000",
21427                    feature = "cuda-13010",
21428                    feature = "cuda-13020"
21429                ))]
21430                cudaLogsRegisterCallback,
21431                #[cfg(any(
21432                    feature = "cuda-13000",
21433                    feature = "cuda-13010",
21434                    feature = "cuda-13020"
21435                ))]
21436                cudaLogsUnregisterCallback,
21437                cudaMalloc,
21438                cudaMalloc3D,
21439                cudaMalloc3DArray,
21440                cudaMallocArray,
21441                cudaMallocAsync,
21442                cudaMallocFromPoolAsync,
21443                cudaMallocHost,
21444                cudaMallocManaged,
21445                cudaMallocMipmappedArray,
21446                cudaMallocPitch,
21447                #[cfg(any(
21448                    feature = "cuda-11040",
21449                    feature = "cuda-11050",
21450                    feature = "cuda-11060",
21451                    feature = "cuda-11070",
21452                    feature = "cuda-11080",
21453                    feature = "cuda-12000",
21454                    feature = "cuda-12010",
21455                    feature = "cuda-12020",
21456                    feature = "cuda-12030",
21457                    feature = "cuda-12040",
21458                    feature = "cuda-12050",
21459                    feature = "cuda-12060",
21460                    feature = "cuda-12080",
21461                    feature = "cuda-12090"
21462                ))]
21463                cudaMemAdvise,
21464                #[cfg(any(
21465                    feature = "cuda-13000",
21466                    feature = "cuda-13010",
21467                    feature = "cuda-13020"
21468                ))]
21469                cudaMemAdvise,
21470                #[cfg(any(
21471                    feature = "cuda-12020",
21472                    feature = "cuda-12030",
21473                    feature = "cuda-12040",
21474                    feature = "cuda-12050",
21475                    feature = "cuda-12060",
21476                    feature = "cuda-12080",
21477                    feature = "cuda-12090"
21478                ))]
21479                cudaMemAdvise_v2,
21480                #[cfg(any(
21481                    feature = "cuda-13000",
21482                    feature = "cuda-13010",
21483                    feature = "cuda-13020"
21484                ))]
21485                cudaMemDiscardAndPrefetchBatchAsync,
21486                #[cfg(any(
21487                    feature = "cuda-13000",
21488                    feature = "cuda-13010",
21489                    feature = "cuda-13020"
21490                ))]
21491                cudaMemDiscardBatchAsync,
21492                #[cfg(any(
21493                    feature = "cuda-13000",
21494                    feature = "cuda-13010",
21495                    feature = "cuda-13020"
21496                ))]
21497                cudaMemGetDefaultMemPool,
21498                cudaMemGetInfo,
21499                #[cfg(any(
21500                    feature = "cuda-13000",
21501                    feature = "cuda-13010",
21502                    feature = "cuda-13020"
21503                ))]
21504                cudaMemGetMemPool,
21505                cudaMemPoolCreate,
21506                cudaMemPoolDestroy,
21507                cudaMemPoolExportPointer,
21508                cudaMemPoolExportToShareableHandle,
21509                cudaMemPoolGetAccess,
21510                cudaMemPoolGetAttribute,
21511                cudaMemPoolImportFromShareableHandle,
21512                cudaMemPoolImportPointer,
21513                cudaMemPoolSetAccess,
21514                cudaMemPoolSetAttribute,
21515                cudaMemPoolTrimTo,
21516                #[cfg(any(
21517                    feature = "cuda-11040",
21518                    feature = "cuda-11050",
21519                    feature = "cuda-11060",
21520                    feature = "cuda-11070",
21521                    feature = "cuda-11080",
21522                    feature = "cuda-12000",
21523                    feature = "cuda-12010",
21524                    feature = "cuda-12020",
21525                    feature = "cuda-12030",
21526                    feature = "cuda-12040",
21527                    feature = "cuda-12050",
21528                    feature = "cuda-12060",
21529                    feature = "cuda-12080",
21530                    feature = "cuda-12090"
21531                ))]
21532                cudaMemPrefetchAsync,
21533                #[cfg(any(
21534                    feature = "cuda-13000",
21535                    feature = "cuda-13010",
21536                    feature = "cuda-13020"
21537                ))]
21538                cudaMemPrefetchAsync,
21539                #[cfg(any(
21540                    feature = "cuda-12020",
21541                    feature = "cuda-12030",
21542                    feature = "cuda-12040",
21543                    feature = "cuda-12050",
21544                    feature = "cuda-12060",
21545                    feature = "cuda-12080",
21546                    feature = "cuda-12090"
21547                ))]
21548                cudaMemPrefetchAsync_v2,
21549                #[cfg(any(
21550                    feature = "cuda-13000",
21551                    feature = "cuda-13010",
21552                    feature = "cuda-13020"
21553                ))]
21554                cudaMemPrefetchBatchAsync,
21555                cudaMemRangeGetAttribute,
21556                cudaMemRangeGetAttributes,
21557                #[cfg(any(
21558                    feature = "cuda-13000",
21559                    feature = "cuda-13010",
21560                    feature = "cuda-13020"
21561                ))]
21562                cudaMemSetMemPool,
21563                cudaMemcpy,
21564                cudaMemcpy2D,
21565                cudaMemcpy2DArrayToArray,
21566                cudaMemcpy2DAsync,
21567                cudaMemcpy2DFromArray,
21568                cudaMemcpy2DFromArrayAsync,
21569                cudaMemcpy2DToArray,
21570                cudaMemcpy2DToArrayAsync,
21571                cudaMemcpy3D,
21572                cudaMemcpy3DAsync,
21573                #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
21574                cudaMemcpy3DBatchAsync,
21575                #[cfg(any(
21576                    feature = "cuda-13000",
21577                    feature = "cuda-13010",
21578                    feature = "cuda-13020"
21579                ))]
21580                cudaMemcpy3DBatchAsync,
21581                cudaMemcpy3DPeer,
21582                cudaMemcpy3DPeerAsync,
21583                #[cfg(any(feature = "cuda-13020"))]
21584                cudaMemcpy3DWithAttributesAsync,
21585                cudaMemcpyArrayToArray,
21586                cudaMemcpyAsync,
21587                #[cfg(any(feature = "cuda-12080", feature = "cuda-12090"))]
21588                cudaMemcpyBatchAsync,
21589                #[cfg(any(
21590                    feature = "cuda-13000",
21591                    feature = "cuda-13010",
21592                    feature = "cuda-13020"
21593                ))]
21594                cudaMemcpyBatchAsync,
21595                cudaMemcpyFromArray,
21596                cudaMemcpyFromArrayAsync,
21597                cudaMemcpyFromSymbol,
21598                cudaMemcpyFromSymbolAsync,
21599                cudaMemcpyPeer,
21600                cudaMemcpyPeerAsync,
21601                cudaMemcpyToArray,
21602                cudaMemcpyToArrayAsync,
21603                cudaMemcpyToSymbol,
21604                cudaMemcpyToSymbolAsync,
21605                #[cfg(any(feature = "cuda-13020"))]
21606                cudaMemcpyWithAttributesAsync,
21607                cudaMemset,
21608                cudaMemset2D,
21609                cudaMemset2DAsync,
21610                cudaMemset3D,
21611                cudaMemset3DAsync,
21612                cudaMemsetAsync,
21613                #[cfg(any(
21614                    feature = "cuda-11060",
21615                    feature = "cuda-11070",
21616                    feature = "cuda-11080",
21617                    feature = "cuda-12000",
21618                    feature = "cuda-12010",
21619                    feature = "cuda-12020",
21620                    feature = "cuda-12030",
21621                    feature = "cuda-12040",
21622                    feature = "cuda-12050",
21623                    feature = "cuda-12060",
21624                    feature = "cuda-12080",
21625                    feature = "cuda-12090",
21626                    feature = "cuda-13000",
21627                    feature = "cuda-13010",
21628                    feature = "cuda-13020"
21629                ))]
21630                cudaMipmappedArrayGetMemoryRequirements,
21631                cudaMipmappedArrayGetSparseProperties,
21632                cudaOccupancyAvailableDynamicSMemPerBlock,
21633                cudaOccupancyMaxActiveBlocksPerMultiprocessor,
21634                cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags,
21635                #[cfg(any(
21636                    feature = "cuda-11080",
21637                    feature = "cuda-12000",
21638                    feature = "cuda-12010",
21639                    feature = "cuda-12020",
21640                    feature = "cuda-12030",
21641                    feature = "cuda-12040",
21642                    feature = "cuda-12050",
21643                    feature = "cuda-12060",
21644                    feature = "cuda-12080",
21645                    feature = "cuda-12090",
21646                    feature = "cuda-13000",
21647                    feature = "cuda-13010",
21648                    feature = "cuda-13020"
21649                ))]
21650                cudaOccupancyMaxActiveClusters,
21651                #[cfg(any(
21652                    feature = "cuda-11080",
21653                    feature = "cuda-12000",
21654                    feature = "cuda-12010",
21655                    feature = "cuda-12020",
21656                    feature = "cuda-12030",
21657                    feature = "cuda-12040",
21658                    feature = "cuda-12050",
21659                    feature = "cuda-12060",
21660                    feature = "cuda-12080",
21661                    feature = "cuda-12090",
21662                    feature = "cuda-13000",
21663                    feature = "cuda-13010",
21664                    feature = "cuda-13020"
21665                ))]
21666                cudaOccupancyMaxPotentialClusterSize,
21667                cudaPeekAtLastError,
21668                cudaPointerGetAttributes,
21669                cudaProfilerStop,
21670                cudaRuntimeGetVersion,
21671                cudaSetDevice,
21672                cudaSetDeviceFlags,
21673                #[cfg(any(
21674                    feature = "cuda-11040",
21675                    feature = "cuda-11050",
21676                    feature = "cuda-11060",
21677                    feature = "cuda-11070",
21678                    feature = "cuda-11080",
21679                    feature = "cuda-12000",
21680                    feature = "cuda-12010",
21681                    feature = "cuda-12020",
21682                    feature = "cuda-12030",
21683                    feature = "cuda-12040",
21684                    feature = "cuda-12050",
21685                    feature = "cuda-12060",
21686                    feature = "cuda-12080",
21687                    feature = "cuda-12090"
21688                ))]
21689                cudaSetDoubleForDevice,
21690                #[cfg(any(
21691                    feature = "cuda-11040",
21692                    feature = "cuda-11050",
21693                    feature = "cuda-11060",
21694                    feature = "cuda-11070",
21695                    feature = "cuda-11080",
21696                    feature = "cuda-12000",
21697                    feature = "cuda-12010",
21698                    feature = "cuda-12020",
21699                    feature = "cuda-12030",
21700                    feature = "cuda-12040",
21701                    feature = "cuda-12050",
21702                    feature = "cuda-12060",
21703                    feature = "cuda-12080",
21704                    feature = "cuda-12090"
21705                ))]
21706                cudaSetDoubleForHost,
21707                cudaSetValidDevices,
21708                #[cfg(any(
21709                    feature = "cuda-13000",
21710                    feature = "cuda-13010",
21711                    feature = "cuda-13020"
21712                ))]
21713                cudaSignalExternalSemaphoresAsync,
21714                #[cfg(any(
21715                    feature = "cuda-11040",
21716                    feature = "cuda-11050",
21717                    feature = "cuda-11060",
21718                    feature = "cuda-11070",
21719                    feature = "cuda-11080",
21720                    feature = "cuda-12000",
21721                    feature = "cuda-12010",
21722                    feature = "cuda-12020",
21723                    feature = "cuda-12030",
21724                    feature = "cuda-12040",
21725                    feature = "cuda-12050",
21726                    feature = "cuda-12060",
21727                    feature = "cuda-12080",
21728                    feature = "cuda-12090"
21729                ))]
21730                cudaSignalExternalSemaphoresAsync_v2,
21731                cudaStreamAddCallback,
21732                cudaStreamAttachMemAsync,
21733                cudaStreamBeginCapture,
21734                #[cfg(any(
21735                    feature = "cuda-12030",
21736                    feature = "cuda-12040",
21737                    feature = "cuda-12050",
21738                    feature = "cuda-12060",
21739                    feature = "cuda-12080",
21740                    feature = "cuda-12090",
21741                    feature = "cuda-13000",
21742                    feature = "cuda-13010",
21743                    feature = "cuda-13020"
21744                ))]
21745                cudaStreamBeginCaptureToGraph,
21746                cudaStreamCopyAttributes,
21747                cudaStreamCreate,
21748                cudaStreamCreateWithFlags,
21749                cudaStreamCreateWithPriority,
21750                cudaStreamDestroy,
21751                cudaStreamEndCapture,
21752                #[cfg(any(
21753                    feature = "cuda-11040",
21754                    feature = "cuda-11050",
21755                    feature = "cuda-11060",
21756                    feature = "cuda-11070"
21757                ))]
21758                cudaStreamGetAttribute,
21759                #[cfg(any(
21760                    feature = "cuda-11080",
21761                    feature = "cuda-12000",
21762                    feature = "cuda-12010",
21763                    feature = "cuda-12020",
21764                    feature = "cuda-12030",
21765                    feature = "cuda-12040",
21766                    feature = "cuda-12050",
21767                    feature = "cuda-12060",
21768                    feature = "cuda-12080",
21769                    feature = "cuda-12090",
21770                    feature = "cuda-13000",
21771                    feature = "cuda-13010",
21772                    feature = "cuda-13020"
21773                ))]
21774                cudaStreamGetAttribute,
21775                #[cfg(any(
21776                    feature = "cuda-11040",
21777                    feature = "cuda-11050",
21778                    feature = "cuda-11060",
21779                    feature = "cuda-11070",
21780                    feature = "cuda-11080"
21781                ))]
21782                cudaStreamGetCaptureInfo,
21783                #[cfg(any(
21784                    feature = "cuda-13000",
21785                    feature = "cuda-13010",
21786                    feature = "cuda-13020"
21787                ))]
21788                cudaStreamGetCaptureInfo,
21789                #[cfg(any(
21790                    feature = "cuda-11040",
21791                    feature = "cuda-11050",
21792                    feature = "cuda-11060",
21793                    feature = "cuda-11070",
21794                    feature = "cuda-11080",
21795                    feature = "cuda-12000",
21796                    feature = "cuda-12010",
21797                    feature = "cuda-12020",
21798                    feature = "cuda-12030",
21799                    feature = "cuda-12040",
21800                    feature = "cuda-12050",
21801                    feature = "cuda-12060",
21802                    feature = "cuda-12080",
21803                    feature = "cuda-12090"
21804                ))]
21805                cudaStreamGetCaptureInfo_v2,
21806                #[cfg(any(
21807                    feature = "cuda-12030",
21808                    feature = "cuda-12040",
21809                    feature = "cuda-12050",
21810                    feature = "cuda-12060",
21811                    feature = "cuda-12080",
21812                    feature = "cuda-12090"
21813                ))]
21814                cudaStreamGetCaptureInfo_v3,
21815                #[cfg(any(feature = "cuda-13010", feature = "cuda-13020"))]
21816                cudaStreamGetDevResource,
21817                #[cfg(any(
21818                    feature = "cuda-12080",
21819                    feature = "cuda-12090",
21820                    feature = "cuda-13000",
21821                    feature = "cuda-13010",
21822                    feature = "cuda-13020"
21823                ))]
21824                cudaStreamGetDevice,
21825                cudaStreamGetFlags,
21826                #[cfg(any(
21827                    feature = "cuda-12000",
21828                    feature = "cuda-12010",
21829                    feature = "cuda-12020",
21830                    feature = "cuda-12030",
21831                    feature = "cuda-12040",
21832                    feature = "cuda-12050",
21833                    feature = "cuda-12060",
21834                    feature = "cuda-12080",
21835                    feature = "cuda-12090",
21836                    feature = "cuda-13000",
21837                    feature = "cuda-13010",
21838                    feature = "cuda-13020"
21839                ))]
21840                cudaStreamGetId,
21841                cudaStreamGetPriority,
21842                cudaStreamIsCapturing,
21843                cudaStreamQuery,
21844                #[cfg(any(
21845                    feature = "cuda-11040",
21846                    feature = "cuda-11050",
21847                    feature = "cuda-11060",
21848                    feature = "cuda-11070"
21849                ))]
21850                cudaStreamSetAttribute,
21851                #[cfg(any(
21852                    feature = "cuda-11080",
21853                    feature = "cuda-12000",
21854                    feature = "cuda-12010",
21855                    feature = "cuda-12020",
21856                    feature = "cuda-12030",
21857                    feature = "cuda-12040",
21858                    feature = "cuda-12050",
21859                    feature = "cuda-12060",
21860                    feature = "cuda-12080",
21861                    feature = "cuda-12090",
21862                    feature = "cuda-13000",
21863                    feature = "cuda-13010",
21864                    feature = "cuda-13020"
21865                ))]
21866                cudaStreamSetAttribute,
21867                cudaStreamSynchronize,
21868                #[cfg(any(
21869                    feature = "cuda-11040",
21870                    feature = "cuda-11050",
21871                    feature = "cuda-11060",
21872                    feature = "cuda-11070",
21873                    feature = "cuda-11080",
21874                    feature = "cuda-12000",
21875                    feature = "cuda-12010",
21876                    feature = "cuda-12020",
21877                    feature = "cuda-12030",
21878                    feature = "cuda-12040",
21879                    feature = "cuda-12050",
21880                    feature = "cuda-12060",
21881                    feature = "cuda-12080",
21882                    feature = "cuda-12090"
21883                ))]
21884                cudaStreamUpdateCaptureDependencies,
21885                #[cfg(any(
21886                    feature = "cuda-13000",
21887                    feature = "cuda-13010",
21888                    feature = "cuda-13020"
21889                ))]
21890                cudaStreamUpdateCaptureDependencies,
21891                #[cfg(any(
21892                    feature = "cuda-12030",
21893                    feature = "cuda-12040",
21894                    feature = "cuda-12050",
21895                    feature = "cuda-12060",
21896                    feature = "cuda-12080",
21897                    feature = "cuda-12090"
21898                ))]
21899                cudaStreamUpdateCaptureDependencies_v2,
21900                cudaStreamWaitEvent,
21901                cudaThreadExchangeStreamCaptureMode,
21902                #[cfg(any(
21903                    feature = "cuda-11040",
21904                    feature = "cuda-11050",
21905                    feature = "cuda-11060",
21906                    feature = "cuda-11070",
21907                    feature = "cuda-11080",
21908                    feature = "cuda-12000",
21909                    feature = "cuda-12010",
21910                    feature = "cuda-12020",
21911                    feature = "cuda-12030",
21912                    feature = "cuda-12040",
21913                    feature = "cuda-12050",
21914                    feature = "cuda-12060",
21915                    feature = "cuda-12080",
21916                    feature = "cuda-12090"
21917                ))]
21918                cudaThreadExit,
21919                #[cfg(any(
21920                    feature = "cuda-11040",
21921                    feature = "cuda-11050",
21922                    feature = "cuda-11060",
21923                    feature = "cuda-11070",
21924                    feature = "cuda-11080",
21925                    feature = "cuda-12000",
21926                    feature = "cuda-12010",
21927                    feature = "cuda-12020",
21928                    feature = "cuda-12030",
21929                    feature = "cuda-12040",
21930                    feature = "cuda-12050",
21931                    feature = "cuda-12060",
21932                    feature = "cuda-12080",
21933                    feature = "cuda-12090"
21934                ))]
21935                cudaThreadGetCacheConfig,
21936                #[cfg(any(
21937                    feature = "cuda-11040",
21938                    feature = "cuda-11050",
21939                    feature = "cuda-11060",
21940                    feature = "cuda-11070",
21941                    feature = "cuda-11080",
21942                    feature = "cuda-12000",
21943                    feature = "cuda-12010",
21944                    feature = "cuda-12020",
21945                    feature = "cuda-12030",
21946                    feature = "cuda-12040",
21947                    feature = "cuda-12050",
21948                    feature = "cuda-12060",
21949                    feature = "cuda-12080",
21950                    feature = "cuda-12090"
21951                ))]
21952                cudaThreadGetLimit,
21953                #[cfg(any(
21954                    feature = "cuda-11040",
21955                    feature = "cuda-11050",
21956                    feature = "cuda-11060",
21957                    feature = "cuda-11070",
21958                    feature = "cuda-11080",
21959                    feature = "cuda-12000",
21960                    feature = "cuda-12010",
21961                    feature = "cuda-12020",
21962                    feature = "cuda-12030",
21963                    feature = "cuda-12040",
21964                    feature = "cuda-12050",
21965                    feature = "cuda-12060",
21966                    feature = "cuda-12080",
21967                    feature = "cuda-12090"
21968                ))]
21969                cudaThreadSetCacheConfig,
21970                #[cfg(any(
21971                    feature = "cuda-11040",
21972                    feature = "cuda-11050",
21973                    feature = "cuda-11060",
21974                    feature = "cuda-11070",
21975                    feature = "cuda-11080",
21976                    feature = "cuda-12000",
21977                    feature = "cuda-12010",
21978                    feature = "cuda-12020",
21979                    feature = "cuda-12030",
21980                    feature = "cuda-12040",
21981                    feature = "cuda-12050",
21982                    feature = "cuda-12060",
21983                    feature = "cuda-12080",
21984                    feature = "cuda-12090"
21985                ))]
21986                cudaThreadSetLimit,
21987                #[cfg(any(
21988                    feature = "cuda-11040",
21989                    feature = "cuda-11050",
21990                    feature = "cuda-11060",
21991                    feature = "cuda-11070",
21992                    feature = "cuda-11080",
21993                    feature = "cuda-12000",
21994                    feature = "cuda-12010",
21995                    feature = "cuda-12020",
21996                    feature = "cuda-12030",
21997                    feature = "cuda-12040",
21998                    feature = "cuda-12050",
21999                    feature = "cuda-12060",
22000                    feature = "cuda-12080",
22001                    feature = "cuda-12090"
22002                ))]
22003                cudaThreadSynchronize,
22004                #[cfg(any(
22005                    feature = "cuda-11040",
22006                    feature = "cuda-11050",
22007                    feature = "cuda-11060",
22008                    feature = "cuda-11070",
22009                    feature = "cuda-11080"
22010                ))]
22011                cudaUnbindTexture,
22012                cudaUserObjectCreate,
22013                cudaUserObjectRelease,
22014                cudaUserObjectRetain,
22015                #[cfg(any(
22016                    feature = "cuda-13000",
22017                    feature = "cuda-13010",
22018                    feature = "cuda-13020"
22019                ))]
22020                cudaWaitExternalSemaphoresAsync,
22021                #[cfg(any(
22022                    feature = "cuda-11040",
22023                    feature = "cuda-11050",
22024                    feature = "cuda-11060",
22025                    feature = "cuda-11070",
22026                    feature = "cuda-11080",
22027                    feature = "cuda-12000",
22028                    feature = "cuda-12010",
22029                    feature = "cuda-12020",
22030                    feature = "cuda-12030",
22031                    feature = "cuda-12040",
22032                    feature = "cuda-12050",
22033                    feature = "cuda-12060",
22034                    feature = "cuda-12080",
22035                    feature = "cuda-12090"
22036                ))]
22037                cudaWaitExternalSemaphoresAsync_v2,
22038            })
22039        }
22040    }
22041    pub unsafe fn is_culib_present() -> bool {
22042        let lib_names = ["cudart"];
22043        let choices = lib_names
22044            .iter()
22045            .map(|l| crate::get_lib_name_candidates(l))
22046            .flatten();
22047        for choice in choices {
22048            if Lib::new(choice).is_ok() {
22049                return true;
22050            }
22051        }
22052        false
22053    }
22054    pub unsafe fn culib() -> &'static Lib {
22055        static LIB: std::sync::OnceLock<Lib> = std::sync::OnceLock::new();
22056        LIB.get_or_init(|| {
22057            let lib_names = std::vec!["cudart"];
22058            let choices: std::vec::Vec<_> = lib_names
22059                .iter()
22060                .map(|l| crate::get_lib_name_candidates(l))
22061                .flatten()
22062                .collect();
22063            for choice in choices.iter() {
22064                if let Ok(lib) = Lib::new(choice) {
22065                    return lib;
22066                }
22067            }
22068            crate::panic_no_lib_found(lib_names[0], &choices);
22069        })
22070    }
22071}
22072#[cfg(feature = "dynamic-loading")]
22073pub use loaded::*;