-
Notifications
You must be signed in to change notification settings - Fork 275
Expand file tree
/
Copy pathcycufile.pxd
More file actions
431 lines (385 loc) · 18 KB
/
cycufile.pxd
File metadata and controls
431 lines (385 loc) · 18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#
# SPDX-License-Identifier: LicenseRef-NVIDIA-SOFTWARE-LICENSE
#
# This code was automatically generated across versions from 12.9.1 to 13.2.0, generator version 0.3.1.dev1422+gf4812259e.d20260318. Do not modify it directly.
from libc.stdint cimport uint32_t, uint64_t
from libc.time cimport time_t
from libcpp cimport bool as cpp_bool
from posix.types cimport off_t
cimport cuda.bindings.cydriver
from cuda.bindings.cydriver cimport CUresult
###############################################################################
# Types (structs, enums, ...)
###############################################################################
# TODO: switch to "from libc.time cimport timespec" once we can use recent
# Cython to build
cdef extern from "<time.h>":
cdef struct timespec:
time_t tv_sec
long tv_nsec
cdef extern from "<sys/socket.h>":
cdef struct sockaddr:
unsigned short sa_family
char sa_data[14]
ctypedef sockaddr sockaddr_t
# enums
cdef extern from '<cufile.h>':
ctypedef enum CUfileOpError:
CU_FILE_SUCCESS
CU_FILE_DRIVER_NOT_INITIALIZED
CU_FILE_DRIVER_INVALID_PROPS
CU_FILE_DRIVER_UNSUPPORTED_LIMIT
CU_FILE_DRIVER_VERSION_MISMATCH
CU_FILE_DRIVER_VERSION_READ_ERROR
CU_FILE_DRIVER_CLOSING
CU_FILE_PLATFORM_NOT_SUPPORTED
CU_FILE_IO_NOT_SUPPORTED
CU_FILE_DEVICE_NOT_SUPPORTED
CU_FILE_NVFS_DRIVER_ERROR
CU_FILE_CUDA_DRIVER_ERROR
CU_FILE_CUDA_POINTER_INVALID
CU_FILE_CUDA_MEMORY_TYPE_INVALID
CU_FILE_CUDA_POINTER_RANGE_ERROR
CU_FILE_CUDA_CONTEXT_MISMATCH
CU_FILE_INVALID_MAPPING_SIZE
CU_FILE_INVALID_MAPPING_RANGE
CU_FILE_INVALID_FILE_TYPE
CU_FILE_INVALID_FILE_OPEN_FLAG
CU_FILE_DIO_NOT_SET
CU_FILE_INVALID_VALUE
CU_FILE_MEMORY_ALREADY_REGISTERED
CU_FILE_MEMORY_NOT_REGISTERED
CU_FILE_PERMISSION_DENIED
CU_FILE_DRIVER_ALREADY_OPEN
CU_FILE_HANDLE_NOT_REGISTERED
CU_FILE_HANDLE_ALREADY_REGISTERED
CU_FILE_DEVICE_NOT_FOUND
CU_FILE_INTERNAL_ERROR
CU_FILE_GETNEWFD_FAILED
CU_FILE_NVFS_SETUP_ERROR
CU_FILE_IO_DISABLED
CU_FILE_BATCH_SUBMIT_FAILED
CU_FILE_GPU_MEMORY_PINNING_FAILED
CU_FILE_BATCH_FULL
CU_FILE_ASYNC_NOT_SUPPORTED
CU_FILE_INTERNAL_BATCH_SETUP_ERROR
CU_FILE_INTERNAL_BATCH_SUBMIT_ERROR
CU_FILE_INTERNAL_BATCH_GETSTATUS_ERROR
CU_FILE_INTERNAL_BATCH_CANCEL_ERROR
CU_FILE_NOMEM_ERROR
CU_FILE_IO_ERROR
CU_FILE_INTERNAL_BUF_REGISTER_ERROR
CU_FILE_HASH_OPR_ERROR
CU_FILE_INVALID_CONTEXT_ERROR
CU_FILE_NVFS_INTERNAL_DRIVER_ERROR
CU_FILE_BATCH_NOCOMPAT_ERROR
CU_FILE_IO_MAX_ERROR
cdef extern from '<cufile.h>':
ctypedef enum CUfileDriverStatusFlags_t:
CU_FILE_LUSTRE_SUPPORTED
CU_FILE_WEKAFS_SUPPORTED
CU_FILE_NFS_SUPPORTED
CU_FILE_GPFS_SUPPORTED
CU_FILE_NVME_SUPPORTED
CU_FILE_NVMEOF_SUPPORTED
CU_FILE_SCSI_SUPPORTED
CU_FILE_SCALEFLUX_CSD_SUPPORTED
CU_FILE_NVMESH_SUPPORTED
CU_FILE_BEEGFS_SUPPORTED
CU_FILE_NVME_P2P_SUPPORTED
CU_FILE_SCATEFS_SUPPORTED
CU_FILE_VIRTIOFS_SUPPORTED
CU_FILE_MAX_TARGET_TYPES
cdef extern from '<cufile.h>':
ctypedef enum CUfileDriverControlFlags_t:
CU_FILE_USE_POLL_MODE
CU_FILE_ALLOW_COMPAT_MODE
CU_FILE_POSIX_IO_MODE
CU_FILE_FALLBACK_IO_MODE
cdef extern from '<cufile.h>':
ctypedef enum CUfileFeatureFlags_t:
CU_FILE_DYN_ROUTING_SUPPORTED
CU_FILE_BATCH_IO_SUPPORTED
CU_FILE_STREAMS_SUPPORTED
CU_FILE_PARALLEL_IO_SUPPORTED
CU_FILE_P2P_SUPPORTED
cdef extern from '<cufile.h>':
ctypedef enum CUfileFileHandleType:
CU_FILE_HANDLE_TYPE_OPAQUE_FD
CU_FILE_HANDLE_TYPE_OPAQUE_WIN32
CU_FILE_HANDLE_TYPE_USERSPACE_FS
cdef extern from '<cufile.h>':
ctypedef enum CUfileOpcode_t:
CUFILE_READ
CUFILE_WRITE
cdef extern from '<cufile.h>':
ctypedef enum CUfileStatus_t:
CUFILE_WAITING
CUFILE_PENDING
CUFILE_INVALID
CUFILE_CANCELED
CUFILE_COMPLETE
CUFILE_TIMEOUT
CUFILE_FAILED
cdef extern from '<cufile.h>':
ctypedef enum CUfileBatchMode_t:
CUFILE_BATCH
cdef extern from '<cufile.h>':
ctypedef enum CUFileSizeTConfigParameter_t:
CUFILE_PARAM_PROFILE_STATS
CUFILE_PARAM_EXECUTION_MAX_IO_QUEUE_DEPTH
CUFILE_PARAM_EXECUTION_MAX_IO_THREADS
CUFILE_PARAM_EXECUTION_MIN_IO_THRESHOLD_SIZE_KB
CUFILE_PARAM_EXECUTION_MAX_REQUEST_PARALLELISM
CUFILE_PARAM_PROPERTIES_MAX_DIRECT_IO_SIZE_KB
CUFILE_PARAM_PROPERTIES_MAX_DEVICE_CACHE_SIZE_KB
CUFILE_PARAM_PROPERTIES_PER_BUFFER_CACHE_SIZE_KB
CUFILE_PARAM_PROPERTIES_MAX_DEVICE_PINNED_MEM_SIZE_KB
CUFILE_PARAM_PROPERTIES_IO_BATCHSIZE
CUFILE_PARAM_POLLTHRESHOLD_SIZE_KB
CUFILE_PARAM_PROPERTIES_BATCH_IO_TIMEOUT_MS
cdef extern from '<cufile.h>':
ctypedef enum CUFileBoolConfigParameter_t:
CUFILE_PARAM_PROPERTIES_USE_POLL_MODE
CUFILE_PARAM_PROPERTIES_ALLOW_COMPAT_MODE
CUFILE_PARAM_FORCE_COMPAT_MODE
CUFILE_PARAM_FS_MISC_API_CHECK_AGGRESSIVE
CUFILE_PARAM_EXECUTION_PARALLEL_IO
CUFILE_PARAM_PROFILE_NVTX
CUFILE_PARAM_PROPERTIES_ALLOW_SYSTEM_MEMORY
CUFILE_PARAM_USE_PCIP2PDMA
CUFILE_PARAM_PREFER_IO_URING
CUFILE_PARAM_FORCE_ODIRECT_MODE
CUFILE_PARAM_SKIP_TOPOLOGY_DETECTION
CUFILE_PARAM_STREAM_MEMOPS_BYPASS
cdef extern from '<cufile.h>':
ctypedef enum CUFileStringConfigParameter_t:
CUFILE_PARAM_LOGGING_LEVEL
CUFILE_PARAM_ENV_LOGFILE_PATH
CUFILE_PARAM_LOG_DIR
cdef extern from '<cufile.h>':
ctypedef enum CUFileArrayConfigParameter_t:
CUFILE_PARAM_POSIX_POOL_SLAB_SIZE_KB
CUFILE_PARAM_POSIX_POOL_SLAB_COUNT
CUFILE_PARAM_GPU_BOUNCE_BUFFER_SLAB_SIZE_KB
CUFILE_PARAM_GPU_BOUNCE_BUFFER_SLAB_COUNT
cdef extern from '<cufile.h>':
ctypedef enum CUfileP2PFlags_t:
CUFILE_P2PDMA
CUFILE_NVFS
CUFILE_DMABUF
CUFILE_C2C
CUFILE_NVIDIA_PEERMEM
# types
cdef extern from '<cufile.h>':
ctypedef void* CUfileHandle_t 'CUfileHandle_t'
cdef extern from '<cufile.h>':
ctypedef void* CUfileBatchHandle_t 'CUfileBatchHandle_t'
cdef extern from '<cufile.h>':
ctypedef struct CUfileError_t 'CUfileError_t':
CUfileOpError err
CUresult cu_err
cdef struct cuda_bindings_cufile__anon_pod0:
unsigned int major_version
unsigned int minor_version
size_t poll_thresh_size
size_t max_direct_io_size
unsigned int dstatusflags
unsigned int dcontrolflags
cdef extern from '<cufile.h>':
ctypedef struct cufileRDMAInfo_t 'cufileRDMAInfo_t':
int version
int desc_len
char* desc_str
cdef extern from '<cufile.h>':
ctypedef struct CUfileFSOps_t 'CUfileFSOps_t':
char* (*fs_type)(const void*)
int (*getRDMADeviceList)(const void*, sockaddr_t**)
int (*getRDMADevicePriority)(const void*, char*, size_t, loff_t, const sockaddr_t*)
ssize_t (*read)(const void*, char*, size_t, loff_t, const cufileRDMAInfo_t*)
ssize_t (*write)(const void*, const char*, size_t, loff_t, const cufileRDMAInfo_t*)
cdef union cuda_bindings_cufile__anon_pod1:
int fd
void* handle
cdef struct cuda_bindings_cufile__anon_pod3:
void* devPtr_base
off_t file_offset
off_t devPtr_offset
size_t size
cdef extern from '<cufile.h>':
ctypedef struct CUfileIOEvents_t 'CUfileIOEvents_t':
void* cookie
CUfileStatus_t status
size_t ret
cdef extern from '<cufile.h>':
ctypedef struct CUfileOpCounter_t 'CUfileOpCounter_t':
uint64_t ok
uint64_t err
cdef extern from '<cufile.h>':
ctypedef struct CUfilePerGpuStats_t 'CUfilePerGpuStats_t':
char uuid[16]
uint64_t read_bytes
uint64_t read_bw_bytes_per_sec
uint64_t read_utilization
uint64_t read_duration_us
uint64_t n_total_reads
uint64_t n_p2p_reads
uint64_t n_nvfs_reads
uint64_t n_posix_reads
uint64_t n_unaligned_reads
uint64_t n_dr_reads
uint64_t n_sparse_regions
uint64_t n_inline_regions
uint64_t n_reads_err
uint64_t writes_bytes
uint64_t write_bw_bytes_per_sec
uint64_t write_utilization
uint64_t write_duration_us
uint64_t n_total_writes
uint64_t n_p2p_writes
uint64_t n_nvfs_writes
uint64_t n_posix_writes
uint64_t n_unaligned_writes
uint64_t n_dr_writes
uint64_t n_writes_err
uint64_t n_mmap
uint64_t n_mmap_ok
uint64_t n_mmap_err
uint64_t n_mmap_free
uint64_t reg_bytes
cdef extern from '<cufile.h>':
ctypedef struct CUfileDrvProps_t 'CUfileDrvProps_t':
cuda_bindings_cufile__anon_pod0 nvfs
unsigned int fflags
unsigned int max_device_cache_size
unsigned int per_buffer_cache_size
unsigned int max_device_pinned_mem_size
unsigned int max_batch_io_size
unsigned int max_batch_io_timeout_msecs
cdef extern from '<cufile.h>':
ctypedef struct CUfileDescr_t 'CUfileDescr_t':
CUfileFileHandleType type
cuda_bindings_cufile__anon_pod1 handle
CUfileFSOps_t* fs_ops
cdef union cuda_bindings_cufile__anon_pod2:
cuda_bindings_cufile__anon_pod3 batch
cdef extern from '<cufile.h>':
ctypedef struct CUfileStatsLevel1_t 'CUfileStatsLevel1_t':
CUfileOpCounter_t read_ops
CUfileOpCounter_t write_ops
CUfileOpCounter_t hdl_register_ops
CUfileOpCounter_t hdl_deregister_ops
CUfileOpCounter_t buf_register_ops
CUfileOpCounter_t buf_deregister_ops
uint64_t read_bytes
uint64_t write_bytes
uint64_t read_bw_bytes_per_sec
uint64_t write_bw_bytes_per_sec
uint64_t read_lat_avg_us
uint64_t write_lat_avg_us
uint64_t read_ops_per_sec
uint64_t write_ops_per_sec
uint64_t read_lat_sum_us
uint64_t write_lat_sum_us
CUfileOpCounter_t batch_submit_ops
CUfileOpCounter_t batch_complete_ops
CUfileOpCounter_t batch_setup_ops
CUfileOpCounter_t batch_cancel_ops
CUfileOpCounter_t batch_destroy_ops
CUfileOpCounter_t batch_enqueued_ops
CUfileOpCounter_t batch_posix_enqueued_ops
CUfileOpCounter_t batch_processed_ops
CUfileOpCounter_t batch_posix_processed_ops
CUfileOpCounter_t batch_nvfs_submit_ops
CUfileOpCounter_t batch_p2p_submit_ops
CUfileOpCounter_t batch_aio_submit_ops
CUfileOpCounter_t batch_iouring_submit_ops
CUfileOpCounter_t batch_mixed_io_submit_ops
CUfileOpCounter_t batch_total_submit_ops
uint64_t batch_read_bytes
uint64_t batch_write_bytes
uint64_t batch_read_bw_bytes
uint64_t batch_write_bw_bytes
uint64_t batch_submit_lat_avg_us
uint64_t batch_completion_lat_avg_us
uint64_t batch_submit_ops_per_sec
uint64_t batch_complete_ops_per_sec
uint64_t batch_submit_lat_sum_us
uint64_t batch_completion_lat_sum_us
uint64_t last_batch_read_bytes
uint64_t last_batch_write_bytes
cdef extern from '<cufile.h>':
ctypedef struct CUfileIOParams_t 'CUfileIOParams_t':
CUfileBatchMode_t mode
cuda_bindings_cufile__anon_pod2 u
CUfileHandle_t fh
CUfileOpcode_t opcode
void* cookie
cdef extern from '<cufile.h>':
ctypedef struct CUfileStatsLevel2_t 'CUfileStatsLevel2_t':
CUfileStatsLevel1_t basic
uint64_t read_size_kb_hist[32]
uint64_t write_size_kb_hist[32]
cdef extern from '<cufile.h>':
ctypedef struct CUfileStatsLevel3_t 'CUfileStatsLevel3_t':
CUfileStatsLevel2_t detailed
uint32_t num_gpus
CUfilePerGpuStats_t per_gpu_stats[16]
cdef extern from *:
"""
// This is the missing piece we need to supply to help Cython & C++ compilers.
inline bool operator==(const CUfileError_t& lhs, const CUfileError_t& rhs) {
return (lhs.err == rhs.err) && (lhs.cu_err == rhs.cu_err);
}
static CUfileError_t CUFILE_LOADING_ERROR{(CUfileOpError)-1, (CUresult)-1};
"""
const CUfileError_t CUFILE_LOADING_ERROR
ctypedef void* CUstream "CUstream"
const char* cufileop_status_error(CUfileOpError)
###############################################################################
# Functions
###############################################################################
cdef CUfileError_t cuFileHandleRegister(CUfileHandle_t* fh, CUfileDescr_t* descr) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef void cuFileHandleDeregister(CUfileHandle_t fh) except* nogil
cdef CUfileError_t cuFileBufRegister(const void* bufPtr_base, size_t length, int flags) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileBufDeregister(const void* bufPtr_base) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef ssize_t cuFileRead(CUfileHandle_t fh, void* bufPtr_base, size_t size, off_t file_offset, off_t bufPtr_offset) except* nogil
cdef ssize_t cuFileWrite(CUfileHandle_t fh, const void* bufPtr_base, size_t size, off_t file_offset, off_t bufPtr_offset) except* nogil
cdef CUfileError_t cuFileDriverOpen() except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileDriverClose() except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileDriverClose_v2() except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef long cuFileUseCount() except* nogil
cdef CUfileError_t cuFileDriverGetProperties(CUfileDrvProps_t* props) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileDriverSetPollMode(cpp_bool poll, size_t poll_threshold_size) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileDriverSetMaxDirectIOSize(size_t max_direct_io_size) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileDriverSetMaxCacheSize(size_t max_cache_size) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileDriverSetMaxPinnedMemSize(size_t max_pinned_size) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileBatchIOSetUp(CUfileBatchHandle_t* batch_idp, unsigned nr) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileBatchIOSubmit(CUfileBatchHandle_t batch_idp, unsigned nr, CUfileIOParams_t* iocbp, unsigned int flags) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileBatchIOGetStatus(CUfileBatchHandle_t batch_idp, unsigned min_nr, unsigned* nr, CUfileIOEvents_t* iocbp, timespec* timeout) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileBatchIOCancel(CUfileBatchHandle_t batch_idp) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef void cuFileBatchIODestroy(CUfileBatchHandle_t batch_idp) except* nogil
cdef CUfileError_t cuFileReadAsync(CUfileHandle_t fh, void* bufPtr_base, size_t* size_p, off_t* file_offset_p, off_t* bufPtr_offset_p, ssize_t* bytes_read_p, CUstream stream) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileWriteAsync(CUfileHandle_t fh, void* bufPtr_base, size_t* size_p, off_t* file_offset_p, off_t* bufPtr_offset_p, ssize_t* bytes_written_p, CUstream stream) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileStreamRegister(CUstream stream, unsigned flags) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileStreamDeregister(CUstream stream) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetVersion(int* version) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetParameterSizeT(CUFileSizeTConfigParameter_t param, size_t* value) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetParameterBool(CUFileBoolConfigParameter_t param, cpp_bool* value) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetParameterString(CUFileStringConfigParameter_t param, char* desc_str, int len) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileSetParameterSizeT(CUFileSizeTConfigParameter_t param, size_t value) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileSetParameterBool(CUFileBoolConfigParameter_t param, cpp_bool value) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileSetParameterString(CUFileStringConfigParameter_t param, const char* desc_str) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetParameterMinMaxValue(CUFileSizeTConfigParameter_t param, size_t* min_value, size_t* max_value) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileSetStatsLevel(int level) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetStatsLevel(int* level) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileStatsStart() except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileStatsStop() except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileStatsReset() except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetStatsL1(CUfileStatsLevel1_t* stats) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetStatsL2(CUfileStatsLevel2_t* stats) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetStatsL3(CUfileStatsLevel3_t* stats) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetBARSizeInKB(int gpuIndex, size_t* barSize) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileSetParameterPosixPoolSlabArray(const size_t* size_values, const size_t* count_values, int len) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil
cdef CUfileError_t cuFileGetParameterPosixPoolSlabArray(size_t* size_values, size_t* count_values, int len) except?<CUfileError_t>CUFILE_LOADING_ERROR nogil