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;
9pub use self::cudaDataType_t as cudaDataType;
10pub use self::libraryPropertyType_t as libraryPropertyType;
11#[cfg(any(
12 feature = "cuda-11070",
13 feature = "cuda-11080",
14 feature = "cuda-12000",
15 feature = "cuda-12010",
16 feature = "cuda-12020",
17 feature = "cuda-12030",
18 feature = "cuda-12040",
19 feature = "cuda-12050",
20 feature = "cuda-12060",
21 feature = "cuda-12080",
22 feature = "cuda-12090",
23 feature = "cuda-13000",
24 feature = "cuda-13010"
25))]
26pub type FILE = _IO_FILE;
27#[cfg(any(
28 feature = "cuda-11070",
29 feature = "cuda-11080",
30 feature = "cuda-12000",
31 feature = "cuda-12010",
32 feature = "cuda-12020",
33 feature = "cuda-12030",
34 feature = "cuda-12040",
35 feature = "cuda-12050",
36 feature = "cuda-12060",
37 feature = "cuda-12080",
38 feature = "cuda-12090",
39 feature = "cuda-13000",
40 feature = "cuda-13010"
41))]
42pub type _IO_lock_t = ::core::ffi::c_void;
43#[cfg(any(
44 feature = "cuda-11070",
45 feature = "cuda-11080",
46 feature = "cuda-12000",
47 feature = "cuda-12010",
48 feature = "cuda-12020",
49 feature = "cuda-12030",
50 feature = "cuda-12040",
51 feature = "cuda-12050",
52 feature = "cuda-12060",
53 feature = "cuda-12080",
54 feature = "cuda-12090",
55 feature = "cuda-13000",
56 feature = "cuda-13010"
57))]
58pub type __off64_t = ::core::ffi::c_long;
59#[cfg(any(
60 feature = "cuda-11070",
61 feature = "cuda-11080",
62 feature = "cuda-12000",
63 feature = "cuda-12010",
64 feature = "cuda-12020",
65 feature = "cuda-12030",
66 feature = "cuda-12040",
67 feature = "cuda-12050",
68 feature = "cuda-12060",
69 feature = "cuda-12080",
70 feature = "cuda-12090",
71 feature = "cuda-13000",
72 feature = "cuda-13010"
73))]
74pub type __off_t = ::core::ffi::c_long;
75pub type csrqrInfo_t = *mut csrqrInfo;
76pub type cuComplex = cuFloatComplex;
77pub type cuDoubleComplex = double2;
78pub type cuFloatComplex = float2;
79pub type cudaLibMgGrid_t = *mut ::core::ffi::c_void;
80pub type cudaLibMgMatrixDesc_t = *mut ::core::ffi::c_void;
81pub type cudaStream_t = *mut CUstream_st;
82pub type cusolverDnHandle_t = *mut cusolverDnContext;
83pub type cusolverDnIRSInfos_t = *mut cusolverDnIRSInfos;
84pub type cusolverDnIRSParams_t = *mut cusolverDnIRSParams;
85#[cfg(any(
86 feature = "cuda-11070",
87 feature = "cuda-11080",
88 feature = "cuda-12000",
89 feature = "cuda-12010",
90 feature = "cuda-12020",
91 feature = "cuda-12030",
92 feature = "cuda-12040",
93 feature = "cuda-12050",
94 feature = "cuda-12060",
95 feature = "cuda-12080",
96 feature = "cuda-12090",
97 feature = "cuda-13000",
98 feature = "cuda-13010"
99))]
100pub type cusolverDnLoggerCallback_t = ::core::option::Option<
101 unsafe extern "C" fn(
102 logLevel: ::core::ffi::c_int,
103 functionName: *const ::core::ffi::c_char,
104 message: *const ::core::ffi::c_char,
105 ),
106>;
107pub type cusolverDnParams_t = *mut cusolverDnParams;
108pub type cusolverRfHandle_t = *mut cusolverRfCommon;
109pub type cusolverSpHandle_t = *mut cusolverSpContext;
110pub type cusolver_int_t = ::core::ffi::c_int;
111pub type cusparseMatDescr_t = *mut cusparseMatDescr;
112pub type gesvdjInfo_t = *mut gesvdjInfo;
113pub type syevjInfo_t = *mut syevjInfo;
114#[repr(u32)]
115#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
116pub enum cublasDiagType_t {
117 CUBLAS_DIAG_NON_UNIT = 0,
118 CUBLAS_DIAG_UNIT = 1,
119}
120#[repr(u32)]
121#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
122pub enum cublasFillMode_t {
123 CUBLAS_FILL_MODE_LOWER = 0,
124 CUBLAS_FILL_MODE_UPPER = 1,
125 CUBLAS_FILL_MODE_FULL = 2,
126}
127#[repr(u32)]
128#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
129pub enum cublasOperation_t {
130 CUBLAS_OP_N = 0,
131 CUBLAS_OP_T = 1,
132 CUBLAS_OP_C = 2,
133 CUBLAS_OP_CONJG = 3,
134}
135#[repr(u32)]
136#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
137pub enum cublasSideMode_t {
138 CUBLAS_SIDE_LEFT = 0,
139 CUBLAS_SIDE_RIGHT = 1,
140}
141#[cfg(any(
142 feature = "cuda-11040",
143 feature = "cuda-11050",
144 feature = "cuda-11060",
145 feature = "cuda-11070"
146))]
147#[repr(u32)]
148#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
149pub enum cudaDataType_t {
150 CUDA_R_16F = 2,
151 CUDA_C_16F = 6,
152 CUDA_R_16BF = 14,
153 CUDA_C_16BF = 15,
154 CUDA_R_32F = 0,
155 CUDA_C_32F = 4,
156 CUDA_R_64F = 1,
157 CUDA_C_64F = 5,
158 CUDA_R_4I = 16,
159 CUDA_C_4I = 17,
160 CUDA_R_4U = 18,
161 CUDA_C_4U = 19,
162 CUDA_R_8I = 3,
163 CUDA_C_8I = 7,
164 CUDA_R_8U = 8,
165 CUDA_C_8U = 9,
166 CUDA_R_16I = 20,
167 CUDA_C_16I = 21,
168 CUDA_R_16U = 22,
169 CUDA_C_16U = 23,
170 CUDA_R_32I = 10,
171 CUDA_C_32I = 11,
172 CUDA_R_32U = 12,
173 CUDA_C_32U = 13,
174 CUDA_R_64I = 24,
175 CUDA_C_64I = 25,
176 CUDA_R_64U = 26,
177 CUDA_C_64U = 27,
178}
179#[cfg(any(
180 feature = "cuda-11080",
181 feature = "cuda-12000",
182 feature = "cuda-12010",
183 feature = "cuda-12020",
184 feature = "cuda-12030",
185 feature = "cuda-12040",
186 feature = "cuda-12050",
187 feature = "cuda-12060"
188))]
189#[repr(u32)]
190#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
191pub enum cudaDataType_t {
192 CUDA_R_16F = 2,
193 CUDA_C_16F = 6,
194 CUDA_R_16BF = 14,
195 CUDA_C_16BF = 15,
196 CUDA_R_32F = 0,
197 CUDA_C_32F = 4,
198 CUDA_R_64F = 1,
199 CUDA_C_64F = 5,
200 CUDA_R_4I = 16,
201 CUDA_C_4I = 17,
202 CUDA_R_4U = 18,
203 CUDA_C_4U = 19,
204 CUDA_R_8I = 3,
205 CUDA_C_8I = 7,
206 CUDA_R_8U = 8,
207 CUDA_C_8U = 9,
208 CUDA_R_16I = 20,
209 CUDA_C_16I = 21,
210 CUDA_R_16U = 22,
211 CUDA_C_16U = 23,
212 CUDA_R_32I = 10,
213 CUDA_C_32I = 11,
214 CUDA_R_32U = 12,
215 CUDA_C_32U = 13,
216 CUDA_R_64I = 24,
217 CUDA_C_64I = 25,
218 CUDA_R_64U = 26,
219 CUDA_C_64U = 27,
220 CUDA_R_8F_E4M3 = 28,
221 CUDA_R_8F_E5M2 = 29,
222}
223#[cfg(any(
224 feature = "cuda-12080",
225 feature = "cuda-12090",
226 feature = "cuda-13000",
227 feature = "cuda-13010"
228))]
229#[repr(u32)]
230#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
231pub enum cudaDataType_t {
232 CUDA_R_16F = 2,
233 CUDA_C_16F = 6,
234 CUDA_R_16BF = 14,
235 CUDA_C_16BF = 15,
236 CUDA_R_32F = 0,
237 CUDA_C_32F = 4,
238 CUDA_R_64F = 1,
239 CUDA_C_64F = 5,
240 CUDA_R_4I = 16,
241 CUDA_C_4I = 17,
242 CUDA_R_4U = 18,
243 CUDA_C_4U = 19,
244 CUDA_R_8I = 3,
245 CUDA_C_8I = 7,
246 CUDA_R_8U = 8,
247 CUDA_C_8U = 9,
248 CUDA_R_16I = 20,
249 CUDA_C_16I = 21,
250 CUDA_R_16U = 22,
251 CUDA_C_16U = 23,
252 CUDA_R_32I = 10,
253 CUDA_C_32I = 11,
254 CUDA_R_32U = 12,
255 CUDA_C_32U = 13,
256 CUDA_R_64I = 24,
257 CUDA_C_64I = 25,
258 CUDA_R_64U = 26,
259 CUDA_C_64U = 27,
260 CUDA_R_8F_E4M3 = 28,
261 CUDA_R_8F_E5M2 = 29,
262 CUDA_R_8F_UE8M0 = 30,
263 CUDA_R_6F_E2M3 = 31,
264 CUDA_R_6F_E3M2 = 32,
265 CUDA_R_4F_E2M1 = 33,
266}
267#[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
268#[repr(u32)]
269#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
270pub enum cudaEmulationStrategy_t {
271 CUDA_EMULATION_STRATEGY_DEFAULT = 0,
272 CUDA_EMULATION_STRATEGY_PERFORMANT = 1,
273 CUDA_EMULATION_STRATEGY_EAGER = 2,
274}
275#[cfg(any(feature = "cuda-11040"))]
276#[repr(u32)]
277#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
278pub enum cusolverAlgMode_t {
279 CUSOLVER_ALG_0 = 0,
280 CUSOLVER_ALG_1 = 1,
281}
282#[cfg(any(
283 feature = "cuda-11050",
284 feature = "cuda-11060",
285 feature = "cuda-11070",
286 feature = "cuda-11080",
287 feature = "cuda-12000",
288 feature = "cuda-12010",
289 feature = "cuda-12020",
290 feature = "cuda-12030",
291 feature = "cuda-12040",
292 feature = "cuda-12050",
293 feature = "cuda-12060",
294 feature = "cuda-12080",
295 feature = "cuda-12090",
296 feature = "cuda-13000",
297 feature = "cuda-13010"
298))]
299#[repr(u32)]
300#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
301pub enum cusolverAlgMode_t {
302 CUSOLVER_ALG_0 = 0,
303 CUSOLVER_ALG_1 = 1,
304 CUSOLVER_ALG_2 = 2,
305}
306#[cfg(any(
307 feature = "cuda-12020",
308 feature = "cuda-12030",
309 feature = "cuda-12040",
310 feature = "cuda-12050",
311 feature = "cuda-12060",
312 feature = "cuda-12080",
313 feature = "cuda-12090",
314 feature = "cuda-13000",
315 feature = "cuda-13010"
316))]
317#[repr(u32)]
318#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
319pub enum cusolverDeterministicMode_t {
320 CUSOLVER_DETERMINISTIC_RESULTS = 1,
321 CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS = 2,
322}
323#[repr(u32)]
324#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
325pub enum cusolverDirectMode_t {
326 CUBLAS_DIRECT_FORWARD = 0,
327 CUBLAS_DIRECT_BACKWARD = 1,
328}
329#[cfg(any(feature = "cuda-11040"))]
330#[repr(u32)]
331#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
332pub enum cusolverDnFunction_t {
333 CUSOLVERDN_GETRF = 0,
334}
335#[cfg(any(
336 feature = "cuda-11050",
337 feature = "cuda-11060",
338 feature = "cuda-11070",
339 feature = "cuda-11080",
340 feature = "cuda-12000",
341 feature = "cuda-12010",
342 feature = "cuda-12020",
343 feature = "cuda-12030",
344 feature = "cuda-12040",
345 feature = "cuda-12050",
346 feature = "cuda-12060",
347 feature = "cuda-12080",
348 feature = "cuda-12090"
349))]
350#[repr(u32)]
351#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
352pub enum cusolverDnFunction_t {
353 CUSOLVERDN_GETRF = 0,
354 CUSOLVERDN_POTRF = 1,
355}
356#[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
357#[repr(u32)]
358#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
359pub enum cusolverDnFunction_t {
360 CUSOLVERDN_GETRF = 0,
361 CUSOLVERDN_POTRF = 1,
362 CUSOLVERDN_SYEVBATCHED = 2,
363}
364#[repr(u32)]
365#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
366pub enum cusolverEigMode_t {
367 CUSOLVER_EIG_MODE_NOVECTOR = 0,
368 CUSOLVER_EIG_MODE_VECTOR = 1,
369}
370#[repr(u32)]
371#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
372pub enum cusolverEigRange_t {
373 CUSOLVER_EIG_RANGE_ALL = 1001,
374 CUSOLVER_EIG_RANGE_I = 1002,
375 CUSOLVER_EIG_RANGE_V = 1003,
376}
377#[repr(u32)]
378#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
379pub enum cusolverEigType_t {
380 CUSOLVER_EIG_TYPE_1 = 1,
381 CUSOLVER_EIG_TYPE_2 = 2,
382 CUSOLVER_EIG_TYPE_3 = 3,
383}
384#[repr(u32)]
385#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
386pub enum cusolverIRSRefinement_t {
387 CUSOLVER_IRS_REFINE_NOT_SET = 1100,
388 CUSOLVER_IRS_REFINE_NONE = 1101,
389 CUSOLVER_IRS_REFINE_CLASSICAL = 1102,
390 CUSOLVER_IRS_REFINE_CLASSICAL_GMRES = 1103,
391 CUSOLVER_IRS_REFINE_GMRES = 1104,
392 CUSOLVER_IRS_REFINE_GMRES_GMRES = 1105,
393 CUSOLVER_IRS_REFINE_GMRES_NOPCOND = 1106,
394 CUSOLVER_PREC_DD = 1150,
395 CUSOLVER_PREC_SS = 1151,
396 CUSOLVER_PREC_SHT = 1152,
397}
398#[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
399#[repr(u32)]
400#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
401pub enum cusolverMathMode_t {
402 CUSOLVER_DEFAULT_MATH = 1,
403 CUSOLVER_FP32_EMULATED_BF16X9_MATH = 2,
404}
405#[repr(u32)]
406#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
407pub enum cusolverNorm_t {
408 CUSOLVER_INF_NORM = 104,
409 CUSOLVER_MAX_NORM = 105,
410 CUSOLVER_ONE_NORM = 106,
411 CUSOLVER_FRO_NORM = 107,
412}
413#[repr(u32)]
414#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
415pub enum cusolverPrecType_t {
416 CUSOLVER_R_8I = 1201,
417 CUSOLVER_R_8U = 1202,
418 CUSOLVER_R_64F = 1203,
419 CUSOLVER_R_32F = 1204,
420 CUSOLVER_R_16F = 1205,
421 CUSOLVER_R_16BF = 1206,
422 CUSOLVER_R_TF32 = 1207,
423 CUSOLVER_R_AP = 1208,
424 CUSOLVER_C_8I = 1211,
425 CUSOLVER_C_8U = 1212,
426 CUSOLVER_C_64F = 1213,
427 CUSOLVER_C_32F = 1214,
428 CUSOLVER_C_16F = 1215,
429 CUSOLVER_C_16BF = 1216,
430 CUSOLVER_C_TF32 = 1217,
431 CUSOLVER_C_AP = 1218,
432}
433#[repr(u32)]
434#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
435pub enum cusolverRfFactorization_t {
436 CUSOLVERRF_FACTORIZATION_ALG0 = 0,
437 CUSOLVERRF_FACTORIZATION_ALG1 = 1,
438 CUSOLVERRF_FACTORIZATION_ALG2 = 2,
439}
440#[repr(u32)]
441#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
442pub enum cusolverRfMatrixFormat_t {
443 CUSOLVERRF_MATRIX_FORMAT_CSR = 0,
444 CUSOLVERRF_MATRIX_FORMAT_CSC = 1,
445}
446#[repr(u32)]
447#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
448pub enum cusolverRfNumericBoostReport_t {
449 CUSOLVERRF_NUMERIC_BOOST_NOT_USED = 0,
450 CUSOLVERRF_NUMERIC_BOOST_USED = 1,
451}
452#[repr(u32)]
453#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
454pub enum cusolverRfResetValuesFastMode_t {
455 CUSOLVERRF_RESET_VALUES_FAST_MODE_OFF = 0,
456 CUSOLVERRF_RESET_VALUES_FAST_MODE_ON = 1,
457}
458#[repr(u32)]
459#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
460pub enum cusolverRfTriangularSolve_t {
461 CUSOLVERRF_TRIANGULAR_SOLVE_ALG1 = 1,
462 CUSOLVERRF_TRIANGULAR_SOLVE_ALG2 = 2,
463 CUSOLVERRF_TRIANGULAR_SOLVE_ALG3 = 3,
464}
465#[repr(u32)]
466#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
467pub enum cusolverRfUnitDiagonal_t {
468 CUSOLVERRF_UNIT_DIAGONAL_STORED_L = 0,
469 CUSOLVERRF_UNIT_DIAGONAL_STORED_U = 1,
470 CUSOLVERRF_UNIT_DIAGONAL_ASSUMED_L = 2,
471 CUSOLVERRF_UNIT_DIAGONAL_ASSUMED_U = 3,
472}
473#[repr(u32)]
474#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
475pub enum cusolverStatus_t {
476 CUSOLVER_STATUS_SUCCESS = 0,
477 CUSOLVER_STATUS_NOT_INITIALIZED = 1,
478 CUSOLVER_STATUS_ALLOC_FAILED = 2,
479 CUSOLVER_STATUS_INVALID_VALUE = 3,
480 CUSOLVER_STATUS_ARCH_MISMATCH = 4,
481 CUSOLVER_STATUS_MAPPING_ERROR = 5,
482 CUSOLVER_STATUS_EXECUTION_FAILED = 6,
483 CUSOLVER_STATUS_INTERNAL_ERROR = 7,
484 CUSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED = 8,
485 CUSOLVER_STATUS_NOT_SUPPORTED = 9,
486 CUSOLVER_STATUS_ZERO_PIVOT = 10,
487 CUSOLVER_STATUS_INVALID_LICENSE = 11,
488 CUSOLVER_STATUS_IRS_PARAMS_NOT_INITIALIZED = 12,
489 CUSOLVER_STATUS_IRS_PARAMS_INVALID = 13,
490 CUSOLVER_STATUS_IRS_PARAMS_INVALID_PREC = 14,
491 CUSOLVER_STATUS_IRS_PARAMS_INVALID_REFINE = 15,
492 CUSOLVER_STATUS_IRS_PARAMS_INVALID_MAXITER = 16,
493 CUSOLVER_STATUS_IRS_INTERNAL_ERROR = 20,
494 CUSOLVER_STATUS_IRS_NOT_SUPPORTED = 21,
495 CUSOLVER_STATUS_IRS_OUT_OF_RANGE = 22,
496 CUSOLVER_STATUS_IRS_NRHS_NOT_SUPPORTED_FOR_REFINE_GMRES = 23,
497 CUSOLVER_STATUS_IRS_INFOS_NOT_INITIALIZED = 25,
498 CUSOLVER_STATUS_IRS_INFOS_NOT_DESTROYED = 26,
499 CUSOLVER_STATUS_IRS_MATRIX_SINGULAR = 30,
500 CUSOLVER_STATUS_INVALID_WORKSPACE = 31,
501}
502#[repr(u32)]
503#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
504pub enum cusolverStorevMode_t {
505 CUBLAS_STOREV_COLUMNWISE = 0,
506 CUBLAS_STOREV_ROWWISE = 1,
507}
508#[repr(u32)]
509#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
510pub enum libraryPropertyType_t {
511 MAJOR_VERSION = 0,
512 MINOR_VERSION = 1,
513 PATCH_LEVEL = 2,
514}
515#[repr(C)]
516#[derive(Debug, Copy, Clone)]
517pub struct CUstream_st {
518 _unused: [u8; 0],
519}
520#[cfg(any(
521 feature = "cuda-11070",
522 feature = "cuda-11080",
523 feature = "cuda-12000",
524 feature = "cuda-12010",
525 feature = "cuda-12020",
526 feature = "cuda-12030",
527 feature = "cuda-12040",
528 feature = "cuda-12050",
529 feature = "cuda-12060",
530 feature = "cuda-12080",
531 feature = "cuda-12090",
532 feature = "cuda-13000",
533 feature = "cuda-13010"
534))]
535#[repr(C)]
536#[derive(Debug, Copy, Clone, Hash, PartialOrd, Ord, PartialEq, Eq)]
537pub struct _IO_FILE {
538 pub _flags: ::core::ffi::c_int,
539 pub _IO_read_ptr: *mut ::core::ffi::c_char,
540 pub _IO_read_end: *mut ::core::ffi::c_char,
541 pub _IO_read_base: *mut ::core::ffi::c_char,
542 pub _IO_write_base: *mut ::core::ffi::c_char,
543 pub _IO_write_ptr: *mut ::core::ffi::c_char,
544 pub _IO_write_end: *mut ::core::ffi::c_char,
545 pub _IO_buf_base: *mut ::core::ffi::c_char,
546 pub _IO_buf_end: *mut ::core::ffi::c_char,
547 pub _IO_save_base: *mut ::core::ffi::c_char,
548 pub _IO_backup_base: *mut ::core::ffi::c_char,
549 pub _IO_save_end: *mut ::core::ffi::c_char,
550 pub _markers: *mut _IO_marker,
551 pub _chain: *mut _IO_FILE,
552 pub _fileno: ::core::ffi::c_int,
553 pub _flags2: ::core::ffi::c_int,
554 pub _old_offset: __off_t,
555 pub _cur_column: ::core::ffi::c_ushort,
556 pub _vtable_offset: ::core::ffi::c_schar,
557 pub _shortbuf: [::core::ffi::c_char; 1usize],
558 pub _lock: *mut _IO_lock_t,
559 pub _offset: __off64_t,
560 pub _codecvt: *mut _IO_codecvt,
561 pub _wide_data: *mut _IO_wide_data,
562 pub _freeres_list: *mut _IO_FILE,
563 pub _freeres_buf: *mut ::core::ffi::c_void,
564 pub __pad5: usize,
565 pub _mode: ::core::ffi::c_int,
566 pub _unused2: [::core::ffi::c_char; 20usize],
567}
568#[cfg(any(
569 feature = "cuda-11070",
570 feature = "cuda-11080",
571 feature = "cuda-12000",
572 feature = "cuda-12010",
573 feature = "cuda-12020",
574 feature = "cuda-12030",
575 feature = "cuda-12040",
576 feature = "cuda-12050",
577 feature = "cuda-12060",
578 feature = "cuda-12080",
579 feature = "cuda-12090",
580 feature = "cuda-13000",
581 feature = "cuda-13010"
582))]
583#[repr(C)]
584#[derive(Debug, Copy, Clone)]
585pub struct _IO_codecvt {
586 _unused: [u8; 0],
587}
588#[cfg(any(
589 feature = "cuda-11070",
590 feature = "cuda-11080",
591 feature = "cuda-12000",
592 feature = "cuda-12010",
593 feature = "cuda-12020",
594 feature = "cuda-12030",
595 feature = "cuda-12040",
596 feature = "cuda-12050",
597 feature = "cuda-12060",
598 feature = "cuda-12080",
599 feature = "cuda-12090",
600 feature = "cuda-13000",
601 feature = "cuda-13010"
602))]
603#[repr(C)]
604#[derive(Debug, Copy, Clone)]
605pub struct _IO_marker {
606 _unused: [u8; 0],
607}
608#[cfg(any(
609 feature = "cuda-11070",
610 feature = "cuda-11080",
611 feature = "cuda-12000",
612 feature = "cuda-12010",
613 feature = "cuda-12020",
614 feature = "cuda-12030",
615 feature = "cuda-12040",
616 feature = "cuda-12050",
617 feature = "cuda-12060",
618 feature = "cuda-12080",
619 feature = "cuda-12090",
620 feature = "cuda-13000",
621 feature = "cuda-13010"
622))]
623#[repr(C)]
624#[derive(Debug, Copy, Clone)]
625pub struct _IO_wide_data {
626 _unused: [u8; 0],
627}
628#[repr(C)]
629#[derive(Debug, Copy, Clone)]
630pub struct csrqrInfo {
631 _unused: [u8; 0],
632}
633#[repr(C)]
634#[derive(Debug, Copy, Clone)]
635pub struct cusolverDnContext {
636 _unused: [u8; 0],
637}
638#[repr(C)]
639#[derive(Debug, Copy, Clone)]
640pub struct cusolverDnIRSInfos {
641 _unused: [u8; 0],
642}
643#[repr(C)]
644#[derive(Debug, Copy, Clone)]
645pub struct cusolverDnIRSParams {
646 _unused: [u8; 0],
647}
648#[repr(C)]
649#[derive(Debug, Copy, Clone)]
650pub struct cusolverDnParams {
651 _unused: [u8; 0],
652}
653#[repr(C)]
654#[derive(Debug, Copy, Clone)]
655pub struct cusolverRfCommon {
656 _unused: [u8; 0],
657}
658#[repr(C)]
659#[derive(Debug, Copy, Clone)]
660pub struct cusolverSpContext {
661 _unused: [u8; 0],
662}
663#[repr(C)]
664#[derive(Debug, Copy, Clone)]
665pub struct cusparseMatDescr {
666 _unused: [u8; 0],
667}
668#[repr(C)]
669#[repr(align(16))]
670#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
671pub struct double2 {
672 pub x: f64,
673 pub y: f64,
674}
675#[repr(C)]
676#[repr(align(8))]
677#[derive(Debug, Copy, Clone, PartialOrd, PartialEq)]
678pub struct float2 {
679 pub x: f32,
680 pub y: f32,
681}
682#[repr(C)]
683#[derive(Debug, Copy, Clone)]
684pub struct gesvdjInfo {
685 _unused: [u8; 0],
686}
687#[repr(C)]
688#[derive(Debug, Copy, Clone)]
689pub struct syevjInfo {
690 _unused: [u8; 0],
691}
692impl cublasOperation_t {
693 pub const CUBLAS_OP_HERMITAN: cublasOperation_t = cublasOperation_t::CUBLAS_OP_C;
694}
695#[cfg(any(
696 feature = "cuda-12080",
697 feature = "cuda-12090",
698 feature = "cuda-13000",
699 feature = "cuda-13010"
700))]
701impl cudaDataType_t {
702 pub const CUDA_R_8F_UE4M3: cudaDataType_t = cudaDataType_t::CUDA_R_8F_E4M3;
703}
704#[cfg(not(feature = "dynamic-loading"))]
705extern "C" {
706 pub fn cusolverDnCCgels(
707 handle: cusolverDnHandle_t,
708 m: cusolver_int_t,
709 n: cusolver_int_t,
710 nrhs: cusolver_int_t,
711 dA: *mut cuComplex,
712 ldda: cusolver_int_t,
713 dB: *mut cuComplex,
714 lddb: cusolver_int_t,
715 dX: *mut cuComplex,
716 lddx: cusolver_int_t,
717 dWorkspace: *mut ::core::ffi::c_void,
718 lwork_bytes: usize,
719 iter: *mut cusolver_int_t,
720 d_info: *mut cusolver_int_t,
721 ) -> cusolverStatus_t;
722 pub fn cusolverDnCCgels_bufferSize(
723 handle: cusolverDnHandle_t,
724 m: cusolver_int_t,
725 n: cusolver_int_t,
726 nrhs: cusolver_int_t,
727 dA: *mut cuComplex,
728 ldda: cusolver_int_t,
729 dB: *mut cuComplex,
730 lddb: cusolver_int_t,
731 dX: *mut cuComplex,
732 lddx: cusolver_int_t,
733 dWorkspace: *mut ::core::ffi::c_void,
734 lwork_bytes: *mut usize,
735 ) -> cusolverStatus_t;
736 pub fn cusolverDnCCgesv(
737 handle: cusolverDnHandle_t,
738 n: cusolver_int_t,
739 nrhs: cusolver_int_t,
740 dA: *mut cuComplex,
741 ldda: cusolver_int_t,
742 dipiv: *mut cusolver_int_t,
743 dB: *mut cuComplex,
744 lddb: cusolver_int_t,
745 dX: *mut cuComplex,
746 lddx: cusolver_int_t,
747 dWorkspace: *mut ::core::ffi::c_void,
748 lwork_bytes: usize,
749 iter: *mut cusolver_int_t,
750 d_info: *mut cusolver_int_t,
751 ) -> cusolverStatus_t;
752 pub fn cusolverDnCCgesv_bufferSize(
753 handle: cusolverDnHandle_t,
754 n: cusolver_int_t,
755 nrhs: cusolver_int_t,
756 dA: *mut cuComplex,
757 ldda: cusolver_int_t,
758 dipiv: *mut cusolver_int_t,
759 dB: *mut cuComplex,
760 lddb: cusolver_int_t,
761 dX: *mut cuComplex,
762 lddx: cusolver_int_t,
763 dWorkspace: *mut ::core::ffi::c_void,
764 lwork_bytes: *mut usize,
765 ) -> cusolverStatus_t;
766 pub fn cusolverDnCEgels(
767 handle: cusolverDnHandle_t,
768 m: cusolver_int_t,
769 n: cusolver_int_t,
770 nrhs: cusolver_int_t,
771 dA: *mut cuComplex,
772 ldda: cusolver_int_t,
773 dB: *mut cuComplex,
774 lddb: cusolver_int_t,
775 dX: *mut cuComplex,
776 lddx: cusolver_int_t,
777 dWorkspace: *mut ::core::ffi::c_void,
778 lwork_bytes: usize,
779 iter: *mut cusolver_int_t,
780 d_info: *mut cusolver_int_t,
781 ) -> cusolverStatus_t;
782 pub fn cusolverDnCEgels_bufferSize(
783 handle: cusolverDnHandle_t,
784 m: cusolver_int_t,
785 n: cusolver_int_t,
786 nrhs: cusolver_int_t,
787 dA: *mut cuComplex,
788 ldda: cusolver_int_t,
789 dB: *mut cuComplex,
790 lddb: cusolver_int_t,
791 dX: *mut cuComplex,
792 lddx: cusolver_int_t,
793 dWorkspace: *mut ::core::ffi::c_void,
794 lwork_bytes: *mut usize,
795 ) -> cusolverStatus_t;
796 pub fn cusolverDnCEgesv(
797 handle: cusolverDnHandle_t,
798 n: cusolver_int_t,
799 nrhs: cusolver_int_t,
800 dA: *mut cuComplex,
801 ldda: cusolver_int_t,
802 dipiv: *mut cusolver_int_t,
803 dB: *mut cuComplex,
804 lddb: cusolver_int_t,
805 dX: *mut cuComplex,
806 lddx: cusolver_int_t,
807 dWorkspace: *mut ::core::ffi::c_void,
808 lwork_bytes: usize,
809 iter: *mut cusolver_int_t,
810 d_info: *mut cusolver_int_t,
811 ) -> cusolverStatus_t;
812 pub fn cusolverDnCEgesv_bufferSize(
813 handle: cusolverDnHandle_t,
814 n: cusolver_int_t,
815 nrhs: cusolver_int_t,
816 dA: *mut cuComplex,
817 ldda: cusolver_int_t,
818 dipiv: *mut cusolver_int_t,
819 dB: *mut cuComplex,
820 lddb: cusolver_int_t,
821 dX: *mut cuComplex,
822 lddx: cusolver_int_t,
823 dWorkspace: *mut ::core::ffi::c_void,
824 lwork_bytes: *mut usize,
825 ) -> cusolverStatus_t;
826 pub fn cusolverDnCKgels(
827 handle: cusolverDnHandle_t,
828 m: cusolver_int_t,
829 n: cusolver_int_t,
830 nrhs: cusolver_int_t,
831 dA: *mut cuComplex,
832 ldda: cusolver_int_t,
833 dB: *mut cuComplex,
834 lddb: cusolver_int_t,
835 dX: *mut cuComplex,
836 lddx: cusolver_int_t,
837 dWorkspace: *mut ::core::ffi::c_void,
838 lwork_bytes: usize,
839 iter: *mut cusolver_int_t,
840 d_info: *mut cusolver_int_t,
841 ) -> cusolverStatus_t;
842 pub fn cusolverDnCKgels_bufferSize(
843 handle: cusolverDnHandle_t,
844 m: cusolver_int_t,
845 n: cusolver_int_t,
846 nrhs: cusolver_int_t,
847 dA: *mut cuComplex,
848 ldda: cusolver_int_t,
849 dB: *mut cuComplex,
850 lddb: cusolver_int_t,
851 dX: *mut cuComplex,
852 lddx: cusolver_int_t,
853 dWorkspace: *mut ::core::ffi::c_void,
854 lwork_bytes: *mut usize,
855 ) -> cusolverStatus_t;
856 pub fn cusolverDnCKgesv(
857 handle: cusolverDnHandle_t,
858 n: cusolver_int_t,
859 nrhs: cusolver_int_t,
860 dA: *mut cuComplex,
861 ldda: cusolver_int_t,
862 dipiv: *mut cusolver_int_t,
863 dB: *mut cuComplex,
864 lddb: cusolver_int_t,
865 dX: *mut cuComplex,
866 lddx: cusolver_int_t,
867 dWorkspace: *mut ::core::ffi::c_void,
868 lwork_bytes: usize,
869 iter: *mut cusolver_int_t,
870 d_info: *mut cusolver_int_t,
871 ) -> cusolverStatus_t;
872 pub fn cusolverDnCKgesv_bufferSize(
873 handle: cusolverDnHandle_t,
874 n: cusolver_int_t,
875 nrhs: cusolver_int_t,
876 dA: *mut cuComplex,
877 ldda: cusolver_int_t,
878 dipiv: *mut cusolver_int_t,
879 dB: *mut cuComplex,
880 lddb: cusolver_int_t,
881 dX: *mut cuComplex,
882 lddx: cusolver_int_t,
883 dWorkspace: *mut ::core::ffi::c_void,
884 lwork_bytes: *mut usize,
885 ) -> cusolverStatus_t;
886 pub fn cusolverDnCYgels(
887 handle: cusolverDnHandle_t,
888 m: cusolver_int_t,
889 n: cusolver_int_t,
890 nrhs: cusolver_int_t,
891 dA: *mut cuComplex,
892 ldda: cusolver_int_t,
893 dB: *mut cuComplex,
894 lddb: cusolver_int_t,
895 dX: *mut cuComplex,
896 lddx: cusolver_int_t,
897 dWorkspace: *mut ::core::ffi::c_void,
898 lwork_bytes: usize,
899 iter: *mut cusolver_int_t,
900 d_info: *mut cusolver_int_t,
901 ) -> cusolverStatus_t;
902 pub fn cusolverDnCYgels_bufferSize(
903 handle: cusolverDnHandle_t,
904 m: cusolver_int_t,
905 n: cusolver_int_t,
906 nrhs: cusolver_int_t,
907 dA: *mut cuComplex,
908 ldda: cusolver_int_t,
909 dB: *mut cuComplex,
910 lddb: cusolver_int_t,
911 dX: *mut cuComplex,
912 lddx: cusolver_int_t,
913 dWorkspace: *mut ::core::ffi::c_void,
914 lwork_bytes: *mut usize,
915 ) -> cusolverStatus_t;
916 pub fn cusolverDnCYgesv(
917 handle: cusolverDnHandle_t,
918 n: cusolver_int_t,
919 nrhs: cusolver_int_t,
920 dA: *mut cuComplex,
921 ldda: cusolver_int_t,
922 dipiv: *mut cusolver_int_t,
923 dB: *mut cuComplex,
924 lddb: cusolver_int_t,
925 dX: *mut cuComplex,
926 lddx: cusolver_int_t,
927 dWorkspace: *mut ::core::ffi::c_void,
928 lwork_bytes: usize,
929 iter: *mut cusolver_int_t,
930 d_info: *mut cusolver_int_t,
931 ) -> cusolverStatus_t;
932 pub fn cusolverDnCYgesv_bufferSize(
933 handle: cusolverDnHandle_t,
934 n: cusolver_int_t,
935 nrhs: cusolver_int_t,
936 dA: *mut cuComplex,
937 ldda: cusolver_int_t,
938 dipiv: *mut cusolver_int_t,
939 dB: *mut cuComplex,
940 lddb: cusolver_int_t,
941 dX: *mut cuComplex,
942 lddx: cusolver_int_t,
943 dWorkspace: *mut ::core::ffi::c_void,
944 lwork_bytes: *mut usize,
945 ) -> cusolverStatus_t;
946 pub fn cusolverDnCgebrd(
947 handle: cusolverDnHandle_t,
948 m: ::core::ffi::c_int,
949 n: ::core::ffi::c_int,
950 A: *mut cuComplex,
951 lda: ::core::ffi::c_int,
952 D: *mut f32,
953 E: *mut f32,
954 TAUQ: *mut cuComplex,
955 TAUP: *mut cuComplex,
956 Work: *mut cuComplex,
957 Lwork: ::core::ffi::c_int,
958 devInfo: *mut ::core::ffi::c_int,
959 ) -> cusolverStatus_t;
960 pub fn cusolverDnCgebrd_bufferSize(
961 handle: cusolverDnHandle_t,
962 m: ::core::ffi::c_int,
963 n: ::core::ffi::c_int,
964 Lwork: *mut ::core::ffi::c_int,
965 ) -> cusolverStatus_t;
966 pub fn cusolverDnCgeqrf(
967 handle: cusolverDnHandle_t,
968 m: ::core::ffi::c_int,
969 n: ::core::ffi::c_int,
970 A: *mut cuComplex,
971 lda: ::core::ffi::c_int,
972 TAU: *mut cuComplex,
973 Workspace: *mut cuComplex,
974 Lwork: ::core::ffi::c_int,
975 devInfo: *mut ::core::ffi::c_int,
976 ) -> cusolverStatus_t;
977 pub fn cusolverDnCgeqrf_bufferSize(
978 handle: cusolverDnHandle_t,
979 m: ::core::ffi::c_int,
980 n: ::core::ffi::c_int,
981 A: *mut cuComplex,
982 lda: ::core::ffi::c_int,
983 lwork: *mut ::core::ffi::c_int,
984 ) -> cusolverStatus_t;
985 pub fn cusolverDnCgesvd(
986 handle: cusolverDnHandle_t,
987 jobu: ::core::ffi::c_schar,
988 jobvt: ::core::ffi::c_schar,
989 m: ::core::ffi::c_int,
990 n: ::core::ffi::c_int,
991 A: *mut cuComplex,
992 lda: ::core::ffi::c_int,
993 S: *mut f32,
994 U: *mut cuComplex,
995 ldu: ::core::ffi::c_int,
996 VT: *mut cuComplex,
997 ldvt: ::core::ffi::c_int,
998 work: *mut cuComplex,
999 lwork: ::core::ffi::c_int,
1000 rwork: *mut f32,
1001 info: *mut ::core::ffi::c_int,
1002 ) -> cusolverStatus_t;
1003 pub fn cusolverDnCgesvd_bufferSize(
1004 handle: cusolverDnHandle_t,
1005 m: ::core::ffi::c_int,
1006 n: ::core::ffi::c_int,
1007 lwork: *mut ::core::ffi::c_int,
1008 ) -> cusolverStatus_t;
1009 pub fn cusolverDnCgesvdaStridedBatched(
1010 handle: cusolverDnHandle_t,
1011 jobz: cusolverEigMode_t,
1012 rank: ::core::ffi::c_int,
1013 m: ::core::ffi::c_int,
1014 n: ::core::ffi::c_int,
1015 d_A: *const cuComplex,
1016 lda: ::core::ffi::c_int,
1017 strideA: ::core::ffi::c_longlong,
1018 d_S: *mut f32,
1019 strideS: ::core::ffi::c_longlong,
1020 d_U: *mut cuComplex,
1021 ldu: ::core::ffi::c_int,
1022 strideU: ::core::ffi::c_longlong,
1023 d_V: *mut cuComplex,
1024 ldv: ::core::ffi::c_int,
1025 strideV: ::core::ffi::c_longlong,
1026 d_work: *mut cuComplex,
1027 lwork: ::core::ffi::c_int,
1028 d_info: *mut ::core::ffi::c_int,
1029 h_R_nrmF: *mut f64,
1030 batchSize: ::core::ffi::c_int,
1031 ) -> cusolverStatus_t;
1032 pub fn cusolverDnCgesvdaStridedBatched_bufferSize(
1033 handle: cusolverDnHandle_t,
1034 jobz: cusolverEigMode_t,
1035 rank: ::core::ffi::c_int,
1036 m: ::core::ffi::c_int,
1037 n: ::core::ffi::c_int,
1038 d_A: *const cuComplex,
1039 lda: ::core::ffi::c_int,
1040 strideA: ::core::ffi::c_longlong,
1041 d_S: *const f32,
1042 strideS: ::core::ffi::c_longlong,
1043 d_U: *const cuComplex,
1044 ldu: ::core::ffi::c_int,
1045 strideU: ::core::ffi::c_longlong,
1046 d_V: *const cuComplex,
1047 ldv: ::core::ffi::c_int,
1048 strideV: ::core::ffi::c_longlong,
1049 lwork: *mut ::core::ffi::c_int,
1050 batchSize: ::core::ffi::c_int,
1051 ) -> cusolverStatus_t;
1052 pub fn cusolverDnCgesvdj(
1053 handle: cusolverDnHandle_t,
1054 jobz: cusolverEigMode_t,
1055 econ: ::core::ffi::c_int,
1056 m: ::core::ffi::c_int,
1057 n: ::core::ffi::c_int,
1058 A: *mut cuComplex,
1059 lda: ::core::ffi::c_int,
1060 S: *mut f32,
1061 U: *mut cuComplex,
1062 ldu: ::core::ffi::c_int,
1063 V: *mut cuComplex,
1064 ldv: ::core::ffi::c_int,
1065 work: *mut cuComplex,
1066 lwork: ::core::ffi::c_int,
1067 info: *mut ::core::ffi::c_int,
1068 params: gesvdjInfo_t,
1069 ) -> cusolverStatus_t;
1070 pub fn cusolverDnCgesvdjBatched(
1071 handle: cusolverDnHandle_t,
1072 jobz: cusolverEigMode_t,
1073 m: ::core::ffi::c_int,
1074 n: ::core::ffi::c_int,
1075 A: *mut cuComplex,
1076 lda: ::core::ffi::c_int,
1077 S: *mut f32,
1078 U: *mut cuComplex,
1079 ldu: ::core::ffi::c_int,
1080 V: *mut cuComplex,
1081 ldv: ::core::ffi::c_int,
1082 work: *mut cuComplex,
1083 lwork: ::core::ffi::c_int,
1084 info: *mut ::core::ffi::c_int,
1085 params: gesvdjInfo_t,
1086 batchSize: ::core::ffi::c_int,
1087 ) -> cusolverStatus_t;
1088 pub fn cusolverDnCgesvdjBatched_bufferSize(
1089 handle: cusolverDnHandle_t,
1090 jobz: cusolverEigMode_t,
1091 m: ::core::ffi::c_int,
1092 n: ::core::ffi::c_int,
1093 A: *const cuComplex,
1094 lda: ::core::ffi::c_int,
1095 S: *const f32,
1096 U: *const cuComplex,
1097 ldu: ::core::ffi::c_int,
1098 V: *const cuComplex,
1099 ldv: ::core::ffi::c_int,
1100 lwork: *mut ::core::ffi::c_int,
1101 params: gesvdjInfo_t,
1102 batchSize: ::core::ffi::c_int,
1103 ) -> cusolverStatus_t;
1104 pub fn cusolverDnCgesvdj_bufferSize(
1105 handle: cusolverDnHandle_t,
1106 jobz: cusolverEigMode_t,
1107 econ: ::core::ffi::c_int,
1108 m: ::core::ffi::c_int,
1109 n: ::core::ffi::c_int,
1110 A: *const cuComplex,
1111 lda: ::core::ffi::c_int,
1112 S: *const f32,
1113 U: *const cuComplex,
1114 ldu: ::core::ffi::c_int,
1115 V: *const cuComplex,
1116 ldv: ::core::ffi::c_int,
1117 lwork: *mut ::core::ffi::c_int,
1118 params: gesvdjInfo_t,
1119 ) -> cusolverStatus_t;
1120 pub fn cusolverDnCgetrf(
1121 handle: cusolverDnHandle_t,
1122 m: ::core::ffi::c_int,
1123 n: ::core::ffi::c_int,
1124 A: *mut cuComplex,
1125 lda: ::core::ffi::c_int,
1126 Workspace: *mut cuComplex,
1127 devIpiv: *mut ::core::ffi::c_int,
1128 devInfo: *mut ::core::ffi::c_int,
1129 ) -> cusolverStatus_t;
1130 pub fn cusolverDnCgetrf_bufferSize(
1131 handle: cusolverDnHandle_t,
1132 m: ::core::ffi::c_int,
1133 n: ::core::ffi::c_int,
1134 A: *mut cuComplex,
1135 lda: ::core::ffi::c_int,
1136 Lwork: *mut ::core::ffi::c_int,
1137 ) -> cusolverStatus_t;
1138 pub fn cusolverDnCgetrs(
1139 handle: cusolverDnHandle_t,
1140 trans: cublasOperation_t,
1141 n: ::core::ffi::c_int,
1142 nrhs: ::core::ffi::c_int,
1143 A: *const cuComplex,
1144 lda: ::core::ffi::c_int,
1145 devIpiv: *const ::core::ffi::c_int,
1146 B: *mut cuComplex,
1147 ldb: ::core::ffi::c_int,
1148 devInfo: *mut ::core::ffi::c_int,
1149 ) -> cusolverStatus_t;
1150 pub fn cusolverDnCheevd(
1151 handle: cusolverDnHandle_t,
1152 jobz: cusolverEigMode_t,
1153 uplo: cublasFillMode_t,
1154 n: ::core::ffi::c_int,
1155 A: *mut cuComplex,
1156 lda: ::core::ffi::c_int,
1157 W: *mut f32,
1158 work: *mut cuComplex,
1159 lwork: ::core::ffi::c_int,
1160 info: *mut ::core::ffi::c_int,
1161 ) -> cusolverStatus_t;
1162 pub fn cusolverDnCheevd_bufferSize(
1163 handle: cusolverDnHandle_t,
1164 jobz: cusolverEigMode_t,
1165 uplo: cublasFillMode_t,
1166 n: ::core::ffi::c_int,
1167 A: *const cuComplex,
1168 lda: ::core::ffi::c_int,
1169 W: *const f32,
1170 lwork: *mut ::core::ffi::c_int,
1171 ) -> cusolverStatus_t;
1172 pub fn cusolverDnCheevdx(
1173 handle: cusolverDnHandle_t,
1174 jobz: cusolverEigMode_t,
1175 range: cusolverEigRange_t,
1176 uplo: cublasFillMode_t,
1177 n: ::core::ffi::c_int,
1178 A: *mut cuComplex,
1179 lda: ::core::ffi::c_int,
1180 vl: f32,
1181 vu: f32,
1182 il: ::core::ffi::c_int,
1183 iu: ::core::ffi::c_int,
1184 meig: *mut ::core::ffi::c_int,
1185 W: *mut f32,
1186 work: *mut cuComplex,
1187 lwork: ::core::ffi::c_int,
1188 info: *mut ::core::ffi::c_int,
1189 ) -> cusolverStatus_t;
1190 pub fn cusolverDnCheevdx_bufferSize(
1191 handle: cusolverDnHandle_t,
1192 jobz: cusolverEigMode_t,
1193 range: cusolverEigRange_t,
1194 uplo: cublasFillMode_t,
1195 n: ::core::ffi::c_int,
1196 A: *const cuComplex,
1197 lda: ::core::ffi::c_int,
1198 vl: f32,
1199 vu: f32,
1200 il: ::core::ffi::c_int,
1201 iu: ::core::ffi::c_int,
1202 meig: *mut ::core::ffi::c_int,
1203 W: *const f32,
1204 lwork: *mut ::core::ffi::c_int,
1205 ) -> cusolverStatus_t;
1206 pub fn cusolverDnCheevj(
1207 handle: cusolverDnHandle_t,
1208 jobz: cusolverEigMode_t,
1209 uplo: cublasFillMode_t,
1210 n: ::core::ffi::c_int,
1211 A: *mut cuComplex,
1212 lda: ::core::ffi::c_int,
1213 W: *mut f32,
1214 work: *mut cuComplex,
1215 lwork: ::core::ffi::c_int,
1216 info: *mut ::core::ffi::c_int,
1217 params: syevjInfo_t,
1218 ) -> cusolverStatus_t;
1219 pub fn cusolverDnCheevjBatched(
1220 handle: cusolverDnHandle_t,
1221 jobz: cusolverEigMode_t,
1222 uplo: cublasFillMode_t,
1223 n: ::core::ffi::c_int,
1224 A: *mut cuComplex,
1225 lda: ::core::ffi::c_int,
1226 W: *mut f32,
1227 work: *mut cuComplex,
1228 lwork: ::core::ffi::c_int,
1229 info: *mut ::core::ffi::c_int,
1230 params: syevjInfo_t,
1231 batchSize: ::core::ffi::c_int,
1232 ) -> cusolverStatus_t;
1233 pub fn cusolverDnCheevjBatched_bufferSize(
1234 handle: cusolverDnHandle_t,
1235 jobz: cusolverEigMode_t,
1236 uplo: cublasFillMode_t,
1237 n: ::core::ffi::c_int,
1238 A: *const cuComplex,
1239 lda: ::core::ffi::c_int,
1240 W: *const f32,
1241 lwork: *mut ::core::ffi::c_int,
1242 params: syevjInfo_t,
1243 batchSize: ::core::ffi::c_int,
1244 ) -> cusolverStatus_t;
1245 pub fn cusolverDnCheevj_bufferSize(
1246 handle: cusolverDnHandle_t,
1247 jobz: cusolverEigMode_t,
1248 uplo: cublasFillMode_t,
1249 n: ::core::ffi::c_int,
1250 A: *const cuComplex,
1251 lda: ::core::ffi::c_int,
1252 W: *const f32,
1253 lwork: *mut ::core::ffi::c_int,
1254 params: syevjInfo_t,
1255 ) -> cusolverStatus_t;
1256 pub fn cusolverDnChegvd(
1257 handle: cusolverDnHandle_t,
1258 itype: cusolverEigType_t,
1259 jobz: cusolverEigMode_t,
1260 uplo: cublasFillMode_t,
1261 n: ::core::ffi::c_int,
1262 A: *mut cuComplex,
1263 lda: ::core::ffi::c_int,
1264 B: *mut cuComplex,
1265 ldb: ::core::ffi::c_int,
1266 W: *mut f32,
1267 work: *mut cuComplex,
1268 lwork: ::core::ffi::c_int,
1269 info: *mut ::core::ffi::c_int,
1270 ) -> cusolverStatus_t;
1271 pub fn cusolverDnChegvd_bufferSize(
1272 handle: cusolverDnHandle_t,
1273 itype: cusolverEigType_t,
1274 jobz: cusolverEigMode_t,
1275 uplo: cublasFillMode_t,
1276 n: ::core::ffi::c_int,
1277 A: *const cuComplex,
1278 lda: ::core::ffi::c_int,
1279 B: *const cuComplex,
1280 ldb: ::core::ffi::c_int,
1281 W: *const f32,
1282 lwork: *mut ::core::ffi::c_int,
1283 ) -> cusolverStatus_t;
1284 pub fn cusolverDnChegvdx(
1285 handle: cusolverDnHandle_t,
1286 itype: cusolverEigType_t,
1287 jobz: cusolverEigMode_t,
1288 range: cusolverEigRange_t,
1289 uplo: cublasFillMode_t,
1290 n: ::core::ffi::c_int,
1291 A: *mut cuComplex,
1292 lda: ::core::ffi::c_int,
1293 B: *mut cuComplex,
1294 ldb: ::core::ffi::c_int,
1295 vl: f32,
1296 vu: f32,
1297 il: ::core::ffi::c_int,
1298 iu: ::core::ffi::c_int,
1299 meig: *mut ::core::ffi::c_int,
1300 W: *mut f32,
1301 work: *mut cuComplex,
1302 lwork: ::core::ffi::c_int,
1303 info: *mut ::core::ffi::c_int,
1304 ) -> cusolverStatus_t;
1305 pub fn cusolverDnChegvdx_bufferSize(
1306 handle: cusolverDnHandle_t,
1307 itype: cusolverEigType_t,
1308 jobz: cusolverEigMode_t,
1309 range: cusolverEigRange_t,
1310 uplo: cublasFillMode_t,
1311 n: ::core::ffi::c_int,
1312 A: *const cuComplex,
1313 lda: ::core::ffi::c_int,
1314 B: *const cuComplex,
1315 ldb: ::core::ffi::c_int,
1316 vl: f32,
1317 vu: f32,
1318 il: ::core::ffi::c_int,
1319 iu: ::core::ffi::c_int,
1320 meig: *mut ::core::ffi::c_int,
1321 W: *const f32,
1322 lwork: *mut ::core::ffi::c_int,
1323 ) -> cusolverStatus_t;
1324 pub fn cusolverDnChegvj(
1325 handle: cusolverDnHandle_t,
1326 itype: cusolverEigType_t,
1327 jobz: cusolverEigMode_t,
1328 uplo: cublasFillMode_t,
1329 n: ::core::ffi::c_int,
1330 A: *mut cuComplex,
1331 lda: ::core::ffi::c_int,
1332 B: *mut cuComplex,
1333 ldb: ::core::ffi::c_int,
1334 W: *mut f32,
1335 work: *mut cuComplex,
1336 lwork: ::core::ffi::c_int,
1337 info: *mut ::core::ffi::c_int,
1338 params: syevjInfo_t,
1339 ) -> cusolverStatus_t;
1340 pub fn cusolverDnChegvj_bufferSize(
1341 handle: cusolverDnHandle_t,
1342 itype: cusolverEigType_t,
1343 jobz: cusolverEigMode_t,
1344 uplo: cublasFillMode_t,
1345 n: ::core::ffi::c_int,
1346 A: *const cuComplex,
1347 lda: ::core::ffi::c_int,
1348 B: *const cuComplex,
1349 ldb: ::core::ffi::c_int,
1350 W: *const f32,
1351 lwork: *mut ::core::ffi::c_int,
1352 params: syevjInfo_t,
1353 ) -> cusolverStatus_t;
1354 pub fn cusolverDnChetrd(
1355 handle: cusolverDnHandle_t,
1356 uplo: cublasFillMode_t,
1357 n: ::core::ffi::c_int,
1358 A: *mut cuComplex,
1359 lda: ::core::ffi::c_int,
1360 d: *mut f32,
1361 e: *mut f32,
1362 tau: *mut cuComplex,
1363 work: *mut cuComplex,
1364 lwork: ::core::ffi::c_int,
1365 info: *mut ::core::ffi::c_int,
1366 ) -> cusolverStatus_t;
1367 pub fn cusolverDnChetrd_bufferSize(
1368 handle: cusolverDnHandle_t,
1369 uplo: cublasFillMode_t,
1370 n: ::core::ffi::c_int,
1371 A: *const cuComplex,
1372 lda: ::core::ffi::c_int,
1373 d: *const f32,
1374 e: *const f32,
1375 tau: *const cuComplex,
1376 lwork: *mut ::core::ffi::c_int,
1377 ) -> cusolverStatus_t;
1378 pub fn cusolverDnClaswp(
1379 handle: cusolverDnHandle_t,
1380 n: ::core::ffi::c_int,
1381 A: *mut cuComplex,
1382 lda: ::core::ffi::c_int,
1383 k1: ::core::ffi::c_int,
1384 k2: ::core::ffi::c_int,
1385 devIpiv: *const ::core::ffi::c_int,
1386 incx: ::core::ffi::c_int,
1387 ) -> cusolverStatus_t;
1388 pub fn cusolverDnClauum(
1389 handle: cusolverDnHandle_t,
1390 uplo: cublasFillMode_t,
1391 n: ::core::ffi::c_int,
1392 A: *mut cuComplex,
1393 lda: ::core::ffi::c_int,
1394 work: *mut cuComplex,
1395 lwork: ::core::ffi::c_int,
1396 devInfo: *mut ::core::ffi::c_int,
1397 ) -> cusolverStatus_t;
1398 pub fn cusolverDnClauum_bufferSize(
1399 handle: cusolverDnHandle_t,
1400 uplo: cublasFillMode_t,
1401 n: ::core::ffi::c_int,
1402 A: *mut cuComplex,
1403 lda: ::core::ffi::c_int,
1404 lwork: *mut ::core::ffi::c_int,
1405 ) -> cusolverStatus_t;
1406 pub fn cusolverDnCpotrf(
1407 handle: cusolverDnHandle_t,
1408 uplo: cublasFillMode_t,
1409 n: ::core::ffi::c_int,
1410 A: *mut cuComplex,
1411 lda: ::core::ffi::c_int,
1412 Workspace: *mut cuComplex,
1413 Lwork: ::core::ffi::c_int,
1414 devInfo: *mut ::core::ffi::c_int,
1415 ) -> cusolverStatus_t;
1416 pub fn cusolverDnCpotrfBatched(
1417 handle: cusolverDnHandle_t,
1418 uplo: cublasFillMode_t,
1419 n: ::core::ffi::c_int,
1420 Aarray: *mut *mut cuComplex,
1421 lda: ::core::ffi::c_int,
1422 infoArray: *mut ::core::ffi::c_int,
1423 batchSize: ::core::ffi::c_int,
1424 ) -> cusolverStatus_t;
1425 pub fn cusolverDnCpotrf_bufferSize(
1426 handle: cusolverDnHandle_t,
1427 uplo: cublasFillMode_t,
1428 n: ::core::ffi::c_int,
1429 A: *mut cuComplex,
1430 lda: ::core::ffi::c_int,
1431 Lwork: *mut ::core::ffi::c_int,
1432 ) -> cusolverStatus_t;
1433 pub fn cusolverDnCpotri(
1434 handle: cusolverDnHandle_t,
1435 uplo: cublasFillMode_t,
1436 n: ::core::ffi::c_int,
1437 A: *mut cuComplex,
1438 lda: ::core::ffi::c_int,
1439 work: *mut cuComplex,
1440 lwork: ::core::ffi::c_int,
1441 devInfo: *mut ::core::ffi::c_int,
1442 ) -> cusolverStatus_t;
1443 pub fn cusolverDnCpotri_bufferSize(
1444 handle: cusolverDnHandle_t,
1445 uplo: cublasFillMode_t,
1446 n: ::core::ffi::c_int,
1447 A: *mut cuComplex,
1448 lda: ::core::ffi::c_int,
1449 lwork: *mut ::core::ffi::c_int,
1450 ) -> cusolverStatus_t;
1451 pub fn cusolverDnCpotrs(
1452 handle: cusolverDnHandle_t,
1453 uplo: cublasFillMode_t,
1454 n: ::core::ffi::c_int,
1455 nrhs: ::core::ffi::c_int,
1456 A: *const cuComplex,
1457 lda: ::core::ffi::c_int,
1458 B: *mut cuComplex,
1459 ldb: ::core::ffi::c_int,
1460 devInfo: *mut ::core::ffi::c_int,
1461 ) -> cusolverStatus_t;
1462 pub fn cusolverDnCpotrsBatched(
1463 handle: cusolverDnHandle_t,
1464 uplo: cublasFillMode_t,
1465 n: ::core::ffi::c_int,
1466 nrhs: ::core::ffi::c_int,
1467 A: *mut *mut cuComplex,
1468 lda: ::core::ffi::c_int,
1469 B: *mut *mut cuComplex,
1470 ldb: ::core::ffi::c_int,
1471 d_info: *mut ::core::ffi::c_int,
1472 batchSize: ::core::ffi::c_int,
1473 ) -> cusolverStatus_t;
1474 pub fn cusolverDnCreate(handle: *mut cusolverDnHandle_t) -> cusolverStatus_t;
1475 pub fn cusolverDnCreateGesvdjInfo(info: *mut gesvdjInfo_t) -> cusolverStatus_t;
1476 pub fn cusolverDnCreateParams(params: *mut cusolverDnParams_t) -> cusolverStatus_t;
1477 pub fn cusolverDnCreateSyevjInfo(info: *mut syevjInfo_t) -> cusolverStatus_t;
1478 pub fn cusolverDnCsytrf(
1479 handle: cusolverDnHandle_t,
1480 uplo: cublasFillMode_t,
1481 n: ::core::ffi::c_int,
1482 A: *mut cuComplex,
1483 lda: ::core::ffi::c_int,
1484 ipiv: *mut ::core::ffi::c_int,
1485 work: *mut cuComplex,
1486 lwork: ::core::ffi::c_int,
1487 info: *mut ::core::ffi::c_int,
1488 ) -> cusolverStatus_t;
1489 pub fn cusolverDnCsytrf_bufferSize(
1490 handle: cusolverDnHandle_t,
1491 n: ::core::ffi::c_int,
1492 A: *mut cuComplex,
1493 lda: ::core::ffi::c_int,
1494 lwork: *mut ::core::ffi::c_int,
1495 ) -> cusolverStatus_t;
1496 pub fn cusolverDnCsytri(
1497 handle: cusolverDnHandle_t,
1498 uplo: cublasFillMode_t,
1499 n: ::core::ffi::c_int,
1500 A: *mut cuComplex,
1501 lda: ::core::ffi::c_int,
1502 ipiv: *const ::core::ffi::c_int,
1503 work: *mut cuComplex,
1504 lwork: ::core::ffi::c_int,
1505 info: *mut ::core::ffi::c_int,
1506 ) -> cusolverStatus_t;
1507 pub fn cusolverDnCsytri_bufferSize(
1508 handle: cusolverDnHandle_t,
1509 uplo: cublasFillMode_t,
1510 n: ::core::ffi::c_int,
1511 A: *mut cuComplex,
1512 lda: ::core::ffi::c_int,
1513 ipiv: *const ::core::ffi::c_int,
1514 lwork: *mut ::core::ffi::c_int,
1515 ) -> cusolverStatus_t;
1516 pub fn cusolverDnCungbr(
1517 handle: cusolverDnHandle_t,
1518 side: cublasSideMode_t,
1519 m: ::core::ffi::c_int,
1520 n: ::core::ffi::c_int,
1521 k: ::core::ffi::c_int,
1522 A: *mut cuComplex,
1523 lda: ::core::ffi::c_int,
1524 tau: *const cuComplex,
1525 work: *mut cuComplex,
1526 lwork: ::core::ffi::c_int,
1527 info: *mut ::core::ffi::c_int,
1528 ) -> cusolverStatus_t;
1529 pub fn cusolverDnCungbr_bufferSize(
1530 handle: cusolverDnHandle_t,
1531 side: cublasSideMode_t,
1532 m: ::core::ffi::c_int,
1533 n: ::core::ffi::c_int,
1534 k: ::core::ffi::c_int,
1535 A: *const cuComplex,
1536 lda: ::core::ffi::c_int,
1537 tau: *const cuComplex,
1538 lwork: *mut ::core::ffi::c_int,
1539 ) -> cusolverStatus_t;
1540 pub fn cusolverDnCungqr(
1541 handle: cusolverDnHandle_t,
1542 m: ::core::ffi::c_int,
1543 n: ::core::ffi::c_int,
1544 k: ::core::ffi::c_int,
1545 A: *mut cuComplex,
1546 lda: ::core::ffi::c_int,
1547 tau: *const cuComplex,
1548 work: *mut cuComplex,
1549 lwork: ::core::ffi::c_int,
1550 info: *mut ::core::ffi::c_int,
1551 ) -> cusolverStatus_t;
1552 pub fn cusolverDnCungqr_bufferSize(
1553 handle: cusolverDnHandle_t,
1554 m: ::core::ffi::c_int,
1555 n: ::core::ffi::c_int,
1556 k: ::core::ffi::c_int,
1557 A: *const cuComplex,
1558 lda: ::core::ffi::c_int,
1559 tau: *const cuComplex,
1560 lwork: *mut ::core::ffi::c_int,
1561 ) -> cusolverStatus_t;
1562 pub fn cusolverDnCungtr(
1563 handle: cusolverDnHandle_t,
1564 uplo: cublasFillMode_t,
1565 n: ::core::ffi::c_int,
1566 A: *mut cuComplex,
1567 lda: ::core::ffi::c_int,
1568 tau: *const cuComplex,
1569 work: *mut cuComplex,
1570 lwork: ::core::ffi::c_int,
1571 info: *mut ::core::ffi::c_int,
1572 ) -> cusolverStatus_t;
1573 pub fn cusolverDnCungtr_bufferSize(
1574 handle: cusolverDnHandle_t,
1575 uplo: cublasFillMode_t,
1576 n: ::core::ffi::c_int,
1577 A: *const cuComplex,
1578 lda: ::core::ffi::c_int,
1579 tau: *const cuComplex,
1580 lwork: *mut ::core::ffi::c_int,
1581 ) -> cusolverStatus_t;
1582 pub fn cusolverDnCunmqr(
1583 handle: cusolverDnHandle_t,
1584 side: cublasSideMode_t,
1585 trans: cublasOperation_t,
1586 m: ::core::ffi::c_int,
1587 n: ::core::ffi::c_int,
1588 k: ::core::ffi::c_int,
1589 A: *const cuComplex,
1590 lda: ::core::ffi::c_int,
1591 tau: *const cuComplex,
1592 C: *mut cuComplex,
1593 ldc: ::core::ffi::c_int,
1594 work: *mut cuComplex,
1595 lwork: ::core::ffi::c_int,
1596 devInfo: *mut ::core::ffi::c_int,
1597 ) -> cusolverStatus_t;
1598 pub fn cusolverDnCunmqr_bufferSize(
1599 handle: cusolverDnHandle_t,
1600 side: cublasSideMode_t,
1601 trans: cublasOperation_t,
1602 m: ::core::ffi::c_int,
1603 n: ::core::ffi::c_int,
1604 k: ::core::ffi::c_int,
1605 A: *const cuComplex,
1606 lda: ::core::ffi::c_int,
1607 tau: *const cuComplex,
1608 C: *const cuComplex,
1609 ldc: ::core::ffi::c_int,
1610 lwork: *mut ::core::ffi::c_int,
1611 ) -> cusolverStatus_t;
1612 pub fn cusolverDnCunmtr(
1613 handle: cusolverDnHandle_t,
1614 side: cublasSideMode_t,
1615 uplo: cublasFillMode_t,
1616 trans: cublasOperation_t,
1617 m: ::core::ffi::c_int,
1618 n: ::core::ffi::c_int,
1619 A: *mut cuComplex,
1620 lda: ::core::ffi::c_int,
1621 tau: *mut cuComplex,
1622 C: *mut cuComplex,
1623 ldc: ::core::ffi::c_int,
1624 work: *mut cuComplex,
1625 lwork: ::core::ffi::c_int,
1626 info: *mut ::core::ffi::c_int,
1627 ) -> cusolverStatus_t;
1628 pub fn cusolverDnCunmtr_bufferSize(
1629 handle: cusolverDnHandle_t,
1630 side: cublasSideMode_t,
1631 uplo: cublasFillMode_t,
1632 trans: cublasOperation_t,
1633 m: ::core::ffi::c_int,
1634 n: ::core::ffi::c_int,
1635 A: *const cuComplex,
1636 lda: ::core::ffi::c_int,
1637 tau: *const cuComplex,
1638 C: *const cuComplex,
1639 ldc: ::core::ffi::c_int,
1640 lwork: *mut ::core::ffi::c_int,
1641 ) -> cusolverStatus_t;
1642 pub fn cusolverDnDBgels(
1643 handle: cusolverDnHandle_t,
1644 m: cusolver_int_t,
1645 n: cusolver_int_t,
1646 nrhs: cusolver_int_t,
1647 dA: *mut f64,
1648 ldda: cusolver_int_t,
1649 dB: *mut f64,
1650 lddb: cusolver_int_t,
1651 dX: *mut f64,
1652 lddx: cusolver_int_t,
1653 dWorkspace: *mut ::core::ffi::c_void,
1654 lwork_bytes: usize,
1655 iter: *mut cusolver_int_t,
1656 d_info: *mut cusolver_int_t,
1657 ) -> cusolverStatus_t;
1658 pub fn cusolverDnDBgels_bufferSize(
1659 handle: cusolverDnHandle_t,
1660 m: cusolver_int_t,
1661 n: cusolver_int_t,
1662 nrhs: cusolver_int_t,
1663 dA: *mut f64,
1664 ldda: cusolver_int_t,
1665 dB: *mut f64,
1666 lddb: cusolver_int_t,
1667 dX: *mut f64,
1668 lddx: cusolver_int_t,
1669 dWorkspace: *mut ::core::ffi::c_void,
1670 lwork_bytes: *mut usize,
1671 ) -> cusolverStatus_t;
1672 pub fn cusolverDnDBgesv(
1673 handle: cusolverDnHandle_t,
1674 n: cusolver_int_t,
1675 nrhs: cusolver_int_t,
1676 dA: *mut f64,
1677 ldda: cusolver_int_t,
1678 dipiv: *mut cusolver_int_t,
1679 dB: *mut f64,
1680 lddb: cusolver_int_t,
1681 dX: *mut f64,
1682 lddx: cusolver_int_t,
1683 dWorkspace: *mut ::core::ffi::c_void,
1684 lwork_bytes: usize,
1685 iter: *mut cusolver_int_t,
1686 d_info: *mut cusolver_int_t,
1687 ) -> cusolverStatus_t;
1688 pub fn cusolverDnDBgesv_bufferSize(
1689 handle: cusolverDnHandle_t,
1690 n: cusolver_int_t,
1691 nrhs: cusolver_int_t,
1692 dA: *mut f64,
1693 ldda: cusolver_int_t,
1694 dipiv: *mut cusolver_int_t,
1695 dB: *mut f64,
1696 lddb: cusolver_int_t,
1697 dX: *mut f64,
1698 lddx: cusolver_int_t,
1699 dWorkspace: *mut ::core::ffi::c_void,
1700 lwork_bytes: *mut usize,
1701 ) -> cusolverStatus_t;
1702 pub fn cusolverDnDDgels(
1703 handle: cusolverDnHandle_t,
1704 m: cusolver_int_t,
1705 n: cusolver_int_t,
1706 nrhs: cusolver_int_t,
1707 dA: *mut f64,
1708 ldda: cusolver_int_t,
1709 dB: *mut f64,
1710 lddb: cusolver_int_t,
1711 dX: *mut f64,
1712 lddx: cusolver_int_t,
1713 dWorkspace: *mut ::core::ffi::c_void,
1714 lwork_bytes: usize,
1715 iter: *mut cusolver_int_t,
1716 d_info: *mut cusolver_int_t,
1717 ) -> cusolverStatus_t;
1718 pub fn cusolverDnDDgels_bufferSize(
1719 handle: cusolverDnHandle_t,
1720 m: cusolver_int_t,
1721 n: cusolver_int_t,
1722 nrhs: cusolver_int_t,
1723 dA: *mut f64,
1724 ldda: cusolver_int_t,
1725 dB: *mut f64,
1726 lddb: cusolver_int_t,
1727 dX: *mut f64,
1728 lddx: cusolver_int_t,
1729 dWorkspace: *mut ::core::ffi::c_void,
1730 lwork_bytes: *mut usize,
1731 ) -> cusolverStatus_t;
1732 pub fn cusolverDnDDgesv(
1733 handle: cusolverDnHandle_t,
1734 n: cusolver_int_t,
1735 nrhs: cusolver_int_t,
1736 dA: *mut f64,
1737 ldda: cusolver_int_t,
1738 dipiv: *mut cusolver_int_t,
1739 dB: *mut f64,
1740 lddb: cusolver_int_t,
1741 dX: *mut f64,
1742 lddx: cusolver_int_t,
1743 dWorkspace: *mut ::core::ffi::c_void,
1744 lwork_bytes: usize,
1745 iter: *mut cusolver_int_t,
1746 d_info: *mut cusolver_int_t,
1747 ) -> cusolverStatus_t;
1748 pub fn cusolverDnDDgesv_bufferSize(
1749 handle: cusolverDnHandle_t,
1750 n: cusolver_int_t,
1751 nrhs: cusolver_int_t,
1752 dA: *mut f64,
1753 ldda: cusolver_int_t,
1754 dipiv: *mut cusolver_int_t,
1755 dB: *mut f64,
1756 lddb: cusolver_int_t,
1757 dX: *mut f64,
1758 lddx: cusolver_int_t,
1759 dWorkspace: *mut ::core::ffi::c_void,
1760 lwork_bytes: *mut usize,
1761 ) -> cusolverStatus_t;
1762 pub fn cusolverDnDHgels(
1763 handle: cusolverDnHandle_t,
1764 m: cusolver_int_t,
1765 n: cusolver_int_t,
1766 nrhs: cusolver_int_t,
1767 dA: *mut f64,
1768 ldda: cusolver_int_t,
1769 dB: *mut f64,
1770 lddb: cusolver_int_t,
1771 dX: *mut f64,
1772 lddx: cusolver_int_t,
1773 dWorkspace: *mut ::core::ffi::c_void,
1774 lwork_bytes: usize,
1775 iter: *mut cusolver_int_t,
1776 d_info: *mut cusolver_int_t,
1777 ) -> cusolverStatus_t;
1778 pub fn cusolverDnDHgels_bufferSize(
1779 handle: cusolverDnHandle_t,
1780 m: cusolver_int_t,
1781 n: cusolver_int_t,
1782 nrhs: cusolver_int_t,
1783 dA: *mut f64,
1784 ldda: cusolver_int_t,
1785 dB: *mut f64,
1786 lddb: cusolver_int_t,
1787 dX: *mut f64,
1788 lddx: cusolver_int_t,
1789 dWorkspace: *mut ::core::ffi::c_void,
1790 lwork_bytes: *mut usize,
1791 ) -> cusolverStatus_t;
1792 pub fn cusolverDnDHgesv(
1793 handle: cusolverDnHandle_t,
1794 n: cusolver_int_t,
1795 nrhs: cusolver_int_t,
1796 dA: *mut f64,
1797 ldda: cusolver_int_t,
1798 dipiv: *mut cusolver_int_t,
1799 dB: *mut f64,
1800 lddb: cusolver_int_t,
1801 dX: *mut f64,
1802 lddx: cusolver_int_t,
1803 dWorkspace: *mut ::core::ffi::c_void,
1804 lwork_bytes: usize,
1805 iter: *mut cusolver_int_t,
1806 d_info: *mut cusolver_int_t,
1807 ) -> cusolverStatus_t;
1808 pub fn cusolverDnDHgesv_bufferSize(
1809 handle: cusolverDnHandle_t,
1810 n: cusolver_int_t,
1811 nrhs: cusolver_int_t,
1812 dA: *mut f64,
1813 ldda: cusolver_int_t,
1814 dipiv: *mut cusolver_int_t,
1815 dB: *mut f64,
1816 lddb: cusolver_int_t,
1817 dX: *mut f64,
1818 lddx: cusolver_int_t,
1819 dWorkspace: *mut ::core::ffi::c_void,
1820 lwork_bytes: *mut usize,
1821 ) -> cusolverStatus_t;
1822 pub fn cusolverDnDSgels(
1823 handle: cusolverDnHandle_t,
1824 m: cusolver_int_t,
1825 n: cusolver_int_t,
1826 nrhs: cusolver_int_t,
1827 dA: *mut f64,
1828 ldda: cusolver_int_t,
1829 dB: *mut f64,
1830 lddb: cusolver_int_t,
1831 dX: *mut f64,
1832 lddx: cusolver_int_t,
1833 dWorkspace: *mut ::core::ffi::c_void,
1834 lwork_bytes: usize,
1835 iter: *mut cusolver_int_t,
1836 d_info: *mut cusolver_int_t,
1837 ) -> cusolverStatus_t;
1838 pub fn cusolverDnDSgels_bufferSize(
1839 handle: cusolverDnHandle_t,
1840 m: cusolver_int_t,
1841 n: cusolver_int_t,
1842 nrhs: cusolver_int_t,
1843 dA: *mut f64,
1844 ldda: cusolver_int_t,
1845 dB: *mut f64,
1846 lddb: cusolver_int_t,
1847 dX: *mut f64,
1848 lddx: cusolver_int_t,
1849 dWorkspace: *mut ::core::ffi::c_void,
1850 lwork_bytes: *mut usize,
1851 ) -> cusolverStatus_t;
1852 pub fn cusolverDnDSgesv(
1853 handle: cusolverDnHandle_t,
1854 n: cusolver_int_t,
1855 nrhs: cusolver_int_t,
1856 dA: *mut f64,
1857 ldda: cusolver_int_t,
1858 dipiv: *mut cusolver_int_t,
1859 dB: *mut f64,
1860 lddb: cusolver_int_t,
1861 dX: *mut f64,
1862 lddx: cusolver_int_t,
1863 dWorkspace: *mut ::core::ffi::c_void,
1864 lwork_bytes: usize,
1865 iter: *mut cusolver_int_t,
1866 d_info: *mut cusolver_int_t,
1867 ) -> cusolverStatus_t;
1868 pub fn cusolverDnDSgesv_bufferSize(
1869 handle: cusolverDnHandle_t,
1870 n: cusolver_int_t,
1871 nrhs: cusolver_int_t,
1872 dA: *mut f64,
1873 ldda: cusolver_int_t,
1874 dipiv: *mut cusolver_int_t,
1875 dB: *mut f64,
1876 lddb: cusolver_int_t,
1877 dX: *mut f64,
1878 lddx: cusolver_int_t,
1879 dWorkspace: *mut ::core::ffi::c_void,
1880 lwork_bytes: *mut usize,
1881 ) -> cusolverStatus_t;
1882 pub fn cusolverDnDXgels(
1883 handle: cusolverDnHandle_t,
1884 m: cusolver_int_t,
1885 n: cusolver_int_t,
1886 nrhs: cusolver_int_t,
1887 dA: *mut f64,
1888 ldda: cusolver_int_t,
1889 dB: *mut f64,
1890 lddb: cusolver_int_t,
1891 dX: *mut f64,
1892 lddx: cusolver_int_t,
1893 dWorkspace: *mut ::core::ffi::c_void,
1894 lwork_bytes: usize,
1895 iter: *mut cusolver_int_t,
1896 d_info: *mut cusolver_int_t,
1897 ) -> cusolverStatus_t;
1898 pub fn cusolverDnDXgels_bufferSize(
1899 handle: cusolverDnHandle_t,
1900 m: cusolver_int_t,
1901 n: cusolver_int_t,
1902 nrhs: cusolver_int_t,
1903 dA: *mut f64,
1904 ldda: cusolver_int_t,
1905 dB: *mut f64,
1906 lddb: cusolver_int_t,
1907 dX: *mut f64,
1908 lddx: cusolver_int_t,
1909 dWorkspace: *mut ::core::ffi::c_void,
1910 lwork_bytes: *mut usize,
1911 ) -> cusolverStatus_t;
1912 pub fn cusolverDnDXgesv(
1913 handle: cusolverDnHandle_t,
1914 n: cusolver_int_t,
1915 nrhs: cusolver_int_t,
1916 dA: *mut f64,
1917 ldda: cusolver_int_t,
1918 dipiv: *mut cusolver_int_t,
1919 dB: *mut f64,
1920 lddb: cusolver_int_t,
1921 dX: *mut f64,
1922 lddx: cusolver_int_t,
1923 dWorkspace: *mut ::core::ffi::c_void,
1924 lwork_bytes: usize,
1925 iter: *mut cusolver_int_t,
1926 d_info: *mut cusolver_int_t,
1927 ) -> cusolverStatus_t;
1928 pub fn cusolverDnDXgesv_bufferSize(
1929 handle: cusolverDnHandle_t,
1930 n: cusolver_int_t,
1931 nrhs: cusolver_int_t,
1932 dA: *mut f64,
1933 ldda: cusolver_int_t,
1934 dipiv: *mut cusolver_int_t,
1935 dB: *mut f64,
1936 lddb: cusolver_int_t,
1937 dX: *mut f64,
1938 lddx: cusolver_int_t,
1939 dWorkspace: *mut ::core::ffi::c_void,
1940 lwork_bytes: *mut usize,
1941 ) -> cusolverStatus_t;
1942 pub fn cusolverDnDestroy(handle: cusolverDnHandle_t) -> cusolverStatus_t;
1943 pub fn cusolverDnDestroyGesvdjInfo(info: gesvdjInfo_t) -> cusolverStatus_t;
1944 pub fn cusolverDnDestroyParams(params: cusolverDnParams_t) -> cusolverStatus_t;
1945 pub fn cusolverDnDestroySyevjInfo(info: syevjInfo_t) -> cusolverStatus_t;
1946 pub fn cusolverDnDgebrd(
1947 handle: cusolverDnHandle_t,
1948 m: ::core::ffi::c_int,
1949 n: ::core::ffi::c_int,
1950 A: *mut f64,
1951 lda: ::core::ffi::c_int,
1952 D: *mut f64,
1953 E: *mut f64,
1954 TAUQ: *mut f64,
1955 TAUP: *mut f64,
1956 Work: *mut f64,
1957 Lwork: ::core::ffi::c_int,
1958 devInfo: *mut ::core::ffi::c_int,
1959 ) -> cusolverStatus_t;
1960 pub fn cusolverDnDgebrd_bufferSize(
1961 handle: cusolverDnHandle_t,
1962 m: ::core::ffi::c_int,
1963 n: ::core::ffi::c_int,
1964 Lwork: *mut ::core::ffi::c_int,
1965 ) -> cusolverStatus_t;
1966 pub fn cusolverDnDgeqrf(
1967 handle: cusolverDnHandle_t,
1968 m: ::core::ffi::c_int,
1969 n: ::core::ffi::c_int,
1970 A: *mut f64,
1971 lda: ::core::ffi::c_int,
1972 TAU: *mut f64,
1973 Workspace: *mut f64,
1974 Lwork: ::core::ffi::c_int,
1975 devInfo: *mut ::core::ffi::c_int,
1976 ) -> cusolverStatus_t;
1977 pub fn cusolverDnDgeqrf_bufferSize(
1978 handle: cusolverDnHandle_t,
1979 m: ::core::ffi::c_int,
1980 n: ::core::ffi::c_int,
1981 A: *mut f64,
1982 lda: ::core::ffi::c_int,
1983 lwork: *mut ::core::ffi::c_int,
1984 ) -> cusolverStatus_t;
1985 pub fn cusolverDnDgesvd(
1986 handle: cusolverDnHandle_t,
1987 jobu: ::core::ffi::c_schar,
1988 jobvt: ::core::ffi::c_schar,
1989 m: ::core::ffi::c_int,
1990 n: ::core::ffi::c_int,
1991 A: *mut f64,
1992 lda: ::core::ffi::c_int,
1993 S: *mut f64,
1994 U: *mut f64,
1995 ldu: ::core::ffi::c_int,
1996 VT: *mut f64,
1997 ldvt: ::core::ffi::c_int,
1998 work: *mut f64,
1999 lwork: ::core::ffi::c_int,
2000 rwork: *mut f64,
2001 info: *mut ::core::ffi::c_int,
2002 ) -> cusolverStatus_t;
2003 pub fn cusolverDnDgesvd_bufferSize(
2004 handle: cusolverDnHandle_t,
2005 m: ::core::ffi::c_int,
2006 n: ::core::ffi::c_int,
2007 lwork: *mut ::core::ffi::c_int,
2008 ) -> cusolverStatus_t;
2009 pub fn cusolverDnDgesvdaStridedBatched(
2010 handle: cusolverDnHandle_t,
2011 jobz: cusolverEigMode_t,
2012 rank: ::core::ffi::c_int,
2013 m: ::core::ffi::c_int,
2014 n: ::core::ffi::c_int,
2015 d_A: *const f64,
2016 lda: ::core::ffi::c_int,
2017 strideA: ::core::ffi::c_longlong,
2018 d_S: *mut f64,
2019 strideS: ::core::ffi::c_longlong,
2020 d_U: *mut f64,
2021 ldu: ::core::ffi::c_int,
2022 strideU: ::core::ffi::c_longlong,
2023 d_V: *mut f64,
2024 ldv: ::core::ffi::c_int,
2025 strideV: ::core::ffi::c_longlong,
2026 d_work: *mut f64,
2027 lwork: ::core::ffi::c_int,
2028 d_info: *mut ::core::ffi::c_int,
2029 h_R_nrmF: *mut f64,
2030 batchSize: ::core::ffi::c_int,
2031 ) -> cusolverStatus_t;
2032 pub fn cusolverDnDgesvdaStridedBatched_bufferSize(
2033 handle: cusolverDnHandle_t,
2034 jobz: cusolverEigMode_t,
2035 rank: ::core::ffi::c_int,
2036 m: ::core::ffi::c_int,
2037 n: ::core::ffi::c_int,
2038 d_A: *const f64,
2039 lda: ::core::ffi::c_int,
2040 strideA: ::core::ffi::c_longlong,
2041 d_S: *const f64,
2042 strideS: ::core::ffi::c_longlong,
2043 d_U: *const f64,
2044 ldu: ::core::ffi::c_int,
2045 strideU: ::core::ffi::c_longlong,
2046 d_V: *const f64,
2047 ldv: ::core::ffi::c_int,
2048 strideV: ::core::ffi::c_longlong,
2049 lwork: *mut ::core::ffi::c_int,
2050 batchSize: ::core::ffi::c_int,
2051 ) -> cusolverStatus_t;
2052 pub fn cusolverDnDgesvdj(
2053 handle: cusolverDnHandle_t,
2054 jobz: cusolverEigMode_t,
2055 econ: ::core::ffi::c_int,
2056 m: ::core::ffi::c_int,
2057 n: ::core::ffi::c_int,
2058 A: *mut f64,
2059 lda: ::core::ffi::c_int,
2060 S: *mut f64,
2061 U: *mut f64,
2062 ldu: ::core::ffi::c_int,
2063 V: *mut f64,
2064 ldv: ::core::ffi::c_int,
2065 work: *mut f64,
2066 lwork: ::core::ffi::c_int,
2067 info: *mut ::core::ffi::c_int,
2068 params: gesvdjInfo_t,
2069 ) -> cusolverStatus_t;
2070 pub fn cusolverDnDgesvdjBatched(
2071 handle: cusolverDnHandle_t,
2072 jobz: cusolverEigMode_t,
2073 m: ::core::ffi::c_int,
2074 n: ::core::ffi::c_int,
2075 A: *mut f64,
2076 lda: ::core::ffi::c_int,
2077 S: *mut f64,
2078 U: *mut f64,
2079 ldu: ::core::ffi::c_int,
2080 V: *mut f64,
2081 ldv: ::core::ffi::c_int,
2082 work: *mut f64,
2083 lwork: ::core::ffi::c_int,
2084 info: *mut ::core::ffi::c_int,
2085 params: gesvdjInfo_t,
2086 batchSize: ::core::ffi::c_int,
2087 ) -> cusolverStatus_t;
2088 pub fn cusolverDnDgesvdjBatched_bufferSize(
2089 handle: cusolverDnHandle_t,
2090 jobz: cusolverEigMode_t,
2091 m: ::core::ffi::c_int,
2092 n: ::core::ffi::c_int,
2093 A: *const f64,
2094 lda: ::core::ffi::c_int,
2095 S: *const f64,
2096 U: *const f64,
2097 ldu: ::core::ffi::c_int,
2098 V: *const f64,
2099 ldv: ::core::ffi::c_int,
2100 lwork: *mut ::core::ffi::c_int,
2101 params: gesvdjInfo_t,
2102 batchSize: ::core::ffi::c_int,
2103 ) -> cusolverStatus_t;
2104 pub fn cusolverDnDgesvdj_bufferSize(
2105 handle: cusolverDnHandle_t,
2106 jobz: cusolverEigMode_t,
2107 econ: ::core::ffi::c_int,
2108 m: ::core::ffi::c_int,
2109 n: ::core::ffi::c_int,
2110 A: *const f64,
2111 lda: ::core::ffi::c_int,
2112 S: *const f64,
2113 U: *const f64,
2114 ldu: ::core::ffi::c_int,
2115 V: *const f64,
2116 ldv: ::core::ffi::c_int,
2117 lwork: *mut ::core::ffi::c_int,
2118 params: gesvdjInfo_t,
2119 ) -> cusolverStatus_t;
2120 pub fn cusolverDnDgetrf(
2121 handle: cusolverDnHandle_t,
2122 m: ::core::ffi::c_int,
2123 n: ::core::ffi::c_int,
2124 A: *mut f64,
2125 lda: ::core::ffi::c_int,
2126 Workspace: *mut f64,
2127 devIpiv: *mut ::core::ffi::c_int,
2128 devInfo: *mut ::core::ffi::c_int,
2129 ) -> cusolverStatus_t;
2130 pub fn cusolverDnDgetrf_bufferSize(
2131 handle: cusolverDnHandle_t,
2132 m: ::core::ffi::c_int,
2133 n: ::core::ffi::c_int,
2134 A: *mut f64,
2135 lda: ::core::ffi::c_int,
2136 Lwork: *mut ::core::ffi::c_int,
2137 ) -> cusolverStatus_t;
2138 pub fn cusolverDnDgetrs(
2139 handle: cusolverDnHandle_t,
2140 trans: cublasOperation_t,
2141 n: ::core::ffi::c_int,
2142 nrhs: ::core::ffi::c_int,
2143 A: *const f64,
2144 lda: ::core::ffi::c_int,
2145 devIpiv: *const ::core::ffi::c_int,
2146 B: *mut f64,
2147 ldb: ::core::ffi::c_int,
2148 devInfo: *mut ::core::ffi::c_int,
2149 ) -> cusolverStatus_t;
2150 pub fn cusolverDnDlaswp(
2151 handle: cusolverDnHandle_t,
2152 n: ::core::ffi::c_int,
2153 A: *mut f64,
2154 lda: ::core::ffi::c_int,
2155 k1: ::core::ffi::c_int,
2156 k2: ::core::ffi::c_int,
2157 devIpiv: *const ::core::ffi::c_int,
2158 incx: ::core::ffi::c_int,
2159 ) -> cusolverStatus_t;
2160 pub fn cusolverDnDlauum(
2161 handle: cusolverDnHandle_t,
2162 uplo: cublasFillMode_t,
2163 n: ::core::ffi::c_int,
2164 A: *mut f64,
2165 lda: ::core::ffi::c_int,
2166 work: *mut f64,
2167 lwork: ::core::ffi::c_int,
2168 devInfo: *mut ::core::ffi::c_int,
2169 ) -> cusolverStatus_t;
2170 pub fn cusolverDnDlauum_bufferSize(
2171 handle: cusolverDnHandle_t,
2172 uplo: cublasFillMode_t,
2173 n: ::core::ffi::c_int,
2174 A: *mut f64,
2175 lda: ::core::ffi::c_int,
2176 lwork: *mut ::core::ffi::c_int,
2177 ) -> cusolverStatus_t;
2178 pub fn cusolverDnDorgbr(
2179 handle: cusolverDnHandle_t,
2180 side: cublasSideMode_t,
2181 m: ::core::ffi::c_int,
2182 n: ::core::ffi::c_int,
2183 k: ::core::ffi::c_int,
2184 A: *mut f64,
2185 lda: ::core::ffi::c_int,
2186 tau: *const f64,
2187 work: *mut f64,
2188 lwork: ::core::ffi::c_int,
2189 info: *mut ::core::ffi::c_int,
2190 ) -> cusolverStatus_t;
2191 pub fn cusolverDnDorgbr_bufferSize(
2192 handle: cusolverDnHandle_t,
2193 side: cublasSideMode_t,
2194 m: ::core::ffi::c_int,
2195 n: ::core::ffi::c_int,
2196 k: ::core::ffi::c_int,
2197 A: *const f64,
2198 lda: ::core::ffi::c_int,
2199 tau: *const f64,
2200 lwork: *mut ::core::ffi::c_int,
2201 ) -> cusolverStatus_t;
2202 pub fn cusolverDnDorgqr(
2203 handle: cusolverDnHandle_t,
2204 m: ::core::ffi::c_int,
2205 n: ::core::ffi::c_int,
2206 k: ::core::ffi::c_int,
2207 A: *mut f64,
2208 lda: ::core::ffi::c_int,
2209 tau: *const f64,
2210 work: *mut f64,
2211 lwork: ::core::ffi::c_int,
2212 info: *mut ::core::ffi::c_int,
2213 ) -> cusolverStatus_t;
2214 pub fn cusolverDnDorgqr_bufferSize(
2215 handle: cusolverDnHandle_t,
2216 m: ::core::ffi::c_int,
2217 n: ::core::ffi::c_int,
2218 k: ::core::ffi::c_int,
2219 A: *const f64,
2220 lda: ::core::ffi::c_int,
2221 tau: *const f64,
2222 lwork: *mut ::core::ffi::c_int,
2223 ) -> cusolverStatus_t;
2224 pub fn cusolverDnDorgtr(
2225 handle: cusolverDnHandle_t,
2226 uplo: cublasFillMode_t,
2227 n: ::core::ffi::c_int,
2228 A: *mut f64,
2229 lda: ::core::ffi::c_int,
2230 tau: *const f64,
2231 work: *mut f64,
2232 lwork: ::core::ffi::c_int,
2233 info: *mut ::core::ffi::c_int,
2234 ) -> cusolverStatus_t;
2235 pub fn cusolverDnDorgtr_bufferSize(
2236 handle: cusolverDnHandle_t,
2237 uplo: cublasFillMode_t,
2238 n: ::core::ffi::c_int,
2239 A: *const f64,
2240 lda: ::core::ffi::c_int,
2241 tau: *const f64,
2242 lwork: *mut ::core::ffi::c_int,
2243 ) -> cusolverStatus_t;
2244 pub fn cusolverDnDormqr(
2245 handle: cusolverDnHandle_t,
2246 side: cublasSideMode_t,
2247 trans: cublasOperation_t,
2248 m: ::core::ffi::c_int,
2249 n: ::core::ffi::c_int,
2250 k: ::core::ffi::c_int,
2251 A: *const f64,
2252 lda: ::core::ffi::c_int,
2253 tau: *const f64,
2254 C: *mut f64,
2255 ldc: ::core::ffi::c_int,
2256 work: *mut f64,
2257 lwork: ::core::ffi::c_int,
2258 devInfo: *mut ::core::ffi::c_int,
2259 ) -> cusolverStatus_t;
2260 pub fn cusolverDnDormqr_bufferSize(
2261 handle: cusolverDnHandle_t,
2262 side: cublasSideMode_t,
2263 trans: cublasOperation_t,
2264 m: ::core::ffi::c_int,
2265 n: ::core::ffi::c_int,
2266 k: ::core::ffi::c_int,
2267 A: *const f64,
2268 lda: ::core::ffi::c_int,
2269 tau: *const f64,
2270 C: *const f64,
2271 ldc: ::core::ffi::c_int,
2272 lwork: *mut ::core::ffi::c_int,
2273 ) -> cusolverStatus_t;
2274 pub fn cusolverDnDormtr(
2275 handle: cusolverDnHandle_t,
2276 side: cublasSideMode_t,
2277 uplo: cublasFillMode_t,
2278 trans: cublasOperation_t,
2279 m: ::core::ffi::c_int,
2280 n: ::core::ffi::c_int,
2281 A: *mut f64,
2282 lda: ::core::ffi::c_int,
2283 tau: *mut f64,
2284 C: *mut f64,
2285 ldc: ::core::ffi::c_int,
2286 work: *mut f64,
2287 lwork: ::core::ffi::c_int,
2288 info: *mut ::core::ffi::c_int,
2289 ) -> cusolverStatus_t;
2290 pub fn cusolverDnDormtr_bufferSize(
2291 handle: cusolverDnHandle_t,
2292 side: cublasSideMode_t,
2293 uplo: cublasFillMode_t,
2294 trans: cublasOperation_t,
2295 m: ::core::ffi::c_int,
2296 n: ::core::ffi::c_int,
2297 A: *const f64,
2298 lda: ::core::ffi::c_int,
2299 tau: *const f64,
2300 C: *const f64,
2301 ldc: ::core::ffi::c_int,
2302 lwork: *mut ::core::ffi::c_int,
2303 ) -> cusolverStatus_t;
2304 pub fn cusolverDnDpotrf(
2305 handle: cusolverDnHandle_t,
2306 uplo: cublasFillMode_t,
2307 n: ::core::ffi::c_int,
2308 A: *mut f64,
2309 lda: ::core::ffi::c_int,
2310 Workspace: *mut f64,
2311 Lwork: ::core::ffi::c_int,
2312 devInfo: *mut ::core::ffi::c_int,
2313 ) -> cusolverStatus_t;
2314 pub fn cusolverDnDpotrfBatched(
2315 handle: cusolverDnHandle_t,
2316 uplo: cublasFillMode_t,
2317 n: ::core::ffi::c_int,
2318 Aarray: *mut *mut f64,
2319 lda: ::core::ffi::c_int,
2320 infoArray: *mut ::core::ffi::c_int,
2321 batchSize: ::core::ffi::c_int,
2322 ) -> cusolverStatus_t;
2323 pub fn cusolverDnDpotrf_bufferSize(
2324 handle: cusolverDnHandle_t,
2325 uplo: cublasFillMode_t,
2326 n: ::core::ffi::c_int,
2327 A: *mut f64,
2328 lda: ::core::ffi::c_int,
2329 Lwork: *mut ::core::ffi::c_int,
2330 ) -> cusolverStatus_t;
2331 pub fn cusolverDnDpotri(
2332 handle: cusolverDnHandle_t,
2333 uplo: cublasFillMode_t,
2334 n: ::core::ffi::c_int,
2335 A: *mut f64,
2336 lda: ::core::ffi::c_int,
2337 work: *mut f64,
2338 lwork: ::core::ffi::c_int,
2339 devInfo: *mut ::core::ffi::c_int,
2340 ) -> cusolverStatus_t;
2341 pub fn cusolverDnDpotri_bufferSize(
2342 handle: cusolverDnHandle_t,
2343 uplo: cublasFillMode_t,
2344 n: ::core::ffi::c_int,
2345 A: *mut f64,
2346 lda: ::core::ffi::c_int,
2347 lwork: *mut ::core::ffi::c_int,
2348 ) -> cusolverStatus_t;
2349 pub fn cusolverDnDpotrs(
2350 handle: cusolverDnHandle_t,
2351 uplo: cublasFillMode_t,
2352 n: ::core::ffi::c_int,
2353 nrhs: ::core::ffi::c_int,
2354 A: *const f64,
2355 lda: ::core::ffi::c_int,
2356 B: *mut f64,
2357 ldb: ::core::ffi::c_int,
2358 devInfo: *mut ::core::ffi::c_int,
2359 ) -> cusolverStatus_t;
2360 pub fn cusolverDnDpotrsBatched(
2361 handle: cusolverDnHandle_t,
2362 uplo: cublasFillMode_t,
2363 n: ::core::ffi::c_int,
2364 nrhs: ::core::ffi::c_int,
2365 A: *mut *mut f64,
2366 lda: ::core::ffi::c_int,
2367 B: *mut *mut f64,
2368 ldb: ::core::ffi::c_int,
2369 d_info: *mut ::core::ffi::c_int,
2370 batchSize: ::core::ffi::c_int,
2371 ) -> cusolverStatus_t;
2372 pub fn cusolverDnDsyevd(
2373 handle: cusolverDnHandle_t,
2374 jobz: cusolverEigMode_t,
2375 uplo: cublasFillMode_t,
2376 n: ::core::ffi::c_int,
2377 A: *mut f64,
2378 lda: ::core::ffi::c_int,
2379 W: *mut f64,
2380 work: *mut f64,
2381 lwork: ::core::ffi::c_int,
2382 info: *mut ::core::ffi::c_int,
2383 ) -> cusolverStatus_t;
2384 pub fn cusolverDnDsyevd_bufferSize(
2385 handle: cusolverDnHandle_t,
2386 jobz: cusolverEigMode_t,
2387 uplo: cublasFillMode_t,
2388 n: ::core::ffi::c_int,
2389 A: *const f64,
2390 lda: ::core::ffi::c_int,
2391 W: *const f64,
2392 lwork: *mut ::core::ffi::c_int,
2393 ) -> cusolverStatus_t;
2394 pub fn cusolverDnDsyevdx(
2395 handle: cusolverDnHandle_t,
2396 jobz: cusolverEigMode_t,
2397 range: cusolverEigRange_t,
2398 uplo: cublasFillMode_t,
2399 n: ::core::ffi::c_int,
2400 A: *mut f64,
2401 lda: ::core::ffi::c_int,
2402 vl: f64,
2403 vu: f64,
2404 il: ::core::ffi::c_int,
2405 iu: ::core::ffi::c_int,
2406 meig: *mut ::core::ffi::c_int,
2407 W: *mut f64,
2408 work: *mut f64,
2409 lwork: ::core::ffi::c_int,
2410 info: *mut ::core::ffi::c_int,
2411 ) -> cusolverStatus_t;
2412 pub fn cusolverDnDsyevdx_bufferSize(
2413 handle: cusolverDnHandle_t,
2414 jobz: cusolverEigMode_t,
2415 range: cusolverEigRange_t,
2416 uplo: cublasFillMode_t,
2417 n: ::core::ffi::c_int,
2418 A: *const f64,
2419 lda: ::core::ffi::c_int,
2420 vl: f64,
2421 vu: f64,
2422 il: ::core::ffi::c_int,
2423 iu: ::core::ffi::c_int,
2424 meig: *mut ::core::ffi::c_int,
2425 W: *const f64,
2426 lwork: *mut ::core::ffi::c_int,
2427 ) -> cusolverStatus_t;
2428 pub fn cusolverDnDsyevj(
2429 handle: cusolverDnHandle_t,
2430 jobz: cusolverEigMode_t,
2431 uplo: cublasFillMode_t,
2432 n: ::core::ffi::c_int,
2433 A: *mut f64,
2434 lda: ::core::ffi::c_int,
2435 W: *mut f64,
2436 work: *mut f64,
2437 lwork: ::core::ffi::c_int,
2438 info: *mut ::core::ffi::c_int,
2439 params: syevjInfo_t,
2440 ) -> cusolverStatus_t;
2441 pub fn cusolverDnDsyevjBatched(
2442 handle: cusolverDnHandle_t,
2443 jobz: cusolverEigMode_t,
2444 uplo: cublasFillMode_t,
2445 n: ::core::ffi::c_int,
2446 A: *mut f64,
2447 lda: ::core::ffi::c_int,
2448 W: *mut f64,
2449 work: *mut f64,
2450 lwork: ::core::ffi::c_int,
2451 info: *mut ::core::ffi::c_int,
2452 params: syevjInfo_t,
2453 batchSize: ::core::ffi::c_int,
2454 ) -> cusolverStatus_t;
2455 pub fn cusolverDnDsyevjBatched_bufferSize(
2456 handle: cusolverDnHandle_t,
2457 jobz: cusolverEigMode_t,
2458 uplo: cublasFillMode_t,
2459 n: ::core::ffi::c_int,
2460 A: *const f64,
2461 lda: ::core::ffi::c_int,
2462 W: *const f64,
2463 lwork: *mut ::core::ffi::c_int,
2464 params: syevjInfo_t,
2465 batchSize: ::core::ffi::c_int,
2466 ) -> cusolverStatus_t;
2467 pub fn cusolverDnDsyevj_bufferSize(
2468 handle: cusolverDnHandle_t,
2469 jobz: cusolverEigMode_t,
2470 uplo: cublasFillMode_t,
2471 n: ::core::ffi::c_int,
2472 A: *const f64,
2473 lda: ::core::ffi::c_int,
2474 W: *const f64,
2475 lwork: *mut ::core::ffi::c_int,
2476 params: syevjInfo_t,
2477 ) -> cusolverStatus_t;
2478 pub fn cusolverDnDsygvd(
2479 handle: cusolverDnHandle_t,
2480 itype: cusolverEigType_t,
2481 jobz: cusolverEigMode_t,
2482 uplo: cublasFillMode_t,
2483 n: ::core::ffi::c_int,
2484 A: *mut f64,
2485 lda: ::core::ffi::c_int,
2486 B: *mut f64,
2487 ldb: ::core::ffi::c_int,
2488 W: *mut f64,
2489 work: *mut f64,
2490 lwork: ::core::ffi::c_int,
2491 info: *mut ::core::ffi::c_int,
2492 ) -> cusolverStatus_t;
2493 pub fn cusolverDnDsygvd_bufferSize(
2494 handle: cusolverDnHandle_t,
2495 itype: cusolverEigType_t,
2496 jobz: cusolverEigMode_t,
2497 uplo: cublasFillMode_t,
2498 n: ::core::ffi::c_int,
2499 A: *const f64,
2500 lda: ::core::ffi::c_int,
2501 B: *const f64,
2502 ldb: ::core::ffi::c_int,
2503 W: *const f64,
2504 lwork: *mut ::core::ffi::c_int,
2505 ) -> cusolverStatus_t;
2506 pub fn cusolverDnDsygvdx(
2507 handle: cusolverDnHandle_t,
2508 itype: cusolverEigType_t,
2509 jobz: cusolverEigMode_t,
2510 range: cusolverEigRange_t,
2511 uplo: cublasFillMode_t,
2512 n: ::core::ffi::c_int,
2513 A: *mut f64,
2514 lda: ::core::ffi::c_int,
2515 B: *mut f64,
2516 ldb: ::core::ffi::c_int,
2517 vl: f64,
2518 vu: f64,
2519 il: ::core::ffi::c_int,
2520 iu: ::core::ffi::c_int,
2521 meig: *mut ::core::ffi::c_int,
2522 W: *mut f64,
2523 work: *mut f64,
2524 lwork: ::core::ffi::c_int,
2525 info: *mut ::core::ffi::c_int,
2526 ) -> cusolverStatus_t;
2527 pub fn cusolverDnDsygvdx_bufferSize(
2528 handle: cusolverDnHandle_t,
2529 itype: cusolverEigType_t,
2530 jobz: cusolverEigMode_t,
2531 range: cusolverEigRange_t,
2532 uplo: cublasFillMode_t,
2533 n: ::core::ffi::c_int,
2534 A: *const f64,
2535 lda: ::core::ffi::c_int,
2536 B: *const f64,
2537 ldb: ::core::ffi::c_int,
2538 vl: f64,
2539 vu: f64,
2540 il: ::core::ffi::c_int,
2541 iu: ::core::ffi::c_int,
2542 meig: *mut ::core::ffi::c_int,
2543 W: *const f64,
2544 lwork: *mut ::core::ffi::c_int,
2545 ) -> cusolverStatus_t;
2546 pub fn cusolverDnDsygvj(
2547 handle: cusolverDnHandle_t,
2548 itype: cusolverEigType_t,
2549 jobz: cusolverEigMode_t,
2550 uplo: cublasFillMode_t,
2551 n: ::core::ffi::c_int,
2552 A: *mut f64,
2553 lda: ::core::ffi::c_int,
2554 B: *mut f64,
2555 ldb: ::core::ffi::c_int,
2556 W: *mut f64,
2557 work: *mut f64,
2558 lwork: ::core::ffi::c_int,
2559 info: *mut ::core::ffi::c_int,
2560 params: syevjInfo_t,
2561 ) -> cusolverStatus_t;
2562 pub fn cusolverDnDsygvj_bufferSize(
2563 handle: cusolverDnHandle_t,
2564 itype: cusolverEigType_t,
2565 jobz: cusolverEigMode_t,
2566 uplo: cublasFillMode_t,
2567 n: ::core::ffi::c_int,
2568 A: *const f64,
2569 lda: ::core::ffi::c_int,
2570 B: *const f64,
2571 ldb: ::core::ffi::c_int,
2572 W: *const f64,
2573 lwork: *mut ::core::ffi::c_int,
2574 params: syevjInfo_t,
2575 ) -> cusolverStatus_t;
2576 pub fn cusolverDnDsytrd(
2577 handle: cusolverDnHandle_t,
2578 uplo: cublasFillMode_t,
2579 n: ::core::ffi::c_int,
2580 A: *mut f64,
2581 lda: ::core::ffi::c_int,
2582 d: *mut f64,
2583 e: *mut f64,
2584 tau: *mut f64,
2585 work: *mut f64,
2586 lwork: ::core::ffi::c_int,
2587 info: *mut ::core::ffi::c_int,
2588 ) -> cusolverStatus_t;
2589 pub fn cusolverDnDsytrd_bufferSize(
2590 handle: cusolverDnHandle_t,
2591 uplo: cublasFillMode_t,
2592 n: ::core::ffi::c_int,
2593 A: *const f64,
2594 lda: ::core::ffi::c_int,
2595 d: *const f64,
2596 e: *const f64,
2597 tau: *const f64,
2598 lwork: *mut ::core::ffi::c_int,
2599 ) -> cusolverStatus_t;
2600 pub fn cusolverDnDsytrf(
2601 handle: cusolverDnHandle_t,
2602 uplo: cublasFillMode_t,
2603 n: ::core::ffi::c_int,
2604 A: *mut f64,
2605 lda: ::core::ffi::c_int,
2606 ipiv: *mut ::core::ffi::c_int,
2607 work: *mut f64,
2608 lwork: ::core::ffi::c_int,
2609 info: *mut ::core::ffi::c_int,
2610 ) -> cusolverStatus_t;
2611 pub fn cusolverDnDsytrf_bufferSize(
2612 handle: cusolverDnHandle_t,
2613 n: ::core::ffi::c_int,
2614 A: *mut f64,
2615 lda: ::core::ffi::c_int,
2616 lwork: *mut ::core::ffi::c_int,
2617 ) -> cusolverStatus_t;
2618 pub fn cusolverDnDsytri(
2619 handle: cusolverDnHandle_t,
2620 uplo: cublasFillMode_t,
2621 n: ::core::ffi::c_int,
2622 A: *mut f64,
2623 lda: ::core::ffi::c_int,
2624 ipiv: *const ::core::ffi::c_int,
2625 work: *mut f64,
2626 lwork: ::core::ffi::c_int,
2627 info: *mut ::core::ffi::c_int,
2628 ) -> cusolverStatus_t;
2629 pub fn cusolverDnDsytri_bufferSize(
2630 handle: cusolverDnHandle_t,
2631 uplo: cublasFillMode_t,
2632 n: ::core::ffi::c_int,
2633 A: *mut f64,
2634 lda: ::core::ffi::c_int,
2635 ipiv: *const ::core::ffi::c_int,
2636 lwork: *mut ::core::ffi::c_int,
2637 ) -> cusolverStatus_t;
2638 #[cfg(any(
2639 feature = "cuda-11040",
2640 feature = "cuda-11050",
2641 feature = "cuda-11060",
2642 feature = "cuda-11070",
2643 feature = "cuda-11080",
2644 feature = "cuda-12000",
2645 feature = "cuda-12010",
2646 feature = "cuda-12020",
2647 feature = "cuda-12030",
2648 feature = "cuda-12040",
2649 feature = "cuda-12050",
2650 feature = "cuda-12060",
2651 feature = "cuda-12080",
2652 feature = "cuda-12090"
2653 ))]
2654 pub fn cusolverDnGeqrf(
2655 handle: cusolverDnHandle_t,
2656 params: cusolverDnParams_t,
2657 m: i64,
2658 n: i64,
2659 dataTypeA: cudaDataType,
2660 A: *mut ::core::ffi::c_void,
2661 lda: i64,
2662 dataTypeTau: cudaDataType,
2663 tau: *mut ::core::ffi::c_void,
2664 computeType: cudaDataType,
2665 pBuffer: *mut ::core::ffi::c_void,
2666 workspaceInBytes: usize,
2667 info: *mut ::core::ffi::c_int,
2668 ) -> cusolverStatus_t;
2669 #[cfg(any(
2670 feature = "cuda-11040",
2671 feature = "cuda-11050",
2672 feature = "cuda-11060",
2673 feature = "cuda-11070",
2674 feature = "cuda-11080",
2675 feature = "cuda-12000",
2676 feature = "cuda-12010",
2677 feature = "cuda-12020",
2678 feature = "cuda-12030",
2679 feature = "cuda-12040",
2680 feature = "cuda-12050",
2681 feature = "cuda-12060",
2682 feature = "cuda-12080",
2683 feature = "cuda-12090"
2684 ))]
2685 pub fn cusolverDnGeqrf_bufferSize(
2686 handle: cusolverDnHandle_t,
2687 params: cusolverDnParams_t,
2688 m: i64,
2689 n: i64,
2690 dataTypeA: cudaDataType,
2691 A: *const ::core::ffi::c_void,
2692 lda: i64,
2693 dataTypeTau: cudaDataType,
2694 tau: *const ::core::ffi::c_void,
2695 computeType: cudaDataType,
2696 workspaceInBytes: *mut usize,
2697 ) -> cusolverStatus_t;
2698 #[cfg(any(
2699 feature = "cuda-11040",
2700 feature = "cuda-11050",
2701 feature = "cuda-11060",
2702 feature = "cuda-11070",
2703 feature = "cuda-11080",
2704 feature = "cuda-12000",
2705 feature = "cuda-12010",
2706 feature = "cuda-12020",
2707 feature = "cuda-12030",
2708 feature = "cuda-12040",
2709 feature = "cuda-12050",
2710 feature = "cuda-12060",
2711 feature = "cuda-12080",
2712 feature = "cuda-12090"
2713 ))]
2714 pub fn cusolverDnGesvd(
2715 handle: cusolverDnHandle_t,
2716 params: cusolverDnParams_t,
2717 jobu: ::core::ffi::c_schar,
2718 jobvt: ::core::ffi::c_schar,
2719 m: i64,
2720 n: i64,
2721 dataTypeA: cudaDataType,
2722 A: *mut ::core::ffi::c_void,
2723 lda: i64,
2724 dataTypeS: cudaDataType,
2725 S: *mut ::core::ffi::c_void,
2726 dataTypeU: cudaDataType,
2727 U: *mut ::core::ffi::c_void,
2728 ldu: i64,
2729 dataTypeVT: cudaDataType,
2730 VT: *mut ::core::ffi::c_void,
2731 ldvt: i64,
2732 computeType: cudaDataType,
2733 pBuffer: *mut ::core::ffi::c_void,
2734 workspaceInBytes: usize,
2735 info: *mut ::core::ffi::c_int,
2736 ) -> cusolverStatus_t;
2737 #[cfg(any(
2738 feature = "cuda-11040",
2739 feature = "cuda-11050",
2740 feature = "cuda-11060",
2741 feature = "cuda-11070",
2742 feature = "cuda-11080",
2743 feature = "cuda-12000",
2744 feature = "cuda-12010",
2745 feature = "cuda-12020",
2746 feature = "cuda-12030",
2747 feature = "cuda-12040",
2748 feature = "cuda-12050",
2749 feature = "cuda-12060",
2750 feature = "cuda-12080",
2751 feature = "cuda-12090"
2752 ))]
2753 pub fn cusolverDnGesvd_bufferSize(
2754 handle: cusolverDnHandle_t,
2755 params: cusolverDnParams_t,
2756 jobu: ::core::ffi::c_schar,
2757 jobvt: ::core::ffi::c_schar,
2758 m: i64,
2759 n: i64,
2760 dataTypeA: cudaDataType,
2761 A: *const ::core::ffi::c_void,
2762 lda: i64,
2763 dataTypeS: cudaDataType,
2764 S: *const ::core::ffi::c_void,
2765 dataTypeU: cudaDataType,
2766 U: *const ::core::ffi::c_void,
2767 ldu: i64,
2768 dataTypeVT: cudaDataType,
2769 VT: *const ::core::ffi::c_void,
2770 ldvt: i64,
2771 computeType: cudaDataType,
2772 workspaceInBytes: *mut usize,
2773 ) -> cusolverStatus_t;
2774 #[cfg(any(
2775 feature = "cuda-12020",
2776 feature = "cuda-12030",
2777 feature = "cuda-12040",
2778 feature = "cuda-12050",
2779 feature = "cuda-12060",
2780 feature = "cuda-12080",
2781 feature = "cuda-12090",
2782 feature = "cuda-13000",
2783 feature = "cuda-13010"
2784 ))]
2785 pub fn cusolverDnGetDeterministicMode(
2786 handle: cusolverDnHandle_t,
2787 mode: *mut cusolverDeterministicMode_t,
2788 ) -> cusolverStatus_t;
2789 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
2790 pub fn cusolverDnGetEmulationStrategy(
2791 handle: cusolverDnHandle_t,
2792 strategy: *mut cudaEmulationStrategy_t,
2793 ) -> cusolverStatus_t;
2794 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
2795 pub fn cusolverDnGetMathMode(
2796 handle: cusolverDnHandle_t,
2797 mode: *mut cusolverMathMode_t,
2798 ) -> cusolverStatus_t;
2799 pub fn cusolverDnGetStream(
2800 handle: cusolverDnHandle_t,
2801 streamId: *mut cudaStream_t,
2802 ) -> cusolverStatus_t;
2803 #[cfg(any(
2804 feature = "cuda-11040",
2805 feature = "cuda-11050",
2806 feature = "cuda-11060",
2807 feature = "cuda-11070",
2808 feature = "cuda-11080",
2809 feature = "cuda-12000",
2810 feature = "cuda-12010",
2811 feature = "cuda-12020",
2812 feature = "cuda-12030",
2813 feature = "cuda-12040",
2814 feature = "cuda-12050",
2815 feature = "cuda-12060",
2816 feature = "cuda-12080",
2817 feature = "cuda-12090"
2818 ))]
2819 pub fn cusolverDnGetrf(
2820 handle: cusolverDnHandle_t,
2821 params: cusolverDnParams_t,
2822 m: i64,
2823 n: i64,
2824 dataTypeA: cudaDataType,
2825 A: *mut ::core::ffi::c_void,
2826 lda: i64,
2827 ipiv: *mut i64,
2828 computeType: cudaDataType,
2829 pBuffer: *mut ::core::ffi::c_void,
2830 workspaceInBytes: usize,
2831 info: *mut ::core::ffi::c_int,
2832 ) -> cusolverStatus_t;
2833 #[cfg(any(
2834 feature = "cuda-11040",
2835 feature = "cuda-11050",
2836 feature = "cuda-11060",
2837 feature = "cuda-11070",
2838 feature = "cuda-11080",
2839 feature = "cuda-12000",
2840 feature = "cuda-12010",
2841 feature = "cuda-12020",
2842 feature = "cuda-12030",
2843 feature = "cuda-12040",
2844 feature = "cuda-12050",
2845 feature = "cuda-12060",
2846 feature = "cuda-12080",
2847 feature = "cuda-12090"
2848 ))]
2849 pub fn cusolverDnGetrf_bufferSize(
2850 handle: cusolverDnHandle_t,
2851 params: cusolverDnParams_t,
2852 m: i64,
2853 n: i64,
2854 dataTypeA: cudaDataType,
2855 A: *const ::core::ffi::c_void,
2856 lda: i64,
2857 computeType: cudaDataType,
2858 workspaceInBytes: *mut usize,
2859 ) -> cusolverStatus_t;
2860 #[cfg(any(
2861 feature = "cuda-11040",
2862 feature = "cuda-11050",
2863 feature = "cuda-11060",
2864 feature = "cuda-11070",
2865 feature = "cuda-11080",
2866 feature = "cuda-12000",
2867 feature = "cuda-12010",
2868 feature = "cuda-12020",
2869 feature = "cuda-12030",
2870 feature = "cuda-12040",
2871 feature = "cuda-12050",
2872 feature = "cuda-12060",
2873 feature = "cuda-12080",
2874 feature = "cuda-12090"
2875 ))]
2876 pub fn cusolverDnGetrs(
2877 handle: cusolverDnHandle_t,
2878 params: cusolverDnParams_t,
2879 trans: cublasOperation_t,
2880 n: i64,
2881 nrhs: i64,
2882 dataTypeA: cudaDataType,
2883 A: *const ::core::ffi::c_void,
2884 lda: i64,
2885 ipiv: *const i64,
2886 dataTypeB: cudaDataType,
2887 B: *mut ::core::ffi::c_void,
2888 ldb: i64,
2889 info: *mut ::core::ffi::c_int,
2890 ) -> cusolverStatus_t;
2891 pub fn cusolverDnIRSInfosCreate(infos_ptr: *mut cusolverDnIRSInfos_t) -> cusolverStatus_t;
2892 pub fn cusolverDnIRSInfosDestroy(infos: cusolverDnIRSInfos_t) -> cusolverStatus_t;
2893 pub fn cusolverDnIRSInfosGetMaxIters(
2894 infos: cusolverDnIRSInfos_t,
2895 maxiters: *mut cusolver_int_t,
2896 ) -> cusolverStatus_t;
2897 pub fn cusolverDnIRSInfosGetNiters(
2898 infos: cusolverDnIRSInfos_t,
2899 niters: *mut cusolver_int_t,
2900 ) -> cusolverStatus_t;
2901 pub fn cusolverDnIRSInfosGetOuterNiters(
2902 infos: cusolverDnIRSInfos_t,
2903 outer_niters: *mut cusolver_int_t,
2904 ) -> cusolverStatus_t;
2905 pub fn cusolverDnIRSInfosGetResidualHistory(
2906 infos: cusolverDnIRSInfos_t,
2907 residual_history: *mut *mut ::core::ffi::c_void,
2908 ) -> cusolverStatus_t;
2909 pub fn cusolverDnIRSInfosRequestResidual(infos: cusolverDnIRSInfos_t) -> cusolverStatus_t;
2910 pub fn cusolverDnIRSParamsCreate(params_ptr: *mut cusolverDnIRSParams_t) -> cusolverStatus_t;
2911 pub fn cusolverDnIRSParamsDestroy(params: cusolverDnIRSParams_t) -> cusolverStatus_t;
2912 pub fn cusolverDnIRSParamsDisableFallback(params: cusolverDnIRSParams_t) -> cusolverStatus_t;
2913 pub fn cusolverDnIRSParamsEnableFallback(params: cusolverDnIRSParams_t) -> cusolverStatus_t;
2914 pub fn cusolverDnIRSParamsGetMaxIters(
2915 params: cusolverDnIRSParams_t,
2916 maxiters: *mut cusolver_int_t,
2917 ) -> cusolverStatus_t;
2918 pub fn cusolverDnIRSParamsSetMaxIters(
2919 params: cusolverDnIRSParams_t,
2920 maxiters: cusolver_int_t,
2921 ) -> cusolverStatus_t;
2922 pub fn cusolverDnIRSParamsSetMaxItersInner(
2923 params: cusolverDnIRSParams_t,
2924 maxiters_inner: cusolver_int_t,
2925 ) -> cusolverStatus_t;
2926 pub fn cusolverDnIRSParamsSetRefinementSolver(
2927 params: cusolverDnIRSParams_t,
2928 refinement_solver: cusolverIRSRefinement_t,
2929 ) -> cusolverStatus_t;
2930 pub fn cusolverDnIRSParamsSetSolverLowestPrecision(
2931 params: cusolverDnIRSParams_t,
2932 solver_lowest_precision: cusolverPrecType_t,
2933 ) -> cusolverStatus_t;
2934 pub fn cusolverDnIRSParamsSetSolverMainPrecision(
2935 params: cusolverDnIRSParams_t,
2936 solver_main_precision: cusolverPrecType_t,
2937 ) -> cusolverStatus_t;
2938 pub fn cusolverDnIRSParamsSetSolverPrecisions(
2939 params: cusolverDnIRSParams_t,
2940 solver_main_precision: cusolverPrecType_t,
2941 solver_lowest_precision: cusolverPrecType_t,
2942 ) -> cusolverStatus_t;
2943 pub fn cusolverDnIRSParamsSetTol(params: cusolverDnIRSParams_t, val: f64) -> cusolverStatus_t;
2944 pub fn cusolverDnIRSParamsSetTolInner(
2945 params: cusolverDnIRSParams_t,
2946 val: f64,
2947 ) -> cusolverStatus_t;
2948 pub fn cusolverDnIRSXgels(
2949 handle: cusolverDnHandle_t,
2950 gels_irs_params: cusolverDnIRSParams_t,
2951 gels_irs_infos: cusolverDnIRSInfos_t,
2952 m: cusolver_int_t,
2953 n: cusolver_int_t,
2954 nrhs: cusolver_int_t,
2955 dA: *mut ::core::ffi::c_void,
2956 ldda: cusolver_int_t,
2957 dB: *mut ::core::ffi::c_void,
2958 lddb: cusolver_int_t,
2959 dX: *mut ::core::ffi::c_void,
2960 lddx: cusolver_int_t,
2961 dWorkspace: *mut ::core::ffi::c_void,
2962 lwork_bytes: usize,
2963 niters: *mut cusolver_int_t,
2964 d_info: *mut cusolver_int_t,
2965 ) -> cusolverStatus_t;
2966 pub fn cusolverDnIRSXgels_bufferSize(
2967 handle: cusolverDnHandle_t,
2968 params: cusolverDnIRSParams_t,
2969 m: cusolver_int_t,
2970 n: cusolver_int_t,
2971 nrhs: cusolver_int_t,
2972 lwork_bytes: *mut usize,
2973 ) -> cusolverStatus_t;
2974 pub fn cusolverDnIRSXgesv(
2975 handle: cusolverDnHandle_t,
2976 gesv_irs_params: cusolverDnIRSParams_t,
2977 gesv_irs_infos: cusolverDnIRSInfos_t,
2978 n: cusolver_int_t,
2979 nrhs: cusolver_int_t,
2980 dA: *mut ::core::ffi::c_void,
2981 ldda: cusolver_int_t,
2982 dB: *mut ::core::ffi::c_void,
2983 lddb: cusolver_int_t,
2984 dX: *mut ::core::ffi::c_void,
2985 lddx: cusolver_int_t,
2986 dWorkspace: *mut ::core::ffi::c_void,
2987 lwork_bytes: usize,
2988 niters: *mut cusolver_int_t,
2989 d_info: *mut cusolver_int_t,
2990 ) -> cusolverStatus_t;
2991 pub fn cusolverDnIRSXgesv_bufferSize(
2992 handle: cusolverDnHandle_t,
2993 params: cusolverDnIRSParams_t,
2994 n: cusolver_int_t,
2995 nrhs: cusolver_int_t,
2996 lwork_bytes: *mut usize,
2997 ) -> cusolverStatus_t;
2998 #[cfg(any(
2999 feature = "cuda-11040",
3000 feature = "cuda-11050",
3001 feature = "cuda-11060",
3002 feature = "cuda-11070",
3003 feature = "cuda-11080",
3004 feature = "cuda-12000",
3005 feature = "cuda-12010",
3006 feature = "cuda-12020",
3007 feature = "cuda-12030",
3008 feature = "cuda-12040",
3009 feature = "cuda-12050",
3010 feature = "cuda-12060",
3011 feature = "cuda-12080",
3012 feature = "cuda-12090"
3013 ))]
3014 pub fn cusolverDnPotrf(
3015 handle: cusolverDnHandle_t,
3016 params: cusolverDnParams_t,
3017 uplo: cublasFillMode_t,
3018 n: i64,
3019 dataTypeA: cudaDataType,
3020 A: *mut ::core::ffi::c_void,
3021 lda: i64,
3022 computeType: cudaDataType,
3023 pBuffer: *mut ::core::ffi::c_void,
3024 workspaceInBytes: usize,
3025 info: *mut ::core::ffi::c_int,
3026 ) -> cusolverStatus_t;
3027 #[cfg(any(
3028 feature = "cuda-11040",
3029 feature = "cuda-11050",
3030 feature = "cuda-11060",
3031 feature = "cuda-11070",
3032 feature = "cuda-11080",
3033 feature = "cuda-12000",
3034 feature = "cuda-12010",
3035 feature = "cuda-12020",
3036 feature = "cuda-12030",
3037 feature = "cuda-12040",
3038 feature = "cuda-12050",
3039 feature = "cuda-12060",
3040 feature = "cuda-12080",
3041 feature = "cuda-12090"
3042 ))]
3043 pub fn cusolverDnPotrf_bufferSize(
3044 handle: cusolverDnHandle_t,
3045 params: cusolverDnParams_t,
3046 uplo: cublasFillMode_t,
3047 n: i64,
3048 dataTypeA: cudaDataType,
3049 A: *const ::core::ffi::c_void,
3050 lda: i64,
3051 computeType: cudaDataType,
3052 workspaceInBytes: *mut usize,
3053 ) -> cusolverStatus_t;
3054 #[cfg(any(
3055 feature = "cuda-11040",
3056 feature = "cuda-11050",
3057 feature = "cuda-11060",
3058 feature = "cuda-11070",
3059 feature = "cuda-11080",
3060 feature = "cuda-12000",
3061 feature = "cuda-12010",
3062 feature = "cuda-12020",
3063 feature = "cuda-12030",
3064 feature = "cuda-12040",
3065 feature = "cuda-12050",
3066 feature = "cuda-12060",
3067 feature = "cuda-12080",
3068 feature = "cuda-12090"
3069 ))]
3070 pub fn cusolverDnPotrs(
3071 handle: cusolverDnHandle_t,
3072 params: cusolverDnParams_t,
3073 uplo: cublasFillMode_t,
3074 n: i64,
3075 nrhs: i64,
3076 dataTypeA: cudaDataType,
3077 A: *const ::core::ffi::c_void,
3078 lda: i64,
3079 dataTypeB: cudaDataType,
3080 B: *mut ::core::ffi::c_void,
3081 ldb: i64,
3082 info: *mut ::core::ffi::c_int,
3083 ) -> cusolverStatus_t;
3084 pub fn cusolverDnSBgels(
3085 handle: cusolverDnHandle_t,
3086 m: cusolver_int_t,
3087 n: cusolver_int_t,
3088 nrhs: cusolver_int_t,
3089 dA: *mut f32,
3090 ldda: cusolver_int_t,
3091 dB: *mut f32,
3092 lddb: cusolver_int_t,
3093 dX: *mut f32,
3094 lddx: cusolver_int_t,
3095 dWorkspace: *mut ::core::ffi::c_void,
3096 lwork_bytes: usize,
3097 iter: *mut cusolver_int_t,
3098 d_info: *mut cusolver_int_t,
3099 ) -> cusolverStatus_t;
3100 pub fn cusolverDnSBgels_bufferSize(
3101 handle: cusolverDnHandle_t,
3102 m: cusolver_int_t,
3103 n: cusolver_int_t,
3104 nrhs: cusolver_int_t,
3105 dA: *mut f32,
3106 ldda: cusolver_int_t,
3107 dB: *mut f32,
3108 lddb: cusolver_int_t,
3109 dX: *mut f32,
3110 lddx: cusolver_int_t,
3111 dWorkspace: *mut ::core::ffi::c_void,
3112 lwork_bytes: *mut usize,
3113 ) -> cusolverStatus_t;
3114 pub fn cusolverDnSBgesv(
3115 handle: cusolverDnHandle_t,
3116 n: cusolver_int_t,
3117 nrhs: cusolver_int_t,
3118 dA: *mut f32,
3119 ldda: cusolver_int_t,
3120 dipiv: *mut cusolver_int_t,
3121 dB: *mut f32,
3122 lddb: cusolver_int_t,
3123 dX: *mut f32,
3124 lddx: cusolver_int_t,
3125 dWorkspace: *mut ::core::ffi::c_void,
3126 lwork_bytes: usize,
3127 iter: *mut cusolver_int_t,
3128 d_info: *mut cusolver_int_t,
3129 ) -> cusolverStatus_t;
3130 pub fn cusolverDnSBgesv_bufferSize(
3131 handle: cusolverDnHandle_t,
3132 n: cusolver_int_t,
3133 nrhs: cusolver_int_t,
3134 dA: *mut f32,
3135 ldda: cusolver_int_t,
3136 dipiv: *mut cusolver_int_t,
3137 dB: *mut f32,
3138 lddb: cusolver_int_t,
3139 dX: *mut f32,
3140 lddx: cusolver_int_t,
3141 dWorkspace: *mut ::core::ffi::c_void,
3142 lwork_bytes: *mut usize,
3143 ) -> cusolverStatus_t;
3144 pub fn cusolverDnSHgels(
3145 handle: cusolverDnHandle_t,
3146 m: cusolver_int_t,
3147 n: cusolver_int_t,
3148 nrhs: cusolver_int_t,
3149 dA: *mut f32,
3150 ldda: cusolver_int_t,
3151 dB: *mut f32,
3152 lddb: cusolver_int_t,
3153 dX: *mut f32,
3154 lddx: cusolver_int_t,
3155 dWorkspace: *mut ::core::ffi::c_void,
3156 lwork_bytes: usize,
3157 iter: *mut cusolver_int_t,
3158 d_info: *mut cusolver_int_t,
3159 ) -> cusolverStatus_t;
3160 pub fn cusolverDnSHgels_bufferSize(
3161 handle: cusolverDnHandle_t,
3162 m: cusolver_int_t,
3163 n: cusolver_int_t,
3164 nrhs: cusolver_int_t,
3165 dA: *mut f32,
3166 ldda: cusolver_int_t,
3167 dB: *mut f32,
3168 lddb: cusolver_int_t,
3169 dX: *mut f32,
3170 lddx: cusolver_int_t,
3171 dWorkspace: *mut ::core::ffi::c_void,
3172 lwork_bytes: *mut usize,
3173 ) -> cusolverStatus_t;
3174 pub fn cusolverDnSHgesv(
3175 handle: cusolverDnHandle_t,
3176 n: cusolver_int_t,
3177 nrhs: cusolver_int_t,
3178 dA: *mut f32,
3179 ldda: cusolver_int_t,
3180 dipiv: *mut cusolver_int_t,
3181 dB: *mut f32,
3182 lddb: cusolver_int_t,
3183 dX: *mut f32,
3184 lddx: cusolver_int_t,
3185 dWorkspace: *mut ::core::ffi::c_void,
3186 lwork_bytes: usize,
3187 iter: *mut cusolver_int_t,
3188 d_info: *mut cusolver_int_t,
3189 ) -> cusolverStatus_t;
3190 pub fn cusolverDnSHgesv_bufferSize(
3191 handle: cusolverDnHandle_t,
3192 n: cusolver_int_t,
3193 nrhs: cusolver_int_t,
3194 dA: *mut f32,
3195 ldda: cusolver_int_t,
3196 dipiv: *mut cusolver_int_t,
3197 dB: *mut f32,
3198 lddb: cusolver_int_t,
3199 dX: *mut f32,
3200 lddx: cusolver_int_t,
3201 dWorkspace: *mut ::core::ffi::c_void,
3202 lwork_bytes: *mut usize,
3203 ) -> cusolverStatus_t;
3204 pub fn cusolverDnSSgels(
3205 handle: cusolverDnHandle_t,
3206 m: cusolver_int_t,
3207 n: cusolver_int_t,
3208 nrhs: cusolver_int_t,
3209 dA: *mut f32,
3210 ldda: cusolver_int_t,
3211 dB: *mut f32,
3212 lddb: cusolver_int_t,
3213 dX: *mut f32,
3214 lddx: cusolver_int_t,
3215 dWorkspace: *mut ::core::ffi::c_void,
3216 lwork_bytes: usize,
3217 iter: *mut cusolver_int_t,
3218 d_info: *mut cusolver_int_t,
3219 ) -> cusolverStatus_t;
3220 pub fn cusolverDnSSgels_bufferSize(
3221 handle: cusolverDnHandle_t,
3222 m: cusolver_int_t,
3223 n: cusolver_int_t,
3224 nrhs: cusolver_int_t,
3225 dA: *mut f32,
3226 ldda: cusolver_int_t,
3227 dB: *mut f32,
3228 lddb: cusolver_int_t,
3229 dX: *mut f32,
3230 lddx: cusolver_int_t,
3231 dWorkspace: *mut ::core::ffi::c_void,
3232 lwork_bytes: *mut usize,
3233 ) -> cusolverStatus_t;
3234 pub fn cusolverDnSSgesv(
3235 handle: cusolverDnHandle_t,
3236 n: cusolver_int_t,
3237 nrhs: cusolver_int_t,
3238 dA: *mut f32,
3239 ldda: cusolver_int_t,
3240 dipiv: *mut cusolver_int_t,
3241 dB: *mut f32,
3242 lddb: cusolver_int_t,
3243 dX: *mut f32,
3244 lddx: cusolver_int_t,
3245 dWorkspace: *mut ::core::ffi::c_void,
3246 lwork_bytes: usize,
3247 iter: *mut cusolver_int_t,
3248 d_info: *mut cusolver_int_t,
3249 ) -> cusolverStatus_t;
3250 pub fn cusolverDnSSgesv_bufferSize(
3251 handle: cusolverDnHandle_t,
3252 n: cusolver_int_t,
3253 nrhs: cusolver_int_t,
3254 dA: *mut f32,
3255 ldda: cusolver_int_t,
3256 dipiv: *mut cusolver_int_t,
3257 dB: *mut f32,
3258 lddb: cusolver_int_t,
3259 dX: *mut f32,
3260 lddx: cusolver_int_t,
3261 dWorkspace: *mut ::core::ffi::c_void,
3262 lwork_bytes: *mut usize,
3263 ) -> cusolverStatus_t;
3264 pub fn cusolverDnSXgels(
3265 handle: cusolverDnHandle_t,
3266 m: cusolver_int_t,
3267 n: cusolver_int_t,
3268 nrhs: cusolver_int_t,
3269 dA: *mut f32,
3270 ldda: cusolver_int_t,
3271 dB: *mut f32,
3272 lddb: cusolver_int_t,
3273 dX: *mut f32,
3274 lddx: cusolver_int_t,
3275 dWorkspace: *mut ::core::ffi::c_void,
3276 lwork_bytes: usize,
3277 iter: *mut cusolver_int_t,
3278 d_info: *mut cusolver_int_t,
3279 ) -> cusolverStatus_t;
3280 pub fn cusolverDnSXgels_bufferSize(
3281 handle: cusolverDnHandle_t,
3282 m: cusolver_int_t,
3283 n: cusolver_int_t,
3284 nrhs: cusolver_int_t,
3285 dA: *mut f32,
3286 ldda: cusolver_int_t,
3287 dB: *mut f32,
3288 lddb: cusolver_int_t,
3289 dX: *mut f32,
3290 lddx: cusolver_int_t,
3291 dWorkspace: *mut ::core::ffi::c_void,
3292 lwork_bytes: *mut usize,
3293 ) -> cusolverStatus_t;
3294 pub fn cusolverDnSXgesv(
3295 handle: cusolverDnHandle_t,
3296 n: cusolver_int_t,
3297 nrhs: cusolver_int_t,
3298 dA: *mut f32,
3299 ldda: cusolver_int_t,
3300 dipiv: *mut cusolver_int_t,
3301 dB: *mut f32,
3302 lddb: cusolver_int_t,
3303 dX: *mut f32,
3304 lddx: cusolver_int_t,
3305 dWorkspace: *mut ::core::ffi::c_void,
3306 lwork_bytes: usize,
3307 iter: *mut cusolver_int_t,
3308 d_info: *mut cusolver_int_t,
3309 ) -> cusolverStatus_t;
3310 pub fn cusolverDnSXgesv_bufferSize(
3311 handle: cusolverDnHandle_t,
3312 n: cusolver_int_t,
3313 nrhs: cusolver_int_t,
3314 dA: *mut f32,
3315 ldda: cusolver_int_t,
3316 dipiv: *mut cusolver_int_t,
3317 dB: *mut f32,
3318 lddb: cusolver_int_t,
3319 dX: *mut f32,
3320 lddx: cusolver_int_t,
3321 dWorkspace: *mut ::core::ffi::c_void,
3322 lwork_bytes: *mut usize,
3323 ) -> cusolverStatus_t;
3324 pub fn cusolverDnSetAdvOptions(
3325 params: cusolverDnParams_t,
3326 function: cusolverDnFunction_t,
3327 algo: cusolverAlgMode_t,
3328 ) -> cusolverStatus_t;
3329 #[cfg(any(
3330 feature = "cuda-12020",
3331 feature = "cuda-12030",
3332 feature = "cuda-12040",
3333 feature = "cuda-12050",
3334 feature = "cuda-12060",
3335 feature = "cuda-12080",
3336 feature = "cuda-12090",
3337 feature = "cuda-13000",
3338 feature = "cuda-13010"
3339 ))]
3340 pub fn cusolverDnSetDeterministicMode(
3341 handle: cusolverDnHandle_t,
3342 mode: cusolverDeterministicMode_t,
3343 ) -> cusolverStatus_t;
3344 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
3345 pub fn cusolverDnSetEmulationStrategy(
3346 handle: cusolverDnHandle_t,
3347 strategy: cudaEmulationStrategy_t,
3348 ) -> cusolverStatus_t;
3349 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
3350 pub fn cusolverDnSetMathMode(
3351 handle: cusolverDnHandle_t,
3352 mode: cusolverMathMode_t,
3353 ) -> cusolverStatus_t;
3354 pub fn cusolverDnSetStream(
3355 handle: cusolverDnHandle_t,
3356 streamId: cudaStream_t,
3357 ) -> cusolverStatus_t;
3358 pub fn cusolverDnSgebrd(
3359 handle: cusolverDnHandle_t,
3360 m: ::core::ffi::c_int,
3361 n: ::core::ffi::c_int,
3362 A: *mut f32,
3363 lda: ::core::ffi::c_int,
3364 D: *mut f32,
3365 E: *mut f32,
3366 TAUQ: *mut f32,
3367 TAUP: *mut f32,
3368 Work: *mut f32,
3369 Lwork: ::core::ffi::c_int,
3370 devInfo: *mut ::core::ffi::c_int,
3371 ) -> cusolverStatus_t;
3372 pub fn cusolverDnSgebrd_bufferSize(
3373 handle: cusolverDnHandle_t,
3374 m: ::core::ffi::c_int,
3375 n: ::core::ffi::c_int,
3376 Lwork: *mut ::core::ffi::c_int,
3377 ) -> cusolverStatus_t;
3378 pub fn cusolverDnSgeqrf(
3379 handle: cusolverDnHandle_t,
3380 m: ::core::ffi::c_int,
3381 n: ::core::ffi::c_int,
3382 A: *mut f32,
3383 lda: ::core::ffi::c_int,
3384 TAU: *mut f32,
3385 Workspace: *mut f32,
3386 Lwork: ::core::ffi::c_int,
3387 devInfo: *mut ::core::ffi::c_int,
3388 ) -> cusolverStatus_t;
3389 pub fn cusolverDnSgeqrf_bufferSize(
3390 handle: cusolverDnHandle_t,
3391 m: ::core::ffi::c_int,
3392 n: ::core::ffi::c_int,
3393 A: *mut f32,
3394 lda: ::core::ffi::c_int,
3395 lwork: *mut ::core::ffi::c_int,
3396 ) -> cusolverStatus_t;
3397 pub fn cusolverDnSgesvd(
3398 handle: cusolverDnHandle_t,
3399 jobu: ::core::ffi::c_schar,
3400 jobvt: ::core::ffi::c_schar,
3401 m: ::core::ffi::c_int,
3402 n: ::core::ffi::c_int,
3403 A: *mut f32,
3404 lda: ::core::ffi::c_int,
3405 S: *mut f32,
3406 U: *mut f32,
3407 ldu: ::core::ffi::c_int,
3408 VT: *mut f32,
3409 ldvt: ::core::ffi::c_int,
3410 work: *mut f32,
3411 lwork: ::core::ffi::c_int,
3412 rwork: *mut f32,
3413 info: *mut ::core::ffi::c_int,
3414 ) -> cusolverStatus_t;
3415 pub fn cusolverDnSgesvd_bufferSize(
3416 handle: cusolverDnHandle_t,
3417 m: ::core::ffi::c_int,
3418 n: ::core::ffi::c_int,
3419 lwork: *mut ::core::ffi::c_int,
3420 ) -> cusolverStatus_t;
3421 pub fn cusolverDnSgesvdaStridedBatched(
3422 handle: cusolverDnHandle_t,
3423 jobz: cusolverEigMode_t,
3424 rank: ::core::ffi::c_int,
3425 m: ::core::ffi::c_int,
3426 n: ::core::ffi::c_int,
3427 d_A: *const f32,
3428 lda: ::core::ffi::c_int,
3429 strideA: ::core::ffi::c_longlong,
3430 d_S: *mut f32,
3431 strideS: ::core::ffi::c_longlong,
3432 d_U: *mut f32,
3433 ldu: ::core::ffi::c_int,
3434 strideU: ::core::ffi::c_longlong,
3435 d_V: *mut f32,
3436 ldv: ::core::ffi::c_int,
3437 strideV: ::core::ffi::c_longlong,
3438 d_work: *mut f32,
3439 lwork: ::core::ffi::c_int,
3440 d_info: *mut ::core::ffi::c_int,
3441 h_R_nrmF: *mut f64,
3442 batchSize: ::core::ffi::c_int,
3443 ) -> cusolverStatus_t;
3444 pub fn cusolverDnSgesvdaStridedBatched_bufferSize(
3445 handle: cusolverDnHandle_t,
3446 jobz: cusolverEigMode_t,
3447 rank: ::core::ffi::c_int,
3448 m: ::core::ffi::c_int,
3449 n: ::core::ffi::c_int,
3450 d_A: *const f32,
3451 lda: ::core::ffi::c_int,
3452 strideA: ::core::ffi::c_longlong,
3453 d_S: *const f32,
3454 strideS: ::core::ffi::c_longlong,
3455 d_U: *const f32,
3456 ldu: ::core::ffi::c_int,
3457 strideU: ::core::ffi::c_longlong,
3458 d_V: *const f32,
3459 ldv: ::core::ffi::c_int,
3460 strideV: ::core::ffi::c_longlong,
3461 lwork: *mut ::core::ffi::c_int,
3462 batchSize: ::core::ffi::c_int,
3463 ) -> cusolverStatus_t;
3464 pub fn cusolverDnSgesvdj(
3465 handle: cusolverDnHandle_t,
3466 jobz: cusolverEigMode_t,
3467 econ: ::core::ffi::c_int,
3468 m: ::core::ffi::c_int,
3469 n: ::core::ffi::c_int,
3470 A: *mut f32,
3471 lda: ::core::ffi::c_int,
3472 S: *mut f32,
3473 U: *mut f32,
3474 ldu: ::core::ffi::c_int,
3475 V: *mut f32,
3476 ldv: ::core::ffi::c_int,
3477 work: *mut f32,
3478 lwork: ::core::ffi::c_int,
3479 info: *mut ::core::ffi::c_int,
3480 params: gesvdjInfo_t,
3481 ) -> cusolverStatus_t;
3482 pub fn cusolverDnSgesvdjBatched(
3483 handle: cusolverDnHandle_t,
3484 jobz: cusolverEigMode_t,
3485 m: ::core::ffi::c_int,
3486 n: ::core::ffi::c_int,
3487 A: *mut f32,
3488 lda: ::core::ffi::c_int,
3489 S: *mut f32,
3490 U: *mut f32,
3491 ldu: ::core::ffi::c_int,
3492 V: *mut f32,
3493 ldv: ::core::ffi::c_int,
3494 work: *mut f32,
3495 lwork: ::core::ffi::c_int,
3496 info: *mut ::core::ffi::c_int,
3497 params: gesvdjInfo_t,
3498 batchSize: ::core::ffi::c_int,
3499 ) -> cusolverStatus_t;
3500 pub fn cusolverDnSgesvdjBatched_bufferSize(
3501 handle: cusolverDnHandle_t,
3502 jobz: cusolverEigMode_t,
3503 m: ::core::ffi::c_int,
3504 n: ::core::ffi::c_int,
3505 A: *const f32,
3506 lda: ::core::ffi::c_int,
3507 S: *const f32,
3508 U: *const f32,
3509 ldu: ::core::ffi::c_int,
3510 V: *const f32,
3511 ldv: ::core::ffi::c_int,
3512 lwork: *mut ::core::ffi::c_int,
3513 params: gesvdjInfo_t,
3514 batchSize: ::core::ffi::c_int,
3515 ) -> cusolverStatus_t;
3516 pub fn cusolverDnSgesvdj_bufferSize(
3517 handle: cusolverDnHandle_t,
3518 jobz: cusolverEigMode_t,
3519 econ: ::core::ffi::c_int,
3520 m: ::core::ffi::c_int,
3521 n: ::core::ffi::c_int,
3522 A: *const f32,
3523 lda: ::core::ffi::c_int,
3524 S: *const f32,
3525 U: *const f32,
3526 ldu: ::core::ffi::c_int,
3527 V: *const f32,
3528 ldv: ::core::ffi::c_int,
3529 lwork: *mut ::core::ffi::c_int,
3530 params: gesvdjInfo_t,
3531 ) -> cusolverStatus_t;
3532 pub fn cusolverDnSgetrf(
3533 handle: cusolverDnHandle_t,
3534 m: ::core::ffi::c_int,
3535 n: ::core::ffi::c_int,
3536 A: *mut f32,
3537 lda: ::core::ffi::c_int,
3538 Workspace: *mut f32,
3539 devIpiv: *mut ::core::ffi::c_int,
3540 devInfo: *mut ::core::ffi::c_int,
3541 ) -> cusolverStatus_t;
3542 pub fn cusolverDnSgetrf_bufferSize(
3543 handle: cusolverDnHandle_t,
3544 m: ::core::ffi::c_int,
3545 n: ::core::ffi::c_int,
3546 A: *mut f32,
3547 lda: ::core::ffi::c_int,
3548 Lwork: *mut ::core::ffi::c_int,
3549 ) -> cusolverStatus_t;
3550 pub fn cusolverDnSgetrs(
3551 handle: cusolverDnHandle_t,
3552 trans: cublasOperation_t,
3553 n: ::core::ffi::c_int,
3554 nrhs: ::core::ffi::c_int,
3555 A: *const f32,
3556 lda: ::core::ffi::c_int,
3557 devIpiv: *const ::core::ffi::c_int,
3558 B: *mut f32,
3559 ldb: ::core::ffi::c_int,
3560 devInfo: *mut ::core::ffi::c_int,
3561 ) -> cusolverStatus_t;
3562 pub fn cusolverDnSlaswp(
3563 handle: cusolverDnHandle_t,
3564 n: ::core::ffi::c_int,
3565 A: *mut f32,
3566 lda: ::core::ffi::c_int,
3567 k1: ::core::ffi::c_int,
3568 k2: ::core::ffi::c_int,
3569 devIpiv: *const ::core::ffi::c_int,
3570 incx: ::core::ffi::c_int,
3571 ) -> cusolverStatus_t;
3572 pub fn cusolverDnSlauum(
3573 handle: cusolverDnHandle_t,
3574 uplo: cublasFillMode_t,
3575 n: ::core::ffi::c_int,
3576 A: *mut f32,
3577 lda: ::core::ffi::c_int,
3578 work: *mut f32,
3579 lwork: ::core::ffi::c_int,
3580 devInfo: *mut ::core::ffi::c_int,
3581 ) -> cusolverStatus_t;
3582 pub fn cusolverDnSlauum_bufferSize(
3583 handle: cusolverDnHandle_t,
3584 uplo: cublasFillMode_t,
3585 n: ::core::ffi::c_int,
3586 A: *mut f32,
3587 lda: ::core::ffi::c_int,
3588 lwork: *mut ::core::ffi::c_int,
3589 ) -> cusolverStatus_t;
3590 pub fn cusolverDnSorgbr(
3591 handle: cusolverDnHandle_t,
3592 side: cublasSideMode_t,
3593 m: ::core::ffi::c_int,
3594 n: ::core::ffi::c_int,
3595 k: ::core::ffi::c_int,
3596 A: *mut f32,
3597 lda: ::core::ffi::c_int,
3598 tau: *const f32,
3599 work: *mut f32,
3600 lwork: ::core::ffi::c_int,
3601 info: *mut ::core::ffi::c_int,
3602 ) -> cusolverStatus_t;
3603 pub fn cusolverDnSorgbr_bufferSize(
3604 handle: cusolverDnHandle_t,
3605 side: cublasSideMode_t,
3606 m: ::core::ffi::c_int,
3607 n: ::core::ffi::c_int,
3608 k: ::core::ffi::c_int,
3609 A: *const f32,
3610 lda: ::core::ffi::c_int,
3611 tau: *const f32,
3612 lwork: *mut ::core::ffi::c_int,
3613 ) -> cusolverStatus_t;
3614 pub fn cusolverDnSorgqr(
3615 handle: cusolverDnHandle_t,
3616 m: ::core::ffi::c_int,
3617 n: ::core::ffi::c_int,
3618 k: ::core::ffi::c_int,
3619 A: *mut f32,
3620 lda: ::core::ffi::c_int,
3621 tau: *const f32,
3622 work: *mut f32,
3623 lwork: ::core::ffi::c_int,
3624 info: *mut ::core::ffi::c_int,
3625 ) -> cusolverStatus_t;
3626 pub fn cusolverDnSorgqr_bufferSize(
3627 handle: cusolverDnHandle_t,
3628 m: ::core::ffi::c_int,
3629 n: ::core::ffi::c_int,
3630 k: ::core::ffi::c_int,
3631 A: *const f32,
3632 lda: ::core::ffi::c_int,
3633 tau: *const f32,
3634 lwork: *mut ::core::ffi::c_int,
3635 ) -> cusolverStatus_t;
3636 pub fn cusolverDnSorgtr(
3637 handle: cusolverDnHandle_t,
3638 uplo: cublasFillMode_t,
3639 n: ::core::ffi::c_int,
3640 A: *mut f32,
3641 lda: ::core::ffi::c_int,
3642 tau: *const f32,
3643 work: *mut f32,
3644 lwork: ::core::ffi::c_int,
3645 info: *mut ::core::ffi::c_int,
3646 ) -> cusolverStatus_t;
3647 pub fn cusolverDnSorgtr_bufferSize(
3648 handle: cusolverDnHandle_t,
3649 uplo: cublasFillMode_t,
3650 n: ::core::ffi::c_int,
3651 A: *const f32,
3652 lda: ::core::ffi::c_int,
3653 tau: *const f32,
3654 lwork: *mut ::core::ffi::c_int,
3655 ) -> cusolverStatus_t;
3656 pub fn cusolverDnSormqr(
3657 handle: cusolverDnHandle_t,
3658 side: cublasSideMode_t,
3659 trans: cublasOperation_t,
3660 m: ::core::ffi::c_int,
3661 n: ::core::ffi::c_int,
3662 k: ::core::ffi::c_int,
3663 A: *const f32,
3664 lda: ::core::ffi::c_int,
3665 tau: *const f32,
3666 C: *mut f32,
3667 ldc: ::core::ffi::c_int,
3668 work: *mut f32,
3669 lwork: ::core::ffi::c_int,
3670 devInfo: *mut ::core::ffi::c_int,
3671 ) -> cusolverStatus_t;
3672 pub fn cusolverDnSormqr_bufferSize(
3673 handle: cusolverDnHandle_t,
3674 side: cublasSideMode_t,
3675 trans: cublasOperation_t,
3676 m: ::core::ffi::c_int,
3677 n: ::core::ffi::c_int,
3678 k: ::core::ffi::c_int,
3679 A: *const f32,
3680 lda: ::core::ffi::c_int,
3681 tau: *const f32,
3682 C: *const f32,
3683 ldc: ::core::ffi::c_int,
3684 lwork: *mut ::core::ffi::c_int,
3685 ) -> cusolverStatus_t;
3686 pub fn cusolverDnSormtr(
3687 handle: cusolverDnHandle_t,
3688 side: cublasSideMode_t,
3689 uplo: cublasFillMode_t,
3690 trans: cublasOperation_t,
3691 m: ::core::ffi::c_int,
3692 n: ::core::ffi::c_int,
3693 A: *mut f32,
3694 lda: ::core::ffi::c_int,
3695 tau: *mut f32,
3696 C: *mut f32,
3697 ldc: ::core::ffi::c_int,
3698 work: *mut f32,
3699 lwork: ::core::ffi::c_int,
3700 info: *mut ::core::ffi::c_int,
3701 ) -> cusolverStatus_t;
3702 pub fn cusolverDnSormtr_bufferSize(
3703 handle: cusolverDnHandle_t,
3704 side: cublasSideMode_t,
3705 uplo: cublasFillMode_t,
3706 trans: cublasOperation_t,
3707 m: ::core::ffi::c_int,
3708 n: ::core::ffi::c_int,
3709 A: *const f32,
3710 lda: ::core::ffi::c_int,
3711 tau: *const f32,
3712 C: *const f32,
3713 ldc: ::core::ffi::c_int,
3714 lwork: *mut ::core::ffi::c_int,
3715 ) -> cusolverStatus_t;
3716 pub fn cusolverDnSpotrf(
3717 handle: cusolverDnHandle_t,
3718 uplo: cublasFillMode_t,
3719 n: ::core::ffi::c_int,
3720 A: *mut f32,
3721 lda: ::core::ffi::c_int,
3722 Workspace: *mut f32,
3723 Lwork: ::core::ffi::c_int,
3724 devInfo: *mut ::core::ffi::c_int,
3725 ) -> cusolverStatus_t;
3726 pub fn cusolverDnSpotrfBatched(
3727 handle: cusolverDnHandle_t,
3728 uplo: cublasFillMode_t,
3729 n: ::core::ffi::c_int,
3730 Aarray: *mut *mut f32,
3731 lda: ::core::ffi::c_int,
3732 infoArray: *mut ::core::ffi::c_int,
3733 batchSize: ::core::ffi::c_int,
3734 ) -> cusolverStatus_t;
3735 pub fn cusolverDnSpotrf_bufferSize(
3736 handle: cusolverDnHandle_t,
3737 uplo: cublasFillMode_t,
3738 n: ::core::ffi::c_int,
3739 A: *mut f32,
3740 lda: ::core::ffi::c_int,
3741 Lwork: *mut ::core::ffi::c_int,
3742 ) -> cusolverStatus_t;
3743 pub fn cusolverDnSpotri(
3744 handle: cusolverDnHandle_t,
3745 uplo: cublasFillMode_t,
3746 n: ::core::ffi::c_int,
3747 A: *mut f32,
3748 lda: ::core::ffi::c_int,
3749 work: *mut f32,
3750 lwork: ::core::ffi::c_int,
3751 devInfo: *mut ::core::ffi::c_int,
3752 ) -> cusolverStatus_t;
3753 pub fn cusolverDnSpotri_bufferSize(
3754 handle: cusolverDnHandle_t,
3755 uplo: cublasFillMode_t,
3756 n: ::core::ffi::c_int,
3757 A: *mut f32,
3758 lda: ::core::ffi::c_int,
3759 lwork: *mut ::core::ffi::c_int,
3760 ) -> cusolverStatus_t;
3761 pub fn cusolverDnSpotrs(
3762 handle: cusolverDnHandle_t,
3763 uplo: cublasFillMode_t,
3764 n: ::core::ffi::c_int,
3765 nrhs: ::core::ffi::c_int,
3766 A: *const f32,
3767 lda: ::core::ffi::c_int,
3768 B: *mut f32,
3769 ldb: ::core::ffi::c_int,
3770 devInfo: *mut ::core::ffi::c_int,
3771 ) -> cusolverStatus_t;
3772 pub fn cusolverDnSpotrsBatched(
3773 handle: cusolverDnHandle_t,
3774 uplo: cublasFillMode_t,
3775 n: ::core::ffi::c_int,
3776 nrhs: ::core::ffi::c_int,
3777 A: *mut *mut f32,
3778 lda: ::core::ffi::c_int,
3779 B: *mut *mut f32,
3780 ldb: ::core::ffi::c_int,
3781 d_info: *mut ::core::ffi::c_int,
3782 batchSize: ::core::ffi::c_int,
3783 ) -> cusolverStatus_t;
3784 pub fn cusolverDnSsyevd(
3785 handle: cusolverDnHandle_t,
3786 jobz: cusolverEigMode_t,
3787 uplo: cublasFillMode_t,
3788 n: ::core::ffi::c_int,
3789 A: *mut f32,
3790 lda: ::core::ffi::c_int,
3791 W: *mut f32,
3792 work: *mut f32,
3793 lwork: ::core::ffi::c_int,
3794 info: *mut ::core::ffi::c_int,
3795 ) -> cusolverStatus_t;
3796 pub fn cusolverDnSsyevd_bufferSize(
3797 handle: cusolverDnHandle_t,
3798 jobz: cusolverEigMode_t,
3799 uplo: cublasFillMode_t,
3800 n: ::core::ffi::c_int,
3801 A: *const f32,
3802 lda: ::core::ffi::c_int,
3803 W: *const f32,
3804 lwork: *mut ::core::ffi::c_int,
3805 ) -> cusolverStatus_t;
3806 pub fn cusolverDnSsyevdx(
3807 handle: cusolverDnHandle_t,
3808 jobz: cusolverEigMode_t,
3809 range: cusolverEigRange_t,
3810 uplo: cublasFillMode_t,
3811 n: ::core::ffi::c_int,
3812 A: *mut f32,
3813 lda: ::core::ffi::c_int,
3814 vl: f32,
3815 vu: f32,
3816 il: ::core::ffi::c_int,
3817 iu: ::core::ffi::c_int,
3818 meig: *mut ::core::ffi::c_int,
3819 W: *mut f32,
3820 work: *mut f32,
3821 lwork: ::core::ffi::c_int,
3822 info: *mut ::core::ffi::c_int,
3823 ) -> cusolverStatus_t;
3824 pub fn cusolverDnSsyevdx_bufferSize(
3825 handle: cusolverDnHandle_t,
3826 jobz: cusolverEigMode_t,
3827 range: cusolverEigRange_t,
3828 uplo: cublasFillMode_t,
3829 n: ::core::ffi::c_int,
3830 A: *const f32,
3831 lda: ::core::ffi::c_int,
3832 vl: f32,
3833 vu: f32,
3834 il: ::core::ffi::c_int,
3835 iu: ::core::ffi::c_int,
3836 meig: *mut ::core::ffi::c_int,
3837 W: *const f32,
3838 lwork: *mut ::core::ffi::c_int,
3839 ) -> cusolverStatus_t;
3840 pub fn cusolverDnSsyevj(
3841 handle: cusolverDnHandle_t,
3842 jobz: cusolverEigMode_t,
3843 uplo: cublasFillMode_t,
3844 n: ::core::ffi::c_int,
3845 A: *mut f32,
3846 lda: ::core::ffi::c_int,
3847 W: *mut f32,
3848 work: *mut f32,
3849 lwork: ::core::ffi::c_int,
3850 info: *mut ::core::ffi::c_int,
3851 params: syevjInfo_t,
3852 ) -> cusolverStatus_t;
3853 pub fn cusolverDnSsyevjBatched(
3854 handle: cusolverDnHandle_t,
3855 jobz: cusolverEigMode_t,
3856 uplo: cublasFillMode_t,
3857 n: ::core::ffi::c_int,
3858 A: *mut f32,
3859 lda: ::core::ffi::c_int,
3860 W: *mut f32,
3861 work: *mut f32,
3862 lwork: ::core::ffi::c_int,
3863 info: *mut ::core::ffi::c_int,
3864 params: syevjInfo_t,
3865 batchSize: ::core::ffi::c_int,
3866 ) -> cusolverStatus_t;
3867 pub fn cusolverDnSsyevjBatched_bufferSize(
3868 handle: cusolverDnHandle_t,
3869 jobz: cusolverEigMode_t,
3870 uplo: cublasFillMode_t,
3871 n: ::core::ffi::c_int,
3872 A: *const f32,
3873 lda: ::core::ffi::c_int,
3874 W: *const f32,
3875 lwork: *mut ::core::ffi::c_int,
3876 params: syevjInfo_t,
3877 batchSize: ::core::ffi::c_int,
3878 ) -> cusolverStatus_t;
3879 pub fn cusolverDnSsyevj_bufferSize(
3880 handle: cusolverDnHandle_t,
3881 jobz: cusolverEigMode_t,
3882 uplo: cublasFillMode_t,
3883 n: ::core::ffi::c_int,
3884 A: *const f32,
3885 lda: ::core::ffi::c_int,
3886 W: *const f32,
3887 lwork: *mut ::core::ffi::c_int,
3888 params: syevjInfo_t,
3889 ) -> cusolverStatus_t;
3890 pub fn cusolverDnSsygvd(
3891 handle: cusolverDnHandle_t,
3892 itype: cusolverEigType_t,
3893 jobz: cusolverEigMode_t,
3894 uplo: cublasFillMode_t,
3895 n: ::core::ffi::c_int,
3896 A: *mut f32,
3897 lda: ::core::ffi::c_int,
3898 B: *mut f32,
3899 ldb: ::core::ffi::c_int,
3900 W: *mut f32,
3901 work: *mut f32,
3902 lwork: ::core::ffi::c_int,
3903 info: *mut ::core::ffi::c_int,
3904 ) -> cusolverStatus_t;
3905 pub fn cusolverDnSsygvd_bufferSize(
3906 handle: cusolverDnHandle_t,
3907 itype: cusolverEigType_t,
3908 jobz: cusolverEigMode_t,
3909 uplo: cublasFillMode_t,
3910 n: ::core::ffi::c_int,
3911 A: *const f32,
3912 lda: ::core::ffi::c_int,
3913 B: *const f32,
3914 ldb: ::core::ffi::c_int,
3915 W: *const f32,
3916 lwork: *mut ::core::ffi::c_int,
3917 ) -> cusolverStatus_t;
3918 pub fn cusolverDnSsygvdx(
3919 handle: cusolverDnHandle_t,
3920 itype: cusolverEigType_t,
3921 jobz: cusolverEigMode_t,
3922 range: cusolverEigRange_t,
3923 uplo: cublasFillMode_t,
3924 n: ::core::ffi::c_int,
3925 A: *mut f32,
3926 lda: ::core::ffi::c_int,
3927 B: *mut f32,
3928 ldb: ::core::ffi::c_int,
3929 vl: f32,
3930 vu: f32,
3931 il: ::core::ffi::c_int,
3932 iu: ::core::ffi::c_int,
3933 meig: *mut ::core::ffi::c_int,
3934 W: *mut f32,
3935 work: *mut f32,
3936 lwork: ::core::ffi::c_int,
3937 info: *mut ::core::ffi::c_int,
3938 ) -> cusolverStatus_t;
3939 pub fn cusolverDnSsygvdx_bufferSize(
3940 handle: cusolverDnHandle_t,
3941 itype: cusolverEigType_t,
3942 jobz: cusolverEigMode_t,
3943 range: cusolverEigRange_t,
3944 uplo: cublasFillMode_t,
3945 n: ::core::ffi::c_int,
3946 A: *const f32,
3947 lda: ::core::ffi::c_int,
3948 B: *const f32,
3949 ldb: ::core::ffi::c_int,
3950 vl: f32,
3951 vu: f32,
3952 il: ::core::ffi::c_int,
3953 iu: ::core::ffi::c_int,
3954 meig: *mut ::core::ffi::c_int,
3955 W: *const f32,
3956 lwork: *mut ::core::ffi::c_int,
3957 ) -> cusolverStatus_t;
3958 pub fn cusolverDnSsygvj(
3959 handle: cusolverDnHandle_t,
3960 itype: cusolverEigType_t,
3961 jobz: cusolverEigMode_t,
3962 uplo: cublasFillMode_t,
3963 n: ::core::ffi::c_int,
3964 A: *mut f32,
3965 lda: ::core::ffi::c_int,
3966 B: *mut f32,
3967 ldb: ::core::ffi::c_int,
3968 W: *mut f32,
3969 work: *mut f32,
3970 lwork: ::core::ffi::c_int,
3971 info: *mut ::core::ffi::c_int,
3972 params: syevjInfo_t,
3973 ) -> cusolverStatus_t;
3974 pub fn cusolverDnSsygvj_bufferSize(
3975 handle: cusolverDnHandle_t,
3976 itype: cusolverEigType_t,
3977 jobz: cusolverEigMode_t,
3978 uplo: cublasFillMode_t,
3979 n: ::core::ffi::c_int,
3980 A: *const f32,
3981 lda: ::core::ffi::c_int,
3982 B: *const f32,
3983 ldb: ::core::ffi::c_int,
3984 W: *const f32,
3985 lwork: *mut ::core::ffi::c_int,
3986 params: syevjInfo_t,
3987 ) -> cusolverStatus_t;
3988 pub fn cusolverDnSsytrd(
3989 handle: cusolverDnHandle_t,
3990 uplo: cublasFillMode_t,
3991 n: ::core::ffi::c_int,
3992 A: *mut f32,
3993 lda: ::core::ffi::c_int,
3994 d: *mut f32,
3995 e: *mut f32,
3996 tau: *mut f32,
3997 work: *mut f32,
3998 lwork: ::core::ffi::c_int,
3999 info: *mut ::core::ffi::c_int,
4000 ) -> cusolverStatus_t;
4001 pub fn cusolverDnSsytrd_bufferSize(
4002 handle: cusolverDnHandle_t,
4003 uplo: cublasFillMode_t,
4004 n: ::core::ffi::c_int,
4005 A: *const f32,
4006 lda: ::core::ffi::c_int,
4007 d: *const f32,
4008 e: *const f32,
4009 tau: *const f32,
4010 lwork: *mut ::core::ffi::c_int,
4011 ) -> cusolverStatus_t;
4012 pub fn cusolverDnSsytrf(
4013 handle: cusolverDnHandle_t,
4014 uplo: cublasFillMode_t,
4015 n: ::core::ffi::c_int,
4016 A: *mut f32,
4017 lda: ::core::ffi::c_int,
4018 ipiv: *mut ::core::ffi::c_int,
4019 work: *mut f32,
4020 lwork: ::core::ffi::c_int,
4021 info: *mut ::core::ffi::c_int,
4022 ) -> cusolverStatus_t;
4023 pub fn cusolverDnSsytrf_bufferSize(
4024 handle: cusolverDnHandle_t,
4025 n: ::core::ffi::c_int,
4026 A: *mut f32,
4027 lda: ::core::ffi::c_int,
4028 lwork: *mut ::core::ffi::c_int,
4029 ) -> cusolverStatus_t;
4030 pub fn cusolverDnSsytri(
4031 handle: cusolverDnHandle_t,
4032 uplo: cublasFillMode_t,
4033 n: ::core::ffi::c_int,
4034 A: *mut f32,
4035 lda: ::core::ffi::c_int,
4036 ipiv: *const ::core::ffi::c_int,
4037 work: *mut f32,
4038 lwork: ::core::ffi::c_int,
4039 info: *mut ::core::ffi::c_int,
4040 ) -> cusolverStatus_t;
4041 pub fn cusolverDnSsytri_bufferSize(
4042 handle: cusolverDnHandle_t,
4043 uplo: cublasFillMode_t,
4044 n: ::core::ffi::c_int,
4045 A: *mut f32,
4046 lda: ::core::ffi::c_int,
4047 ipiv: *const ::core::ffi::c_int,
4048 lwork: *mut ::core::ffi::c_int,
4049 ) -> cusolverStatus_t;
4050 #[cfg(any(
4051 feature = "cuda-11040",
4052 feature = "cuda-11050",
4053 feature = "cuda-11060",
4054 feature = "cuda-11070",
4055 feature = "cuda-11080",
4056 feature = "cuda-12000",
4057 feature = "cuda-12010",
4058 feature = "cuda-12020",
4059 feature = "cuda-12030",
4060 feature = "cuda-12040",
4061 feature = "cuda-12050",
4062 feature = "cuda-12060",
4063 feature = "cuda-12080",
4064 feature = "cuda-12090"
4065 ))]
4066 pub fn cusolverDnSyevd(
4067 handle: cusolverDnHandle_t,
4068 params: cusolverDnParams_t,
4069 jobz: cusolverEigMode_t,
4070 uplo: cublasFillMode_t,
4071 n: i64,
4072 dataTypeA: cudaDataType,
4073 A: *mut ::core::ffi::c_void,
4074 lda: i64,
4075 dataTypeW: cudaDataType,
4076 W: *mut ::core::ffi::c_void,
4077 computeType: cudaDataType,
4078 pBuffer: *mut ::core::ffi::c_void,
4079 workspaceInBytes: usize,
4080 info: *mut ::core::ffi::c_int,
4081 ) -> cusolverStatus_t;
4082 #[cfg(any(
4083 feature = "cuda-11040",
4084 feature = "cuda-11050",
4085 feature = "cuda-11060",
4086 feature = "cuda-11070",
4087 feature = "cuda-11080",
4088 feature = "cuda-12000",
4089 feature = "cuda-12010",
4090 feature = "cuda-12020",
4091 feature = "cuda-12030",
4092 feature = "cuda-12040",
4093 feature = "cuda-12050",
4094 feature = "cuda-12060",
4095 feature = "cuda-12080",
4096 feature = "cuda-12090"
4097 ))]
4098 pub fn cusolverDnSyevd_bufferSize(
4099 handle: cusolverDnHandle_t,
4100 params: cusolverDnParams_t,
4101 jobz: cusolverEigMode_t,
4102 uplo: cublasFillMode_t,
4103 n: i64,
4104 dataTypeA: cudaDataType,
4105 A: *const ::core::ffi::c_void,
4106 lda: i64,
4107 dataTypeW: cudaDataType,
4108 W: *const ::core::ffi::c_void,
4109 computeType: cudaDataType,
4110 workspaceInBytes: *mut usize,
4111 ) -> cusolverStatus_t;
4112 #[cfg(any(
4113 feature = "cuda-11040",
4114 feature = "cuda-11050",
4115 feature = "cuda-11060",
4116 feature = "cuda-11070",
4117 feature = "cuda-11080",
4118 feature = "cuda-12000",
4119 feature = "cuda-12010",
4120 feature = "cuda-12020",
4121 feature = "cuda-12030",
4122 feature = "cuda-12040",
4123 feature = "cuda-12050",
4124 feature = "cuda-12060",
4125 feature = "cuda-12080",
4126 feature = "cuda-12090"
4127 ))]
4128 pub fn cusolverDnSyevdx(
4129 handle: cusolverDnHandle_t,
4130 params: cusolverDnParams_t,
4131 jobz: cusolverEigMode_t,
4132 range: cusolverEigRange_t,
4133 uplo: cublasFillMode_t,
4134 n: i64,
4135 dataTypeA: cudaDataType,
4136 A: *mut ::core::ffi::c_void,
4137 lda: i64,
4138 vl: *mut ::core::ffi::c_void,
4139 vu: *mut ::core::ffi::c_void,
4140 il: i64,
4141 iu: i64,
4142 meig64: *mut i64,
4143 dataTypeW: cudaDataType,
4144 W: *mut ::core::ffi::c_void,
4145 computeType: cudaDataType,
4146 pBuffer: *mut ::core::ffi::c_void,
4147 workspaceInBytes: usize,
4148 info: *mut ::core::ffi::c_int,
4149 ) -> cusolverStatus_t;
4150 #[cfg(any(
4151 feature = "cuda-11040",
4152 feature = "cuda-11050",
4153 feature = "cuda-11060",
4154 feature = "cuda-11070",
4155 feature = "cuda-11080",
4156 feature = "cuda-12000",
4157 feature = "cuda-12010",
4158 feature = "cuda-12020",
4159 feature = "cuda-12030",
4160 feature = "cuda-12040",
4161 feature = "cuda-12050",
4162 feature = "cuda-12060",
4163 feature = "cuda-12080",
4164 feature = "cuda-12090"
4165 ))]
4166 pub fn cusolverDnSyevdx_bufferSize(
4167 handle: cusolverDnHandle_t,
4168 params: cusolverDnParams_t,
4169 jobz: cusolverEigMode_t,
4170 range: cusolverEigRange_t,
4171 uplo: cublasFillMode_t,
4172 n: i64,
4173 dataTypeA: cudaDataType,
4174 A: *const ::core::ffi::c_void,
4175 lda: i64,
4176 vl: *mut ::core::ffi::c_void,
4177 vu: *mut ::core::ffi::c_void,
4178 il: i64,
4179 iu: i64,
4180 h_meig: *mut i64,
4181 dataTypeW: cudaDataType,
4182 W: *const ::core::ffi::c_void,
4183 computeType: cudaDataType,
4184 workspaceInBytes: *mut usize,
4185 ) -> cusolverStatus_t;
4186 #[cfg(any(
4187 feature = "cuda-12060",
4188 feature = "cuda-12080",
4189 feature = "cuda-12090",
4190 feature = "cuda-13000",
4191 feature = "cuda-13010"
4192 ))]
4193 pub fn cusolverDnXgeev(
4194 handle: cusolverDnHandle_t,
4195 params: cusolverDnParams_t,
4196 jobvl: cusolverEigMode_t,
4197 jobvr: cusolverEigMode_t,
4198 n: i64,
4199 dataTypeA: cudaDataType,
4200 A: *mut ::core::ffi::c_void,
4201 lda: i64,
4202 dataTypeW: cudaDataType,
4203 W: *mut ::core::ffi::c_void,
4204 dataTypeVL: cudaDataType,
4205 VL: *mut ::core::ffi::c_void,
4206 ldvl: i64,
4207 dataTypeVR: cudaDataType,
4208 VR: *mut ::core::ffi::c_void,
4209 ldvr: i64,
4210 computeType: cudaDataType,
4211 bufferOnDevice: *mut ::core::ffi::c_void,
4212 workspaceInBytesOnDevice: usize,
4213 bufferOnHost: *mut ::core::ffi::c_void,
4214 workspaceInBytesOnHost: usize,
4215 info: *mut ::core::ffi::c_int,
4216 ) -> cusolverStatus_t;
4217 #[cfg(any(
4218 feature = "cuda-12060",
4219 feature = "cuda-12080",
4220 feature = "cuda-12090",
4221 feature = "cuda-13000",
4222 feature = "cuda-13010"
4223 ))]
4224 pub fn cusolverDnXgeev_bufferSize(
4225 handle: cusolverDnHandle_t,
4226 params: cusolverDnParams_t,
4227 jobvl: cusolverEigMode_t,
4228 jobvr: cusolverEigMode_t,
4229 n: i64,
4230 dataTypeA: cudaDataType,
4231 A: *const ::core::ffi::c_void,
4232 lda: i64,
4233 dataTypeW: cudaDataType,
4234 W: *const ::core::ffi::c_void,
4235 dataTypeVL: cudaDataType,
4236 VL: *const ::core::ffi::c_void,
4237 ldvl: i64,
4238 dataTypeVR: cudaDataType,
4239 VR: *const ::core::ffi::c_void,
4240 ldvr: i64,
4241 computeType: cudaDataType,
4242 workspaceInBytesOnDevice: *mut usize,
4243 workspaceInBytesOnHost: *mut usize,
4244 ) -> cusolverStatus_t;
4245 pub fn cusolverDnXgeqrf(
4246 handle: cusolverDnHandle_t,
4247 params: cusolverDnParams_t,
4248 m: i64,
4249 n: i64,
4250 dataTypeA: cudaDataType,
4251 A: *mut ::core::ffi::c_void,
4252 lda: i64,
4253 dataTypeTau: cudaDataType,
4254 tau: *mut ::core::ffi::c_void,
4255 computeType: cudaDataType,
4256 bufferOnDevice: *mut ::core::ffi::c_void,
4257 workspaceInBytesOnDevice: usize,
4258 bufferOnHost: *mut ::core::ffi::c_void,
4259 workspaceInBytesOnHost: usize,
4260 info: *mut ::core::ffi::c_int,
4261 ) -> cusolverStatus_t;
4262 pub fn cusolverDnXgeqrf_bufferSize(
4263 handle: cusolverDnHandle_t,
4264 params: cusolverDnParams_t,
4265 m: i64,
4266 n: i64,
4267 dataTypeA: cudaDataType,
4268 A: *const ::core::ffi::c_void,
4269 lda: i64,
4270 dataTypeTau: cudaDataType,
4271 tau: *const ::core::ffi::c_void,
4272 computeType: cudaDataType,
4273 workspaceInBytesOnDevice: *mut usize,
4274 workspaceInBytesOnHost: *mut usize,
4275 ) -> cusolverStatus_t;
4276 pub fn cusolverDnXgesvd(
4277 handle: cusolverDnHandle_t,
4278 params: cusolverDnParams_t,
4279 jobu: ::core::ffi::c_schar,
4280 jobvt: ::core::ffi::c_schar,
4281 m: i64,
4282 n: i64,
4283 dataTypeA: cudaDataType,
4284 A: *mut ::core::ffi::c_void,
4285 lda: i64,
4286 dataTypeS: cudaDataType,
4287 S: *mut ::core::ffi::c_void,
4288 dataTypeU: cudaDataType,
4289 U: *mut ::core::ffi::c_void,
4290 ldu: i64,
4291 dataTypeVT: cudaDataType,
4292 VT: *mut ::core::ffi::c_void,
4293 ldvt: i64,
4294 computeType: cudaDataType,
4295 bufferOnDevice: *mut ::core::ffi::c_void,
4296 workspaceInBytesOnDevice: usize,
4297 bufferOnHost: *mut ::core::ffi::c_void,
4298 workspaceInBytesOnHost: usize,
4299 info: *mut ::core::ffi::c_int,
4300 ) -> cusolverStatus_t;
4301 pub fn cusolverDnXgesvd_bufferSize(
4302 handle: cusolverDnHandle_t,
4303 params: cusolverDnParams_t,
4304 jobu: ::core::ffi::c_schar,
4305 jobvt: ::core::ffi::c_schar,
4306 m: i64,
4307 n: i64,
4308 dataTypeA: cudaDataType,
4309 A: *const ::core::ffi::c_void,
4310 lda: i64,
4311 dataTypeS: cudaDataType,
4312 S: *const ::core::ffi::c_void,
4313 dataTypeU: cudaDataType,
4314 U: *const ::core::ffi::c_void,
4315 ldu: i64,
4316 dataTypeVT: cudaDataType,
4317 VT: *const ::core::ffi::c_void,
4318 ldvt: i64,
4319 computeType: cudaDataType,
4320 workspaceInBytesOnDevice: *mut usize,
4321 workspaceInBytesOnHost: *mut usize,
4322 ) -> cusolverStatus_t;
4323 pub fn cusolverDnXgesvdjGetResidual(
4324 handle: cusolverDnHandle_t,
4325 info: gesvdjInfo_t,
4326 residual: *mut f64,
4327 ) -> cusolverStatus_t;
4328 pub fn cusolverDnXgesvdjGetSweeps(
4329 handle: cusolverDnHandle_t,
4330 info: gesvdjInfo_t,
4331 executed_sweeps: *mut ::core::ffi::c_int,
4332 ) -> cusolverStatus_t;
4333 pub fn cusolverDnXgesvdjSetMaxSweeps(
4334 info: gesvdjInfo_t,
4335 max_sweeps: ::core::ffi::c_int,
4336 ) -> cusolverStatus_t;
4337 pub fn cusolverDnXgesvdjSetSortEig(
4338 info: gesvdjInfo_t,
4339 sort_svd: ::core::ffi::c_int,
4340 ) -> cusolverStatus_t;
4341 pub fn cusolverDnXgesvdjSetTolerance(info: gesvdjInfo_t, tolerance: f64) -> cusolverStatus_t;
4342 pub fn cusolverDnXgesvdp(
4343 handle: cusolverDnHandle_t,
4344 params: cusolverDnParams_t,
4345 jobz: cusolverEigMode_t,
4346 econ: ::core::ffi::c_int,
4347 m: i64,
4348 n: i64,
4349 dataTypeA: cudaDataType,
4350 A: *mut ::core::ffi::c_void,
4351 lda: i64,
4352 dataTypeS: cudaDataType,
4353 S: *mut ::core::ffi::c_void,
4354 dataTypeU: cudaDataType,
4355 U: *mut ::core::ffi::c_void,
4356 ldu: i64,
4357 dataTypeV: cudaDataType,
4358 V: *mut ::core::ffi::c_void,
4359 ldv: i64,
4360 computeType: cudaDataType,
4361 bufferOnDevice: *mut ::core::ffi::c_void,
4362 workspaceInBytesOnDevice: usize,
4363 bufferOnHost: *mut ::core::ffi::c_void,
4364 workspaceInBytesOnHost: usize,
4365 d_info: *mut ::core::ffi::c_int,
4366 h_err_sigma: *mut f64,
4367 ) -> cusolverStatus_t;
4368 pub fn cusolverDnXgesvdp_bufferSize(
4369 handle: cusolverDnHandle_t,
4370 params: cusolverDnParams_t,
4371 jobz: cusolverEigMode_t,
4372 econ: ::core::ffi::c_int,
4373 m: i64,
4374 n: i64,
4375 dataTypeA: cudaDataType,
4376 A: *const ::core::ffi::c_void,
4377 lda: i64,
4378 dataTypeS: cudaDataType,
4379 S: *const ::core::ffi::c_void,
4380 dataTypeU: cudaDataType,
4381 U: *const ::core::ffi::c_void,
4382 ldu: i64,
4383 dataTypeV: cudaDataType,
4384 V: *const ::core::ffi::c_void,
4385 ldv: i64,
4386 computeType: cudaDataType,
4387 workspaceInBytesOnDevice: *mut usize,
4388 workspaceInBytesOnHost: *mut usize,
4389 ) -> cusolverStatus_t;
4390 pub fn cusolverDnXgesvdr(
4391 handle: cusolverDnHandle_t,
4392 params: cusolverDnParams_t,
4393 jobu: ::core::ffi::c_schar,
4394 jobv: ::core::ffi::c_schar,
4395 m: i64,
4396 n: i64,
4397 k: i64,
4398 p: i64,
4399 niters: i64,
4400 dataTypeA: cudaDataType,
4401 A: *mut ::core::ffi::c_void,
4402 lda: i64,
4403 dataTypeSrand: cudaDataType,
4404 Srand: *mut ::core::ffi::c_void,
4405 dataTypeUrand: cudaDataType,
4406 Urand: *mut ::core::ffi::c_void,
4407 ldUrand: i64,
4408 dataTypeVrand: cudaDataType,
4409 Vrand: *mut ::core::ffi::c_void,
4410 ldVrand: i64,
4411 computeType: cudaDataType,
4412 bufferOnDevice: *mut ::core::ffi::c_void,
4413 workspaceInBytesOnDevice: usize,
4414 bufferOnHost: *mut ::core::ffi::c_void,
4415 workspaceInBytesOnHost: usize,
4416 d_info: *mut ::core::ffi::c_int,
4417 ) -> cusolverStatus_t;
4418 pub fn cusolverDnXgesvdr_bufferSize(
4419 handle: cusolverDnHandle_t,
4420 params: cusolverDnParams_t,
4421 jobu: ::core::ffi::c_schar,
4422 jobv: ::core::ffi::c_schar,
4423 m: i64,
4424 n: i64,
4425 k: i64,
4426 p: i64,
4427 niters: i64,
4428 dataTypeA: cudaDataType,
4429 A: *const ::core::ffi::c_void,
4430 lda: i64,
4431 dataTypeSrand: cudaDataType,
4432 Srand: *const ::core::ffi::c_void,
4433 dataTypeUrand: cudaDataType,
4434 Urand: *const ::core::ffi::c_void,
4435 ldUrand: i64,
4436 dataTypeVrand: cudaDataType,
4437 Vrand: *const ::core::ffi::c_void,
4438 ldVrand: i64,
4439 computeType: cudaDataType,
4440 workspaceInBytesOnDevice: *mut usize,
4441 workspaceInBytesOnHost: *mut usize,
4442 ) -> cusolverStatus_t;
4443 pub fn cusolverDnXgetrf(
4444 handle: cusolverDnHandle_t,
4445 params: cusolverDnParams_t,
4446 m: i64,
4447 n: i64,
4448 dataTypeA: cudaDataType,
4449 A: *mut ::core::ffi::c_void,
4450 lda: i64,
4451 ipiv: *mut i64,
4452 computeType: cudaDataType,
4453 bufferOnDevice: *mut ::core::ffi::c_void,
4454 workspaceInBytesOnDevice: usize,
4455 bufferOnHost: *mut ::core::ffi::c_void,
4456 workspaceInBytesOnHost: usize,
4457 info: *mut ::core::ffi::c_int,
4458 ) -> cusolverStatus_t;
4459 pub fn cusolverDnXgetrf_bufferSize(
4460 handle: cusolverDnHandle_t,
4461 params: cusolverDnParams_t,
4462 m: i64,
4463 n: i64,
4464 dataTypeA: cudaDataType,
4465 A: *const ::core::ffi::c_void,
4466 lda: i64,
4467 computeType: cudaDataType,
4468 workspaceInBytesOnDevice: *mut usize,
4469 workspaceInBytesOnHost: *mut usize,
4470 ) -> cusolverStatus_t;
4471 pub fn cusolverDnXgetrs(
4472 handle: cusolverDnHandle_t,
4473 params: cusolverDnParams_t,
4474 trans: cublasOperation_t,
4475 n: i64,
4476 nrhs: i64,
4477 dataTypeA: cudaDataType,
4478 A: *const ::core::ffi::c_void,
4479 lda: i64,
4480 ipiv: *const i64,
4481 dataTypeB: cudaDataType,
4482 B: *mut ::core::ffi::c_void,
4483 ldb: i64,
4484 info: *mut ::core::ffi::c_int,
4485 ) -> cusolverStatus_t;
4486 #[cfg(any(feature = "cuda-12040"))]
4487 pub fn cusolverDnXlarft(
4488 handle: cusolverDnHandle_t,
4489 params: cusolverDnParams_t,
4490 direct: cusolverDirectMode_t,
4491 storev: cusolverStorevMode_t,
4492 N: i64,
4493 K: i64,
4494 dataTypeV: cudaDataType,
4495 d_V: *const ::core::ffi::c_void,
4496 ldv: i64,
4497 dataTypeTau: cudaDataType,
4498 d_tau: *const ::core::ffi::c_void,
4499 dataTypeT: cudaDataType,
4500 d_T: *mut ::core::ffi::c_void,
4501 ldt: i64,
4502 computeType: cudaDataType,
4503 bufferOnDevice: *mut ::core::ffi::c_void,
4504 workspaceInBytesOnDevice: usize,
4505 bufferOnHost: *mut ::core::ffi::c_void,
4506 workspaceInBytesOnHost: usize,
4507 ) -> cusolverStatus_t;
4508 #[cfg(any(
4509 feature = "cuda-12050",
4510 feature = "cuda-12060",
4511 feature = "cuda-12080",
4512 feature = "cuda-12090",
4513 feature = "cuda-13000",
4514 feature = "cuda-13010"
4515 ))]
4516 pub fn cusolverDnXlarft(
4517 handle: cusolverDnHandle_t,
4518 params: cusolverDnParams_t,
4519 direct: cusolverDirectMode_t,
4520 storev: cusolverStorevMode_t,
4521 n: i64,
4522 k: i64,
4523 dataTypeV: cudaDataType,
4524 V: *const ::core::ffi::c_void,
4525 ldv: i64,
4526 dataTypeTau: cudaDataType,
4527 tau: *const ::core::ffi::c_void,
4528 dataTypeT: cudaDataType,
4529 T: *mut ::core::ffi::c_void,
4530 ldt: i64,
4531 computeType: cudaDataType,
4532 bufferOnDevice: *mut ::core::ffi::c_void,
4533 workspaceInBytesOnDevice: usize,
4534 bufferOnHost: *mut ::core::ffi::c_void,
4535 workspaceInBytesOnHost: usize,
4536 ) -> cusolverStatus_t;
4537 #[cfg(any(feature = "cuda-12040"))]
4538 pub fn cusolverDnXlarft_bufferSize(
4539 handle: cusolverDnHandle_t,
4540 params: cusolverDnParams_t,
4541 direct: cusolverDirectMode_t,
4542 storev: cusolverStorevMode_t,
4543 N: i64,
4544 K: i64,
4545 dataTypeV: cudaDataType,
4546 d_V: *const ::core::ffi::c_void,
4547 ldv: i64,
4548 dataTypeTau: cudaDataType,
4549 d_tau: *const ::core::ffi::c_void,
4550 dataTypeT: cudaDataType,
4551 d_T: *mut ::core::ffi::c_void,
4552 ldt: i64,
4553 computeType: cudaDataType,
4554 workspaceInBytesOnDevice: *mut usize,
4555 workspaceInBytesOnHost: *mut usize,
4556 ) -> cusolverStatus_t;
4557 #[cfg(any(
4558 feature = "cuda-12050",
4559 feature = "cuda-12060",
4560 feature = "cuda-12080",
4561 feature = "cuda-12090",
4562 feature = "cuda-13000",
4563 feature = "cuda-13010"
4564 ))]
4565 pub fn cusolverDnXlarft_bufferSize(
4566 handle: cusolverDnHandle_t,
4567 params: cusolverDnParams_t,
4568 direct: cusolverDirectMode_t,
4569 storev: cusolverStorevMode_t,
4570 n: i64,
4571 k: i64,
4572 dataTypeV: cudaDataType,
4573 V: *const ::core::ffi::c_void,
4574 ldv: i64,
4575 dataTypeTau: cudaDataType,
4576 tau: *const ::core::ffi::c_void,
4577 dataTypeT: cudaDataType,
4578 T: *mut ::core::ffi::c_void,
4579 ldt: i64,
4580 computeType: cudaDataType,
4581 workspaceInBytesOnDevice: *mut usize,
4582 workspaceInBytesOnHost: *mut usize,
4583 ) -> cusolverStatus_t;
4584 pub fn cusolverDnXpotrf(
4585 handle: cusolverDnHandle_t,
4586 params: cusolverDnParams_t,
4587 uplo: cublasFillMode_t,
4588 n: i64,
4589 dataTypeA: cudaDataType,
4590 A: *mut ::core::ffi::c_void,
4591 lda: i64,
4592 computeType: cudaDataType,
4593 bufferOnDevice: *mut ::core::ffi::c_void,
4594 workspaceInBytesOnDevice: usize,
4595 bufferOnHost: *mut ::core::ffi::c_void,
4596 workspaceInBytesOnHost: usize,
4597 info: *mut ::core::ffi::c_int,
4598 ) -> cusolverStatus_t;
4599 pub fn cusolverDnXpotrf_bufferSize(
4600 handle: cusolverDnHandle_t,
4601 params: cusolverDnParams_t,
4602 uplo: cublasFillMode_t,
4603 n: i64,
4604 dataTypeA: cudaDataType,
4605 A: *const ::core::ffi::c_void,
4606 lda: i64,
4607 computeType: cudaDataType,
4608 workspaceInBytesOnDevice: *mut usize,
4609 workspaceInBytesOnHost: *mut usize,
4610 ) -> cusolverStatus_t;
4611 pub fn cusolverDnXpotrs(
4612 handle: cusolverDnHandle_t,
4613 params: cusolverDnParams_t,
4614 uplo: cublasFillMode_t,
4615 n: i64,
4616 nrhs: i64,
4617 dataTypeA: cudaDataType,
4618 A: *const ::core::ffi::c_void,
4619 lda: i64,
4620 dataTypeB: cudaDataType,
4621 B: *mut ::core::ffi::c_void,
4622 ldb: i64,
4623 info: *mut ::core::ffi::c_int,
4624 ) -> cusolverStatus_t;
4625 #[cfg(any(
4626 feature = "cuda-12060",
4627 feature = "cuda-12080",
4628 feature = "cuda-12090",
4629 feature = "cuda-13000",
4630 feature = "cuda-13010"
4631 ))]
4632 pub fn cusolverDnXsyevBatched(
4633 handle: cusolverDnHandle_t,
4634 params: cusolverDnParams_t,
4635 jobz: cusolverEigMode_t,
4636 uplo: cublasFillMode_t,
4637 n: i64,
4638 dataTypeA: cudaDataType,
4639 A: *mut ::core::ffi::c_void,
4640 lda: i64,
4641 dataTypeW: cudaDataType,
4642 W: *mut ::core::ffi::c_void,
4643 computeType: cudaDataType,
4644 bufferOnDevice: *mut ::core::ffi::c_void,
4645 workspaceInBytesOnDevice: usize,
4646 bufferOnHost: *mut ::core::ffi::c_void,
4647 workspaceInBytesOnHost: usize,
4648 info: *mut ::core::ffi::c_int,
4649 batchSize: i64,
4650 ) -> cusolverStatus_t;
4651 #[cfg(any(
4652 feature = "cuda-12060",
4653 feature = "cuda-12080",
4654 feature = "cuda-12090",
4655 feature = "cuda-13000",
4656 feature = "cuda-13010"
4657 ))]
4658 pub fn cusolverDnXsyevBatched_bufferSize(
4659 handle: cusolverDnHandle_t,
4660 params: cusolverDnParams_t,
4661 jobz: cusolverEigMode_t,
4662 uplo: cublasFillMode_t,
4663 n: i64,
4664 dataTypeA: cudaDataType,
4665 A: *const ::core::ffi::c_void,
4666 lda: i64,
4667 dataTypeW: cudaDataType,
4668 W: *const ::core::ffi::c_void,
4669 computeType: cudaDataType,
4670 workspaceInBytesOnDevice: *mut usize,
4671 workspaceInBytesOnHost: *mut usize,
4672 batchSize: i64,
4673 ) -> cusolverStatus_t;
4674 pub fn cusolverDnXsyevd(
4675 handle: cusolverDnHandle_t,
4676 params: cusolverDnParams_t,
4677 jobz: cusolverEigMode_t,
4678 uplo: cublasFillMode_t,
4679 n: i64,
4680 dataTypeA: cudaDataType,
4681 A: *mut ::core::ffi::c_void,
4682 lda: i64,
4683 dataTypeW: cudaDataType,
4684 W: *mut ::core::ffi::c_void,
4685 computeType: cudaDataType,
4686 bufferOnDevice: *mut ::core::ffi::c_void,
4687 workspaceInBytesOnDevice: usize,
4688 bufferOnHost: *mut ::core::ffi::c_void,
4689 workspaceInBytesOnHost: usize,
4690 info: *mut ::core::ffi::c_int,
4691 ) -> cusolverStatus_t;
4692 pub fn cusolverDnXsyevd_bufferSize(
4693 handle: cusolverDnHandle_t,
4694 params: cusolverDnParams_t,
4695 jobz: cusolverEigMode_t,
4696 uplo: cublasFillMode_t,
4697 n: i64,
4698 dataTypeA: cudaDataType,
4699 A: *const ::core::ffi::c_void,
4700 lda: i64,
4701 dataTypeW: cudaDataType,
4702 W: *const ::core::ffi::c_void,
4703 computeType: cudaDataType,
4704 workspaceInBytesOnDevice: *mut usize,
4705 workspaceInBytesOnHost: *mut usize,
4706 ) -> cusolverStatus_t;
4707 pub fn cusolverDnXsyevdx(
4708 handle: cusolverDnHandle_t,
4709 params: cusolverDnParams_t,
4710 jobz: cusolverEigMode_t,
4711 range: cusolverEigRange_t,
4712 uplo: cublasFillMode_t,
4713 n: i64,
4714 dataTypeA: cudaDataType,
4715 A: *mut ::core::ffi::c_void,
4716 lda: i64,
4717 vl: *mut ::core::ffi::c_void,
4718 vu: *mut ::core::ffi::c_void,
4719 il: i64,
4720 iu: i64,
4721 meig64: *mut i64,
4722 dataTypeW: cudaDataType,
4723 W: *mut ::core::ffi::c_void,
4724 computeType: cudaDataType,
4725 bufferOnDevice: *mut ::core::ffi::c_void,
4726 workspaceInBytesOnDevice: usize,
4727 bufferOnHost: *mut ::core::ffi::c_void,
4728 workspaceInBytesOnHost: usize,
4729 info: *mut ::core::ffi::c_int,
4730 ) -> cusolverStatus_t;
4731 pub fn cusolverDnXsyevdx_bufferSize(
4732 handle: cusolverDnHandle_t,
4733 params: cusolverDnParams_t,
4734 jobz: cusolverEigMode_t,
4735 range: cusolverEigRange_t,
4736 uplo: cublasFillMode_t,
4737 n: i64,
4738 dataTypeA: cudaDataType,
4739 A: *const ::core::ffi::c_void,
4740 lda: i64,
4741 vl: *mut ::core::ffi::c_void,
4742 vu: *mut ::core::ffi::c_void,
4743 il: i64,
4744 iu: i64,
4745 h_meig: *mut i64,
4746 dataTypeW: cudaDataType,
4747 W: *const ::core::ffi::c_void,
4748 computeType: cudaDataType,
4749 workspaceInBytesOnDevice: *mut usize,
4750 workspaceInBytesOnHost: *mut usize,
4751 ) -> cusolverStatus_t;
4752 pub fn cusolverDnXsyevjGetResidual(
4753 handle: cusolverDnHandle_t,
4754 info: syevjInfo_t,
4755 residual: *mut f64,
4756 ) -> cusolverStatus_t;
4757 pub fn cusolverDnXsyevjGetSweeps(
4758 handle: cusolverDnHandle_t,
4759 info: syevjInfo_t,
4760 executed_sweeps: *mut ::core::ffi::c_int,
4761 ) -> cusolverStatus_t;
4762 pub fn cusolverDnXsyevjSetMaxSweeps(
4763 info: syevjInfo_t,
4764 max_sweeps: ::core::ffi::c_int,
4765 ) -> cusolverStatus_t;
4766 pub fn cusolverDnXsyevjSetSortEig(
4767 info: syevjInfo_t,
4768 sort_eig: ::core::ffi::c_int,
4769 ) -> cusolverStatus_t;
4770 pub fn cusolverDnXsyevjSetTolerance(info: syevjInfo_t, tolerance: f64) -> cusolverStatus_t;
4771 pub fn cusolverDnXsytrs(
4772 handle: cusolverDnHandle_t,
4773 uplo: cublasFillMode_t,
4774 n: i64,
4775 nrhs: i64,
4776 dataTypeA: cudaDataType,
4777 A: *const ::core::ffi::c_void,
4778 lda: i64,
4779 ipiv: *const i64,
4780 dataTypeB: cudaDataType,
4781 B: *mut ::core::ffi::c_void,
4782 ldb: i64,
4783 bufferOnDevice: *mut ::core::ffi::c_void,
4784 workspaceInBytesOnDevice: usize,
4785 bufferOnHost: *mut ::core::ffi::c_void,
4786 workspaceInBytesOnHost: usize,
4787 info: *mut ::core::ffi::c_int,
4788 ) -> cusolverStatus_t;
4789 pub fn cusolverDnXsytrs_bufferSize(
4790 handle: cusolverDnHandle_t,
4791 uplo: cublasFillMode_t,
4792 n: i64,
4793 nrhs: i64,
4794 dataTypeA: cudaDataType,
4795 A: *const ::core::ffi::c_void,
4796 lda: i64,
4797 ipiv: *const i64,
4798 dataTypeB: cudaDataType,
4799 B: *mut ::core::ffi::c_void,
4800 ldb: i64,
4801 workspaceInBytesOnDevice: *mut usize,
4802 workspaceInBytesOnHost: *mut usize,
4803 ) -> cusolverStatus_t;
4804 pub fn cusolverDnXtrtri(
4805 handle: cusolverDnHandle_t,
4806 uplo: cublasFillMode_t,
4807 diag: cublasDiagType_t,
4808 n: i64,
4809 dataTypeA: cudaDataType,
4810 A: *mut ::core::ffi::c_void,
4811 lda: i64,
4812 bufferOnDevice: *mut ::core::ffi::c_void,
4813 workspaceInBytesOnDevice: usize,
4814 bufferOnHost: *mut ::core::ffi::c_void,
4815 workspaceInBytesOnHost: usize,
4816 devInfo: *mut ::core::ffi::c_int,
4817 ) -> cusolverStatus_t;
4818 pub fn cusolverDnXtrtri_bufferSize(
4819 handle: cusolverDnHandle_t,
4820 uplo: cublasFillMode_t,
4821 diag: cublasDiagType_t,
4822 n: i64,
4823 dataTypeA: cudaDataType,
4824 A: *mut ::core::ffi::c_void,
4825 lda: i64,
4826 workspaceInBytesOnDevice: *mut usize,
4827 workspaceInBytesOnHost: *mut usize,
4828 ) -> cusolverStatus_t;
4829 pub fn cusolverDnZCgels(
4830 handle: cusolverDnHandle_t,
4831 m: cusolver_int_t,
4832 n: cusolver_int_t,
4833 nrhs: cusolver_int_t,
4834 dA: *mut cuDoubleComplex,
4835 ldda: cusolver_int_t,
4836 dB: *mut cuDoubleComplex,
4837 lddb: cusolver_int_t,
4838 dX: *mut cuDoubleComplex,
4839 lddx: cusolver_int_t,
4840 dWorkspace: *mut ::core::ffi::c_void,
4841 lwork_bytes: usize,
4842 iter: *mut cusolver_int_t,
4843 d_info: *mut cusolver_int_t,
4844 ) -> cusolverStatus_t;
4845 pub fn cusolverDnZCgels_bufferSize(
4846 handle: cusolverDnHandle_t,
4847 m: cusolver_int_t,
4848 n: cusolver_int_t,
4849 nrhs: cusolver_int_t,
4850 dA: *mut cuDoubleComplex,
4851 ldda: cusolver_int_t,
4852 dB: *mut cuDoubleComplex,
4853 lddb: cusolver_int_t,
4854 dX: *mut cuDoubleComplex,
4855 lddx: cusolver_int_t,
4856 dWorkspace: *mut ::core::ffi::c_void,
4857 lwork_bytes: *mut usize,
4858 ) -> cusolverStatus_t;
4859 pub fn cusolverDnZCgesv(
4860 handle: cusolverDnHandle_t,
4861 n: cusolver_int_t,
4862 nrhs: cusolver_int_t,
4863 dA: *mut cuDoubleComplex,
4864 ldda: cusolver_int_t,
4865 dipiv: *mut cusolver_int_t,
4866 dB: *mut cuDoubleComplex,
4867 lddb: cusolver_int_t,
4868 dX: *mut cuDoubleComplex,
4869 lddx: cusolver_int_t,
4870 dWorkspace: *mut ::core::ffi::c_void,
4871 lwork_bytes: usize,
4872 iter: *mut cusolver_int_t,
4873 d_info: *mut cusolver_int_t,
4874 ) -> cusolverStatus_t;
4875 pub fn cusolverDnZCgesv_bufferSize(
4876 handle: cusolverDnHandle_t,
4877 n: cusolver_int_t,
4878 nrhs: cusolver_int_t,
4879 dA: *mut cuDoubleComplex,
4880 ldda: cusolver_int_t,
4881 dipiv: *mut cusolver_int_t,
4882 dB: *mut cuDoubleComplex,
4883 lddb: cusolver_int_t,
4884 dX: *mut cuDoubleComplex,
4885 lddx: cusolver_int_t,
4886 dWorkspace: *mut ::core::ffi::c_void,
4887 lwork_bytes: *mut usize,
4888 ) -> cusolverStatus_t;
4889 pub fn cusolverDnZEgels(
4890 handle: cusolverDnHandle_t,
4891 m: cusolver_int_t,
4892 n: cusolver_int_t,
4893 nrhs: cusolver_int_t,
4894 dA: *mut cuDoubleComplex,
4895 ldda: cusolver_int_t,
4896 dB: *mut cuDoubleComplex,
4897 lddb: cusolver_int_t,
4898 dX: *mut cuDoubleComplex,
4899 lddx: cusolver_int_t,
4900 dWorkspace: *mut ::core::ffi::c_void,
4901 lwork_bytes: usize,
4902 iter: *mut cusolver_int_t,
4903 d_info: *mut cusolver_int_t,
4904 ) -> cusolverStatus_t;
4905 pub fn cusolverDnZEgels_bufferSize(
4906 handle: cusolverDnHandle_t,
4907 m: cusolver_int_t,
4908 n: cusolver_int_t,
4909 nrhs: cusolver_int_t,
4910 dA: *mut cuDoubleComplex,
4911 ldda: cusolver_int_t,
4912 dB: *mut cuDoubleComplex,
4913 lddb: cusolver_int_t,
4914 dX: *mut cuDoubleComplex,
4915 lddx: cusolver_int_t,
4916 dWorkspace: *mut ::core::ffi::c_void,
4917 lwork_bytes: *mut usize,
4918 ) -> cusolverStatus_t;
4919 pub fn cusolverDnZEgesv(
4920 handle: cusolverDnHandle_t,
4921 n: cusolver_int_t,
4922 nrhs: cusolver_int_t,
4923 dA: *mut cuDoubleComplex,
4924 ldda: cusolver_int_t,
4925 dipiv: *mut cusolver_int_t,
4926 dB: *mut cuDoubleComplex,
4927 lddb: cusolver_int_t,
4928 dX: *mut cuDoubleComplex,
4929 lddx: cusolver_int_t,
4930 dWorkspace: *mut ::core::ffi::c_void,
4931 lwork_bytes: usize,
4932 iter: *mut cusolver_int_t,
4933 d_info: *mut cusolver_int_t,
4934 ) -> cusolverStatus_t;
4935 pub fn cusolverDnZEgesv_bufferSize(
4936 handle: cusolverDnHandle_t,
4937 n: cusolver_int_t,
4938 nrhs: cusolver_int_t,
4939 dA: *mut cuDoubleComplex,
4940 ldda: cusolver_int_t,
4941 dipiv: *mut cusolver_int_t,
4942 dB: *mut cuDoubleComplex,
4943 lddb: cusolver_int_t,
4944 dX: *mut cuDoubleComplex,
4945 lddx: cusolver_int_t,
4946 dWorkspace: *mut ::core::ffi::c_void,
4947 lwork_bytes: *mut usize,
4948 ) -> cusolverStatus_t;
4949 pub fn cusolverDnZKgels(
4950 handle: cusolverDnHandle_t,
4951 m: cusolver_int_t,
4952 n: cusolver_int_t,
4953 nrhs: cusolver_int_t,
4954 dA: *mut cuDoubleComplex,
4955 ldda: cusolver_int_t,
4956 dB: *mut cuDoubleComplex,
4957 lddb: cusolver_int_t,
4958 dX: *mut cuDoubleComplex,
4959 lddx: cusolver_int_t,
4960 dWorkspace: *mut ::core::ffi::c_void,
4961 lwork_bytes: usize,
4962 iter: *mut cusolver_int_t,
4963 d_info: *mut cusolver_int_t,
4964 ) -> cusolverStatus_t;
4965 pub fn cusolverDnZKgels_bufferSize(
4966 handle: cusolverDnHandle_t,
4967 m: cusolver_int_t,
4968 n: cusolver_int_t,
4969 nrhs: cusolver_int_t,
4970 dA: *mut cuDoubleComplex,
4971 ldda: cusolver_int_t,
4972 dB: *mut cuDoubleComplex,
4973 lddb: cusolver_int_t,
4974 dX: *mut cuDoubleComplex,
4975 lddx: cusolver_int_t,
4976 dWorkspace: *mut ::core::ffi::c_void,
4977 lwork_bytes: *mut usize,
4978 ) -> cusolverStatus_t;
4979 pub fn cusolverDnZKgesv(
4980 handle: cusolverDnHandle_t,
4981 n: cusolver_int_t,
4982 nrhs: cusolver_int_t,
4983 dA: *mut cuDoubleComplex,
4984 ldda: cusolver_int_t,
4985 dipiv: *mut cusolver_int_t,
4986 dB: *mut cuDoubleComplex,
4987 lddb: cusolver_int_t,
4988 dX: *mut cuDoubleComplex,
4989 lddx: cusolver_int_t,
4990 dWorkspace: *mut ::core::ffi::c_void,
4991 lwork_bytes: usize,
4992 iter: *mut cusolver_int_t,
4993 d_info: *mut cusolver_int_t,
4994 ) -> cusolverStatus_t;
4995 pub fn cusolverDnZKgesv_bufferSize(
4996 handle: cusolverDnHandle_t,
4997 n: cusolver_int_t,
4998 nrhs: cusolver_int_t,
4999 dA: *mut cuDoubleComplex,
5000 ldda: cusolver_int_t,
5001 dipiv: *mut cusolver_int_t,
5002 dB: *mut cuDoubleComplex,
5003 lddb: cusolver_int_t,
5004 dX: *mut cuDoubleComplex,
5005 lddx: cusolver_int_t,
5006 dWorkspace: *mut ::core::ffi::c_void,
5007 lwork_bytes: *mut usize,
5008 ) -> cusolverStatus_t;
5009 pub fn cusolverDnZYgels(
5010 handle: cusolverDnHandle_t,
5011 m: cusolver_int_t,
5012 n: cusolver_int_t,
5013 nrhs: cusolver_int_t,
5014 dA: *mut cuDoubleComplex,
5015 ldda: cusolver_int_t,
5016 dB: *mut cuDoubleComplex,
5017 lddb: cusolver_int_t,
5018 dX: *mut cuDoubleComplex,
5019 lddx: cusolver_int_t,
5020 dWorkspace: *mut ::core::ffi::c_void,
5021 lwork_bytes: usize,
5022 iter: *mut cusolver_int_t,
5023 d_info: *mut cusolver_int_t,
5024 ) -> cusolverStatus_t;
5025 pub fn cusolverDnZYgels_bufferSize(
5026 handle: cusolverDnHandle_t,
5027 m: cusolver_int_t,
5028 n: cusolver_int_t,
5029 nrhs: cusolver_int_t,
5030 dA: *mut cuDoubleComplex,
5031 ldda: cusolver_int_t,
5032 dB: *mut cuDoubleComplex,
5033 lddb: cusolver_int_t,
5034 dX: *mut cuDoubleComplex,
5035 lddx: cusolver_int_t,
5036 dWorkspace: *mut ::core::ffi::c_void,
5037 lwork_bytes: *mut usize,
5038 ) -> cusolverStatus_t;
5039 pub fn cusolverDnZYgesv(
5040 handle: cusolverDnHandle_t,
5041 n: cusolver_int_t,
5042 nrhs: cusolver_int_t,
5043 dA: *mut cuDoubleComplex,
5044 ldda: cusolver_int_t,
5045 dipiv: *mut cusolver_int_t,
5046 dB: *mut cuDoubleComplex,
5047 lddb: cusolver_int_t,
5048 dX: *mut cuDoubleComplex,
5049 lddx: cusolver_int_t,
5050 dWorkspace: *mut ::core::ffi::c_void,
5051 lwork_bytes: usize,
5052 iter: *mut cusolver_int_t,
5053 d_info: *mut cusolver_int_t,
5054 ) -> cusolverStatus_t;
5055 pub fn cusolverDnZYgesv_bufferSize(
5056 handle: cusolverDnHandle_t,
5057 n: cusolver_int_t,
5058 nrhs: cusolver_int_t,
5059 dA: *mut cuDoubleComplex,
5060 ldda: cusolver_int_t,
5061 dipiv: *mut cusolver_int_t,
5062 dB: *mut cuDoubleComplex,
5063 lddb: cusolver_int_t,
5064 dX: *mut cuDoubleComplex,
5065 lddx: cusolver_int_t,
5066 dWorkspace: *mut ::core::ffi::c_void,
5067 lwork_bytes: *mut usize,
5068 ) -> cusolverStatus_t;
5069 pub fn cusolverDnZZgels(
5070 handle: cusolverDnHandle_t,
5071 m: cusolver_int_t,
5072 n: cusolver_int_t,
5073 nrhs: cusolver_int_t,
5074 dA: *mut cuDoubleComplex,
5075 ldda: cusolver_int_t,
5076 dB: *mut cuDoubleComplex,
5077 lddb: cusolver_int_t,
5078 dX: *mut cuDoubleComplex,
5079 lddx: cusolver_int_t,
5080 dWorkspace: *mut ::core::ffi::c_void,
5081 lwork_bytes: usize,
5082 iter: *mut cusolver_int_t,
5083 d_info: *mut cusolver_int_t,
5084 ) -> cusolverStatus_t;
5085 pub fn cusolverDnZZgels_bufferSize(
5086 handle: cusolverDnHandle_t,
5087 m: cusolver_int_t,
5088 n: cusolver_int_t,
5089 nrhs: cusolver_int_t,
5090 dA: *mut cuDoubleComplex,
5091 ldda: cusolver_int_t,
5092 dB: *mut cuDoubleComplex,
5093 lddb: cusolver_int_t,
5094 dX: *mut cuDoubleComplex,
5095 lddx: cusolver_int_t,
5096 dWorkspace: *mut ::core::ffi::c_void,
5097 lwork_bytes: *mut usize,
5098 ) -> cusolverStatus_t;
5099 pub fn cusolverDnZZgesv(
5100 handle: cusolverDnHandle_t,
5101 n: cusolver_int_t,
5102 nrhs: cusolver_int_t,
5103 dA: *mut cuDoubleComplex,
5104 ldda: cusolver_int_t,
5105 dipiv: *mut cusolver_int_t,
5106 dB: *mut cuDoubleComplex,
5107 lddb: cusolver_int_t,
5108 dX: *mut cuDoubleComplex,
5109 lddx: cusolver_int_t,
5110 dWorkspace: *mut ::core::ffi::c_void,
5111 lwork_bytes: usize,
5112 iter: *mut cusolver_int_t,
5113 d_info: *mut cusolver_int_t,
5114 ) -> cusolverStatus_t;
5115 pub fn cusolverDnZZgesv_bufferSize(
5116 handle: cusolverDnHandle_t,
5117 n: cusolver_int_t,
5118 nrhs: cusolver_int_t,
5119 dA: *mut cuDoubleComplex,
5120 ldda: cusolver_int_t,
5121 dipiv: *mut cusolver_int_t,
5122 dB: *mut cuDoubleComplex,
5123 lddb: cusolver_int_t,
5124 dX: *mut cuDoubleComplex,
5125 lddx: cusolver_int_t,
5126 dWorkspace: *mut ::core::ffi::c_void,
5127 lwork_bytes: *mut usize,
5128 ) -> cusolverStatus_t;
5129 pub fn cusolverDnZgebrd(
5130 handle: cusolverDnHandle_t,
5131 m: ::core::ffi::c_int,
5132 n: ::core::ffi::c_int,
5133 A: *mut cuDoubleComplex,
5134 lda: ::core::ffi::c_int,
5135 D: *mut f64,
5136 E: *mut f64,
5137 TAUQ: *mut cuDoubleComplex,
5138 TAUP: *mut cuDoubleComplex,
5139 Work: *mut cuDoubleComplex,
5140 Lwork: ::core::ffi::c_int,
5141 devInfo: *mut ::core::ffi::c_int,
5142 ) -> cusolverStatus_t;
5143 pub fn cusolverDnZgebrd_bufferSize(
5144 handle: cusolverDnHandle_t,
5145 m: ::core::ffi::c_int,
5146 n: ::core::ffi::c_int,
5147 Lwork: *mut ::core::ffi::c_int,
5148 ) -> cusolverStatus_t;
5149 pub fn cusolverDnZgeqrf(
5150 handle: cusolverDnHandle_t,
5151 m: ::core::ffi::c_int,
5152 n: ::core::ffi::c_int,
5153 A: *mut cuDoubleComplex,
5154 lda: ::core::ffi::c_int,
5155 TAU: *mut cuDoubleComplex,
5156 Workspace: *mut cuDoubleComplex,
5157 Lwork: ::core::ffi::c_int,
5158 devInfo: *mut ::core::ffi::c_int,
5159 ) -> cusolverStatus_t;
5160 pub fn cusolverDnZgeqrf_bufferSize(
5161 handle: cusolverDnHandle_t,
5162 m: ::core::ffi::c_int,
5163 n: ::core::ffi::c_int,
5164 A: *mut cuDoubleComplex,
5165 lda: ::core::ffi::c_int,
5166 lwork: *mut ::core::ffi::c_int,
5167 ) -> cusolverStatus_t;
5168 pub fn cusolverDnZgesvd(
5169 handle: cusolverDnHandle_t,
5170 jobu: ::core::ffi::c_schar,
5171 jobvt: ::core::ffi::c_schar,
5172 m: ::core::ffi::c_int,
5173 n: ::core::ffi::c_int,
5174 A: *mut cuDoubleComplex,
5175 lda: ::core::ffi::c_int,
5176 S: *mut f64,
5177 U: *mut cuDoubleComplex,
5178 ldu: ::core::ffi::c_int,
5179 VT: *mut cuDoubleComplex,
5180 ldvt: ::core::ffi::c_int,
5181 work: *mut cuDoubleComplex,
5182 lwork: ::core::ffi::c_int,
5183 rwork: *mut f64,
5184 info: *mut ::core::ffi::c_int,
5185 ) -> cusolverStatus_t;
5186 pub fn cusolverDnZgesvd_bufferSize(
5187 handle: cusolverDnHandle_t,
5188 m: ::core::ffi::c_int,
5189 n: ::core::ffi::c_int,
5190 lwork: *mut ::core::ffi::c_int,
5191 ) -> cusolverStatus_t;
5192 pub fn cusolverDnZgesvdaStridedBatched(
5193 handle: cusolverDnHandle_t,
5194 jobz: cusolverEigMode_t,
5195 rank: ::core::ffi::c_int,
5196 m: ::core::ffi::c_int,
5197 n: ::core::ffi::c_int,
5198 d_A: *const cuDoubleComplex,
5199 lda: ::core::ffi::c_int,
5200 strideA: ::core::ffi::c_longlong,
5201 d_S: *mut f64,
5202 strideS: ::core::ffi::c_longlong,
5203 d_U: *mut cuDoubleComplex,
5204 ldu: ::core::ffi::c_int,
5205 strideU: ::core::ffi::c_longlong,
5206 d_V: *mut cuDoubleComplex,
5207 ldv: ::core::ffi::c_int,
5208 strideV: ::core::ffi::c_longlong,
5209 d_work: *mut cuDoubleComplex,
5210 lwork: ::core::ffi::c_int,
5211 d_info: *mut ::core::ffi::c_int,
5212 h_R_nrmF: *mut f64,
5213 batchSize: ::core::ffi::c_int,
5214 ) -> cusolverStatus_t;
5215 pub fn cusolverDnZgesvdaStridedBatched_bufferSize(
5216 handle: cusolverDnHandle_t,
5217 jobz: cusolverEigMode_t,
5218 rank: ::core::ffi::c_int,
5219 m: ::core::ffi::c_int,
5220 n: ::core::ffi::c_int,
5221 d_A: *const cuDoubleComplex,
5222 lda: ::core::ffi::c_int,
5223 strideA: ::core::ffi::c_longlong,
5224 d_S: *const f64,
5225 strideS: ::core::ffi::c_longlong,
5226 d_U: *const cuDoubleComplex,
5227 ldu: ::core::ffi::c_int,
5228 strideU: ::core::ffi::c_longlong,
5229 d_V: *const cuDoubleComplex,
5230 ldv: ::core::ffi::c_int,
5231 strideV: ::core::ffi::c_longlong,
5232 lwork: *mut ::core::ffi::c_int,
5233 batchSize: ::core::ffi::c_int,
5234 ) -> cusolverStatus_t;
5235 pub fn cusolverDnZgesvdj(
5236 handle: cusolverDnHandle_t,
5237 jobz: cusolverEigMode_t,
5238 econ: ::core::ffi::c_int,
5239 m: ::core::ffi::c_int,
5240 n: ::core::ffi::c_int,
5241 A: *mut cuDoubleComplex,
5242 lda: ::core::ffi::c_int,
5243 S: *mut f64,
5244 U: *mut cuDoubleComplex,
5245 ldu: ::core::ffi::c_int,
5246 V: *mut cuDoubleComplex,
5247 ldv: ::core::ffi::c_int,
5248 work: *mut cuDoubleComplex,
5249 lwork: ::core::ffi::c_int,
5250 info: *mut ::core::ffi::c_int,
5251 params: gesvdjInfo_t,
5252 ) -> cusolverStatus_t;
5253 pub fn cusolverDnZgesvdjBatched(
5254 handle: cusolverDnHandle_t,
5255 jobz: cusolverEigMode_t,
5256 m: ::core::ffi::c_int,
5257 n: ::core::ffi::c_int,
5258 A: *mut cuDoubleComplex,
5259 lda: ::core::ffi::c_int,
5260 S: *mut f64,
5261 U: *mut cuDoubleComplex,
5262 ldu: ::core::ffi::c_int,
5263 V: *mut cuDoubleComplex,
5264 ldv: ::core::ffi::c_int,
5265 work: *mut cuDoubleComplex,
5266 lwork: ::core::ffi::c_int,
5267 info: *mut ::core::ffi::c_int,
5268 params: gesvdjInfo_t,
5269 batchSize: ::core::ffi::c_int,
5270 ) -> cusolverStatus_t;
5271 pub fn cusolverDnZgesvdjBatched_bufferSize(
5272 handle: cusolverDnHandle_t,
5273 jobz: cusolverEigMode_t,
5274 m: ::core::ffi::c_int,
5275 n: ::core::ffi::c_int,
5276 A: *const cuDoubleComplex,
5277 lda: ::core::ffi::c_int,
5278 S: *const f64,
5279 U: *const cuDoubleComplex,
5280 ldu: ::core::ffi::c_int,
5281 V: *const cuDoubleComplex,
5282 ldv: ::core::ffi::c_int,
5283 lwork: *mut ::core::ffi::c_int,
5284 params: gesvdjInfo_t,
5285 batchSize: ::core::ffi::c_int,
5286 ) -> cusolverStatus_t;
5287 pub fn cusolverDnZgesvdj_bufferSize(
5288 handle: cusolverDnHandle_t,
5289 jobz: cusolverEigMode_t,
5290 econ: ::core::ffi::c_int,
5291 m: ::core::ffi::c_int,
5292 n: ::core::ffi::c_int,
5293 A: *const cuDoubleComplex,
5294 lda: ::core::ffi::c_int,
5295 S: *const f64,
5296 U: *const cuDoubleComplex,
5297 ldu: ::core::ffi::c_int,
5298 V: *const cuDoubleComplex,
5299 ldv: ::core::ffi::c_int,
5300 lwork: *mut ::core::ffi::c_int,
5301 params: gesvdjInfo_t,
5302 ) -> cusolverStatus_t;
5303 pub fn cusolverDnZgetrf(
5304 handle: cusolverDnHandle_t,
5305 m: ::core::ffi::c_int,
5306 n: ::core::ffi::c_int,
5307 A: *mut cuDoubleComplex,
5308 lda: ::core::ffi::c_int,
5309 Workspace: *mut cuDoubleComplex,
5310 devIpiv: *mut ::core::ffi::c_int,
5311 devInfo: *mut ::core::ffi::c_int,
5312 ) -> cusolverStatus_t;
5313 pub fn cusolverDnZgetrf_bufferSize(
5314 handle: cusolverDnHandle_t,
5315 m: ::core::ffi::c_int,
5316 n: ::core::ffi::c_int,
5317 A: *mut cuDoubleComplex,
5318 lda: ::core::ffi::c_int,
5319 Lwork: *mut ::core::ffi::c_int,
5320 ) -> cusolverStatus_t;
5321 pub fn cusolverDnZgetrs(
5322 handle: cusolverDnHandle_t,
5323 trans: cublasOperation_t,
5324 n: ::core::ffi::c_int,
5325 nrhs: ::core::ffi::c_int,
5326 A: *const cuDoubleComplex,
5327 lda: ::core::ffi::c_int,
5328 devIpiv: *const ::core::ffi::c_int,
5329 B: *mut cuDoubleComplex,
5330 ldb: ::core::ffi::c_int,
5331 devInfo: *mut ::core::ffi::c_int,
5332 ) -> cusolverStatus_t;
5333 pub fn cusolverDnZheevd(
5334 handle: cusolverDnHandle_t,
5335 jobz: cusolverEigMode_t,
5336 uplo: cublasFillMode_t,
5337 n: ::core::ffi::c_int,
5338 A: *mut cuDoubleComplex,
5339 lda: ::core::ffi::c_int,
5340 W: *mut f64,
5341 work: *mut cuDoubleComplex,
5342 lwork: ::core::ffi::c_int,
5343 info: *mut ::core::ffi::c_int,
5344 ) -> cusolverStatus_t;
5345 pub fn cusolverDnZheevd_bufferSize(
5346 handle: cusolverDnHandle_t,
5347 jobz: cusolverEigMode_t,
5348 uplo: cublasFillMode_t,
5349 n: ::core::ffi::c_int,
5350 A: *const cuDoubleComplex,
5351 lda: ::core::ffi::c_int,
5352 W: *const f64,
5353 lwork: *mut ::core::ffi::c_int,
5354 ) -> cusolverStatus_t;
5355 pub fn cusolverDnZheevdx(
5356 handle: cusolverDnHandle_t,
5357 jobz: cusolverEigMode_t,
5358 range: cusolverEigRange_t,
5359 uplo: cublasFillMode_t,
5360 n: ::core::ffi::c_int,
5361 A: *mut cuDoubleComplex,
5362 lda: ::core::ffi::c_int,
5363 vl: f64,
5364 vu: f64,
5365 il: ::core::ffi::c_int,
5366 iu: ::core::ffi::c_int,
5367 meig: *mut ::core::ffi::c_int,
5368 W: *mut f64,
5369 work: *mut cuDoubleComplex,
5370 lwork: ::core::ffi::c_int,
5371 info: *mut ::core::ffi::c_int,
5372 ) -> cusolverStatus_t;
5373 pub fn cusolverDnZheevdx_bufferSize(
5374 handle: cusolverDnHandle_t,
5375 jobz: cusolverEigMode_t,
5376 range: cusolverEigRange_t,
5377 uplo: cublasFillMode_t,
5378 n: ::core::ffi::c_int,
5379 A: *const cuDoubleComplex,
5380 lda: ::core::ffi::c_int,
5381 vl: f64,
5382 vu: f64,
5383 il: ::core::ffi::c_int,
5384 iu: ::core::ffi::c_int,
5385 meig: *mut ::core::ffi::c_int,
5386 W: *const f64,
5387 lwork: *mut ::core::ffi::c_int,
5388 ) -> cusolverStatus_t;
5389 pub fn cusolverDnZheevj(
5390 handle: cusolverDnHandle_t,
5391 jobz: cusolverEigMode_t,
5392 uplo: cublasFillMode_t,
5393 n: ::core::ffi::c_int,
5394 A: *mut cuDoubleComplex,
5395 lda: ::core::ffi::c_int,
5396 W: *mut f64,
5397 work: *mut cuDoubleComplex,
5398 lwork: ::core::ffi::c_int,
5399 info: *mut ::core::ffi::c_int,
5400 params: syevjInfo_t,
5401 ) -> cusolverStatus_t;
5402 pub fn cusolverDnZheevjBatched(
5403 handle: cusolverDnHandle_t,
5404 jobz: cusolverEigMode_t,
5405 uplo: cublasFillMode_t,
5406 n: ::core::ffi::c_int,
5407 A: *mut cuDoubleComplex,
5408 lda: ::core::ffi::c_int,
5409 W: *mut f64,
5410 work: *mut cuDoubleComplex,
5411 lwork: ::core::ffi::c_int,
5412 info: *mut ::core::ffi::c_int,
5413 params: syevjInfo_t,
5414 batchSize: ::core::ffi::c_int,
5415 ) -> cusolverStatus_t;
5416 pub fn cusolverDnZheevjBatched_bufferSize(
5417 handle: cusolverDnHandle_t,
5418 jobz: cusolverEigMode_t,
5419 uplo: cublasFillMode_t,
5420 n: ::core::ffi::c_int,
5421 A: *const cuDoubleComplex,
5422 lda: ::core::ffi::c_int,
5423 W: *const f64,
5424 lwork: *mut ::core::ffi::c_int,
5425 params: syevjInfo_t,
5426 batchSize: ::core::ffi::c_int,
5427 ) -> cusolverStatus_t;
5428 pub fn cusolverDnZheevj_bufferSize(
5429 handle: cusolverDnHandle_t,
5430 jobz: cusolverEigMode_t,
5431 uplo: cublasFillMode_t,
5432 n: ::core::ffi::c_int,
5433 A: *const cuDoubleComplex,
5434 lda: ::core::ffi::c_int,
5435 W: *const f64,
5436 lwork: *mut ::core::ffi::c_int,
5437 params: syevjInfo_t,
5438 ) -> cusolverStatus_t;
5439 pub fn cusolverDnZhegvd(
5440 handle: cusolverDnHandle_t,
5441 itype: cusolverEigType_t,
5442 jobz: cusolverEigMode_t,
5443 uplo: cublasFillMode_t,
5444 n: ::core::ffi::c_int,
5445 A: *mut cuDoubleComplex,
5446 lda: ::core::ffi::c_int,
5447 B: *mut cuDoubleComplex,
5448 ldb: ::core::ffi::c_int,
5449 W: *mut f64,
5450 work: *mut cuDoubleComplex,
5451 lwork: ::core::ffi::c_int,
5452 info: *mut ::core::ffi::c_int,
5453 ) -> cusolverStatus_t;
5454 pub fn cusolverDnZhegvd_bufferSize(
5455 handle: cusolverDnHandle_t,
5456 itype: cusolverEigType_t,
5457 jobz: cusolverEigMode_t,
5458 uplo: cublasFillMode_t,
5459 n: ::core::ffi::c_int,
5460 A: *const cuDoubleComplex,
5461 lda: ::core::ffi::c_int,
5462 B: *const cuDoubleComplex,
5463 ldb: ::core::ffi::c_int,
5464 W: *const f64,
5465 lwork: *mut ::core::ffi::c_int,
5466 ) -> cusolverStatus_t;
5467 pub fn cusolverDnZhegvdx(
5468 handle: cusolverDnHandle_t,
5469 itype: cusolverEigType_t,
5470 jobz: cusolverEigMode_t,
5471 range: cusolverEigRange_t,
5472 uplo: cublasFillMode_t,
5473 n: ::core::ffi::c_int,
5474 A: *mut cuDoubleComplex,
5475 lda: ::core::ffi::c_int,
5476 B: *mut cuDoubleComplex,
5477 ldb: ::core::ffi::c_int,
5478 vl: f64,
5479 vu: f64,
5480 il: ::core::ffi::c_int,
5481 iu: ::core::ffi::c_int,
5482 meig: *mut ::core::ffi::c_int,
5483 W: *mut f64,
5484 work: *mut cuDoubleComplex,
5485 lwork: ::core::ffi::c_int,
5486 info: *mut ::core::ffi::c_int,
5487 ) -> cusolverStatus_t;
5488 pub fn cusolverDnZhegvdx_bufferSize(
5489 handle: cusolverDnHandle_t,
5490 itype: cusolverEigType_t,
5491 jobz: cusolverEigMode_t,
5492 range: cusolverEigRange_t,
5493 uplo: cublasFillMode_t,
5494 n: ::core::ffi::c_int,
5495 A: *const cuDoubleComplex,
5496 lda: ::core::ffi::c_int,
5497 B: *const cuDoubleComplex,
5498 ldb: ::core::ffi::c_int,
5499 vl: f64,
5500 vu: f64,
5501 il: ::core::ffi::c_int,
5502 iu: ::core::ffi::c_int,
5503 meig: *mut ::core::ffi::c_int,
5504 W: *const f64,
5505 lwork: *mut ::core::ffi::c_int,
5506 ) -> cusolverStatus_t;
5507 pub fn cusolverDnZhegvj(
5508 handle: cusolverDnHandle_t,
5509 itype: cusolverEigType_t,
5510 jobz: cusolverEigMode_t,
5511 uplo: cublasFillMode_t,
5512 n: ::core::ffi::c_int,
5513 A: *mut cuDoubleComplex,
5514 lda: ::core::ffi::c_int,
5515 B: *mut cuDoubleComplex,
5516 ldb: ::core::ffi::c_int,
5517 W: *mut f64,
5518 work: *mut cuDoubleComplex,
5519 lwork: ::core::ffi::c_int,
5520 info: *mut ::core::ffi::c_int,
5521 params: syevjInfo_t,
5522 ) -> cusolverStatus_t;
5523 pub fn cusolverDnZhegvj_bufferSize(
5524 handle: cusolverDnHandle_t,
5525 itype: cusolverEigType_t,
5526 jobz: cusolverEigMode_t,
5527 uplo: cublasFillMode_t,
5528 n: ::core::ffi::c_int,
5529 A: *const cuDoubleComplex,
5530 lda: ::core::ffi::c_int,
5531 B: *const cuDoubleComplex,
5532 ldb: ::core::ffi::c_int,
5533 W: *const f64,
5534 lwork: *mut ::core::ffi::c_int,
5535 params: syevjInfo_t,
5536 ) -> cusolverStatus_t;
5537 pub fn cusolverDnZhetrd(
5538 handle: cusolverDnHandle_t,
5539 uplo: cublasFillMode_t,
5540 n: ::core::ffi::c_int,
5541 A: *mut cuDoubleComplex,
5542 lda: ::core::ffi::c_int,
5543 d: *mut f64,
5544 e: *mut f64,
5545 tau: *mut cuDoubleComplex,
5546 work: *mut cuDoubleComplex,
5547 lwork: ::core::ffi::c_int,
5548 info: *mut ::core::ffi::c_int,
5549 ) -> cusolverStatus_t;
5550 pub fn cusolverDnZhetrd_bufferSize(
5551 handle: cusolverDnHandle_t,
5552 uplo: cublasFillMode_t,
5553 n: ::core::ffi::c_int,
5554 A: *const cuDoubleComplex,
5555 lda: ::core::ffi::c_int,
5556 d: *const f64,
5557 e: *const f64,
5558 tau: *const cuDoubleComplex,
5559 lwork: *mut ::core::ffi::c_int,
5560 ) -> cusolverStatus_t;
5561 pub fn cusolverDnZlaswp(
5562 handle: cusolverDnHandle_t,
5563 n: ::core::ffi::c_int,
5564 A: *mut cuDoubleComplex,
5565 lda: ::core::ffi::c_int,
5566 k1: ::core::ffi::c_int,
5567 k2: ::core::ffi::c_int,
5568 devIpiv: *const ::core::ffi::c_int,
5569 incx: ::core::ffi::c_int,
5570 ) -> cusolverStatus_t;
5571 pub fn cusolverDnZlauum(
5572 handle: cusolverDnHandle_t,
5573 uplo: cublasFillMode_t,
5574 n: ::core::ffi::c_int,
5575 A: *mut cuDoubleComplex,
5576 lda: ::core::ffi::c_int,
5577 work: *mut cuDoubleComplex,
5578 lwork: ::core::ffi::c_int,
5579 devInfo: *mut ::core::ffi::c_int,
5580 ) -> cusolverStatus_t;
5581 pub fn cusolverDnZlauum_bufferSize(
5582 handle: cusolverDnHandle_t,
5583 uplo: cublasFillMode_t,
5584 n: ::core::ffi::c_int,
5585 A: *mut cuDoubleComplex,
5586 lda: ::core::ffi::c_int,
5587 lwork: *mut ::core::ffi::c_int,
5588 ) -> cusolverStatus_t;
5589 pub fn cusolverDnZpotrf(
5590 handle: cusolverDnHandle_t,
5591 uplo: cublasFillMode_t,
5592 n: ::core::ffi::c_int,
5593 A: *mut cuDoubleComplex,
5594 lda: ::core::ffi::c_int,
5595 Workspace: *mut cuDoubleComplex,
5596 Lwork: ::core::ffi::c_int,
5597 devInfo: *mut ::core::ffi::c_int,
5598 ) -> cusolverStatus_t;
5599 pub fn cusolverDnZpotrfBatched(
5600 handle: cusolverDnHandle_t,
5601 uplo: cublasFillMode_t,
5602 n: ::core::ffi::c_int,
5603 Aarray: *mut *mut cuDoubleComplex,
5604 lda: ::core::ffi::c_int,
5605 infoArray: *mut ::core::ffi::c_int,
5606 batchSize: ::core::ffi::c_int,
5607 ) -> cusolverStatus_t;
5608 pub fn cusolverDnZpotrf_bufferSize(
5609 handle: cusolverDnHandle_t,
5610 uplo: cublasFillMode_t,
5611 n: ::core::ffi::c_int,
5612 A: *mut cuDoubleComplex,
5613 lda: ::core::ffi::c_int,
5614 Lwork: *mut ::core::ffi::c_int,
5615 ) -> cusolverStatus_t;
5616 pub fn cusolverDnZpotri(
5617 handle: cusolverDnHandle_t,
5618 uplo: cublasFillMode_t,
5619 n: ::core::ffi::c_int,
5620 A: *mut cuDoubleComplex,
5621 lda: ::core::ffi::c_int,
5622 work: *mut cuDoubleComplex,
5623 lwork: ::core::ffi::c_int,
5624 devInfo: *mut ::core::ffi::c_int,
5625 ) -> cusolverStatus_t;
5626 pub fn cusolverDnZpotri_bufferSize(
5627 handle: cusolverDnHandle_t,
5628 uplo: cublasFillMode_t,
5629 n: ::core::ffi::c_int,
5630 A: *mut cuDoubleComplex,
5631 lda: ::core::ffi::c_int,
5632 lwork: *mut ::core::ffi::c_int,
5633 ) -> cusolverStatus_t;
5634 pub fn cusolverDnZpotrs(
5635 handle: cusolverDnHandle_t,
5636 uplo: cublasFillMode_t,
5637 n: ::core::ffi::c_int,
5638 nrhs: ::core::ffi::c_int,
5639 A: *const cuDoubleComplex,
5640 lda: ::core::ffi::c_int,
5641 B: *mut cuDoubleComplex,
5642 ldb: ::core::ffi::c_int,
5643 devInfo: *mut ::core::ffi::c_int,
5644 ) -> cusolverStatus_t;
5645 pub fn cusolverDnZpotrsBatched(
5646 handle: cusolverDnHandle_t,
5647 uplo: cublasFillMode_t,
5648 n: ::core::ffi::c_int,
5649 nrhs: ::core::ffi::c_int,
5650 A: *mut *mut cuDoubleComplex,
5651 lda: ::core::ffi::c_int,
5652 B: *mut *mut cuDoubleComplex,
5653 ldb: ::core::ffi::c_int,
5654 d_info: *mut ::core::ffi::c_int,
5655 batchSize: ::core::ffi::c_int,
5656 ) -> cusolverStatus_t;
5657 pub fn cusolverDnZsytrf(
5658 handle: cusolverDnHandle_t,
5659 uplo: cublasFillMode_t,
5660 n: ::core::ffi::c_int,
5661 A: *mut cuDoubleComplex,
5662 lda: ::core::ffi::c_int,
5663 ipiv: *mut ::core::ffi::c_int,
5664 work: *mut cuDoubleComplex,
5665 lwork: ::core::ffi::c_int,
5666 info: *mut ::core::ffi::c_int,
5667 ) -> cusolverStatus_t;
5668 pub fn cusolverDnZsytrf_bufferSize(
5669 handle: cusolverDnHandle_t,
5670 n: ::core::ffi::c_int,
5671 A: *mut cuDoubleComplex,
5672 lda: ::core::ffi::c_int,
5673 lwork: *mut ::core::ffi::c_int,
5674 ) -> cusolverStatus_t;
5675 pub fn cusolverDnZsytri(
5676 handle: cusolverDnHandle_t,
5677 uplo: cublasFillMode_t,
5678 n: ::core::ffi::c_int,
5679 A: *mut cuDoubleComplex,
5680 lda: ::core::ffi::c_int,
5681 ipiv: *const ::core::ffi::c_int,
5682 work: *mut cuDoubleComplex,
5683 lwork: ::core::ffi::c_int,
5684 info: *mut ::core::ffi::c_int,
5685 ) -> cusolverStatus_t;
5686 pub fn cusolverDnZsytri_bufferSize(
5687 handle: cusolverDnHandle_t,
5688 uplo: cublasFillMode_t,
5689 n: ::core::ffi::c_int,
5690 A: *mut cuDoubleComplex,
5691 lda: ::core::ffi::c_int,
5692 ipiv: *const ::core::ffi::c_int,
5693 lwork: *mut ::core::ffi::c_int,
5694 ) -> cusolverStatus_t;
5695 pub fn cusolverDnZungbr(
5696 handle: cusolverDnHandle_t,
5697 side: cublasSideMode_t,
5698 m: ::core::ffi::c_int,
5699 n: ::core::ffi::c_int,
5700 k: ::core::ffi::c_int,
5701 A: *mut cuDoubleComplex,
5702 lda: ::core::ffi::c_int,
5703 tau: *const cuDoubleComplex,
5704 work: *mut cuDoubleComplex,
5705 lwork: ::core::ffi::c_int,
5706 info: *mut ::core::ffi::c_int,
5707 ) -> cusolverStatus_t;
5708 pub fn cusolverDnZungbr_bufferSize(
5709 handle: cusolverDnHandle_t,
5710 side: cublasSideMode_t,
5711 m: ::core::ffi::c_int,
5712 n: ::core::ffi::c_int,
5713 k: ::core::ffi::c_int,
5714 A: *const cuDoubleComplex,
5715 lda: ::core::ffi::c_int,
5716 tau: *const cuDoubleComplex,
5717 lwork: *mut ::core::ffi::c_int,
5718 ) -> cusolverStatus_t;
5719 pub fn cusolverDnZungqr(
5720 handle: cusolverDnHandle_t,
5721 m: ::core::ffi::c_int,
5722 n: ::core::ffi::c_int,
5723 k: ::core::ffi::c_int,
5724 A: *mut cuDoubleComplex,
5725 lda: ::core::ffi::c_int,
5726 tau: *const cuDoubleComplex,
5727 work: *mut cuDoubleComplex,
5728 lwork: ::core::ffi::c_int,
5729 info: *mut ::core::ffi::c_int,
5730 ) -> cusolverStatus_t;
5731 pub fn cusolverDnZungqr_bufferSize(
5732 handle: cusolverDnHandle_t,
5733 m: ::core::ffi::c_int,
5734 n: ::core::ffi::c_int,
5735 k: ::core::ffi::c_int,
5736 A: *const cuDoubleComplex,
5737 lda: ::core::ffi::c_int,
5738 tau: *const cuDoubleComplex,
5739 lwork: *mut ::core::ffi::c_int,
5740 ) -> cusolverStatus_t;
5741 pub fn cusolverDnZungtr(
5742 handle: cusolverDnHandle_t,
5743 uplo: cublasFillMode_t,
5744 n: ::core::ffi::c_int,
5745 A: *mut cuDoubleComplex,
5746 lda: ::core::ffi::c_int,
5747 tau: *const cuDoubleComplex,
5748 work: *mut cuDoubleComplex,
5749 lwork: ::core::ffi::c_int,
5750 info: *mut ::core::ffi::c_int,
5751 ) -> cusolverStatus_t;
5752 pub fn cusolverDnZungtr_bufferSize(
5753 handle: cusolverDnHandle_t,
5754 uplo: cublasFillMode_t,
5755 n: ::core::ffi::c_int,
5756 A: *const cuDoubleComplex,
5757 lda: ::core::ffi::c_int,
5758 tau: *const cuDoubleComplex,
5759 lwork: *mut ::core::ffi::c_int,
5760 ) -> cusolverStatus_t;
5761 pub fn cusolverDnZunmqr(
5762 handle: cusolverDnHandle_t,
5763 side: cublasSideMode_t,
5764 trans: cublasOperation_t,
5765 m: ::core::ffi::c_int,
5766 n: ::core::ffi::c_int,
5767 k: ::core::ffi::c_int,
5768 A: *const cuDoubleComplex,
5769 lda: ::core::ffi::c_int,
5770 tau: *const cuDoubleComplex,
5771 C: *mut cuDoubleComplex,
5772 ldc: ::core::ffi::c_int,
5773 work: *mut cuDoubleComplex,
5774 lwork: ::core::ffi::c_int,
5775 devInfo: *mut ::core::ffi::c_int,
5776 ) -> cusolverStatus_t;
5777 pub fn cusolverDnZunmqr_bufferSize(
5778 handle: cusolverDnHandle_t,
5779 side: cublasSideMode_t,
5780 trans: cublasOperation_t,
5781 m: ::core::ffi::c_int,
5782 n: ::core::ffi::c_int,
5783 k: ::core::ffi::c_int,
5784 A: *const cuDoubleComplex,
5785 lda: ::core::ffi::c_int,
5786 tau: *const cuDoubleComplex,
5787 C: *const cuDoubleComplex,
5788 ldc: ::core::ffi::c_int,
5789 lwork: *mut ::core::ffi::c_int,
5790 ) -> cusolverStatus_t;
5791 pub fn cusolverDnZunmtr(
5792 handle: cusolverDnHandle_t,
5793 side: cublasSideMode_t,
5794 uplo: cublasFillMode_t,
5795 trans: cublasOperation_t,
5796 m: ::core::ffi::c_int,
5797 n: ::core::ffi::c_int,
5798 A: *mut cuDoubleComplex,
5799 lda: ::core::ffi::c_int,
5800 tau: *mut cuDoubleComplex,
5801 C: *mut cuDoubleComplex,
5802 ldc: ::core::ffi::c_int,
5803 work: *mut cuDoubleComplex,
5804 lwork: ::core::ffi::c_int,
5805 info: *mut ::core::ffi::c_int,
5806 ) -> cusolverStatus_t;
5807 pub fn cusolverDnZunmtr_bufferSize(
5808 handle: cusolverDnHandle_t,
5809 side: cublasSideMode_t,
5810 uplo: cublasFillMode_t,
5811 trans: cublasOperation_t,
5812 m: ::core::ffi::c_int,
5813 n: ::core::ffi::c_int,
5814 A: *const cuDoubleComplex,
5815 lda: ::core::ffi::c_int,
5816 tau: *const cuDoubleComplex,
5817 C: *const cuDoubleComplex,
5818 ldc: ::core::ffi::c_int,
5819 lwork: *mut ::core::ffi::c_int,
5820 ) -> cusolverStatus_t;
5821 pub fn cusolverGetProperty(
5822 type_: libraryPropertyType,
5823 value: *mut ::core::ffi::c_int,
5824 ) -> cusolverStatus_t;
5825 pub fn cusolverGetVersion(version: *mut ::core::ffi::c_int) -> cusolverStatus_t;
5826 pub fn cusolverRfAccessBundledFactorsDevice(
5827 handle: cusolverRfHandle_t,
5828 nnzM: *mut ::core::ffi::c_int,
5829 Mp: *mut *mut ::core::ffi::c_int,
5830 Mi: *mut *mut ::core::ffi::c_int,
5831 Mx: *mut *mut f64,
5832 ) -> cusolverStatus_t;
5833 pub fn cusolverRfAnalyze(handle: cusolverRfHandle_t) -> cusolverStatus_t;
5834 pub fn cusolverRfBatchAnalyze(handle: cusolverRfHandle_t) -> cusolverStatus_t;
5835 pub fn cusolverRfBatchRefactor(handle: cusolverRfHandle_t) -> cusolverStatus_t;
5836 pub fn cusolverRfBatchResetValues(
5837 batchSize: ::core::ffi::c_int,
5838 n: ::core::ffi::c_int,
5839 nnzA: ::core::ffi::c_int,
5840 csrRowPtrA: *mut ::core::ffi::c_int,
5841 csrColIndA: *mut ::core::ffi::c_int,
5842 csrValA_array: *mut *mut f64,
5843 P: *mut ::core::ffi::c_int,
5844 Q: *mut ::core::ffi::c_int,
5845 handle: cusolverRfHandle_t,
5846 ) -> cusolverStatus_t;
5847 pub fn cusolverRfBatchSetupHost(
5848 batchSize: ::core::ffi::c_int,
5849 n: ::core::ffi::c_int,
5850 nnzA: ::core::ffi::c_int,
5851 h_csrRowPtrA: *mut ::core::ffi::c_int,
5852 h_csrColIndA: *mut ::core::ffi::c_int,
5853 h_csrValA_array: *mut *mut f64,
5854 nnzL: ::core::ffi::c_int,
5855 h_csrRowPtrL: *mut ::core::ffi::c_int,
5856 h_csrColIndL: *mut ::core::ffi::c_int,
5857 h_csrValL: *mut f64,
5858 nnzU: ::core::ffi::c_int,
5859 h_csrRowPtrU: *mut ::core::ffi::c_int,
5860 h_csrColIndU: *mut ::core::ffi::c_int,
5861 h_csrValU: *mut f64,
5862 h_P: *mut ::core::ffi::c_int,
5863 h_Q: *mut ::core::ffi::c_int,
5864 handle: cusolverRfHandle_t,
5865 ) -> cusolverStatus_t;
5866 pub fn cusolverRfBatchSolve(
5867 handle: cusolverRfHandle_t,
5868 P: *mut ::core::ffi::c_int,
5869 Q: *mut ::core::ffi::c_int,
5870 nrhs: ::core::ffi::c_int,
5871 Temp: *mut f64,
5872 ldt: ::core::ffi::c_int,
5873 XF_array: *mut *mut f64,
5874 ldxf: ::core::ffi::c_int,
5875 ) -> cusolverStatus_t;
5876 pub fn cusolverRfBatchZeroPivot(
5877 handle: cusolverRfHandle_t,
5878 position: *mut ::core::ffi::c_int,
5879 ) -> cusolverStatus_t;
5880 pub fn cusolverRfCreate(handle: *mut cusolverRfHandle_t) -> cusolverStatus_t;
5881 pub fn cusolverRfDestroy(handle: cusolverRfHandle_t) -> cusolverStatus_t;
5882 pub fn cusolverRfExtractBundledFactorsHost(
5883 handle: cusolverRfHandle_t,
5884 h_nnzM: *mut ::core::ffi::c_int,
5885 h_Mp: *mut *mut ::core::ffi::c_int,
5886 h_Mi: *mut *mut ::core::ffi::c_int,
5887 h_Mx: *mut *mut f64,
5888 ) -> cusolverStatus_t;
5889 pub fn cusolverRfExtractSplitFactorsHost(
5890 handle: cusolverRfHandle_t,
5891 h_nnzL: *mut ::core::ffi::c_int,
5892 h_csrRowPtrL: *mut *mut ::core::ffi::c_int,
5893 h_csrColIndL: *mut *mut ::core::ffi::c_int,
5894 h_csrValL: *mut *mut f64,
5895 h_nnzU: *mut ::core::ffi::c_int,
5896 h_csrRowPtrU: *mut *mut ::core::ffi::c_int,
5897 h_csrColIndU: *mut *mut ::core::ffi::c_int,
5898 h_csrValU: *mut *mut f64,
5899 ) -> cusolverStatus_t;
5900 pub fn cusolverRfGetAlgs(
5901 handle: cusolverRfHandle_t,
5902 factAlg: *mut cusolverRfFactorization_t,
5903 solveAlg: *mut cusolverRfTriangularSolve_t,
5904 ) -> cusolverStatus_t;
5905 pub fn cusolverRfGetMatrixFormat(
5906 handle: cusolverRfHandle_t,
5907 format: *mut cusolverRfMatrixFormat_t,
5908 diag: *mut cusolverRfUnitDiagonal_t,
5909 ) -> cusolverStatus_t;
5910 pub fn cusolverRfGetNumericBoostReport(
5911 handle: cusolverRfHandle_t,
5912 report: *mut cusolverRfNumericBoostReport_t,
5913 ) -> cusolverStatus_t;
5914 pub fn cusolverRfGetNumericProperties(
5915 handle: cusolverRfHandle_t,
5916 zero: *mut f64,
5917 boost: *mut f64,
5918 ) -> cusolverStatus_t;
5919 pub fn cusolverRfGetResetValuesFastMode(
5920 handle: cusolverRfHandle_t,
5921 fastMode: *mut cusolverRfResetValuesFastMode_t,
5922 ) -> cusolverStatus_t;
5923 pub fn cusolverRfRefactor(handle: cusolverRfHandle_t) -> cusolverStatus_t;
5924 pub fn cusolverRfResetValues(
5925 n: ::core::ffi::c_int,
5926 nnzA: ::core::ffi::c_int,
5927 csrRowPtrA: *mut ::core::ffi::c_int,
5928 csrColIndA: *mut ::core::ffi::c_int,
5929 csrValA: *mut f64,
5930 P: *mut ::core::ffi::c_int,
5931 Q: *mut ::core::ffi::c_int,
5932 handle: cusolverRfHandle_t,
5933 ) -> cusolverStatus_t;
5934 pub fn cusolverRfSetAlgs(
5935 handle: cusolverRfHandle_t,
5936 factAlg: cusolverRfFactorization_t,
5937 solveAlg: cusolverRfTriangularSolve_t,
5938 ) -> cusolverStatus_t;
5939 pub fn cusolverRfSetMatrixFormat(
5940 handle: cusolverRfHandle_t,
5941 format: cusolverRfMatrixFormat_t,
5942 diag: cusolverRfUnitDiagonal_t,
5943 ) -> cusolverStatus_t;
5944 pub fn cusolverRfSetNumericProperties(
5945 handle: cusolverRfHandle_t,
5946 zero: f64,
5947 boost: f64,
5948 ) -> cusolverStatus_t;
5949 pub fn cusolverRfSetResetValuesFastMode(
5950 handle: cusolverRfHandle_t,
5951 fastMode: cusolverRfResetValuesFastMode_t,
5952 ) -> cusolverStatus_t;
5953 pub fn cusolverRfSetupDevice(
5954 n: ::core::ffi::c_int,
5955 nnzA: ::core::ffi::c_int,
5956 csrRowPtrA: *mut ::core::ffi::c_int,
5957 csrColIndA: *mut ::core::ffi::c_int,
5958 csrValA: *mut f64,
5959 nnzL: ::core::ffi::c_int,
5960 csrRowPtrL: *mut ::core::ffi::c_int,
5961 csrColIndL: *mut ::core::ffi::c_int,
5962 csrValL: *mut f64,
5963 nnzU: ::core::ffi::c_int,
5964 csrRowPtrU: *mut ::core::ffi::c_int,
5965 csrColIndU: *mut ::core::ffi::c_int,
5966 csrValU: *mut f64,
5967 P: *mut ::core::ffi::c_int,
5968 Q: *mut ::core::ffi::c_int,
5969 handle: cusolverRfHandle_t,
5970 ) -> cusolverStatus_t;
5971 pub fn cusolverRfSetupHost(
5972 n: ::core::ffi::c_int,
5973 nnzA: ::core::ffi::c_int,
5974 h_csrRowPtrA: *mut ::core::ffi::c_int,
5975 h_csrColIndA: *mut ::core::ffi::c_int,
5976 h_csrValA: *mut f64,
5977 nnzL: ::core::ffi::c_int,
5978 h_csrRowPtrL: *mut ::core::ffi::c_int,
5979 h_csrColIndL: *mut ::core::ffi::c_int,
5980 h_csrValL: *mut f64,
5981 nnzU: ::core::ffi::c_int,
5982 h_csrRowPtrU: *mut ::core::ffi::c_int,
5983 h_csrColIndU: *mut ::core::ffi::c_int,
5984 h_csrValU: *mut f64,
5985 h_P: *mut ::core::ffi::c_int,
5986 h_Q: *mut ::core::ffi::c_int,
5987 handle: cusolverRfHandle_t,
5988 ) -> cusolverStatus_t;
5989 pub fn cusolverRfSolve(
5990 handle: cusolverRfHandle_t,
5991 P: *mut ::core::ffi::c_int,
5992 Q: *mut ::core::ffi::c_int,
5993 nrhs: ::core::ffi::c_int,
5994 Temp: *mut f64,
5995 ldt: ::core::ffi::c_int,
5996 XF: *mut f64,
5997 ldxf: ::core::ffi::c_int,
5998 ) -> cusolverStatus_t;
5999 pub fn cusolverSpCcsreigsHost(
6000 handle: cusolverSpHandle_t,
6001 m: ::core::ffi::c_int,
6002 nnz: ::core::ffi::c_int,
6003 descrA: cusparseMatDescr_t,
6004 csrValA: *const cuComplex,
6005 csrRowPtrA: *const ::core::ffi::c_int,
6006 csrColIndA: *const ::core::ffi::c_int,
6007 left_bottom_corner: cuComplex,
6008 right_upper_corner: cuComplex,
6009 num_eigs: *mut ::core::ffi::c_int,
6010 ) -> cusolverStatus_t;
6011 pub fn cusolverSpCcsreigvsi(
6012 handle: cusolverSpHandle_t,
6013 m: ::core::ffi::c_int,
6014 nnz: ::core::ffi::c_int,
6015 descrA: cusparseMatDescr_t,
6016 csrValA: *const cuComplex,
6017 csrRowPtrA: *const ::core::ffi::c_int,
6018 csrColIndA: *const ::core::ffi::c_int,
6019 mu0: cuComplex,
6020 x0: *const cuComplex,
6021 maxite: ::core::ffi::c_int,
6022 eps: f32,
6023 mu: *mut cuComplex,
6024 x: *mut cuComplex,
6025 ) -> cusolverStatus_t;
6026 pub fn cusolverSpCcsreigvsiHost(
6027 handle: cusolverSpHandle_t,
6028 m: ::core::ffi::c_int,
6029 nnz: ::core::ffi::c_int,
6030 descrA: cusparseMatDescr_t,
6031 csrValA: *const cuComplex,
6032 csrRowPtrA: *const ::core::ffi::c_int,
6033 csrColIndA: *const ::core::ffi::c_int,
6034 mu0: cuComplex,
6035 x0: *const cuComplex,
6036 maxite: ::core::ffi::c_int,
6037 tol: f32,
6038 mu: *mut cuComplex,
6039 x: *mut cuComplex,
6040 ) -> cusolverStatus_t;
6041 pub fn cusolverSpCcsrlsqvqrHost(
6042 handle: cusolverSpHandle_t,
6043 m: ::core::ffi::c_int,
6044 n: ::core::ffi::c_int,
6045 nnz: ::core::ffi::c_int,
6046 descrA: cusparseMatDescr_t,
6047 csrValA: *const cuComplex,
6048 csrRowPtrA: *const ::core::ffi::c_int,
6049 csrColIndA: *const ::core::ffi::c_int,
6050 b: *const cuComplex,
6051 tol: f32,
6052 rankA: *mut ::core::ffi::c_int,
6053 x: *mut cuComplex,
6054 p: *mut ::core::ffi::c_int,
6055 min_norm: *mut f32,
6056 ) -> cusolverStatus_t;
6057 pub fn cusolverSpCcsrlsvchol(
6058 handle: cusolverSpHandle_t,
6059 m: ::core::ffi::c_int,
6060 nnz: ::core::ffi::c_int,
6061 descrA: cusparseMatDescr_t,
6062 csrVal: *const cuComplex,
6063 csrRowPtr: *const ::core::ffi::c_int,
6064 csrColInd: *const ::core::ffi::c_int,
6065 b: *const cuComplex,
6066 tol: f32,
6067 reorder: ::core::ffi::c_int,
6068 x: *mut cuComplex,
6069 singularity: *mut ::core::ffi::c_int,
6070 ) -> cusolverStatus_t;
6071 pub fn cusolverSpCcsrlsvcholHost(
6072 handle: cusolverSpHandle_t,
6073 m: ::core::ffi::c_int,
6074 nnz: ::core::ffi::c_int,
6075 descrA: cusparseMatDescr_t,
6076 csrVal: *const cuComplex,
6077 csrRowPtr: *const ::core::ffi::c_int,
6078 csrColInd: *const ::core::ffi::c_int,
6079 b: *const cuComplex,
6080 tol: f32,
6081 reorder: ::core::ffi::c_int,
6082 x: *mut cuComplex,
6083 singularity: *mut ::core::ffi::c_int,
6084 ) -> cusolverStatus_t;
6085 pub fn cusolverSpCcsrlsvluHost(
6086 handle: cusolverSpHandle_t,
6087 n: ::core::ffi::c_int,
6088 nnzA: ::core::ffi::c_int,
6089 descrA: cusparseMatDescr_t,
6090 csrValA: *const cuComplex,
6091 csrRowPtrA: *const ::core::ffi::c_int,
6092 csrColIndA: *const ::core::ffi::c_int,
6093 b: *const cuComplex,
6094 tol: f32,
6095 reorder: ::core::ffi::c_int,
6096 x: *mut cuComplex,
6097 singularity: *mut ::core::ffi::c_int,
6098 ) -> cusolverStatus_t;
6099 pub fn cusolverSpCcsrlsvqr(
6100 handle: cusolverSpHandle_t,
6101 m: ::core::ffi::c_int,
6102 nnz: ::core::ffi::c_int,
6103 descrA: cusparseMatDescr_t,
6104 csrVal: *const cuComplex,
6105 csrRowPtr: *const ::core::ffi::c_int,
6106 csrColInd: *const ::core::ffi::c_int,
6107 b: *const cuComplex,
6108 tol: f32,
6109 reorder: ::core::ffi::c_int,
6110 x: *mut cuComplex,
6111 singularity: *mut ::core::ffi::c_int,
6112 ) -> cusolverStatus_t;
6113 pub fn cusolverSpCcsrlsvqrHost(
6114 handle: cusolverSpHandle_t,
6115 m: ::core::ffi::c_int,
6116 nnz: ::core::ffi::c_int,
6117 descrA: cusparseMatDescr_t,
6118 csrValA: *const cuComplex,
6119 csrRowPtrA: *const ::core::ffi::c_int,
6120 csrColIndA: *const ::core::ffi::c_int,
6121 b: *const cuComplex,
6122 tol: f32,
6123 reorder: ::core::ffi::c_int,
6124 x: *mut cuComplex,
6125 singularity: *mut ::core::ffi::c_int,
6126 ) -> cusolverStatus_t;
6127 pub fn cusolverSpCcsrqrBufferInfoBatched(
6128 handle: cusolverSpHandle_t,
6129 m: ::core::ffi::c_int,
6130 n: ::core::ffi::c_int,
6131 nnz: ::core::ffi::c_int,
6132 descrA: cusparseMatDescr_t,
6133 csrVal: *const cuComplex,
6134 csrRowPtr: *const ::core::ffi::c_int,
6135 csrColInd: *const ::core::ffi::c_int,
6136 batchSize: ::core::ffi::c_int,
6137 info: csrqrInfo_t,
6138 internalDataInBytes: *mut usize,
6139 workspaceInBytes: *mut usize,
6140 ) -> cusolverStatus_t;
6141 pub fn cusolverSpCcsrqrsvBatched(
6142 handle: cusolverSpHandle_t,
6143 m: ::core::ffi::c_int,
6144 n: ::core::ffi::c_int,
6145 nnz: ::core::ffi::c_int,
6146 descrA: cusparseMatDescr_t,
6147 csrValA: *const cuComplex,
6148 csrRowPtrA: *const ::core::ffi::c_int,
6149 csrColIndA: *const ::core::ffi::c_int,
6150 b: *const cuComplex,
6151 x: *mut cuComplex,
6152 batchSize: ::core::ffi::c_int,
6153 info: csrqrInfo_t,
6154 pBuffer: *mut ::core::ffi::c_void,
6155 ) -> cusolverStatus_t;
6156 pub fn cusolverSpCcsrzfdHost(
6157 handle: cusolverSpHandle_t,
6158 n: ::core::ffi::c_int,
6159 nnz: ::core::ffi::c_int,
6160 descrA: cusparseMatDescr_t,
6161 csrValA: *const cuComplex,
6162 csrRowPtrA: *const ::core::ffi::c_int,
6163 csrColIndA: *const ::core::ffi::c_int,
6164 P: *mut ::core::ffi::c_int,
6165 numnz: *mut ::core::ffi::c_int,
6166 ) -> cusolverStatus_t;
6167 pub fn cusolverSpCreate(handle: *mut cusolverSpHandle_t) -> cusolverStatus_t;
6168 pub fn cusolverSpCreateCsrqrInfo(info: *mut csrqrInfo_t) -> cusolverStatus_t;
6169 pub fn cusolverSpDcsreigsHost(
6170 handle: cusolverSpHandle_t,
6171 m: ::core::ffi::c_int,
6172 nnz: ::core::ffi::c_int,
6173 descrA: cusparseMatDescr_t,
6174 csrValA: *const f64,
6175 csrRowPtrA: *const ::core::ffi::c_int,
6176 csrColIndA: *const ::core::ffi::c_int,
6177 left_bottom_corner: cuDoubleComplex,
6178 right_upper_corner: cuDoubleComplex,
6179 num_eigs: *mut ::core::ffi::c_int,
6180 ) -> cusolverStatus_t;
6181 pub fn cusolverSpDcsreigvsi(
6182 handle: cusolverSpHandle_t,
6183 m: ::core::ffi::c_int,
6184 nnz: ::core::ffi::c_int,
6185 descrA: cusparseMatDescr_t,
6186 csrValA: *const f64,
6187 csrRowPtrA: *const ::core::ffi::c_int,
6188 csrColIndA: *const ::core::ffi::c_int,
6189 mu0: f64,
6190 x0: *const f64,
6191 maxite: ::core::ffi::c_int,
6192 eps: f64,
6193 mu: *mut f64,
6194 x: *mut f64,
6195 ) -> cusolverStatus_t;
6196 pub fn cusolverSpDcsreigvsiHost(
6197 handle: cusolverSpHandle_t,
6198 m: ::core::ffi::c_int,
6199 nnz: ::core::ffi::c_int,
6200 descrA: cusparseMatDescr_t,
6201 csrValA: *const f64,
6202 csrRowPtrA: *const ::core::ffi::c_int,
6203 csrColIndA: *const ::core::ffi::c_int,
6204 mu0: f64,
6205 x0: *const f64,
6206 maxite: ::core::ffi::c_int,
6207 tol: f64,
6208 mu: *mut f64,
6209 x: *mut f64,
6210 ) -> cusolverStatus_t;
6211 pub fn cusolverSpDcsrlsqvqrHost(
6212 handle: cusolverSpHandle_t,
6213 m: ::core::ffi::c_int,
6214 n: ::core::ffi::c_int,
6215 nnz: ::core::ffi::c_int,
6216 descrA: cusparseMatDescr_t,
6217 csrValA: *const f64,
6218 csrRowPtrA: *const ::core::ffi::c_int,
6219 csrColIndA: *const ::core::ffi::c_int,
6220 b: *const f64,
6221 tol: f64,
6222 rankA: *mut ::core::ffi::c_int,
6223 x: *mut f64,
6224 p: *mut ::core::ffi::c_int,
6225 min_norm: *mut f64,
6226 ) -> cusolverStatus_t;
6227 pub fn cusolverSpDcsrlsvchol(
6228 handle: cusolverSpHandle_t,
6229 m: ::core::ffi::c_int,
6230 nnz: ::core::ffi::c_int,
6231 descrA: cusparseMatDescr_t,
6232 csrVal: *const f64,
6233 csrRowPtr: *const ::core::ffi::c_int,
6234 csrColInd: *const ::core::ffi::c_int,
6235 b: *const f64,
6236 tol: f64,
6237 reorder: ::core::ffi::c_int,
6238 x: *mut f64,
6239 singularity: *mut ::core::ffi::c_int,
6240 ) -> cusolverStatus_t;
6241 pub fn cusolverSpDcsrlsvcholHost(
6242 handle: cusolverSpHandle_t,
6243 m: ::core::ffi::c_int,
6244 nnz: ::core::ffi::c_int,
6245 descrA: cusparseMatDescr_t,
6246 csrVal: *const f64,
6247 csrRowPtr: *const ::core::ffi::c_int,
6248 csrColInd: *const ::core::ffi::c_int,
6249 b: *const f64,
6250 tol: f64,
6251 reorder: ::core::ffi::c_int,
6252 x: *mut f64,
6253 singularity: *mut ::core::ffi::c_int,
6254 ) -> cusolverStatus_t;
6255 pub fn cusolverSpDcsrlsvluHost(
6256 handle: cusolverSpHandle_t,
6257 n: ::core::ffi::c_int,
6258 nnzA: ::core::ffi::c_int,
6259 descrA: cusparseMatDescr_t,
6260 csrValA: *const f64,
6261 csrRowPtrA: *const ::core::ffi::c_int,
6262 csrColIndA: *const ::core::ffi::c_int,
6263 b: *const f64,
6264 tol: f64,
6265 reorder: ::core::ffi::c_int,
6266 x: *mut f64,
6267 singularity: *mut ::core::ffi::c_int,
6268 ) -> cusolverStatus_t;
6269 pub fn cusolverSpDcsrlsvqr(
6270 handle: cusolverSpHandle_t,
6271 m: ::core::ffi::c_int,
6272 nnz: ::core::ffi::c_int,
6273 descrA: cusparseMatDescr_t,
6274 csrVal: *const f64,
6275 csrRowPtr: *const ::core::ffi::c_int,
6276 csrColInd: *const ::core::ffi::c_int,
6277 b: *const f64,
6278 tol: f64,
6279 reorder: ::core::ffi::c_int,
6280 x: *mut f64,
6281 singularity: *mut ::core::ffi::c_int,
6282 ) -> cusolverStatus_t;
6283 pub fn cusolverSpDcsrlsvqrHost(
6284 handle: cusolverSpHandle_t,
6285 m: ::core::ffi::c_int,
6286 nnz: ::core::ffi::c_int,
6287 descrA: cusparseMatDescr_t,
6288 csrValA: *const f64,
6289 csrRowPtrA: *const ::core::ffi::c_int,
6290 csrColIndA: *const ::core::ffi::c_int,
6291 b: *const f64,
6292 tol: f64,
6293 reorder: ::core::ffi::c_int,
6294 x: *mut f64,
6295 singularity: *mut ::core::ffi::c_int,
6296 ) -> cusolverStatus_t;
6297 pub fn cusolverSpDcsrqrBufferInfoBatched(
6298 handle: cusolverSpHandle_t,
6299 m: ::core::ffi::c_int,
6300 n: ::core::ffi::c_int,
6301 nnz: ::core::ffi::c_int,
6302 descrA: cusparseMatDescr_t,
6303 csrVal: *const f64,
6304 csrRowPtr: *const ::core::ffi::c_int,
6305 csrColInd: *const ::core::ffi::c_int,
6306 batchSize: ::core::ffi::c_int,
6307 info: csrqrInfo_t,
6308 internalDataInBytes: *mut usize,
6309 workspaceInBytes: *mut usize,
6310 ) -> cusolverStatus_t;
6311 pub fn cusolverSpDcsrqrsvBatched(
6312 handle: cusolverSpHandle_t,
6313 m: ::core::ffi::c_int,
6314 n: ::core::ffi::c_int,
6315 nnz: ::core::ffi::c_int,
6316 descrA: cusparseMatDescr_t,
6317 csrValA: *const f64,
6318 csrRowPtrA: *const ::core::ffi::c_int,
6319 csrColIndA: *const ::core::ffi::c_int,
6320 b: *const f64,
6321 x: *mut f64,
6322 batchSize: ::core::ffi::c_int,
6323 info: csrqrInfo_t,
6324 pBuffer: *mut ::core::ffi::c_void,
6325 ) -> cusolverStatus_t;
6326 pub fn cusolverSpDcsrzfdHost(
6327 handle: cusolverSpHandle_t,
6328 n: ::core::ffi::c_int,
6329 nnz: ::core::ffi::c_int,
6330 descrA: cusparseMatDescr_t,
6331 csrValA: *const f64,
6332 csrRowPtrA: *const ::core::ffi::c_int,
6333 csrColIndA: *const ::core::ffi::c_int,
6334 P: *mut ::core::ffi::c_int,
6335 numnz: *mut ::core::ffi::c_int,
6336 ) -> cusolverStatus_t;
6337 pub fn cusolverSpDestroy(handle: cusolverSpHandle_t) -> cusolverStatus_t;
6338 pub fn cusolverSpDestroyCsrqrInfo(info: csrqrInfo_t) -> cusolverStatus_t;
6339 pub fn cusolverSpGetStream(
6340 handle: cusolverSpHandle_t,
6341 streamId: *mut cudaStream_t,
6342 ) -> cusolverStatus_t;
6343 pub fn cusolverSpScsreigsHost(
6344 handle: cusolverSpHandle_t,
6345 m: ::core::ffi::c_int,
6346 nnz: ::core::ffi::c_int,
6347 descrA: cusparseMatDescr_t,
6348 csrValA: *const f32,
6349 csrRowPtrA: *const ::core::ffi::c_int,
6350 csrColIndA: *const ::core::ffi::c_int,
6351 left_bottom_corner: cuComplex,
6352 right_upper_corner: cuComplex,
6353 num_eigs: *mut ::core::ffi::c_int,
6354 ) -> cusolverStatus_t;
6355 pub fn cusolverSpScsreigvsi(
6356 handle: cusolverSpHandle_t,
6357 m: ::core::ffi::c_int,
6358 nnz: ::core::ffi::c_int,
6359 descrA: cusparseMatDescr_t,
6360 csrValA: *const f32,
6361 csrRowPtrA: *const ::core::ffi::c_int,
6362 csrColIndA: *const ::core::ffi::c_int,
6363 mu0: f32,
6364 x0: *const f32,
6365 maxite: ::core::ffi::c_int,
6366 eps: f32,
6367 mu: *mut f32,
6368 x: *mut f32,
6369 ) -> cusolverStatus_t;
6370 pub fn cusolverSpScsreigvsiHost(
6371 handle: cusolverSpHandle_t,
6372 m: ::core::ffi::c_int,
6373 nnz: ::core::ffi::c_int,
6374 descrA: cusparseMatDescr_t,
6375 csrValA: *const f32,
6376 csrRowPtrA: *const ::core::ffi::c_int,
6377 csrColIndA: *const ::core::ffi::c_int,
6378 mu0: f32,
6379 x0: *const f32,
6380 maxite: ::core::ffi::c_int,
6381 tol: f32,
6382 mu: *mut f32,
6383 x: *mut f32,
6384 ) -> cusolverStatus_t;
6385 pub fn cusolverSpScsrlsqvqrHost(
6386 handle: cusolverSpHandle_t,
6387 m: ::core::ffi::c_int,
6388 n: ::core::ffi::c_int,
6389 nnz: ::core::ffi::c_int,
6390 descrA: cusparseMatDescr_t,
6391 csrValA: *const f32,
6392 csrRowPtrA: *const ::core::ffi::c_int,
6393 csrColIndA: *const ::core::ffi::c_int,
6394 b: *const f32,
6395 tol: f32,
6396 rankA: *mut ::core::ffi::c_int,
6397 x: *mut f32,
6398 p: *mut ::core::ffi::c_int,
6399 min_norm: *mut f32,
6400 ) -> cusolverStatus_t;
6401 pub fn cusolverSpScsrlsvchol(
6402 handle: cusolverSpHandle_t,
6403 m: ::core::ffi::c_int,
6404 nnz: ::core::ffi::c_int,
6405 descrA: cusparseMatDescr_t,
6406 csrVal: *const f32,
6407 csrRowPtr: *const ::core::ffi::c_int,
6408 csrColInd: *const ::core::ffi::c_int,
6409 b: *const f32,
6410 tol: f32,
6411 reorder: ::core::ffi::c_int,
6412 x: *mut f32,
6413 singularity: *mut ::core::ffi::c_int,
6414 ) -> cusolverStatus_t;
6415 pub fn cusolverSpScsrlsvcholHost(
6416 handle: cusolverSpHandle_t,
6417 m: ::core::ffi::c_int,
6418 nnz: ::core::ffi::c_int,
6419 descrA: cusparseMatDescr_t,
6420 csrVal: *const f32,
6421 csrRowPtr: *const ::core::ffi::c_int,
6422 csrColInd: *const ::core::ffi::c_int,
6423 b: *const f32,
6424 tol: f32,
6425 reorder: ::core::ffi::c_int,
6426 x: *mut f32,
6427 singularity: *mut ::core::ffi::c_int,
6428 ) -> cusolverStatus_t;
6429 pub fn cusolverSpScsrlsvluHost(
6430 handle: cusolverSpHandle_t,
6431 n: ::core::ffi::c_int,
6432 nnzA: ::core::ffi::c_int,
6433 descrA: cusparseMatDescr_t,
6434 csrValA: *const f32,
6435 csrRowPtrA: *const ::core::ffi::c_int,
6436 csrColIndA: *const ::core::ffi::c_int,
6437 b: *const f32,
6438 tol: f32,
6439 reorder: ::core::ffi::c_int,
6440 x: *mut f32,
6441 singularity: *mut ::core::ffi::c_int,
6442 ) -> cusolverStatus_t;
6443 pub fn cusolverSpScsrlsvqr(
6444 handle: cusolverSpHandle_t,
6445 m: ::core::ffi::c_int,
6446 nnz: ::core::ffi::c_int,
6447 descrA: cusparseMatDescr_t,
6448 csrVal: *const f32,
6449 csrRowPtr: *const ::core::ffi::c_int,
6450 csrColInd: *const ::core::ffi::c_int,
6451 b: *const f32,
6452 tol: f32,
6453 reorder: ::core::ffi::c_int,
6454 x: *mut f32,
6455 singularity: *mut ::core::ffi::c_int,
6456 ) -> cusolverStatus_t;
6457 pub fn cusolverSpScsrlsvqrHost(
6458 handle: cusolverSpHandle_t,
6459 m: ::core::ffi::c_int,
6460 nnz: ::core::ffi::c_int,
6461 descrA: cusparseMatDescr_t,
6462 csrValA: *const f32,
6463 csrRowPtrA: *const ::core::ffi::c_int,
6464 csrColIndA: *const ::core::ffi::c_int,
6465 b: *const f32,
6466 tol: f32,
6467 reorder: ::core::ffi::c_int,
6468 x: *mut f32,
6469 singularity: *mut ::core::ffi::c_int,
6470 ) -> cusolverStatus_t;
6471 pub fn cusolverSpScsrqrBufferInfoBatched(
6472 handle: cusolverSpHandle_t,
6473 m: ::core::ffi::c_int,
6474 n: ::core::ffi::c_int,
6475 nnz: ::core::ffi::c_int,
6476 descrA: cusparseMatDescr_t,
6477 csrVal: *const f32,
6478 csrRowPtr: *const ::core::ffi::c_int,
6479 csrColInd: *const ::core::ffi::c_int,
6480 batchSize: ::core::ffi::c_int,
6481 info: csrqrInfo_t,
6482 internalDataInBytes: *mut usize,
6483 workspaceInBytes: *mut usize,
6484 ) -> cusolverStatus_t;
6485 pub fn cusolverSpScsrqrsvBatched(
6486 handle: cusolverSpHandle_t,
6487 m: ::core::ffi::c_int,
6488 n: ::core::ffi::c_int,
6489 nnz: ::core::ffi::c_int,
6490 descrA: cusparseMatDescr_t,
6491 csrValA: *const f32,
6492 csrRowPtrA: *const ::core::ffi::c_int,
6493 csrColIndA: *const ::core::ffi::c_int,
6494 b: *const f32,
6495 x: *mut f32,
6496 batchSize: ::core::ffi::c_int,
6497 info: csrqrInfo_t,
6498 pBuffer: *mut ::core::ffi::c_void,
6499 ) -> cusolverStatus_t;
6500 pub fn cusolverSpScsrzfdHost(
6501 handle: cusolverSpHandle_t,
6502 n: ::core::ffi::c_int,
6503 nnz: ::core::ffi::c_int,
6504 descrA: cusparseMatDescr_t,
6505 csrValA: *const f32,
6506 csrRowPtrA: *const ::core::ffi::c_int,
6507 csrColIndA: *const ::core::ffi::c_int,
6508 P: *mut ::core::ffi::c_int,
6509 numnz: *mut ::core::ffi::c_int,
6510 ) -> cusolverStatus_t;
6511 pub fn cusolverSpSetStream(
6512 handle: cusolverSpHandle_t,
6513 streamId: cudaStream_t,
6514 ) -> cusolverStatus_t;
6515 pub fn cusolverSpXcsrissymHost(
6516 handle: cusolverSpHandle_t,
6517 m: ::core::ffi::c_int,
6518 nnzA: ::core::ffi::c_int,
6519 descrA: cusparseMatDescr_t,
6520 csrRowPtrA: *const ::core::ffi::c_int,
6521 csrEndPtrA: *const ::core::ffi::c_int,
6522 csrColIndA: *const ::core::ffi::c_int,
6523 issym: *mut ::core::ffi::c_int,
6524 ) -> cusolverStatus_t;
6525 pub fn cusolverSpXcsrmetisndHost(
6526 handle: cusolverSpHandle_t,
6527 n: ::core::ffi::c_int,
6528 nnzA: ::core::ffi::c_int,
6529 descrA: cusparseMatDescr_t,
6530 csrRowPtrA: *const ::core::ffi::c_int,
6531 csrColIndA: *const ::core::ffi::c_int,
6532 options: *const i64,
6533 p: *mut ::core::ffi::c_int,
6534 ) -> cusolverStatus_t;
6535 pub fn cusolverSpXcsrpermHost(
6536 handle: cusolverSpHandle_t,
6537 m: ::core::ffi::c_int,
6538 n: ::core::ffi::c_int,
6539 nnzA: ::core::ffi::c_int,
6540 descrA: cusparseMatDescr_t,
6541 csrRowPtrA: *mut ::core::ffi::c_int,
6542 csrColIndA: *mut ::core::ffi::c_int,
6543 p: *const ::core::ffi::c_int,
6544 q: *const ::core::ffi::c_int,
6545 map: *mut ::core::ffi::c_int,
6546 pBuffer: *mut ::core::ffi::c_void,
6547 ) -> cusolverStatus_t;
6548 pub fn cusolverSpXcsrperm_bufferSizeHost(
6549 handle: cusolverSpHandle_t,
6550 m: ::core::ffi::c_int,
6551 n: ::core::ffi::c_int,
6552 nnzA: ::core::ffi::c_int,
6553 descrA: cusparseMatDescr_t,
6554 csrRowPtrA: *const ::core::ffi::c_int,
6555 csrColIndA: *const ::core::ffi::c_int,
6556 p: *const ::core::ffi::c_int,
6557 q: *const ::core::ffi::c_int,
6558 bufferSizeInBytes: *mut usize,
6559 ) -> cusolverStatus_t;
6560 pub fn cusolverSpXcsrqrAnalysisBatched(
6561 handle: cusolverSpHandle_t,
6562 m: ::core::ffi::c_int,
6563 n: ::core::ffi::c_int,
6564 nnzA: ::core::ffi::c_int,
6565 descrA: cusparseMatDescr_t,
6566 csrRowPtrA: *const ::core::ffi::c_int,
6567 csrColIndA: *const ::core::ffi::c_int,
6568 info: csrqrInfo_t,
6569 ) -> cusolverStatus_t;
6570 pub fn cusolverSpXcsrsymamdHost(
6571 handle: cusolverSpHandle_t,
6572 n: ::core::ffi::c_int,
6573 nnzA: ::core::ffi::c_int,
6574 descrA: cusparseMatDescr_t,
6575 csrRowPtrA: *const ::core::ffi::c_int,
6576 csrColIndA: *const ::core::ffi::c_int,
6577 p: *mut ::core::ffi::c_int,
6578 ) -> cusolverStatus_t;
6579 pub fn cusolverSpXcsrsymmdqHost(
6580 handle: cusolverSpHandle_t,
6581 n: ::core::ffi::c_int,
6582 nnzA: ::core::ffi::c_int,
6583 descrA: cusparseMatDescr_t,
6584 csrRowPtrA: *const ::core::ffi::c_int,
6585 csrColIndA: *const ::core::ffi::c_int,
6586 p: *mut ::core::ffi::c_int,
6587 ) -> cusolverStatus_t;
6588 pub fn cusolverSpXcsrsymrcmHost(
6589 handle: cusolverSpHandle_t,
6590 n: ::core::ffi::c_int,
6591 nnzA: ::core::ffi::c_int,
6592 descrA: cusparseMatDescr_t,
6593 csrRowPtrA: *const ::core::ffi::c_int,
6594 csrColIndA: *const ::core::ffi::c_int,
6595 p: *mut ::core::ffi::c_int,
6596 ) -> cusolverStatus_t;
6597 pub fn cusolverSpZcsreigsHost(
6598 handle: cusolverSpHandle_t,
6599 m: ::core::ffi::c_int,
6600 nnz: ::core::ffi::c_int,
6601 descrA: cusparseMatDescr_t,
6602 csrValA: *const cuDoubleComplex,
6603 csrRowPtrA: *const ::core::ffi::c_int,
6604 csrColIndA: *const ::core::ffi::c_int,
6605 left_bottom_corner: cuDoubleComplex,
6606 right_upper_corner: cuDoubleComplex,
6607 num_eigs: *mut ::core::ffi::c_int,
6608 ) -> cusolverStatus_t;
6609 pub fn cusolverSpZcsreigvsi(
6610 handle: cusolverSpHandle_t,
6611 m: ::core::ffi::c_int,
6612 nnz: ::core::ffi::c_int,
6613 descrA: cusparseMatDescr_t,
6614 csrValA: *const cuDoubleComplex,
6615 csrRowPtrA: *const ::core::ffi::c_int,
6616 csrColIndA: *const ::core::ffi::c_int,
6617 mu0: cuDoubleComplex,
6618 x0: *const cuDoubleComplex,
6619 maxite: ::core::ffi::c_int,
6620 eps: f64,
6621 mu: *mut cuDoubleComplex,
6622 x: *mut cuDoubleComplex,
6623 ) -> cusolverStatus_t;
6624 pub fn cusolverSpZcsreigvsiHost(
6625 handle: cusolverSpHandle_t,
6626 m: ::core::ffi::c_int,
6627 nnz: ::core::ffi::c_int,
6628 descrA: cusparseMatDescr_t,
6629 csrValA: *const cuDoubleComplex,
6630 csrRowPtrA: *const ::core::ffi::c_int,
6631 csrColIndA: *const ::core::ffi::c_int,
6632 mu0: cuDoubleComplex,
6633 x0: *const cuDoubleComplex,
6634 maxite: ::core::ffi::c_int,
6635 tol: f64,
6636 mu: *mut cuDoubleComplex,
6637 x: *mut cuDoubleComplex,
6638 ) -> cusolverStatus_t;
6639 pub fn cusolverSpZcsrlsqvqrHost(
6640 handle: cusolverSpHandle_t,
6641 m: ::core::ffi::c_int,
6642 n: ::core::ffi::c_int,
6643 nnz: ::core::ffi::c_int,
6644 descrA: cusparseMatDescr_t,
6645 csrValA: *const cuDoubleComplex,
6646 csrRowPtrA: *const ::core::ffi::c_int,
6647 csrColIndA: *const ::core::ffi::c_int,
6648 b: *const cuDoubleComplex,
6649 tol: f64,
6650 rankA: *mut ::core::ffi::c_int,
6651 x: *mut cuDoubleComplex,
6652 p: *mut ::core::ffi::c_int,
6653 min_norm: *mut f64,
6654 ) -> cusolverStatus_t;
6655 pub fn cusolverSpZcsrlsvchol(
6656 handle: cusolverSpHandle_t,
6657 m: ::core::ffi::c_int,
6658 nnz: ::core::ffi::c_int,
6659 descrA: cusparseMatDescr_t,
6660 csrVal: *const cuDoubleComplex,
6661 csrRowPtr: *const ::core::ffi::c_int,
6662 csrColInd: *const ::core::ffi::c_int,
6663 b: *const cuDoubleComplex,
6664 tol: f64,
6665 reorder: ::core::ffi::c_int,
6666 x: *mut cuDoubleComplex,
6667 singularity: *mut ::core::ffi::c_int,
6668 ) -> cusolverStatus_t;
6669 pub fn cusolverSpZcsrlsvcholHost(
6670 handle: cusolverSpHandle_t,
6671 m: ::core::ffi::c_int,
6672 nnz: ::core::ffi::c_int,
6673 descrA: cusparseMatDescr_t,
6674 csrVal: *const cuDoubleComplex,
6675 csrRowPtr: *const ::core::ffi::c_int,
6676 csrColInd: *const ::core::ffi::c_int,
6677 b: *const cuDoubleComplex,
6678 tol: f64,
6679 reorder: ::core::ffi::c_int,
6680 x: *mut cuDoubleComplex,
6681 singularity: *mut ::core::ffi::c_int,
6682 ) -> cusolverStatus_t;
6683 pub fn cusolverSpZcsrlsvluHost(
6684 handle: cusolverSpHandle_t,
6685 n: ::core::ffi::c_int,
6686 nnzA: ::core::ffi::c_int,
6687 descrA: cusparseMatDescr_t,
6688 csrValA: *const cuDoubleComplex,
6689 csrRowPtrA: *const ::core::ffi::c_int,
6690 csrColIndA: *const ::core::ffi::c_int,
6691 b: *const cuDoubleComplex,
6692 tol: f64,
6693 reorder: ::core::ffi::c_int,
6694 x: *mut cuDoubleComplex,
6695 singularity: *mut ::core::ffi::c_int,
6696 ) -> cusolverStatus_t;
6697 pub fn cusolverSpZcsrlsvqr(
6698 handle: cusolverSpHandle_t,
6699 m: ::core::ffi::c_int,
6700 nnz: ::core::ffi::c_int,
6701 descrA: cusparseMatDescr_t,
6702 csrVal: *const cuDoubleComplex,
6703 csrRowPtr: *const ::core::ffi::c_int,
6704 csrColInd: *const ::core::ffi::c_int,
6705 b: *const cuDoubleComplex,
6706 tol: f64,
6707 reorder: ::core::ffi::c_int,
6708 x: *mut cuDoubleComplex,
6709 singularity: *mut ::core::ffi::c_int,
6710 ) -> cusolverStatus_t;
6711 pub fn cusolverSpZcsrlsvqrHost(
6712 handle: cusolverSpHandle_t,
6713 m: ::core::ffi::c_int,
6714 nnz: ::core::ffi::c_int,
6715 descrA: cusparseMatDescr_t,
6716 csrValA: *const cuDoubleComplex,
6717 csrRowPtrA: *const ::core::ffi::c_int,
6718 csrColIndA: *const ::core::ffi::c_int,
6719 b: *const cuDoubleComplex,
6720 tol: f64,
6721 reorder: ::core::ffi::c_int,
6722 x: *mut cuDoubleComplex,
6723 singularity: *mut ::core::ffi::c_int,
6724 ) -> cusolverStatus_t;
6725 pub fn cusolverSpZcsrqrBufferInfoBatched(
6726 handle: cusolverSpHandle_t,
6727 m: ::core::ffi::c_int,
6728 n: ::core::ffi::c_int,
6729 nnz: ::core::ffi::c_int,
6730 descrA: cusparseMatDescr_t,
6731 csrVal: *const cuDoubleComplex,
6732 csrRowPtr: *const ::core::ffi::c_int,
6733 csrColInd: *const ::core::ffi::c_int,
6734 batchSize: ::core::ffi::c_int,
6735 info: csrqrInfo_t,
6736 internalDataInBytes: *mut usize,
6737 workspaceInBytes: *mut usize,
6738 ) -> cusolverStatus_t;
6739 pub fn cusolverSpZcsrqrsvBatched(
6740 handle: cusolverSpHandle_t,
6741 m: ::core::ffi::c_int,
6742 n: ::core::ffi::c_int,
6743 nnz: ::core::ffi::c_int,
6744 descrA: cusparseMatDescr_t,
6745 csrValA: *const cuDoubleComplex,
6746 csrRowPtrA: *const ::core::ffi::c_int,
6747 csrColIndA: *const ::core::ffi::c_int,
6748 b: *const cuDoubleComplex,
6749 x: *mut cuDoubleComplex,
6750 batchSize: ::core::ffi::c_int,
6751 info: csrqrInfo_t,
6752 pBuffer: *mut ::core::ffi::c_void,
6753 ) -> cusolverStatus_t;
6754 pub fn cusolverSpZcsrzfdHost(
6755 handle: cusolverSpHandle_t,
6756 n: ::core::ffi::c_int,
6757 nnz: ::core::ffi::c_int,
6758 descrA: cusparseMatDescr_t,
6759 csrValA: *const cuDoubleComplex,
6760 csrRowPtrA: *const ::core::ffi::c_int,
6761 csrColIndA: *const ::core::ffi::c_int,
6762 P: *mut ::core::ffi::c_int,
6763 numnz: *mut ::core::ffi::c_int,
6764 ) -> cusolverStatus_t;
6765}
6766#[cfg(feature = "dynamic-loading")]
6767mod loaded {
6768 use super::*;
6769 pub unsafe fn cusolverDnCCgels(
6770 handle: cusolverDnHandle_t,
6771 m: cusolver_int_t,
6772 n: cusolver_int_t,
6773 nrhs: cusolver_int_t,
6774 dA: *mut cuComplex,
6775 ldda: cusolver_int_t,
6776 dB: *mut cuComplex,
6777 lddb: cusolver_int_t,
6778 dX: *mut cuComplex,
6779 lddx: cusolver_int_t,
6780 dWorkspace: *mut ::core::ffi::c_void,
6781 lwork_bytes: usize,
6782 iter: *mut cusolver_int_t,
6783 d_info: *mut cusolver_int_t,
6784 ) -> cusolverStatus_t {
6785 (culib().cusolverDnCCgels)(
6786 handle,
6787 m,
6788 n,
6789 nrhs,
6790 dA,
6791 ldda,
6792 dB,
6793 lddb,
6794 dX,
6795 lddx,
6796 dWorkspace,
6797 lwork_bytes,
6798 iter,
6799 d_info,
6800 )
6801 }
6802 pub unsafe fn cusolverDnCCgels_bufferSize(
6803 handle: cusolverDnHandle_t,
6804 m: cusolver_int_t,
6805 n: cusolver_int_t,
6806 nrhs: cusolver_int_t,
6807 dA: *mut cuComplex,
6808 ldda: cusolver_int_t,
6809 dB: *mut cuComplex,
6810 lddb: cusolver_int_t,
6811 dX: *mut cuComplex,
6812 lddx: cusolver_int_t,
6813 dWorkspace: *mut ::core::ffi::c_void,
6814 lwork_bytes: *mut usize,
6815 ) -> cusolverStatus_t {
6816 (culib().cusolverDnCCgels_bufferSize)(
6817 handle,
6818 m,
6819 n,
6820 nrhs,
6821 dA,
6822 ldda,
6823 dB,
6824 lddb,
6825 dX,
6826 lddx,
6827 dWorkspace,
6828 lwork_bytes,
6829 )
6830 }
6831 pub unsafe fn cusolverDnCCgesv(
6832 handle: cusolverDnHandle_t,
6833 n: cusolver_int_t,
6834 nrhs: cusolver_int_t,
6835 dA: *mut cuComplex,
6836 ldda: cusolver_int_t,
6837 dipiv: *mut cusolver_int_t,
6838 dB: *mut cuComplex,
6839 lddb: cusolver_int_t,
6840 dX: *mut cuComplex,
6841 lddx: cusolver_int_t,
6842 dWorkspace: *mut ::core::ffi::c_void,
6843 lwork_bytes: usize,
6844 iter: *mut cusolver_int_t,
6845 d_info: *mut cusolver_int_t,
6846 ) -> cusolverStatus_t {
6847 (culib().cusolverDnCCgesv)(
6848 handle,
6849 n,
6850 nrhs,
6851 dA,
6852 ldda,
6853 dipiv,
6854 dB,
6855 lddb,
6856 dX,
6857 lddx,
6858 dWorkspace,
6859 lwork_bytes,
6860 iter,
6861 d_info,
6862 )
6863 }
6864 pub unsafe fn cusolverDnCCgesv_bufferSize(
6865 handle: cusolverDnHandle_t,
6866 n: cusolver_int_t,
6867 nrhs: cusolver_int_t,
6868 dA: *mut cuComplex,
6869 ldda: cusolver_int_t,
6870 dipiv: *mut cusolver_int_t,
6871 dB: *mut cuComplex,
6872 lddb: cusolver_int_t,
6873 dX: *mut cuComplex,
6874 lddx: cusolver_int_t,
6875 dWorkspace: *mut ::core::ffi::c_void,
6876 lwork_bytes: *mut usize,
6877 ) -> cusolverStatus_t {
6878 (culib().cusolverDnCCgesv_bufferSize)(
6879 handle,
6880 n,
6881 nrhs,
6882 dA,
6883 ldda,
6884 dipiv,
6885 dB,
6886 lddb,
6887 dX,
6888 lddx,
6889 dWorkspace,
6890 lwork_bytes,
6891 )
6892 }
6893 pub unsafe fn cusolverDnCEgels(
6894 handle: cusolverDnHandle_t,
6895 m: cusolver_int_t,
6896 n: cusolver_int_t,
6897 nrhs: cusolver_int_t,
6898 dA: *mut cuComplex,
6899 ldda: cusolver_int_t,
6900 dB: *mut cuComplex,
6901 lddb: cusolver_int_t,
6902 dX: *mut cuComplex,
6903 lddx: cusolver_int_t,
6904 dWorkspace: *mut ::core::ffi::c_void,
6905 lwork_bytes: usize,
6906 iter: *mut cusolver_int_t,
6907 d_info: *mut cusolver_int_t,
6908 ) -> cusolverStatus_t {
6909 (culib().cusolverDnCEgels)(
6910 handle,
6911 m,
6912 n,
6913 nrhs,
6914 dA,
6915 ldda,
6916 dB,
6917 lddb,
6918 dX,
6919 lddx,
6920 dWorkspace,
6921 lwork_bytes,
6922 iter,
6923 d_info,
6924 )
6925 }
6926 pub unsafe fn cusolverDnCEgels_bufferSize(
6927 handle: cusolverDnHandle_t,
6928 m: cusolver_int_t,
6929 n: cusolver_int_t,
6930 nrhs: cusolver_int_t,
6931 dA: *mut cuComplex,
6932 ldda: cusolver_int_t,
6933 dB: *mut cuComplex,
6934 lddb: cusolver_int_t,
6935 dX: *mut cuComplex,
6936 lddx: cusolver_int_t,
6937 dWorkspace: *mut ::core::ffi::c_void,
6938 lwork_bytes: *mut usize,
6939 ) -> cusolverStatus_t {
6940 (culib().cusolverDnCEgels_bufferSize)(
6941 handle,
6942 m,
6943 n,
6944 nrhs,
6945 dA,
6946 ldda,
6947 dB,
6948 lddb,
6949 dX,
6950 lddx,
6951 dWorkspace,
6952 lwork_bytes,
6953 )
6954 }
6955 pub unsafe fn cusolverDnCEgesv(
6956 handle: cusolverDnHandle_t,
6957 n: cusolver_int_t,
6958 nrhs: cusolver_int_t,
6959 dA: *mut cuComplex,
6960 ldda: cusolver_int_t,
6961 dipiv: *mut cusolver_int_t,
6962 dB: *mut cuComplex,
6963 lddb: cusolver_int_t,
6964 dX: *mut cuComplex,
6965 lddx: cusolver_int_t,
6966 dWorkspace: *mut ::core::ffi::c_void,
6967 lwork_bytes: usize,
6968 iter: *mut cusolver_int_t,
6969 d_info: *mut cusolver_int_t,
6970 ) -> cusolverStatus_t {
6971 (culib().cusolverDnCEgesv)(
6972 handle,
6973 n,
6974 nrhs,
6975 dA,
6976 ldda,
6977 dipiv,
6978 dB,
6979 lddb,
6980 dX,
6981 lddx,
6982 dWorkspace,
6983 lwork_bytes,
6984 iter,
6985 d_info,
6986 )
6987 }
6988 pub unsafe fn cusolverDnCEgesv_bufferSize(
6989 handle: cusolverDnHandle_t,
6990 n: cusolver_int_t,
6991 nrhs: cusolver_int_t,
6992 dA: *mut cuComplex,
6993 ldda: cusolver_int_t,
6994 dipiv: *mut cusolver_int_t,
6995 dB: *mut cuComplex,
6996 lddb: cusolver_int_t,
6997 dX: *mut cuComplex,
6998 lddx: cusolver_int_t,
6999 dWorkspace: *mut ::core::ffi::c_void,
7000 lwork_bytes: *mut usize,
7001 ) -> cusolverStatus_t {
7002 (culib().cusolverDnCEgesv_bufferSize)(
7003 handle,
7004 n,
7005 nrhs,
7006 dA,
7007 ldda,
7008 dipiv,
7009 dB,
7010 lddb,
7011 dX,
7012 lddx,
7013 dWorkspace,
7014 lwork_bytes,
7015 )
7016 }
7017 pub unsafe fn cusolverDnCKgels(
7018 handle: cusolverDnHandle_t,
7019 m: cusolver_int_t,
7020 n: cusolver_int_t,
7021 nrhs: cusolver_int_t,
7022 dA: *mut cuComplex,
7023 ldda: cusolver_int_t,
7024 dB: *mut cuComplex,
7025 lddb: cusolver_int_t,
7026 dX: *mut cuComplex,
7027 lddx: cusolver_int_t,
7028 dWorkspace: *mut ::core::ffi::c_void,
7029 lwork_bytes: usize,
7030 iter: *mut cusolver_int_t,
7031 d_info: *mut cusolver_int_t,
7032 ) -> cusolverStatus_t {
7033 (culib().cusolverDnCKgels)(
7034 handle,
7035 m,
7036 n,
7037 nrhs,
7038 dA,
7039 ldda,
7040 dB,
7041 lddb,
7042 dX,
7043 lddx,
7044 dWorkspace,
7045 lwork_bytes,
7046 iter,
7047 d_info,
7048 )
7049 }
7050 pub unsafe fn cusolverDnCKgels_bufferSize(
7051 handle: cusolverDnHandle_t,
7052 m: cusolver_int_t,
7053 n: cusolver_int_t,
7054 nrhs: cusolver_int_t,
7055 dA: *mut cuComplex,
7056 ldda: cusolver_int_t,
7057 dB: *mut cuComplex,
7058 lddb: cusolver_int_t,
7059 dX: *mut cuComplex,
7060 lddx: cusolver_int_t,
7061 dWorkspace: *mut ::core::ffi::c_void,
7062 lwork_bytes: *mut usize,
7063 ) -> cusolverStatus_t {
7064 (culib().cusolverDnCKgels_bufferSize)(
7065 handle,
7066 m,
7067 n,
7068 nrhs,
7069 dA,
7070 ldda,
7071 dB,
7072 lddb,
7073 dX,
7074 lddx,
7075 dWorkspace,
7076 lwork_bytes,
7077 )
7078 }
7079 pub unsafe fn cusolverDnCKgesv(
7080 handle: cusolverDnHandle_t,
7081 n: cusolver_int_t,
7082 nrhs: cusolver_int_t,
7083 dA: *mut cuComplex,
7084 ldda: cusolver_int_t,
7085 dipiv: *mut cusolver_int_t,
7086 dB: *mut cuComplex,
7087 lddb: cusolver_int_t,
7088 dX: *mut cuComplex,
7089 lddx: cusolver_int_t,
7090 dWorkspace: *mut ::core::ffi::c_void,
7091 lwork_bytes: usize,
7092 iter: *mut cusolver_int_t,
7093 d_info: *mut cusolver_int_t,
7094 ) -> cusolverStatus_t {
7095 (culib().cusolverDnCKgesv)(
7096 handle,
7097 n,
7098 nrhs,
7099 dA,
7100 ldda,
7101 dipiv,
7102 dB,
7103 lddb,
7104 dX,
7105 lddx,
7106 dWorkspace,
7107 lwork_bytes,
7108 iter,
7109 d_info,
7110 )
7111 }
7112 pub unsafe fn cusolverDnCKgesv_bufferSize(
7113 handle: cusolverDnHandle_t,
7114 n: cusolver_int_t,
7115 nrhs: cusolver_int_t,
7116 dA: *mut cuComplex,
7117 ldda: cusolver_int_t,
7118 dipiv: *mut cusolver_int_t,
7119 dB: *mut cuComplex,
7120 lddb: cusolver_int_t,
7121 dX: *mut cuComplex,
7122 lddx: cusolver_int_t,
7123 dWorkspace: *mut ::core::ffi::c_void,
7124 lwork_bytes: *mut usize,
7125 ) -> cusolverStatus_t {
7126 (culib().cusolverDnCKgesv_bufferSize)(
7127 handle,
7128 n,
7129 nrhs,
7130 dA,
7131 ldda,
7132 dipiv,
7133 dB,
7134 lddb,
7135 dX,
7136 lddx,
7137 dWorkspace,
7138 lwork_bytes,
7139 )
7140 }
7141 pub unsafe fn cusolverDnCYgels(
7142 handle: cusolverDnHandle_t,
7143 m: cusolver_int_t,
7144 n: cusolver_int_t,
7145 nrhs: cusolver_int_t,
7146 dA: *mut cuComplex,
7147 ldda: cusolver_int_t,
7148 dB: *mut cuComplex,
7149 lddb: cusolver_int_t,
7150 dX: *mut cuComplex,
7151 lddx: cusolver_int_t,
7152 dWorkspace: *mut ::core::ffi::c_void,
7153 lwork_bytes: usize,
7154 iter: *mut cusolver_int_t,
7155 d_info: *mut cusolver_int_t,
7156 ) -> cusolverStatus_t {
7157 (culib().cusolverDnCYgels)(
7158 handle,
7159 m,
7160 n,
7161 nrhs,
7162 dA,
7163 ldda,
7164 dB,
7165 lddb,
7166 dX,
7167 lddx,
7168 dWorkspace,
7169 lwork_bytes,
7170 iter,
7171 d_info,
7172 )
7173 }
7174 pub unsafe fn cusolverDnCYgels_bufferSize(
7175 handle: cusolverDnHandle_t,
7176 m: cusolver_int_t,
7177 n: cusolver_int_t,
7178 nrhs: cusolver_int_t,
7179 dA: *mut cuComplex,
7180 ldda: cusolver_int_t,
7181 dB: *mut cuComplex,
7182 lddb: cusolver_int_t,
7183 dX: *mut cuComplex,
7184 lddx: cusolver_int_t,
7185 dWorkspace: *mut ::core::ffi::c_void,
7186 lwork_bytes: *mut usize,
7187 ) -> cusolverStatus_t {
7188 (culib().cusolverDnCYgels_bufferSize)(
7189 handle,
7190 m,
7191 n,
7192 nrhs,
7193 dA,
7194 ldda,
7195 dB,
7196 lddb,
7197 dX,
7198 lddx,
7199 dWorkspace,
7200 lwork_bytes,
7201 )
7202 }
7203 pub unsafe fn cusolverDnCYgesv(
7204 handle: cusolverDnHandle_t,
7205 n: cusolver_int_t,
7206 nrhs: cusolver_int_t,
7207 dA: *mut cuComplex,
7208 ldda: cusolver_int_t,
7209 dipiv: *mut cusolver_int_t,
7210 dB: *mut cuComplex,
7211 lddb: cusolver_int_t,
7212 dX: *mut cuComplex,
7213 lddx: cusolver_int_t,
7214 dWorkspace: *mut ::core::ffi::c_void,
7215 lwork_bytes: usize,
7216 iter: *mut cusolver_int_t,
7217 d_info: *mut cusolver_int_t,
7218 ) -> cusolverStatus_t {
7219 (culib().cusolverDnCYgesv)(
7220 handle,
7221 n,
7222 nrhs,
7223 dA,
7224 ldda,
7225 dipiv,
7226 dB,
7227 lddb,
7228 dX,
7229 lddx,
7230 dWorkspace,
7231 lwork_bytes,
7232 iter,
7233 d_info,
7234 )
7235 }
7236 pub unsafe fn cusolverDnCYgesv_bufferSize(
7237 handle: cusolverDnHandle_t,
7238 n: cusolver_int_t,
7239 nrhs: cusolver_int_t,
7240 dA: *mut cuComplex,
7241 ldda: cusolver_int_t,
7242 dipiv: *mut cusolver_int_t,
7243 dB: *mut cuComplex,
7244 lddb: cusolver_int_t,
7245 dX: *mut cuComplex,
7246 lddx: cusolver_int_t,
7247 dWorkspace: *mut ::core::ffi::c_void,
7248 lwork_bytes: *mut usize,
7249 ) -> cusolverStatus_t {
7250 (culib().cusolverDnCYgesv_bufferSize)(
7251 handle,
7252 n,
7253 nrhs,
7254 dA,
7255 ldda,
7256 dipiv,
7257 dB,
7258 lddb,
7259 dX,
7260 lddx,
7261 dWorkspace,
7262 lwork_bytes,
7263 )
7264 }
7265 pub unsafe fn cusolverDnCgebrd(
7266 handle: cusolverDnHandle_t,
7267 m: ::core::ffi::c_int,
7268 n: ::core::ffi::c_int,
7269 A: *mut cuComplex,
7270 lda: ::core::ffi::c_int,
7271 D: *mut f32,
7272 E: *mut f32,
7273 TAUQ: *mut cuComplex,
7274 TAUP: *mut cuComplex,
7275 Work: *mut cuComplex,
7276 Lwork: ::core::ffi::c_int,
7277 devInfo: *mut ::core::ffi::c_int,
7278 ) -> cusolverStatus_t {
7279 (culib().cusolverDnCgebrd)(handle, m, n, A, lda, D, E, TAUQ, TAUP, Work, Lwork, devInfo)
7280 }
7281 pub unsafe fn cusolverDnCgebrd_bufferSize(
7282 handle: cusolverDnHandle_t,
7283 m: ::core::ffi::c_int,
7284 n: ::core::ffi::c_int,
7285 Lwork: *mut ::core::ffi::c_int,
7286 ) -> cusolverStatus_t {
7287 (culib().cusolverDnCgebrd_bufferSize)(handle, m, n, Lwork)
7288 }
7289 pub unsafe fn cusolverDnCgeqrf(
7290 handle: cusolverDnHandle_t,
7291 m: ::core::ffi::c_int,
7292 n: ::core::ffi::c_int,
7293 A: *mut cuComplex,
7294 lda: ::core::ffi::c_int,
7295 TAU: *mut cuComplex,
7296 Workspace: *mut cuComplex,
7297 Lwork: ::core::ffi::c_int,
7298 devInfo: *mut ::core::ffi::c_int,
7299 ) -> cusolverStatus_t {
7300 (culib().cusolverDnCgeqrf)(handle, m, n, A, lda, TAU, Workspace, Lwork, devInfo)
7301 }
7302 pub unsafe fn cusolverDnCgeqrf_bufferSize(
7303 handle: cusolverDnHandle_t,
7304 m: ::core::ffi::c_int,
7305 n: ::core::ffi::c_int,
7306 A: *mut cuComplex,
7307 lda: ::core::ffi::c_int,
7308 lwork: *mut ::core::ffi::c_int,
7309 ) -> cusolverStatus_t {
7310 (culib().cusolverDnCgeqrf_bufferSize)(handle, m, n, A, lda, lwork)
7311 }
7312 pub unsafe fn cusolverDnCgesvd(
7313 handle: cusolverDnHandle_t,
7314 jobu: ::core::ffi::c_schar,
7315 jobvt: ::core::ffi::c_schar,
7316 m: ::core::ffi::c_int,
7317 n: ::core::ffi::c_int,
7318 A: *mut cuComplex,
7319 lda: ::core::ffi::c_int,
7320 S: *mut f32,
7321 U: *mut cuComplex,
7322 ldu: ::core::ffi::c_int,
7323 VT: *mut cuComplex,
7324 ldvt: ::core::ffi::c_int,
7325 work: *mut cuComplex,
7326 lwork: ::core::ffi::c_int,
7327 rwork: *mut f32,
7328 info: *mut ::core::ffi::c_int,
7329 ) -> cusolverStatus_t {
7330 (culib().cusolverDnCgesvd)(
7331 handle, jobu, jobvt, m, n, A, lda, S, U, ldu, VT, ldvt, work, lwork, rwork, info,
7332 )
7333 }
7334 pub unsafe fn cusolverDnCgesvd_bufferSize(
7335 handle: cusolverDnHandle_t,
7336 m: ::core::ffi::c_int,
7337 n: ::core::ffi::c_int,
7338 lwork: *mut ::core::ffi::c_int,
7339 ) -> cusolverStatus_t {
7340 (culib().cusolverDnCgesvd_bufferSize)(handle, m, n, lwork)
7341 }
7342 pub unsafe fn cusolverDnCgesvdaStridedBatched(
7343 handle: cusolverDnHandle_t,
7344 jobz: cusolverEigMode_t,
7345 rank: ::core::ffi::c_int,
7346 m: ::core::ffi::c_int,
7347 n: ::core::ffi::c_int,
7348 d_A: *const cuComplex,
7349 lda: ::core::ffi::c_int,
7350 strideA: ::core::ffi::c_longlong,
7351 d_S: *mut f32,
7352 strideS: ::core::ffi::c_longlong,
7353 d_U: *mut cuComplex,
7354 ldu: ::core::ffi::c_int,
7355 strideU: ::core::ffi::c_longlong,
7356 d_V: *mut cuComplex,
7357 ldv: ::core::ffi::c_int,
7358 strideV: ::core::ffi::c_longlong,
7359 d_work: *mut cuComplex,
7360 lwork: ::core::ffi::c_int,
7361 d_info: *mut ::core::ffi::c_int,
7362 h_R_nrmF: *mut f64,
7363 batchSize: ::core::ffi::c_int,
7364 ) -> cusolverStatus_t {
7365 (culib().cusolverDnCgesvdaStridedBatched)(
7366 handle, jobz, rank, m, n, d_A, lda, strideA, d_S, strideS, d_U, ldu, strideU, d_V, ldv,
7367 strideV, d_work, lwork, d_info, h_R_nrmF, batchSize,
7368 )
7369 }
7370 pub unsafe fn cusolverDnCgesvdaStridedBatched_bufferSize(
7371 handle: cusolverDnHandle_t,
7372 jobz: cusolverEigMode_t,
7373 rank: ::core::ffi::c_int,
7374 m: ::core::ffi::c_int,
7375 n: ::core::ffi::c_int,
7376 d_A: *const cuComplex,
7377 lda: ::core::ffi::c_int,
7378 strideA: ::core::ffi::c_longlong,
7379 d_S: *const f32,
7380 strideS: ::core::ffi::c_longlong,
7381 d_U: *const cuComplex,
7382 ldu: ::core::ffi::c_int,
7383 strideU: ::core::ffi::c_longlong,
7384 d_V: *const cuComplex,
7385 ldv: ::core::ffi::c_int,
7386 strideV: ::core::ffi::c_longlong,
7387 lwork: *mut ::core::ffi::c_int,
7388 batchSize: ::core::ffi::c_int,
7389 ) -> cusolverStatus_t {
7390 (culib().cusolverDnCgesvdaStridedBatched_bufferSize)(
7391 handle, jobz, rank, m, n, d_A, lda, strideA, d_S, strideS, d_U, ldu, strideU, d_V, ldv,
7392 strideV, lwork, batchSize,
7393 )
7394 }
7395 pub unsafe fn cusolverDnCgesvdj(
7396 handle: cusolverDnHandle_t,
7397 jobz: cusolverEigMode_t,
7398 econ: ::core::ffi::c_int,
7399 m: ::core::ffi::c_int,
7400 n: ::core::ffi::c_int,
7401 A: *mut cuComplex,
7402 lda: ::core::ffi::c_int,
7403 S: *mut f32,
7404 U: *mut cuComplex,
7405 ldu: ::core::ffi::c_int,
7406 V: *mut cuComplex,
7407 ldv: ::core::ffi::c_int,
7408 work: *mut cuComplex,
7409 lwork: ::core::ffi::c_int,
7410 info: *mut ::core::ffi::c_int,
7411 params: gesvdjInfo_t,
7412 ) -> cusolverStatus_t {
7413 (culib().cusolverDnCgesvdj)(
7414 handle, jobz, econ, m, n, A, lda, S, U, ldu, V, ldv, work, lwork, info, params,
7415 )
7416 }
7417 pub unsafe fn cusolverDnCgesvdjBatched(
7418 handle: cusolverDnHandle_t,
7419 jobz: cusolverEigMode_t,
7420 m: ::core::ffi::c_int,
7421 n: ::core::ffi::c_int,
7422 A: *mut cuComplex,
7423 lda: ::core::ffi::c_int,
7424 S: *mut f32,
7425 U: *mut cuComplex,
7426 ldu: ::core::ffi::c_int,
7427 V: *mut cuComplex,
7428 ldv: ::core::ffi::c_int,
7429 work: *mut cuComplex,
7430 lwork: ::core::ffi::c_int,
7431 info: *mut ::core::ffi::c_int,
7432 params: gesvdjInfo_t,
7433 batchSize: ::core::ffi::c_int,
7434 ) -> cusolverStatus_t {
7435 (culib().cusolverDnCgesvdjBatched)(
7436 handle, jobz, m, n, A, lda, S, U, ldu, V, ldv, work, lwork, info, params, batchSize,
7437 )
7438 }
7439 pub unsafe fn cusolverDnCgesvdjBatched_bufferSize(
7440 handle: cusolverDnHandle_t,
7441 jobz: cusolverEigMode_t,
7442 m: ::core::ffi::c_int,
7443 n: ::core::ffi::c_int,
7444 A: *const cuComplex,
7445 lda: ::core::ffi::c_int,
7446 S: *const f32,
7447 U: *const cuComplex,
7448 ldu: ::core::ffi::c_int,
7449 V: *const cuComplex,
7450 ldv: ::core::ffi::c_int,
7451 lwork: *mut ::core::ffi::c_int,
7452 params: gesvdjInfo_t,
7453 batchSize: ::core::ffi::c_int,
7454 ) -> cusolverStatus_t {
7455 (culib().cusolverDnCgesvdjBatched_bufferSize)(
7456 handle, jobz, m, n, A, lda, S, U, ldu, V, ldv, lwork, params, batchSize,
7457 )
7458 }
7459 pub unsafe fn cusolverDnCgesvdj_bufferSize(
7460 handle: cusolverDnHandle_t,
7461 jobz: cusolverEigMode_t,
7462 econ: ::core::ffi::c_int,
7463 m: ::core::ffi::c_int,
7464 n: ::core::ffi::c_int,
7465 A: *const cuComplex,
7466 lda: ::core::ffi::c_int,
7467 S: *const f32,
7468 U: *const cuComplex,
7469 ldu: ::core::ffi::c_int,
7470 V: *const cuComplex,
7471 ldv: ::core::ffi::c_int,
7472 lwork: *mut ::core::ffi::c_int,
7473 params: gesvdjInfo_t,
7474 ) -> cusolverStatus_t {
7475 (culib().cusolverDnCgesvdj_bufferSize)(
7476 handle, jobz, econ, m, n, A, lda, S, U, ldu, V, ldv, lwork, params,
7477 )
7478 }
7479 pub unsafe fn cusolverDnCgetrf(
7480 handle: cusolverDnHandle_t,
7481 m: ::core::ffi::c_int,
7482 n: ::core::ffi::c_int,
7483 A: *mut cuComplex,
7484 lda: ::core::ffi::c_int,
7485 Workspace: *mut cuComplex,
7486 devIpiv: *mut ::core::ffi::c_int,
7487 devInfo: *mut ::core::ffi::c_int,
7488 ) -> cusolverStatus_t {
7489 (culib().cusolverDnCgetrf)(handle, m, n, A, lda, Workspace, devIpiv, devInfo)
7490 }
7491 pub unsafe fn cusolverDnCgetrf_bufferSize(
7492 handle: cusolverDnHandle_t,
7493 m: ::core::ffi::c_int,
7494 n: ::core::ffi::c_int,
7495 A: *mut cuComplex,
7496 lda: ::core::ffi::c_int,
7497 Lwork: *mut ::core::ffi::c_int,
7498 ) -> cusolverStatus_t {
7499 (culib().cusolverDnCgetrf_bufferSize)(handle, m, n, A, lda, Lwork)
7500 }
7501 pub unsafe fn cusolverDnCgetrs(
7502 handle: cusolverDnHandle_t,
7503 trans: cublasOperation_t,
7504 n: ::core::ffi::c_int,
7505 nrhs: ::core::ffi::c_int,
7506 A: *const cuComplex,
7507 lda: ::core::ffi::c_int,
7508 devIpiv: *const ::core::ffi::c_int,
7509 B: *mut cuComplex,
7510 ldb: ::core::ffi::c_int,
7511 devInfo: *mut ::core::ffi::c_int,
7512 ) -> cusolverStatus_t {
7513 (culib().cusolverDnCgetrs)(handle, trans, n, nrhs, A, lda, devIpiv, B, ldb, devInfo)
7514 }
7515 pub unsafe fn cusolverDnCheevd(
7516 handle: cusolverDnHandle_t,
7517 jobz: cusolverEigMode_t,
7518 uplo: cublasFillMode_t,
7519 n: ::core::ffi::c_int,
7520 A: *mut cuComplex,
7521 lda: ::core::ffi::c_int,
7522 W: *mut f32,
7523 work: *mut cuComplex,
7524 lwork: ::core::ffi::c_int,
7525 info: *mut ::core::ffi::c_int,
7526 ) -> cusolverStatus_t {
7527 (culib().cusolverDnCheevd)(handle, jobz, uplo, n, A, lda, W, work, lwork, info)
7528 }
7529 pub unsafe fn cusolverDnCheevd_bufferSize(
7530 handle: cusolverDnHandle_t,
7531 jobz: cusolverEigMode_t,
7532 uplo: cublasFillMode_t,
7533 n: ::core::ffi::c_int,
7534 A: *const cuComplex,
7535 lda: ::core::ffi::c_int,
7536 W: *const f32,
7537 lwork: *mut ::core::ffi::c_int,
7538 ) -> cusolverStatus_t {
7539 (culib().cusolverDnCheevd_bufferSize)(handle, jobz, uplo, n, A, lda, W, lwork)
7540 }
7541 pub unsafe fn cusolverDnCheevdx(
7542 handle: cusolverDnHandle_t,
7543 jobz: cusolverEigMode_t,
7544 range: cusolverEigRange_t,
7545 uplo: cublasFillMode_t,
7546 n: ::core::ffi::c_int,
7547 A: *mut cuComplex,
7548 lda: ::core::ffi::c_int,
7549 vl: f32,
7550 vu: f32,
7551 il: ::core::ffi::c_int,
7552 iu: ::core::ffi::c_int,
7553 meig: *mut ::core::ffi::c_int,
7554 W: *mut f32,
7555 work: *mut cuComplex,
7556 lwork: ::core::ffi::c_int,
7557 info: *mut ::core::ffi::c_int,
7558 ) -> cusolverStatus_t {
7559 (culib().cusolverDnCheevdx)(
7560 handle, jobz, range, uplo, n, A, lda, vl, vu, il, iu, meig, W, work, lwork, info,
7561 )
7562 }
7563 pub unsafe fn cusolverDnCheevdx_bufferSize(
7564 handle: cusolverDnHandle_t,
7565 jobz: cusolverEigMode_t,
7566 range: cusolverEigRange_t,
7567 uplo: cublasFillMode_t,
7568 n: ::core::ffi::c_int,
7569 A: *const cuComplex,
7570 lda: ::core::ffi::c_int,
7571 vl: f32,
7572 vu: f32,
7573 il: ::core::ffi::c_int,
7574 iu: ::core::ffi::c_int,
7575 meig: *mut ::core::ffi::c_int,
7576 W: *const f32,
7577 lwork: *mut ::core::ffi::c_int,
7578 ) -> cusolverStatus_t {
7579 (culib().cusolverDnCheevdx_bufferSize)(
7580 handle, jobz, range, uplo, n, A, lda, vl, vu, il, iu, meig, W, lwork,
7581 )
7582 }
7583 pub unsafe fn cusolverDnCheevj(
7584 handle: cusolverDnHandle_t,
7585 jobz: cusolverEigMode_t,
7586 uplo: cublasFillMode_t,
7587 n: ::core::ffi::c_int,
7588 A: *mut cuComplex,
7589 lda: ::core::ffi::c_int,
7590 W: *mut f32,
7591 work: *mut cuComplex,
7592 lwork: ::core::ffi::c_int,
7593 info: *mut ::core::ffi::c_int,
7594 params: syevjInfo_t,
7595 ) -> cusolverStatus_t {
7596 (culib().cusolverDnCheevj)(handle, jobz, uplo, n, A, lda, W, work, lwork, info, params)
7597 }
7598 pub unsafe fn cusolverDnCheevjBatched(
7599 handle: cusolverDnHandle_t,
7600 jobz: cusolverEigMode_t,
7601 uplo: cublasFillMode_t,
7602 n: ::core::ffi::c_int,
7603 A: *mut cuComplex,
7604 lda: ::core::ffi::c_int,
7605 W: *mut f32,
7606 work: *mut cuComplex,
7607 lwork: ::core::ffi::c_int,
7608 info: *mut ::core::ffi::c_int,
7609 params: syevjInfo_t,
7610 batchSize: ::core::ffi::c_int,
7611 ) -> cusolverStatus_t {
7612 (culib().cusolverDnCheevjBatched)(
7613 handle, jobz, uplo, n, A, lda, W, work, lwork, info, params, batchSize,
7614 )
7615 }
7616 pub unsafe fn cusolverDnCheevjBatched_bufferSize(
7617 handle: cusolverDnHandle_t,
7618 jobz: cusolverEigMode_t,
7619 uplo: cublasFillMode_t,
7620 n: ::core::ffi::c_int,
7621 A: *const cuComplex,
7622 lda: ::core::ffi::c_int,
7623 W: *const f32,
7624 lwork: *mut ::core::ffi::c_int,
7625 params: syevjInfo_t,
7626 batchSize: ::core::ffi::c_int,
7627 ) -> cusolverStatus_t {
7628 (culib().cusolverDnCheevjBatched_bufferSize)(
7629 handle, jobz, uplo, n, A, lda, W, lwork, params, batchSize,
7630 )
7631 }
7632 pub unsafe fn cusolverDnCheevj_bufferSize(
7633 handle: cusolverDnHandle_t,
7634 jobz: cusolverEigMode_t,
7635 uplo: cublasFillMode_t,
7636 n: ::core::ffi::c_int,
7637 A: *const cuComplex,
7638 lda: ::core::ffi::c_int,
7639 W: *const f32,
7640 lwork: *mut ::core::ffi::c_int,
7641 params: syevjInfo_t,
7642 ) -> cusolverStatus_t {
7643 (culib().cusolverDnCheevj_bufferSize)(handle, jobz, uplo, n, A, lda, W, lwork, params)
7644 }
7645 pub unsafe fn cusolverDnChegvd(
7646 handle: cusolverDnHandle_t,
7647 itype: cusolverEigType_t,
7648 jobz: cusolverEigMode_t,
7649 uplo: cublasFillMode_t,
7650 n: ::core::ffi::c_int,
7651 A: *mut cuComplex,
7652 lda: ::core::ffi::c_int,
7653 B: *mut cuComplex,
7654 ldb: ::core::ffi::c_int,
7655 W: *mut f32,
7656 work: *mut cuComplex,
7657 lwork: ::core::ffi::c_int,
7658 info: *mut ::core::ffi::c_int,
7659 ) -> cusolverStatus_t {
7660 (culib().cusolverDnChegvd)(
7661 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, work, lwork, info,
7662 )
7663 }
7664 pub unsafe fn cusolverDnChegvd_bufferSize(
7665 handle: cusolverDnHandle_t,
7666 itype: cusolverEigType_t,
7667 jobz: cusolverEigMode_t,
7668 uplo: cublasFillMode_t,
7669 n: ::core::ffi::c_int,
7670 A: *const cuComplex,
7671 lda: ::core::ffi::c_int,
7672 B: *const cuComplex,
7673 ldb: ::core::ffi::c_int,
7674 W: *const f32,
7675 lwork: *mut ::core::ffi::c_int,
7676 ) -> cusolverStatus_t {
7677 (culib().cusolverDnChegvd_bufferSize)(
7678 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, lwork,
7679 )
7680 }
7681 pub unsafe fn cusolverDnChegvdx(
7682 handle: cusolverDnHandle_t,
7683 itype: cusolverEigType_t,
7684 jobz: cusolverEigMode_t,
7685 range: cusolverEigRange_t,
7686 uplo: cublasFillMode_t,
7687 n: ::core::ffi::c_int,
7688 A: *mut cuComplex,
7689 lda: ::core::ffi::c_int,
7690 B: *mut cuComplex,
7691 ldb: ::core::ffi::c_int,
7692 vl: f32,
7693 vu: f32,
7694 il: ::core::ffi::c_int,
7695 iu: ::core::ffi::c_int,
7696 meig: *mut ::core::ffi::c_int,
7697 W: *mut f32,
7698 work: *mut cuComplex,
7699 lwork: ::core::ffi::c_int,
7700 info: *mut ::core::ffi::c_int,
7701 ) -> cusolverStatus_t {
7702 (culib().cusolverDnChegvdx)(
7703 handle, itype, jobz, range, uplo, n, A, lda, B, ldb, vl, vu, il, iu, meig, W, work,
7704 lwork, info,
7705 )
7706 }
7707 pub unsafe fn cusolverDnChegvdx_bufferSize(
7708 handle: cusolverDnHandle_t,
7709 itype: cusolverEigType_t,
7710 jobz: cusolverEigMode_t,
7711 range: cusolverEigRange_t,
7712 uplo: cublasFillMode_t,
7713 n: ::core::ffi::c_int,
7714 A: *const cuComplex,
7715 lda: ::core::ffi::c_int,
7716 B: *const cuComplex,
7717 ldb: ::core::ffi::c_int,
7718 vl: f32,
7719 vu: f32,
7720 il: ::core::ffi::c_int,
7721 iu: ::core::ffi::c_int,
7722 meig: *mut ::core::ffi::c_int,
7723 W: *const f32,
7724 lwork: *mut ::core::ffi::c_int,
7725 ) -> cusolverStatus_t {
7726 (culib().cusolverDnChegvdx_bufferSize)(
7727 handle, itype, jobz, range, uplo, n, A, lda, B, ldb, vl, vu, il, iu, meig, W, lwork,
7728 )
7729 }
7730 pub unsafe fn cusolverDnChegvj(
7731 handle: cusolverDnHandle_t,
7732 itype: cusolverEigType_t,
7733 jobz: cusolverEigMode_t,
7734 uplo: cublasFillMode_t,
7735 n: ::core::ffi::c_int,
7736 A: *mut cuComplex,
7737 lda: ::core::ffi::c_int,
7738 B: *mut cuComplex,
7739 ldb: ::core::ffi::c_int,
7740 W: *mut f32,
7741 work: *mut cuComplex,
7742 lwork: ::core::ffi::c_int,
7743 info: *mut ::core::ffi::c_int,
7744 params: syevjInfo_t,
7745 ) -> cusolverStatus_t {
7746 (culib().cusolverDnChegvj)(
7747 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, work, lwork, info, params,
7748 )
7749 }
7750 pub unsafe fn cusolverDnChegvj_bufferSize(
7751 handle: cusolverDnHandle_t,
7752 itype: cusolverEigType_t,
7753 jobz: cusolverEigMode_t,
7754 uplo: cublasFillMode_t,
7755 n: ::core::ffi::c_int,
7756 A: *const cuComplex,
7757 lda: ::core::ffi::c_int,
7758 B: *const cuComplex,
7759 ldb: ::core::ffi::c_int,
7760 W: *const f32,
7761 lwork: *mut ::core::ffi::c_int,
7762 params: syevjInfo_t,
7763 ) -> cusolverStatus_t {
7764 (culib().cusolverDnChegvj_bufferSize)(
7765 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, lwork, params,
7766 )
7767 }
7768 pub unsafe fn cusolverDnChetrd(
7769 handle: cusolverDnHandle_t,
7770 uplo: cublasFillMode_t,
7771 n: ::core::ffi::c_int,
7772 A: *mut cuComplex,
7773 lda: ::core::ffi::c_int,
7774 d: *mut f32,
7775 e: *mut f32,
7776 tau: *mut cuComplex,
7777 work: *mut cuComplex,
7778 lwork: ::core::ffi::c_int,
7779 info: *mut ::core::ffi::c_int,
7780 ) -> cusolverStatus_t {
7781 (culib().cusolverDnChetrd)(handle, uplo, n, A, lda, d, e, tau, work, lwork, info)
7782 }
7783 pub unsafe fn cusolverDnChetrd_bufferSize(
7784 handle: cusolverDnHandle_t,
7785 uplo: cublasFillMode_t,
7786 n: ::core::ffi::c_int,
7787 A: *const cuComplex,
7788 lda: ::core::ffi::c_int,
7789 d: *const f32,
7790 e: *const f32,
7791 tau: *const cuComplex,
7792 lwork: *mut ::core::ffi::c_int,
7793 ) -> cusolverStatus_t {
7794 (culib().cusolverDnChetrd_bufferSize)(handle, uplo, n, A, lda, d, e, tau, lwork)
7795 }
7796 pub unsafe fn cusolverDnClaswp(
7797 handle: cusolverDnHandle_t,
7798 n: ::core::ffi::c_int,
7799 A: *mut cuComplex,
7800 lda: ::core::ffi::c_int,
7801 k1: ::core::ffi::c_int,
7802 k2: ::core::ffi::c_int,
7803 devIpiv: *const ::core::ffi::c_int,
7804 incx: ::core::ffi::c_int,
7805 ) -> cusolverStatus_t {
7806 (culib().cusolverDnClaswp)(handle, n, A, lda, k1, k2, devIpiv, incx)
7807 }
7808 pub unsafe fn cusolverDnClauum(
7809 handle: cusolverDnHandle_t,
7810 uplo: cublasFillMode_t,
7811 n: ::core::ffi::c_int,
7812 A: *mut cuComplex,
7813 lda: ::core::ffi::c_int,
7814 work: *mut cuComplex,
7815 lwork: ::core::ffi::c_int,
7816 devInfo: *mut ::core::ffi::c_int,
7817 ) -> cusolverStatus_t {
7818 (culib().cusolverDnClauum)(handle, uplo, n, A, lda, work, lwork, devInfo)
7819 }
7820 pub unsafe fn cusolverDnClauum_bufferSize(
7821 handle: cusolverDnHandle_t,
7822 uplo: cublasFillMode_t,
7823 n: ::core::ffi::c_int,
7824 A: *mut cuComplex,
7825 lda: ::core::ffi::c_int,
7826 lwork: *mut ::core::ffi::c_int,
7827 ) -> cusolverStatus_t {
7828 (culib().cusolverDnClauum_bufferSize)(handle, uplo, n, A, lda, lwork)
7829 }
7830 pub unsafe fn cusolverDnCpotrf(
7831 handle: cusolverDnHandle_t,
7832 uplo: cublasFillMode_t,
7833 n: ::core::ffi::c_int,
7834 A: *mut cuComplex,
7835 lda: ::core::ffi::c_int,
7836 Workspace: *mut cuComplex,
7837 Lwork: ::core::ffi::c_int,
7838 devInfo: *mut ::core::ffi::c_int,
7839 ) -> cusolverStatus_t {
7840 (culib().cusolverDnCpotrf)(handle, uplo, n, A, lda, Workspace, Lwork, devInfo)
7841 }
7842 pub unsafe fn cusolverDnCpotrfBatched(
7843 handle: cusolverDnHandle_t,
7844 uplo: cublasFillMode_t,
7845 n: ::core::ffi::c_int,
7846 Aarray: *mut *mut cuComplex,
7847 lda: ::core::ffi::c_int,
7848 infoArray: *mut ::core::ffi::c_int,
7849 batchSize: ::core::ffi::c_int,
7850 ) -> cusolverStatus_t {
7851 (culib().cusolverDnCpotrfBatched)(handle, uplo, n, Aarray, lda, infoArray, batchSize)
7852 }
7853 pub unsafe fn cusolverDnCpotrf_bufferSize(
7854 handle: cusolverDnHandle_t,
7855 uplo: cublasFillMode_t,
7856 n: ::core::ffi::c_int,
7857 A: *mut cuComplex,
7858 lda: ::core::ffi::c_int,
7859 Lwork: *mut ::core::ffi::c_int,
7860 ) -> cusolverStatus_t {
7861 (culib().cusolverDnCpotrf_bufferSize)(handle, uplo, n, A, lda, Lwork)
7862 }
7863 pub unsafe fn cusolverDnCpotri(
7864 handle: cusolverDnHandle_t,
7865 uplo: cublasFillMode_t,
7866 n: ::core::ffi::c_int,
7867 A: *mut cuComplex,
7868 lda: ::core::ffi::c_int,
7869 work: *mut cuComplex,
7870 lwork: ::core::ffi::c_int,
7871 devInfo: *mut ::core::ffi::c_int,
7872 ) -> cusolverStatus_t {
7873 (culib().cusolverDnCpotri)(handle, uplo, n, A, lda, work, lwork, devInfo)
7874 }
7875 pub unsafe fn cusolverDnCpotri_bufferSize(
7876 handle: cusolverDnHandle_t,
7877 uplo: cublasFillMode_t,
7878 n: ::core::ffi::c_int,
7879 A: *mut cuComplex,
7880 lda: ::core::ffi::c_int,
7881 lwork: *mut ::core::ffi::c_int,
7882 ) -> cusolverStatus_t {
7883 (culib().cusolverDnCpotri_bufferSize)(handle, uplo, n, A, lda, lwork)
7884 }
7885 pub unsafe fn cusolverDnCpotrs(
7886 handle: cusolverDnHandle_t,
7887 uplo: cublasFillMode_t,
7888 n: ::core::ffi::c_int,
7889 nrhs: ::core::ffi::c_int,
7890 A: *const cuComplex,
7891 lda: ::core::ffi::c_int,
7892 B: *mut cuComplex,
7893 ldb: ::core::ffi::c_int,
7894 devInfo: *mut ::core::ffi::c_int,
7895 ) -> cusolverStatus_t {
7896 (culib().cusolverDnCpotrs)(handle, uplo, n, nrhs, A, lda, B, ldb, devInfo)
7897 }
7898 pub unsafe fn cusolverDnCpotrsBatched(
7899 handle: cusolverDnHandle_t,
7900 uplo: cublasFillMode_t,
7901 n: ::core::ffi::c_int,
7902 nrhs: ::core::ffi::c_int,
7903 A: *mut *mut cuComplex,
7904 lda: ::core::ffi::c_int,
7905 B: *mut *mut cuComplex,
7906 ldb: ::core::ffi::c_int,
7907 d_info: *mut ::core::ffi::c_int,
7908 batchSize: ::core::ffi::c_int,
7909 ) -> cusolverStatus_t {
7910 (culib().cusolverDnCpotrsBatched)(handle, uplo, n, nrhs, A, lda, B, ldb, d_info, batchSize)
7911 }
7912 pub unsafe fn cusolverDnCreate(handle: *mut cusolverDnHandle_t) -> cusolverStatus_t {
7913 (culib().cusolverDnCreate)(handle)
7914 }
7915 pub unsafe fn cusolverDnCreateGesvdjInfo(info: *mut gesvdjInfo_t) -> cusolverStatus_t {
7916 (culib().cusolverDnCreateGesvdjInfo)(info)
7917 }
7918 pub unsafe fn cusolverDnCreateParams(params: *mut cusolverDnParams_t) -> cusolverStatus_t {
7919 (culib().cusolverDnCreateParams)(params)
7920 }
7921 pub unsafe fn cusolverDnCreateSyevjInfo(info: *mut syevjInfo_t) -> cusolverStatus_t {
7922 (culib().cusolverDnCreateSyevjInfo)(info)
7923 }
7924 pub unsafe fn cusolverDnCsytrf(
7925 handle: cusolverDnHandle_t,
7926 uplo: cublasFillMode_t,
7927 n: ::core::ffi::c_int,
7928 A: *mut cuComplex,
7929 lda: ::core::ffi::c_int,
7930 ipiv: *mut ::core::ffi::c_int,
7931 work: *mut cuComplex,
7932 lwork: ::core::ffi::c_int,
7933 info: *mut ::core::ffi::c_int,
7934 ) -> cusolverStatus_t {
7935 (culib().cusolverDnCsytrf)(handle, uplo, n, A, lda, ipiv, work, lwork, info)
7936 }
7937 pub unsafe fn cusolverDnCsytrf_bufferSize(
7938 handle: cusolverDnHandle_t,
7939 n: ::core::ffi::c_int,
7940 A: *mut cuComplex,
7941 lda: ::core::ffi::c_int,
7942 lwork: *mut ::core::ffi::c_int,
7943 ) -> cusolverStatus_t {
7944 (culib().cusolverDnCsytrf_bufferSize)(handle, n, A, lda, lwork)
7945 }
7946 pub unsafe fn cusolverDnCsytri(
7947 handle: cusolverDnHandle_t,
7948 uplo: cublasFillMode_t,
7949 n: ::core::ffi::c_int,
7950 A: *mut cuComplex,
7951 lda: ::core::ffi::c_int,
7952 ipiv: *const ::core::ffi::c_int,
7953 work: *mut cuComplex,
7954 lwork: ::core::ffi::c_int,
7955 info: *mut ::core::ffi::c_int,
7956 ) -> cusolverStatus_t {
7957 (culib().cusolverDnCsytri)(handle, uplo, n, A, lda, ipiv, work, lwork, info)
7958 }
7959 pub unsafe fn cusolverDnCsytri_bufferSize(
7960 handle: cusolverDnHandle_t,
7961 uplo: cublasFillMode_t,
7962 n: ::core::ffi::c_int,
7963 A: *mut cuComplex,
7964 lda: ::core::ffi::c_int,
7965 ipiv: *const ::core::ffi::c_int,
7966 lwork: *mut ::core::ffi::c_int,
7967 ) -> cusolverStatus_t {
7968 (culib().cusolverDnCsytri_bufferSize)(handle, uplo, n, A, lda, ipiv, lwork)
7969 }
7970 pub unsafe fn cusolverDnCungbr(
7971 handle: cusolverDnHandle_t,
7972 side: cublasSideMode_t,
7973 m: ::core::ffi::c_int,
7974 n: ::core::ffi::c_int,
7975 k: ::core::ffi::c_int,
7976 A: *mut cuComplex,
7977 lda: ::core::ffi::c_int,
7978 tau: *const cuComplex,
7979 work: *mut cuComplex,
7980 lwork: ::core::ffi::c_int,
7981 info: *mut ::core::ffi::c_int,
7982 ) -> cusolverStatus_t {
7983 (culib().cusolverDnCungbr)(handle, side, m, n, k, A, lda, tau, work, lwork, info)
7984 }
7985 pub unsafe fn cusolverDnCungbr_bufferSize(
7986 handle: cusolverDnHandle_t,
7987 side: cublasSideMode_t,
7988 m: ::core::ffi::c_int,
7989 n: ::core::ffi::c_int,
7990 k: ::core::ffi::c_int,
7991 A: *const cuComplex,
7992 lda: ::core::ffi::c_int,
7993 tau: *const cuComplex,
7994 lwork: *mut ::core::ffi::c_int,
7995 ) -> cusolverStatus_t {
7996 (culib().cusolverDnCungbr_bufferSize)(handle, side, m, n, k, A, lda, tau, lwork)
7997 }
7998 pub unsafe fn cusolverDnCungqr(
7999 handle: cusolverDnHandle_t,
8000 m: ::core::ffi::c_int,
8001 n: ::core::ffi::c_int,
8002 k: ::core::ffi::c_int,
8003 A: *mut cuComplex,
8004 lda: ::core::ffi::c_int,
8005 tau: *const cuComplex,
8006 work: *mut cuComplex,
8007 lwork: ::core::ffi::c_int,
8008 info: *mut ::core::ffi::c_int,
8009 ) -> cusolverStatus_t {
8010 (culib().cusolverDnCungqr)(handle, m, n, k, A, lda, tau, work, lwork, info)
8011 }
8012 pub unsafe fn cusolverDnCungqr_bufferSize(
8013 handle: cusolverDnHandle_t,
8014 m: ::core::ffi::c_int,
8015 n: ::core::ffi::c_int,
8016 k: ::core::ffi::c_int,
8017 A: *const cuComplex,
8018 lda: ::core::ffi::c_int,
8019 tau: *const cuComplex,
8020 lwork: *mut ::core::ffi::c_int,
8021 ) -> cusolverStatus_t {
8022 (culib().cusolverDnCungqr_bufferSize)(handle, m, n, k, A, lda, tau, lwork)
8023 }
8024 pub unsafe fn cusolverDnCungtr(
8025 handle: cusolverDnHandle_t,
8026 uplo: cublasFillMode_t,
8027 n: ::core::ffi::c_int,
8028 A: *mut cuComplex,
8029 lda: ::core::ffi::c_int,
8030 tau: *const cuComplex,
8031 work: *mut cuComplex,
8032 lwork: ::core::ffi::c_int,
8033 info: *mut ::core::ffi::c_int,
8034 ) -> cusolverStatus_t {
8035 (culib().cusolverDnCungtr)(handle, uplo, n, A, lda, tau, work, lwork, info)
8036 }
8037 pub unsafe fn cusolverDnCungtr_bufferSize(
8038 handle: cusolverDnHandle_t,
8039 uplo: cublasFillMode_t,
8040 n: ::core::ffi::c_int,
8041 A: *const cuComplex,
8042 lda: ::core::ffi::c_int,
8043 tau: *const cuComplex,
8044 lwork: *mut ::core::ffi::c_int,
8045 ) -> cusolverStatus_t {
8046 (culib().cusolverDnCungtr_bufferSize)(handle, uplo, n, A, lda, tau, lwork)
8047 }
8048 pub unsafe fn cusolverDnCunmqr(
8049 handle: cusolverDnHandle_t,
8050 side: cublasSideMode_t,
8051 trans: cublasOperation_t,
8052 m: ::core::ffi::c_int,
8053 n: ::core::ffi::c_int,
8054 k: ::core::ffi::c_int,
8055 A: *const cuComplex,
8056 lda: ::core::ffi::c_int,
8057 tau: *const cuComplex,
8058 C: *mut cuComplex,
8059 ldc: ::core::ffi::c_int,
8060 work: *mut cuComplex,
8061 lwork: ::core::ffi::c_int,
8062 devInfo: *mut ::core::ffi::c_int,
8063 ) -> cusolverStatus_t {
8064 (culib().cusolverDnCunmqr)(
8065 handle, side, trans, m, n, k, A, lda, tau, C, ldc, work, lwork, devInfo,
8066 )
8067 }
8068 pub unsafe fn cusolverDnCunmqr_bufferSize(
8069 handle: cusolverDnHandle_t,
8070 side: cublasSideMode_t,
8071 trans: cublasOperation_t,
8072 m: ::core::ffi::c_int,
8073 n: ::core::ffi::c_int,
8074 k: ::core::ffi::c_int,
8075 A: *const cuComplex,
8076 lda: ::core::ffi::c_int,
8077 tau: *const cuComplex,
8078 C: *const cuComplex,
8079 ldc: ::core::ffi::c_int,
8080 lwork: *mut ::core::ffi::c_int,
8081 ) -> cusolverStatus_t {
8082 (culib().cusolverDnCunmqr_bufferSize)(
8083 handle, side, trans, m, n, k, A, lda, tau, C, ldc, lwork,
8084 )
8085 }
8086 pub unsafe fn cusolverDnCunmtr(
8087 handle: cusolverDnHandle_t,
8088 side: cublasSideMode_t,
8089 uplo: cublasFillMode_t,
8090 trans: cublasOperation_t,
8091 m: ::core::ffi::c_int,
8092 n: ::core::ffi::c_int,
8093 A: *mut cuComplex,
8094 lda: ::core::ffi::c_int,
8095 tau: *mut cuComplex,
8096 C: *mut cuComplex,
8097 ldc: ::core::ffi::c_int,
8098 work: *mut cuComplex,
8099 lwork: ::core::ffi::c_int,
8100 info: *mut ::core::ffi::c_int,
8101 ) -> cusolverStatus_t {
8102 (culib().cusolverDnCunmtr)(
8103 handle, side, uplo, trans, m, n, A, lda, tau, C, ldc, work, lwork, info,
8104 )
8105 }
8106 pub unsafe fn cusolverDnCunmtr_bufferSize(
8107 handle: cusolverDnHandle_t,
8108 side: cublasSideMode_t,
8109 uplo: cublasFillMode_t,
8110 trans: cublasOperation_t,
8111 m: ::core::ffi::c_int,
8112 n: ::core::ffi::c_int,
8113 A: *const cuComplex,
8114 lda: ::core::ffi::c_int,
8115 tau: *const cuComplex,
8116 C: *const cuComplex,
8117 ldc: ::core::ffi::c_int,
8118 lwork: *mut ::core::ffi::c_int,
8119 ) -> cusolverStatus_t {
8120 (culib().cusolverDnCunmtr_bufferSize)(
8121 handle, side, uplo, trans, m, n, A, lda, tau, C, ldc, lwork,
8122 )
8123 }
8124 pub unsafe fn cusolverDnDBgels(
8125 handle: cusolverDnHandle_t,
8126 m: cusolver_int_t,
8127 n: cusolver_int_t,
8128 nrhs: cusolver_int_t,
8129 dA: *mut f64,
8130 ldda: cusolver_int_t,
8131 dB: *mut f64,
8132 lddb: cusolver_int_t,
8133 dX: *mut f64,
8134 lddx: cusolver_int_t,
8135 dWorkspace: *mut ::core::ffi::c_void,
8136 lwork_bytes: usize,
8137 iter: *mut cusolver_int_t,
8138 d_info: *mut cusolver_int_t,
8139 ) -> cusolverStatus_t {
8140 (culib().cusolverDnDBgels)(
8141 handle,
8142 m,
8143 n,
8144 nrhs,
8145 dA,
8146 ldda,
8147 dB,
8148 lddb,
8149 dX,
8150 lddx,
8151 dWorkspace,
8152 lwork_bytes,
8153 iter,
8154 d_info,
8155 )
8156 }
8157 pub unsafe fn cusolverDnDBgels_bufferSize(
8158 handle: cusolverDnHandle_t,
8159 m: cusolver_int_t,
8160 n: cusolver_int_t,
8161 nrhs: cusolver_int_t,
8162 dA: *mut f64,
8163 ldda: cusolver_int_t,
8164 dB: *mut f64,
8165 lddb: cusolver_int_t,
8166 dX: *mut f64,
8167 lddx: cusolver_int_t,
8168 dWorkspace: *mut ::core::ffi::c_void,
8169 lwork_bytes: *mut usize,
8170 ) -> cusolverStatus_t {
8171 (culib().cusolverDnDBgels_bufferSize)(
8172 handle,
8173 m,
8174 n,
8175 nrhs,
8176 dA,
8177 ldda,
8178 dB,
8179 lddb,
8180 dX,
8181 lddx,
8182 dWorkspace,
8183 lwork_bytes,
8184 )
8185 }
8186 pub unsafe fn cusolverDnDBgesv(
8187 handle: cusolverDnHandle_t,
8188 n: cusolver_int_t,
8189 nrhs: cusolver_int_t,
8190 dA: *mut f64,
8191 ldda: cusolver_int_t,
8192 dipiv: *mut cusolver_int_t,
8193 dB: *mut f64,
8194 lddb: cusolver_int_t,
8195 dX: *mut f64,
8196 lddx: cusolver_int_t,
8197 dWorkspace: *mut ::core::ffi::c_void,
8198 lwork_bytes: usize,
8199 iter: *mut cusolver_int_t,
8200 d_info: *mut cusolver_int_t,
8201 ) -> cusolverStatus_t {
8202 (culib().cusolverDnDBgesv)(
8203 handle,
8204 n,
8205 nrhs,
8206 dA,
8207 ldda,
8208 dipiv,
8209 dB,
8210 lddb,
8211 dX,
8212 lddx,
8213 dWorkspace,
8214 lwork_bytes,
8215 iter,
8216 d_info,
8217 )
8218 }
8219 pub unsafe fn cusolverDnDBgesv_bufferSize(
8220 handle: cusolverDnHandle_t,
8221 n: cusolver_int_t,
8222 nrhs: cusolver_int_t,
8223 dA: *mut f64,
8224 ldda: cusolver_int_t,
8225 dipiv: *mut cusolver_int_t,
8226 dB: *mut f64,
8227 lddb: cusolver_int_t,
8228 dX: *mut f64,
8229 lddx: cusolver_int_t,
8230 dWorkspace: *mut ::core::ffi::c_void,
8231 lwork_bytes: *mut usize,
8232 ) -> cusolverStatus_t {
8233 (culib().cusolverDnDBgesv_bufferSize)(
8234 handle,
8235 n,
8236 nrhs,
8237 dA,
8238 ldda,
8239 dipiv,
8240 dB,
8241 lddb,
8242 dX,
8243 lddx,
8244 dWorkspace,
8245 lwork_bytes,
8246 )
8247 }
8248 pub unsafe fn cusolverDnDDgels(
8249 handle: cusolverDnHandle_t,
8250 m: cusolver_int_t,
8251 n: cusolver_int_t,
8252 nrhs: cusolver_int_t,
8253 dA: *mut f64,
8254 ldda: cusolver_int_t,
8255 dB: *mut f64,
8256 lddb: cusolver_int_t,
8257 dX: *mut f64,
8258 lddx: cusolver_int_t,
8259 dWorkspace: *mut ::core::ffi::c_void,
8260 lwork_bytes: usize,
8261 iter: *mut cusolver_int_t,
8262 d_info: *mut cusolver_int_t,
8263 ) -> cusolverStatus_t {
8264 (culib().cusolverDnDDgels)(
8265 handle,
8266 m,
8267 n,
8268 nrhs,
8269 dA,
8270 ldda,
8271 dB,
8272 lddb,
8273 dX,
8274 lddx,
8275 dWorkspace,
8276 lwork_bytes,
8277 iter,
8278 d_info,
8279 )
8280 }
8281 pub unsafe fn cusolverDnDDgels_bufferSize(
8282 handle: cusolverDnHandle_t,
8283 m: cusolver_int_t,
8284 n: cusolver_int_t,
8285 nrhs: cusolver_int_t,
8286 dA: *mut f64,
8287 ldda: cusolver_int_t,
8288 dB: *mut f64,
8289 lddb: cusolver_int_t,
8290 dX: *mut f64,
8291 lddx: cusolver_int_t,
8292 dWorkspace: *mut ::core::ffi::c_void,
8293 lwork_bytes: *mut usize,
8294 ) -> cusolverStatus_t {
8295 (culib().cusolverDnDDgels_bufferSize)(
8296 handle,
8297 m,
8298 n,
8299 nrhs,
8300 dA,
8301 ldda,
8302 dB,
8303 lddb,
8304 dX,
8305 lddx,
8306 dWorkspace,
8307 lwork_bytes,
8308 )
8309 }
8310 pub unsafe fn cusolverDnDDgesv(
8311 handle: cusolverDnHandle_t,
8312 n: cusolver_int_t,
8313 nrhs: cusolver_int_t,
8314 dA: *mut f64,
8315 ldda: cusolver_int_t,
8316 dipiv: *mut cusolver_int_t,
8317 dB: *mut f64,
8318 lddb: cusolver_int_t,
8319 dX: *mut f64,
8320 lddx: cusolver_int_t,
8321 dWorkspace: *mut ::core::ffi::c_void,
8322 lwork_bytes: usize,
8323 iter: *mut cusolver_int_t,
8324 d_info: *mut cusolver_int_t,
8325 ) -> cusolverStatus_t {
8326 (culib().cusolverDnDDgesv)(
8327 handle,
8328 n,
8329 nrhs,
8330 dA,
8331 ldda,
8332 dipiv,
8333 dB,
8334 lddb,
8335 dX,
8336 lddx,
8337 dWorkspace,
8338 lwork_bytes,
8339 iter,
8340 d_info,
8341 )
8342 }
8343 pub unsafe fn cusolverDnDDgesv_bufferSize(
8344 handle: cusolverDnHandle_t,
8345 n: cusolver_int_t,
8346 nrhs: cusolver_int_t,
8347 dA: *mut f64,
8348 ldda: cusolver_int_t,
8349 dipiv: *mut cusolver_int_t,
8350 dB: *mut f64,
8351 lddb: cusolver_int_t,
8352 dX: *mut f64,
8353 lddx: cusolver_int_t,
8354 dWorkspace: *mut ::core::ffi::c_void,
8355 lwork_bytes: *mut usize,
8356 ) -> cusolverStatus_t {
8357 (culib().cusolverDnDDgesv_bufferSize)(
8358 handle,
8359 n,
8360 nrhs,
8361 dA,
8362 ldda,
8363 dipiv,
8364 dB,
8365 lddb,
8366 dX,
8367 lddx,
8368 dWorkspace,
8369 lwork_bytes,
8370 )
8371 }
8372 pub unsafe fn cusolverDnDHgels(
8373 handle: cusolverDnHandle_t,
8374 m: cusolver_int_t,
8375 n: cusolver_int_t,
8376 nrhs: cusolver_int_t,
8377 dA: *mut f64,
8378 ldda: cusolver_int_t,
8379 dB: *mut f64,
8380 lddb: cusolver_int_t,
8381 dX: *mut f64,
8382 lddx: cusolver_int_t,
8383 dWorkspace: *mut ::core::ffi::c_void,
8384 lwork_bytes: usize,
8385 iter: *mut cusolver_int_t,
8386 d_info: *mut cusolver_int_t,
8387 ) -> cusolverStatus_t {
8388 (culib().cusolverDnDHgels)(
8389 handle,
8390 m,
8391 n,
8392 nrhs,
8393 dA,
8394 ldda,
8395 dB,
8396 lddb,
8397 dX,
8398 lddx,
8399 dWorkspace,
8400 lwork_bytes,
8401 iter,
8402 d_info,
8403 )
8404 }
8405 pub unsafe fn cusolverDnDHgels_bufferSize(
8406 handle: cusolverDnHandle_t,
8407 m: cusolver_int_t,
8408 n: cusolver_int_t,
8409 nrhs: cusolver_int_t,
8410 dA: *mut f64,
8411 ldda: cusolver_int_t,
8412 dB: *mut f64,
8413 lddb: cusolver_int_t,
8414 dX: *mut f64,
8415 lddx: cusolver_int_t,
8416 dWorkspace: *mut ::core::ffi::c_void,
8417 lwork_bytes: *mut usize,
8418 ) -> cusolverStatus_t {
8419 (culib().cusolverDnDHgels_bufferSize)(
8420 handle,
8421 m,
8422 n,
8423 nrhs,
8424 dA,
8425 ldda,
8426 dB,
8427 lddb,
8428 dX,
8429 lddx,
8430 dWorkspace,
8431 lwork_bytes,
8432 )
8433 }
8434 pub unsafe fn cusolverDnDHgesv(
8435 handle: cusolverDnHandle_t,
8436 n: cusolver_int_t,
8437 nrhs: cusolver_int_t,
8438 dA: *mut f64,
8439 ldda: cusolver_int_t,
8440 dipiv: *mut cusolver_int_t,
8441 dB: *mut f64,
8442 lddb: cusolver_int_t,
8443 dX: *mut f64,
8444 lddx: cusolver_int_t,
8445 dWorkspace: *mut ::core::ffi::c_void,
8446 lwork_bytes: usize,
8447 iter: *mut cusolver_int_t,
8448 d_info: *mut cusolver_int_t,
8449 ) -> cusolverStatus_t {
8450 (culib().cusolverDnDHgesv)(
8451 handle,
8452 n,
8453 nrhs,
8454 dA,
8455 ldda,
8456 dipiv,
8457 dB,
8458 lddb,
8459 dX,
8460 lddx,
8461 dWorkspace,
8462 lwork_bytes,
8463 iter,
8464 d_info,
8465 )
8466 }
8467 pub unsafe fn cusolverDnDHgesv_bufferSize(
8468 handle: cusolverDnHandle_t,
8469 n: cusolver_int_t,
8470 nrhs: cusolver_int_t,
8471 dA: *mut f64,
8472 ldda: cusolver_int_t,
8473 dipiv: *mut cusolver_int_t,
8474 dB: *mut f64,
8475 lddb: cusolver_int_t,
8476 dX: *mut f64,
8477 lddx: cusolver_int_t,
8478 dWorkspace: *mut ::core::ffi::c_void,
8479 lwork_bytes: *mut usize,
8480 ) -> cusolverStatus_t {
8481 (culib().cusolverDnDHgesv_bufferSize)(
8482 handle,
8483 n,
8484 nrhs,
8485 dA,
8486 ldda,
8487 dipiv,
8488 dB,
8489 lddb,
8490 dX,
8491 lddx,
8492 dWorkspace,
8493 lwork_bytes,
8494 )
8495 }
8496 pub unsafe fn cusolverDnDSgels(
8497 handle: cusolverDnHandle_t,
8498 m: cusolver_int_t,
8499 n: cusolver_int_t,
8500 nrhs: cusolver_int_t,
8501 dA: *mut f64,
8502 ldda: cusolver_int_t,
8503 dB: *mut f64,
8504 lddb: cusolver_int_t,
8505 dX: *mut f64,
8506 lddx: cusolver_int_t,
8507 dWorkspace: *mut ::core::ffi::c_void,
8508 lwork_bytes: usize,
8509 iter: *mut cusolver_int_t,
8510 d_info: *mut cusolver_int_t,
8511 ) -> cusolverStatus_t {
8512 (culib().cusolverDnDSgels)(
8513 handle,
8514 m,
8515 n,
8516 nrhs,
8517 dA,
8518 ldda,
8519 dB,
8520 lddb,
8521 dX,
8522 lddx,
8523 dWorkspace,
8524 lwork_bytes,
8525 iter,
8526 d_info,
8527 )
8528 }
8529 pub unsafe fn cusolverDnDSgels_bufferSize(
8530 handle: cusolverDnHandle_t,
8531 m: cusolver_int_t,
8532 n: cusolver_int_t,
8533 nrhs: cusolver_int_t,
8534 dA: *mut f64,
8535 ldda: cusolver_int_t,
8536 dB: *mut f64,
8537 lddb: cusolver_int_t,
8538 dX: *mut f64,
8539 lddx: cusolver_int_t,
8540 dWorkspace: *mut ::core::ffi::c_void,
8541 lwork_bytes: *mut usize,
8542 ) -> cusolverStatus_t {
8543 (culib().cusolverDnDSgels_bufferSize)(
8544 handle,
8545 m,
8546 n,
8547 nrhs,
8548 dA,
8549 ldda,
8550 dB,
8551 lddb,
8552 dX,
8553 lddx,
8554 dWorkspace,
8555 lwork_bytes,
8556 )
8557 }
8558 pub unsafe fn cusolverDnDSgesv(
8559 handle: cusolverDnHandle_t,
8560 n: cusolver_int_t,
8561 nrhs: cusolver_int_t,
8562 dA: *mut f64,
8563 ldda: cusolver_int_t,
8564 dipiv: *mut cusolver_int_t,
8565 dB: *mut f64,
8566 lddb: cusolver_int_t,
8567 dX: *mut f64,
8568 lddx: cusolver_int_t,
8569 dWorkspace: *mut ::core::ffi::c_void,
8570 lwork_bytes: usize,
8571 iter: *mut cusolver_int_t,
8572 d_info: *mut cusolver_int_t,
8573 ) -> cusolverStatus_t {
8574 (culib().cusolverDnDSgesv)(
8575 handle,
8576 n,
8577 nrhs,
8578 dA,
8579 ldda,
8580 dipiv,
8581 dB,
8582 lddb,
8583 dX,
8584 lddx,
8585 dWorkspace,
8586 lwork_bytes,
8587 iter,
8588 d_info,
8589 )
8590 }
8591 pub unsafe fn cusolverDnDSgesv_bufferSize(
8592 handle: cusolverDnHandle_t,
8593 n: cusolver_int_t,
8594 nrhs: cusolver_int_t,
8595 dA: *mut f64,
8596 ldda: cusolver_int_t,
8597 dipiv: *mut cusolver_int_t,
8598 dB: *mut f64,
8599 lddb: cusolver_int_t,
8600 dX: *mut f64,
8601 lddx: cusolver_int_t,
8602 dWorkspace: *mut ::core::ffi::c_void,
8603 lwork_bytes: *mut usize,
8604 ) -> cusolverStatus_t {
8605 (culib().cusolverDnDSgesv_bufferSize)(
8606 handle,
8607 n,
8608 nrhs,
8609 dA,
8610 ldda,
8611 dipiv,
8612 dB,
8613 lddb,
8614 dX,
8615 lddx,
8616 dWorkspace,
8617 lwork_bytes,
8618 )
8619 }
8620 pub unsafe fn cusolverDnDXgels(
8621 handle: cusolverDnHandle_t,
8622 m: cusolver_int_t,
8623 n: cusolver_int_t,
8624 nrhs: cusolver_int_t,
8625 dA: *mut f64,
8626 ldda: cusolver_int_t,
8627 dB: *mut f64,
8628 lddb: cusolver_int_t,
8629 dX: *mut f64,
8630 lddx: cusolver_int_t,
8631 dWorkspace: *mut ::core::ffi::c_void,
8632 lwork_bytes: usize,
8633 iter: *mut cusolver_int_t,
8634 d_info: *mut cusolver_int_t,
8635 ) -> cusolverStatus_t {
8636 (culib().cusolverDnDXgels)(
8637 handle,
8638 m,
8639 n,
8640 nrhs,
8641 dA,
8642 ldda,
8643 dB,
8644 lddb,
8645 dX,
8646 lddx,
8647 dWorkspace,
8648 lwork_bytes,
8649 iter,
8650 d_info,
8651 )
8652 }
8653 pub unsafe fn cusolverDnDXgels_bufferSize(
8654 handle: cusolverDnHandle_t,
8655 m: cusolver_int_t,
8656 n: cusolver_int_t,
8657 nrhs: cusolver_int_t,
8658 dA: *mut f64,
8659 ldda: cusolver_int_t,
8660 dB: *mut f64,
8661 lddb: cusolver_int_t,
8662 dX: *mut f64,
8663 lddx: cusolver_int_t,
8664 dWorkspace: *mut ::core::ffi::c_void,
8665 lwork_bytes: *mut usize,
8666 ) -> cusolverStatus_t {
8667 (culib().cusolverDnDXgels_bufferSize)(
8668 handle,
8669 m,
8670 n,
8671 nrhs,
8672 dA,
8673 ldda,
8674 dB,
8675 lddb,
8676 dX,
8677 lddx,
8678 dWorkspace,
8679 lwork_bytes,
8680 )
8681 }
8682 pub unsafe fn cusolverDnDXgesv(
8683 handle: cusolverDnHandle_t,
8684 n: cusolver_int_t,
8685 nrhs: cusolver_int_t,
8686 dA: *mut f64,
8687 ldda: cusolver_int_t,
8688 dipiv: *mut cusolver_int_t,
8689 dB: *mut f64,
8690 lddb: cusolver_int_t,
8691 dX: *mut f64,
8692 lddx: cusolver_int_t,
8693 dWorkspace: *mut ::core::ffi::c_void,
8694 lwork_bytes: usize,
8695 iter: *mut cusolver_int_t,
8696 d_info: *mut cusolver_int_t,
8697 ) -> cusolverStatus_t {
8698 (culib().cusolverDnDXgesv)(
8699 handle,
8700 n,
8701 nrhs,
8702 dA,
8703 ldda,
8704 dipiv,
8705 dB,
8706 lddb,
8707 dX,
8708 lddx,
8709 dWorkspace,
8710 lwork_bytes,
8711 iter,
8712 d_info,
8713 )
8714 }
8715 pub unsafe fn cusolverDnDXgesv_bufferSize(
8716 handle: cusolverDnHandle_t,
8717 n: cusolver_int_t,
8718 nrhs: cusolver_int_t,
8719 dA: *mut f64,
8720 ldda: cusolver_int_t,
8721 dipiv: *mut cusolver_int_t,
8722 dB: *mut f64,
8723 lddb: cusolver_int_t,
8724 dX: *mut f64,
8725 lddx: cusolver_int_t,
8726 dWorkspace: *mut ::core::ffi::c_void,
8727 lwork_bytes: *mut usize,
8728 ) -> cusolverStatus_t {
8729 (culib().cusolverDnDXgesv_bufferSize)(
8730 handle,
8731 n,
8732 nrhs,
8733 dA,
8734 ldda,
8735 dipiv,
8736 dB,
8737 lddb,
8738 dX,
8739 lddx,
8740 dWorkspace,
8741 lwork_bytes,
8742 )
8743 }
8744 pub unsafe fn cusolverDnDestroy(handle: cusolverDnHandle_t) -> cusolverStatus_t {
8745 (culib().cusolverDnDestroy)(handle)
8746 }
8747 pub unsafe fn cusolverDnDestroyGesvdjInfo(info: gesvdjInfo_t) -> cusolverStatus_t {
8748 (culib().cusolverDnDestroyGesvdjInfo)(info)
8749 }
8750 pub unsafe fn cusolverDnDestroyParams(params: cusolverDnParams_t) -> cusolverStatus_t {
8751 (culib().cusolverDnDestroyParams)(params)
8752 }
8753 pub unsafe fn cusolverDnDestroySyevjInfo(info: syevjInfo_t) -> cusolverStatus_t {
8754 (culib().cusolverDnDestroySyevjInfo)(info)
8755 }
8756 pub unsafe fn cusolverDnDgebrd(
8757 handle: cusolverDnHandle_t,
8758 m: ::core::ffi::c_int,
8759 n: ::core::ffi::c_int,
8760 A: *mut f64,
8761 lda: ::core::ffi::c_int,
8762 D: *mut f64,
8763 E: *mut f64,
8764 TAUQ: *mut f64,
8765 TAUP: *mut f64,
8766 Work: *mut f64,
8767 Lwork: ::core::ffi::c_int,
8768 devInfo: *mut ::core::ffi::c_int,
8769 ) -> cusolverStatus_t {
8770 (culib().cusolverDnDgebrd)(handle, m, n, A, lda, D, E, TAUQ, TAUP, Work, Lwork, devInfo)
8771 }
8772 pub unsafe fn cusolverDnDgebrd_bufferSize(
8773 handle: cusolverDnHandle_t,
8774 m: ::core::ffi::c_int,
8775 n: ::core::ffi::c_int,
8776 Lwork: *mut ::core::ffi::c_int,
8777 ) -> cusolverStatus_t {
8778 (culib().cusolverDnDgebrd_bufferSize)(handle, m, n, Lwork)
8779 }
8780 pub unsafe fn cusolverDnDgeqrf(
8781 handle: cusolverDnHandle_t,
8782 m: ::core::ffi::c_int,
8783 n: ::core::ffi::c_int,
8784 A: *mut f64,
8785 lda: ::core::ffi::c_int,
8786 TAU: *mut f64,
8787 Workspace: *mut f64,
8788 Lwork: ::core::ffi::c_int,
8789 devInfo: *mut ::core::ffi::c_int,
8790 ) -> cusolverStatus_t {
8791 (culib().cusolverDnDgeqrf)(handle, m, n, A, lda, TAU, Workspace, Lwork, devInfo)
8792 }
8793 pub unsafe fn cusolverDnDgeqrf_bufferSize(
8794 handle: cusolverDnHandle_t,
8795 m: ::core::ffi::c_int,
8796 n: ::core::ffi::c_int,
8797 A: *mut f64,
8798 lda: ::core::ffi::c_int,
8799 lwork: *mut ::core::ffi::c_int,
8800 ) -> cusolverStatus_t {
8801 (culib().cusolverDnDgeqrf_bufferSize)(handle, m, n, A, lda, lwork)
8802 }
8803 pub unsafe fn cusolverDnDgesvd(
8804 handle: cusolverDnHandle_t,
8805 jobu: ::core::ffi::c_schar,
8806 jobvt: ::core::ffi::c_schar,
8807 m: ::core::ffi::c_int,
8808 n: ::core::ffi::c_int,
8809 A: *mut f64,
8810 lda: ::core::ffi::c_int,
8811 S: *mut f64,
8812 U: *mut f64,
8813 ldu: ::core::ffi::c_int,
8814 VT: *mut f64,
8815 ldvt: ::core::ffi::c_int,
8816 work: *mut f64,
8817 lwork: ::core::ffi::c_int,
8818 rwork: *mut f64,
8819 info: *mut ::core::ffi::c_int,
8820 ) -> cusolverStatus_t {
8821 (culib().cusolverDnDgesvd)(
8822 handle, jobu, jobvt, m, n, A, lda, S, U, ldu, VT, ldvt, work, lwork, rwork, info,
8823 )
8824 }
8825 pub unsafe fn cusolverDnDgesvd_bufferSize(
8826 handle: cusolverDnHandle_t,
8827 m: ::core::ffi::c_int,
8828 n: ::core::ffi::c_int,
8829 lwork: *mut ::core::ffi::c_int,
8830 ) -> cusolverStatus_t {
8831 (culib().cusolverDnDgesvd_bufferSize)(handle, m, n, lwork)
8832 }
8833 pub unsafe fn cusolverDnDgesvdaStridedBatched(
8834 handle: cusolverDnHandle_t,
8835 jobz: cusolverEigMode_t,
8836 rank: ::core::ffi::c_int,
8837 m: ::core::ffi::c_int,
8838 n: ::core::ffi::c_int,
8839 d_A: *const f64,
8840 lda: ::core::ffi::c_int,
8841 strideA: ::core::ffi::c_longlong,
8842 d_S: *mut f64,
8843 strideS: ::core::ffi::c_longlong,
8844 d_U: *mut f64,
8845 ldu: ::core::ffi::c_int,
8846 strideU: ::core::ffi::c_longlong,
8847 d_V: *mut f64,
8848 ldv: ::core::ffi::c_int,
8849 strideV: ::core::ffi::c_longlong,
8850 d_work: *mut f64,
8851 lwork: ::core::ffi::c_int,
8852 d_info: *mut ::core::ffi::c_int,
8853 h_R_nrmF: *mut f64,
8854 batchSize: ::core::ffi::c_int,
8855 ) -> cusolverStatus_t {
8856 (culib().cusolverDnDgesvdaStridedBatched)(
8857 handle, jobz, rank, m, n, d_A, lda, strideA, d_S, strideS, d_U, ldu, strideU, d_V, ldv,
8858 strideV, d_work, lwork, d_info, h_R_nrmF, batchSize,
8859 )
8860 }
8861 pub unsafe fn cusolverDnDgesvdaStridedBatched_bufferSize(
8862 handle: cusolverDnHandle_t,
8863 jobz: cusolverEigMode_t,
8864 rank: ::core::ffi::c_int,
8865 m: ::core::ffi::c_int,
8866 n: ::core::ffi::c_int,
8867 d_A: *const f64,
8868 lda: ::core::ffi::c_int,
8869 strideA: ::core::ffi::c_longlong,
8870 d_S: *const f64,
8871 strideS: ::core::ffi::c_longlong,
8872 d_U: *const f64,
8873 ldu: ::core::ffi::c_int,
8874 strideU: ::core::ffi::c_longlong,
8875 d_V: *const f64,
8876 ldv: ::core::ffi::c_int,
8877 strideV: ::core::ffi::c_longlong,
8878 lwork: *mut ::core::ffi::c_int,
8879 batchSize: ::core::ffi::c_int,
8880 ) -> cusolverStatus_t {
8881 (culib().cusolverDnDgesvdaStridedBatched_bufferSize)(
8882 handle, jobz, rank, m, n, d_A, lda, strideA, d_S, strideS, d_U, ldu, strideU, d_V, ldv,
8883 strideV, lwork, batchSize,
8884 )
8885 }
8886 pub unsafe fn cusolverDnDgesvdj(
8887 handle: cusolverDnHandle_t,
8888 jobz: cusolverEigMode_t,
8889 econ: ::core::ffi::c_int,
8890 m: ::core::ffi::c_int,
8891 n: ::core::ffi::c_int,
8892 A: *mut f64,
8893 lda: ::core::ffi::c_int,
8894 S: *mut f64,
8895 U: *mut f64,
8896 ldu: ::core::ffi::c_int,
8897 V: *mut f64,
8898 ldv: ::core::ffi::c_int,
8899 work: *mut f64,
8900 lwork: ::core::ffi::c_int,
8901 info: *mut ::core::ffi::c_int,
8902 params: gesvdjInfo_t,
8903 ) -> cusolverStatus_t {
8904 (culib().cusolverDnDgesvdj)(
8905 handle, jobz, econ, m, n, A, lda, S, U, ldu, V, ldv, work, lwork, info, params,
8906 )
8907 }
8908 pub unsafe fn cusolverDnDgesvdjBatched(
8909 handle: cusolverDnHandle_t,
8910 jobz: cusolverEigMode_t,
8911 m: ::core::ffi::c_int,
8912 n: ::core::ffi::c_int,
8913 A: *mut f64,
8914 lda: ::core::ffi::c_int,
8915 S: *mut f64,
8916 U: *mut f64,
8917 ldu: ::core::ffi::c_int,
8918 V: *mut f64,
8919 ldv: ::core::ffi::c_int,
8920 work: *mut f64,
8921 lwork: ::core::ffi::c_int,
8922 info: *mut ::core::ffi::c_int,
8923 params: gesvdjInfo_t,
8924 batchSize: ::core::ffi::c_int,
8925 ) -> cusolverStatus_t {
8926 (culib().cusolverDnDgesvdjBatched)(
8927 handle, jobz, m, n, A, lda, S, U, ldu, V, ldv, work, lwork, info, params, batchSize,
8928 )
8929 }
8930 pub unsafe fn cusolverDnDgesvdjBatched_bufferSize(
8931 handle: cusolverDnHandle_t,
8932 jobz: cusolverEigMode_t,
8933 m: ::core::ffi::c_int,
8934 n: ::core::ffi::c_int,
8935 A: *const f64,
8936 lda: ::core::ffi::c_int,
8937 S: *const f64,
8938 U: *const f64,
8939 ldu: ::core::ffi::c_int,
8940 V: *const f64,
8941 ldv: ::core::ffi::c_int,
8942 lwork: *mut ::core::ffi::c_int,
8943 params: gesvdjInfo_t,
8944 batchSize: ::core::ffi::c_int,
8945 ) -> cusolverStatus_t {
8946 (culib().cusolverDnDgesvdjBatched_bufferSize)(
8947 handle, jobz, m, n, A, lda, S, U, ldu, V, ldv, lwork, params, batchSize,
8948 )
8949 }
8950 pub unsafe fn cusolverDnDgesvdj_bufferSize(
8951 handle: cusolverDnHandle_t,
8952 jobz: cusolverEigMode_t,
8953 econ: ::core::ffi::c_int,
8954 m: ::core::ffi::c_int,
8955 n: ::core::ffi::c_int,
8956 A: *const f64,
8957 lda: ::core::ffi::c_int,
8958 S: *const f64,
8959 U: *const f64,
8960 ldu: ::core::ffi::c_int,
8961 V: *const f64,
8962 ldv: ::core::ffi::c_int,
8963 lwork: *mut ::core::ffi::c_int,
8964 params: gesvdjInfo_t,
8965 ) -> cusolverStatus_t {
8966 (culib().cusolverDnDgesvdj_bufferSize)(
8967 handle, jobz, econ, m, n, A, lda, S, U, ldu, V, ldv, lwork, params,
8968 )
8969 }
8970 pub unsafe fn cusolverDnDgetrf(
8971 handle: cusolverDnHandle_t,
8972 m: ::core::ffi::c_int,
8973 n: ::core::ffi::c_int,
8974 A: *mut f64,
8975 lda: ::core::ffi::c_int,
8976 Workspace: *mut f64,
8977 devIpiv: *mut ::core::ffi::c_int,
8978 devInfo: *mut ::core::ffi::c_int,
8979 ) -> cusolverStatus_t {
8980 (culib().cusolverDnDgetrf)(handle, m, n, A, lda, Workspace, devIpiv, devInfo)
8981 }
8982 pub unsafe fn cusolverDnDgetrf_bufferSize(
8983 handle: cusolverDnHandle_t,
8984 m: ::core::ffi::c_int,
8985 n: ::core::ffi::c_int,
8986 A: *mut f64,
8987 lda: ::core::ffi::c_int,
8988 Lwork: *mut ::core::ffi::c_int,
8989 ) -> cusolverStatus_t {
8990 (culib().cusolverDnDgetrf_bufferSize)(handle, m, n, A, lda, Lwork)
8991 }
8992 pub unsafe fn cusolverDnDgetrs(
8993 handle: cusolverDnHandle_t,
8994 trans: cublasOperation_t,
8995 n: ::core::ffi::c_int,
8996 nrhs: ::core::ffi::c_int,
8997 A: *const f64,
8998 lda: ::core::ffi::c_int,
8999 devIpiv: *const ::core::ffi::c_int,
9000 B: *mut f64,
9001 ldb: ::core::ffi::c_int,
9002 devInfo: *mut ::core::ffi::c_int,
9003 ) -> cusolverStatus_t {
9004 (culib().cusolverDnDgetrs)(handle, trans, n, nrhs, A, lda, devIpiv, B, ldb, devInfo)
9005 }
9006 pub unsafe fn cusolverDnDlaswp(
9007 handle: cusolverDnHandle_t,
9008 n: ::core::ffi::c_int,
9009 A: *mut f64,
9010 lda: ::core::ffi::c_int,
9011 k1: ::core::ffi::c_int,
9012 k2: ::core::ffi::c_int,
9013 devIpiv: *const ::core::ffi::c_int,
9014 incx: ::core::ffi::c_int,
9015 ) -> cusolverStatus_t {
9016 (culib().cusolverDnDlaswp)(handle, n, A, lda, k1, k2, devIpiv, incx)
9017 }
9018 pub unsafe fn cusolverDnDlauum(
9019 handle: cusolverDnHandle_t,
9020 uplo: cublasFillMode_t,
9021 n: ::core::ffi::c_int,
9022 A: *mut f64,
9023 lda: ::core::ffi::c_int,
9024 work: *mut f64,
9025 lwork: ::core::ffi::c_int,
9026 devInfo: *mut ::core::ffi::c_int,
9027 ) -> cusolverStatus_t {
9028 (culib().cusolverDnDlauum)(handle, uplo, n, A, lda, work, lwork, devInfo)
9029 }
9030 pub unsafe fn cusolverDnDlauum_bufferSize(
9031 handle: cusolverDnHandle_t,
9032 uplo: cublasFillMode_t,
9033 n: ::core::ffi::c_int,
9034 A: *mut f64,
9035 lda: ::core::ffi::c_int,
9036 lwork: *mut ::core::ffi::c_int,
9037 ) -> cusolverStatus_t {
9038 (culib().cusolverDnDlauum_bufferSize)(handle, uplo, n, A, lda, lwork)
9039 }
9040 pub unsafe fn cusolverDnDorgbr(
9041 handle: cusolverDnHandle_t,
9042 side: cublasSideMode_t,
9043 m: ::core::ffi::c_int,
9044 n: ::core::ffi::c_int,
9045 k: ::core::ffi::c_int,
9046 A: *mut f64,
9047 lda: ::core::ffi::c_int,
9048 tau: *const f64,
9049 work: *mut f64,
9050 lwork: ::core::ffi::c_int,
9051 info: *mut ::core::ffi::c_int,
9052 ) -> cusolverStatus_t {
9053 (culib().cusolverDnDorgbr)(handle, side, m, n, k, A, lda, tau, work, lwork, info)
9054 }
9055 pub unsafe fn cusolverDnDorgbr_bufferSize(
9056 handle: cusolverDnHandle_t,
9057 side: cublasSideMode_t,
9058 m: ::core::ffi::c_int,
9059 n: ::core::ffi::c_int,
9060 k: ::core::ffi::c_int,
9061 A: *const f64,
9062 lda: ::core::ffi::c_int,
9063 tau: *const f64,
9064 lwork: *mut ::core::ffi::c_int,
9065 ) -> cusolverStatus_t {
9066 (culib().cusolverDnDorgbr_bufferSize)(handle, side, m, n, k, A, lda, tau, lwork)
9067 }
9068 pub unsafe fn cusolverDnDorgqr(
9069 handle: cusolverDnHandle_t,
9070 m: ::core::ffi::c_int,
9071 n: ::core::ffi::c_int,
9072 k: ::core::ffi::c_int,
9073 A: *mut f64,
9074 lda: ::core::ffi::c_int,
9075 tau: *const f64,
9076 work: *mut f64,
9077 lwork: ::core::ffi::c_int,
9078 info: *mut ::core::ffi::c_int,
9079 ) -> cusolverStatus_t {
9080 (culib().cusolverDnDorgqr)(handle, m, n, k, A, lda, tau, work, lwork, info)
9081 }
9082 pub unsafe fn cusolverDnDorgqr_bufferSize(
9083 handle: cusolverDnHandle_t,
9084 m: ::core::ffi::c_int,
9085 n: ::core::ffi::c_int,
9086 k: ::core::ffi::c_int,
9087 A: *const f64,
9088 lda: ::core::ffi::c_int,
9089 tau: *const f64,
9090 lwork: *mut ::core::ffi::c_int,
9091 ) -> cusolverStatus_t {
9092 (culib().cusolverDnDorgqr_bufferSize)(handle, m, n, k, A, lda, tau, lwork)
9093 }
9094 pub unsafe fn cusolverDnDorgtr(
9095 handle: cusolverDnHandle_t,
9096 uplo: cublasFillMode_t,
9097 n: ::core::ffi::c_int,
9098 A: *mut f64,
9099 lda: ::core::ffi::c_int,
9100 tau: *const f64,
9101 work: *mut f64,
9102 lwork: ::core::ffi::c_int,
9103 info: *mut ::core::ffi::c_int,
9104 ) -> cusolverStatus_t {
9105 (culib().cusolverDnDorgtr)(handle, uplo, n, A, lda, tau, work, lwork, info)
9106 }
9107 pub unsafe fn cusolverDnDorgtr_bufferSize(
9108 handle: cusolverDnHandle_t,
9109 uplo: cublasFillMode_t,
9110 n: ::core::ffi::c_int,
9111 A: *const f64,
9112 lda: ::core::ffi::c_int,
9113 tau: *const f64,
9114 lwork: *mut ::core::ffi::c_int,
9115 ) -> cusolverStatus_t {
9116 (culib().cusolverDnDorgtr_bufferSize)(handle, uplo, n, A, lda, tau, lwork)
9117 }
9118 pub unsafe fn cusolverDnDormqr(
9119 handle: cusolverDnHandle_t,
9120 side: cublasSideMode_t,
9121 trans: cublasOperation_t,
9122 m: ::core::ffi::c_int,
9123 n: ::core::ffi::c_int,
9124 k: ::core::ffi::c_int,
9125 A: *const f64,
9126 lda: ::core::ffi::c_int,
9127 tau: *const f64,
9128 C: *mut f64,
9129 ldc: ::core::ffi::c_int,
9130 work: *mut f64,
9131 lwork: ::core::ffi::c_int,
9132 devInfo: *mut ::core::ffi::c_int,
9133 ) -> cusolverStatus_t {
9134 (culib().cusolverDnDormqr)(
9135 handle, side, trans, m, n, k, A, lda, tau, C, ldc, work, lwork, devInfo,
9136 )
9137 }
9138 pub unsafe fn cusolverDnDormqr_bufferSize(
9139 handle: cusolverDnHandle_t,
9140 side: cublasSideMode_t,
9141 trans: cublasOperation_t,
9142 m: ::core::ffi::c_int,
9143 n: ::core::ffi::c_int,
9144 k: ::core::ffi::c_int,
9145 A: *const f64,
9146 lda: ::core::ffi::c_int,
9147 tau: *const f64,
9148 C: *const f64,
9149 ldc: ::core::ffi::c_int,
9150 lwork: *mut ::core::ffi::c_int,
9151 ) -> cusolverStatus_t {
9152 (culib().cusolverDnDormqr_bufferSize)(
9153 handle, side, trans, m, n, k, A, lda, tau, C, ldc, lwork,
9154 )
9155 }
9156 pub unsafe fn cusolverDnDormtr(
9157 handle: cusolverDnHandle_t,
9158 side: cublasSideMode_t,
9159 uplo: cublasFillMode_t,
9160 trans: cublasOperation_t,
9161 m: ::core::ffi::c_int,
9162 n: ::core::ffi::c_int,
9163 A: *mut f64,
9164 lda: ::core::ffi::c_int,
9165 tau: *mut f64,
9166 C: *mut f64,
9167 ldc: ::core::ffi::c_int,
9168 work: *mut f64,
9169 lwork: ::core::ffi::c_int,
9170 info: *mut ::core::ffi::c_int,
9171 ) -> cusolverStatus_t {
9172 (culib().cusolverDnDormtr)(
9173 handle, side, uplo, trans, m, n, A, lda, tau, C, ldc, work, lwork, info,
9174 )
9175 }
9176 pub unsafe fn cusolverDnDormtr_bufferSize(
9177 handle: cusolverDnHandle_t,
9178 side: cublasSideMode_t,
9179 uplo: cublasFillMode_t,
9180 trans: cublasOperation_t,
9181 m: ::core::ffi::c_int,
9182 n: ::core::ffi::c_int,
9183 A: *const f64,
9184 lda: ::core::ffi::c_int,
9185 tau: *const f64,
9186 C: *const f64,
9187 ldc: ::core::ffi::c_int,
9188 lwork: *mut ::core::ffi::c_int,
9189 ) -> cusolverStatus_t {
9190 (culib().cusolverDnDormtr_bufferSize)(
9191 handle, side, uplo, trans, m, n, A, lda, tau, C, ldc, lwork,
9192 )
9193 }
9194 pub unsafe fn cusolverDnDpotrf(
9195 handle: cusolverDnHandle_t,
9196 uplo: cublasFillMode_t,
9197 n: ::core::ffi::c_int,
9198 A: *mut f64,
9199 lda: ::core::ffi::c_int,
9200 Workspace: *mut f64,
9201 Lwork: ::core::ffi::c_int,
9202 devInfo: *mut ::core::ffi::c_int,
9203 ) -> cusolverStatus_t {
9204 (culib().cusolverDnDpotrf)(handle, uplo, n, A, lda, Workspace, Lwork, devInfo)
9205 }
9206 pub unsafe fn cusolverDnDpotrfBatched(
9207 handle: cusolverDnHandle_t,
9208 uplo: cublasFillMode_t,
9209 n: ::core::ffi::c_int,
9210 Aarray: *mut *mut f64,
9211 lda: ::core::ffi::c_int,
9212 infoArray: *mut ::core::ffi::c_int,
9213 batchSize: ::core::ffi::c_int,
9214 ) -> cusolverStatus_t {
9215 (culib().cusolverDnDpotrfBatched)(handle, uplo, n, Aarray, lda, infoArray, batchSize)
9216 }
9217 pub unsafe fn cusolverDnDpotrf_bufferSize(
9218 handle: cusolverDnHandle_t,
9219 uplo: cublasFillMode_t,
9220 n: ::core::ffi::c_int,
9221 A: *mut f64,
9222 lda: ::core::ffi::c_int,
9223 Lwork: *mut ::core::ffi::c_int,
9224 ) -> cusolverStatus_t {
9225 (culib().cusolverDnDpotrf_bufferSize)(handle, uplo, n, A, lda, Lwork)
9226 }
9227 pub unsafe fn cusolverDnDpotri(
9228 handle: cusolverDnHandle_t,
9229 uplo: cublasFillMode_t,
9230 n: ::core::ffi::c_int,
9231 A: *mut f64,
9232 lda: ::core::ffi::c_int,
9233 work: *mut f64,
9234 lwork: ::core::ffi::c_int,
9235 devInfo: *mut ::core::ffi::c_int,
9236 ) -> cusolverStatus_t {
9237 (culib().cusolverDnDpotri)(handle, uplo, n, A, lda, work, lwork, devInfo)
9238 }
9239 pub unsafe fn cusolverDnDpotri_bufferSize(
9240 handle: cusolverDnHandle_t,
9241 uplo: cublasFillMode_t,
9242 n: ::core::ffi::c_int,
9243 A: *mut f64,
9244 lda: ::core::ffi::c_int,
9245 lwork: *mut ::core::ffi::c_int,
9246 ) -> cusolverStatus_t {
9247 (culib().cusolverDnDpotri_bufferSize)(handle, uplo, n, A, lda, lwork)
9248 }
9249 pub unsafe fn cusolverDnDpotrs(
9250 handle: cusolverDnHandle_t,
9251 uplo: cublasFillMode_t,
9252 n: ::core::ffi::c_int,
9253 nrhs: ::core::ffi::c_int,
9254 A: *const f64,
9255 lda: ::core::ffi::c_int,
9256 B: *mut f64,
9257 ldb: ::core::ffi::c_int,
9258 devInfo: *mut ::core::ffi::c_int,
9259 ) -> cusolverStatus_t {
9260 (culib().cusolverDnDpotrs)(handle, uplo, n, nrhs, A, lda, B, ldb, devInfo)
9261 }
9262 pub unsafe fn cusolverDnDpotrsBatched(
9263 handle: cusolverDnHandle_t,
9264 uplo: cublasFillMode_t,
9265 n: ::core::ffi::c_int,
9266 nrhs: ::core::ffi::c_int,
9267 A: *mut *mut f64,
9268 lda: ::core::ffi::c_int,
9269 B: *mut *mut f64,
9270 ldb: ::core::ffi::c_int,
9271 d_info: *mut ::core::ffi::c_int,
9272 batchSize: ::core::ffi::c_int,
9273 ) -> cusolverStatus_t {
9274 (culib().cusolverDnDpotrsBatched)(handle, uplo, n, nrhs, A, lda, B, ldb, d_info, batchSize)
9275 }
9276 pub unsafe fn cusolverDnDsyevd(
9277 handle: cusolverDnHandle_t,
9278 jobz: cusolverEigMode_t,
9279 uplo: cublasFillMode_t,
9280 n: ::core::ffi::c_int,
9281 A: *mut f64,
9282 lda: ::core::ffi::c_int,
9283 W: *mut f64,
9284 work: *mut f64,
9285 lwork: ::core::ffi::c_int,
9286 info: *mut ::core::ffi::c_int,
9287 ) -> cusolverStatus_t {
9288 (culib().cusolverDnDsyevd)(handle, jobz, uplo, n, A, lda, W, work, lwork, info)
9289 }
9290 pub unsafe fn cusolverDnDsyevd_bufferSize(
9291 handle: cusolverDnHandle_t,
9292 jobz: cusolverEigMode_t,
9293 uplo: cublasFillMode_t,
9294 n: ::core::ffi::c_int,
9295 A: *const f64,
9296 lda: ::core::ffi::c_int,
9297 W: *const f64,
9298 lwork: *mut ::core::ffi::c_int,
9299 ) -> cusolverStatus_t {
9300 (culib().cusolverDnDsyevd_bufferSize)(handle, jobz, uplo, n, A, lda, W, lwork)
9301 }
9302 pub unsafe fn cusolverDnDsyevdx(
9303 handle: cusolverDnHandle_t,
9304 jobz: cusolverEigMode_t,
9305 range: cusolverEigRange_t,
9306 uplo: cublasFillMode_t,
9307 n: ::core::ffi::c_int,
9308 A: *mut f64,
9309 lda: ::core::ffi::c_int,
9310 vl: f64,
9311 vu: f64,
9312 il: ::core::ffi::c_int,
9313 iu: ::core::ffi::c_int,
9314 meig: *mut ::core::ffi::c_int,
9315 W: *mut f64,
9316 work: *mut f64,
9317 lwork: ::core::ffi::c_int,
9318 info: *mut ::core::ffi::c_int,
9319 ) -> cusolverStatus_t {
9320 (culib().cusolverDnDsyevdx)(
9321 handle, jobz, range, uplo, n, A, lda, vl, vu, il, iu, meig, W, work, lwork, info,
9322 )
9323 }
9324 pub unsafe fn cusolverDnDsyevdx_bufferSize(
9325 handle: cusolverDnHandle_t,
9326 jobz: cusolverEigMode_t,
9327 range: cusolverEigRange_t,
9328 uplo: cublasFillMode_t,
9329 n: ::core::ffi::c_int,
9330 A: *const f64,
9331 lda: ::core::ffi::c_int,
9332 vl: f64,
9333 vu: f64,
9334 il: ::core::ffi::c_int,
9335 iu: ::core::ffi::c_int,
9336 meig: *mut ::core::ffi::c_int,
9337 W: *const f64,
9338 lwork: *mut ::core::ffi::c_int,
9339 ) -> cusolverStatus_t {
9340 (culib().cusolverDnDsyevdx_bufferSize)(
9341 handle, jobz, range, uplo, n, A, lda, vl, vu, il, iu, meig, W, lwork,
9342 )
9343 }
9344 pub unsafe fn cusolverDnDsyevj(
9345 handle: cusolverDnHandle_t,
9346 jobz: cusolverEigMode_t,
9347 uplo: cublasFillMode_t,
9348 n: ::core::ffi::c_int,
9349 A: *mut f64,
9350 lda: ::core::ffi::c_int,
9351 W: *mut f64,
9352 work: *mut f64,
9353 lwork: ::core::ffi::c_int,
9354 info: *mut ::core::ffi::c_int,
9355 params: syevjInfo_t,
9356 ) -> cusolverStatus_t {
9357 (culib().cusolverDnDsyevj)(handle, jobz, uplo, n, A, lda, W, work, lwork, info, params)
9358 }
9359 pub unsafe fn cusolverDnDsyevjBatched(
9360 handle: cusolverDnHandle_t,
9361 jobz: cusolverEigMode_t,
9362 uplo: cublasFillMode_t,
9363 n: ::core::ffi::c_int,
9364 A: *mut f64,
9365 lda: ::core::ffi::c_int,
9366 W: *mut f64,
9367 work: *mut f64,
9368 lwork: ::core::ffi::c_int,
9369 info: *mut ::core::ffi::c_int,
9370 params: syevjInfo_t,
9371 batchSize: ::core::ffi::c_int,
9372 ) -> cusolverStatus_t {
9373 (culib().cusolverDnDsyevjBatched)(
9374 handle, jobz, uplo, n, A, lda, W, work, lwork, info, params, batchSize,
9375 )
9376 }
9377 pub unsafe fn cusolverDnDsyevjBatched_bufferSize(
9378 handle: cusolverDnHandle_t,
9379 jobz: cusolverEigMode_t,
9380 uplo: cublasFillMode_t,
9381 n: ::core::ffi::c_int,
9382 A: *const f64,
9383 lda: ::core::ffi::c_int,
9384 W: *const f64,
9385 lwork: *mut ::core::ffi::c_int,
9386 params: syevjInfo_t,
9387 batchSize: ::core::ffi::c_int,
9388 ) -> cusolverStatus_t {
9389 (culib().cusolverDnDsyevjBatched_bufferSize)(
9390 handle, jobz, uplo, n, A, lda, W, lwork, params, batchSize,
9391 )
9392 }
9393 pub unsafe fn cusolverDnDsyevj_bufferSize(
9394 handle: cusolverDnHandle_t,
9395 jobz: cusolverEigMode_t,
9396 uplo: cublasFillMode_t,
9397 n: ::core::ffi::c_int,
9398 A: *const f64,
9399 lda: ::core::ffi::c_int,
9400 W: *const f64,
9401 lwork: *mut ::core::ffi::c_int,
9402 params: syevjInfo_t,
9403 ) -> cusolverStatus_t {
9404 (culib().cusolverDnDsyevj_bufferSize)(handle, jobz, uplo, n, A, lda, W, lwork, params)
9405 }
9406 pub unsafe fn cusolverDnDsygvd(
9407 handle: cusolverDnHandle_t,
9408 itype: cusolverEigType_t,
9409 jobz: cusolverEigMode_t,
9410 uplo: cublasFillMode_t,
9411 n: ::core::ffi::c_int,
9412 A: *mut f64,
9413 lda: ::core::ffi::c_int,
9414 B: *mut f64,
9415 ldb: ::core::ffi::c_int,
9416 W: *mut f64,
9417 work: *mut f64,
9418 lwork: ::core::ffi::c_int,
9419 info: *mut ::core::ffi::c_int,
9420 ) -> cusolverStatus_t {
9421 (culib().cusolverDnDsygvd)(
9422 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, work, lwork, info,
9423 )
9424 }
9425 pub unsafe fn cusolverDnDsygvd_bufferSize(
9426 handle: cusolverDnHandle_t,
9427 itype: cusolverEigType_t,
9428 jobz: cusolverEigMode_t,
9429 uplo: cublasFillMode_t,
9430 n: ::core::ffi::c_int,
9431 A: *const f64,
9432 lda: ::core::ffi::c_int,
9433 B: *const f64,
9434 ldb: ::core::ffi::c_int,
9435 W: *const f64,
9436 lwork: *mut ::core::ffi::c_int,
9437 ) -> cusolverStatus_t {
9438 (culib().cusolverDnDsygvd_bufferSize)(
9439 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, lwork,
9440 )
9441 }
9442 pub unsafe fn cusolverDnDsygvdx(
9443 handle: cusolverDnHandle_t,
9444 itype: cusolverEigType_t,
9445 jobz: cusolverEigMode_t,
9446 range: cusolverEigRange_t,
9447 uplo: cublasFillMode_t,
9448 n: ::core::ffi::c_int,
9449 A: *mut f64,
9450 lda: ::core::ffi::c_int,
9451 B: *mut f64,
9452 ldb: ::core::ffi::c_int,
9453 vl: f64,
9454 vu: f64,
9455 il: ::core::ffi::c_int,
9456 iu: ::core::ffi::c_int,
9457 meig: *mut ::core::ffi::c_int,
9458 W: *mut f64,
9459 work: *mut f64,
9460 lwork: ::core::ffi::c_int,
9461 info: *mut ::core::ffi::c_int,
9462 ) -> cusolverStatus_t {
9463 (culib().cusolverDnDsygvdx)(
9464 handle, itype, jobz, range, uplo, n, A, lda, B, ldb, vl, vu, il, iu, meig, W, work,
9465 lwork, info,
9466 )
9467 }
9468 pub unsafe fn cusolverDnDsygvdx_bufferSize(
9469 handle: cusolverDnHandle_t,
9470 itype: cusolverEigType_t,
9471 jobz: cusolverEigMode_t,
9472 range: cusolverEigRange_t,
9473 uplo: cublasFillMode_t,
9474 n: ::core::ffi::c_int,
9475 A: *const f64,
9476 lda: ::core::ffi::c_int,
9477 B: *const f64,
9478 ldb: ::core::ffi::c_int,
9479 vl: f64,
9480 vu: f64,
9481 il: ::core::ffi::c_int,
9482 iu: ::core::ffi::c_int,
9483 meig: *mut ::core::ffi::c_int,
9484 W: *const f64,
9485 lwork: *mut ::core::ffi::c_int,
9486 ) -> cusolverStatus_t {
9487 (culib().cusolverDnDsygvdx_bufferSize)(
9488 handle, itype, jobz, range, uplo, n, A, lda, B, ldb, vl, vu, il, iu, meig, W, lwork,
9489 )
9490 }
9491 pub unsafe fn cusolverDnDsygvj(
9492 handle: cusolverDnHandle_t,
9493 itype: cusolverEigType_t,
9494 jobz: cusolverEigMode_t,
9495 uplo: cublasFillMode_t,
9496 n: ::core::ffi::c_int,
9497 A: *mut f64,
9498 lda: ::core::ffi::c_int,
9499 B: *mut f64,
9500 ldb: ::core::ffi::c_int,
9501 W: *mut f64,
9502 work: *mut f64,
9503 lwork: ::core::ffi::c_int,
9504 info: *mut ::core::ffi::c_int,
9505 params: syevjInfo_t,
9506 ) -> cusolverStatus_t {
9507 (culib().cusolverDnDsygvj)(
9508 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, work, lwork, info, params,
9509 )
9510 }
9511 pub unsafe fn cusolverDnDsygvj_bufferSize(
9512 handle: cusolverDnHandle_t,
9513 itype: cusolverEigType_t,
9514 jobz: cusolverEigMode_t,
9515 uplo: cublasFillMode_t,
9516 n: ::core::ffi::c_int,
9517 A: *const f64,
9518 lda: ::core::ffi::c_int,
9519 B: *const f64,
9520 ldb: ::core::ffi::c_int,
9521 W: *const f64,
9522 lwork: *mut ::core::ffi::c_int,
9523 params: syevjInfo_t,
9524 ) -> cusolverStatus_t {
9525 (culib().cusolverDnDsygvj_bufferSize)(
9526 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, lwork, params,
9527 )
9528 }
9529 pub unsafe fn cusolverDnDsytrd(
9530 handle: cusolverDnHandle_t,
9531 uplo: cublasFillMode_t,
9532 n: ::core::ffi::c_int,
9533 A: *mut f64,
9534 lda: ::core::ffi::c_int,
9535 d: *mut f64,
9536 e: *mut f64,
9537 tau: *mut f64,
9538 work: *mut f64,
9539 lwork: ::core::ffi::c_int,
9540 info: *mut ::core::ffi::c_int,
9541 ) -> cusolverStatus_t {
9542 (culib().cusolverDnDsytrd)(handle, uplo, n, A, lda, d, e, tau, work, lwork, info)
9543 }
9544 pub unsafe fn cusolverDnDsytrd_bufferSize(
9545 handle: cusolverDnHandle_t,
9546 uplo: cublasFillMode_t,
9547 n: ::core::ffi::c_int,
9548 A: *const f64,
9549 lda: ::core::ffi::c_int,
9550 d: *const f64,
9551 e: *const f64,
9552 tau: *const f64,
9553 lwork: *mut ::core::ffi::c_int,
9554 ) -> cusolverStatus_t {
9555 (culib().cusolverDnDsytrd_bufferSize)(handle, uplo, n, A, lda, d, e, tau, lwork)
9556 }
9557 pub unsafe fn cusolverDnDsytrf(
9558 handle: cusolverDnHandle_t,
9559 uplo: cublasFillMode_t,
9560 n: ::core::ffi::c_int,
9561 A: *mut f64,
9562 lda: ::core::ffi::c_int,
9563 ipiv: *mut ::core::ffi::c_int,
9564 work: *mut f64,
9565 lwork: ::core::ffi::c_int,
9566 info: *mut ::core::ffi::c_int,
9567 ) -> cusolverStatus_t {
9568 (culib().cusolverDnDsytrf)(handle, uplo, n, A, lda, ipiv, work, lwork, info)
9569 }
9570 pub unsafe fn cusolverDnDsytrf_bufferSize(
9571 handle: cusolverDnHandle_t,
9572 n: ::core::ffi::c_int,
9573 A: *mut f64,
9574 lda: ::core::ffi::c_int,
9575 lwork: *mut ::core::ffi::c_int,
9576 ) -> cusolverStatus_t {
9577 (culib().cusolverDnDsytrf_bufferSize)(handle, n, A, lda, lwork)
9578 }
9579 pub unsafe fn cusolverDnDsytri(
9580 handle: cusolverDnHandle_t,
9581 uplo: cublasFillMode_t,
9582 n: ::core::ffi::c_int,
9583 A: *mut f64,
9584 lda: ::core::ffi::c_int,
9585 ipiv: *const ::core::ffi::c_int,
9586 work: *mut f64,
9587 lwork: ::core::ffi::c_int,
9588 info: *mut ::core::ffi::c_int,
9589 ) -> cusolverStatus_t {
9590 (culib().cusolverDnDsytri)(handle, uplo, n, A, lda, ipiv, work, lwork, info)
9591 }
9592 pub unsafe fn cusolverDnDsytri_bufferSize(
9593 handle: cusolverDnHandle_t,
9594 uplo: cublasFillMode_t,
9595 n: ::core::ffi::c_int,
9596 A: *mut f64,
9597 lda: ::core::ffi::c_int,
9598 ipiv: *const ::core::ffi::c_int,
9599 lwork: *mut ::core::ffi::c_int,
9600 ) -> cusolverStatus_t {
9601 (culib().cusolverDnDsytri_bufferSize)(handle, uplo, n, A, lda, ipiv, lwork)
9602 }
9603 #[cfg(any(
9604 feature = "cuda-11040",
9605 feature = "cuda-11050",
9606 feature = "cuda-11060",
9607 feature = "cuda-11070",
9608 feature = "cuda-11080",
9609 feature = "cuda-12000",
9610 feature = "cuda-12010",
9611 feature = "cuda-12020",
9612 feature = "cuda-12030",
9613 feature = "cuda-12040",
9614 feature = "cuda-12050",
9615 feature = "cuda-12060",
9616 feature = "cuda-12080",
9617 feature = "cuda-12090"
9618 ))]
9619 pub unsafe fn cusolverDnGeqrf(
9620 handle: cusolverDnHandle_t,
9621 params: cusolverDnParams_t,
9622 m: i64,
9623 n: i64,
9624 dataTypeA: cudaDataType,
9625 A: *mut ::core::ffi::c_void,
9626 lda: i64,
9627 dataTypeTau: cudaDataType,
9628 tau: *mut ::core::ffi::c_void,
9629 computeType: cudaDataType,
9630 pBuffer: *mut ::core::ffi::c_void,
9631 workspaceInBytes: usize,
9632 info: *mut ::core::ffi::c_int,
9633 ) -> cusolverStatus_t {
9634 (culib().cusolverDnGeqrf)(
9635 handle,
9636 params,
9637 m,
9638 n,
9639 dataTypeA,
9640 A,
9641 lda,
9642 dataTypeTau,
9643 tau,
9644 computeType,
9645 pBuffer,
9646 workspaceInBytes,
9647 info,
9648 )
9649 }
9650 #[cfg(any(
9651 feature = "cuda-11040",
9652 feature = "cuda-11050",
9653 feature = "cuda-11060",
9654 feature = "cuda-11070",
9655 feature = "cuda-11080",
9656 feature = "cuda-12000",
9657 feature = "cuda-12010",
9658 feature = "cuda-12020",
9659 feature = "cuda-12030",
9660 feature = "cuda-12040",
9661 feature = "cuda-12050",
9662 feature = "cuda-12060",
9663 feature = "cuda-12080",
9664 feature = "cuda-12090"
9665 ))]
9666 pub unsafe fn cusolverDnGeqrf_bufferSize(
9667 handle: cusolverDnHandle_t,
9668 params: cusolverDnParams_t,
9669 m: i64,
9670 n: i64,
9671 dataTypeA: cudaDataType,
9672 A: *const ::core::ffi::c_void,
9673 lda: i64,
9674 dataTypeTau: cudaDataType,
9675 tau: *const ::core::ffi::c_void,
9676 computeType: cudaDataType,
9677 workspaceInBytes: *mut usize,
9678 ) -> cusolverStatus_t {
9679 (culib().cusolverDnGeqrf_bufferSize)(
9680 handle,
9681 params,
9682 m,
9683 n,
9684 dataTypeA,
9685 A,
9686 lda,
9687 dataTypeTau,
9688 tau,
9689 computeType,
9690 workspaceInBytes,
9691 )
9692 }
9693 #[cfg(any(
9694 feature = "cuda-11040",
9695 feature = "cuda-11050",
9696 feature = "cuda-11060",
9697 feature = "cuda-11070",
9698 feature = "cuda-11080",
9699 feature = "cuda-12000",
9700 feature = "cuda-12010",
9701 feature = "cuda-12020",
9702 feature = "cuda-12030",
9703 feature = "cuda-12040",
9704 feature = "cuda-12050",
9705 feature = "cuda-12060",
9706 feature = "cuda-12080",
9707 feature = "cuda-12090"
9708 ))]
9709 pub unsafe fn cusolverDnGesvd(
9710 handle: cusolverDnHandle_t,
9711 params: cusolverDnParams_t,
9712 jobu: ::core::ffi::c_schar,
9713 jobvt: ::core::ffi::c_schar,
9714 m: i64,
9715 n: i64,
9716 dataTypeA: cudaDataType,
9717 A: *mut ::core::ffi::c_void,
9718 lda: i64,
9719 dataTypeS: cudaDataType,
9720 S: *mut ::core::ffi::c_void,
9721 dataTypeU: cudaDataType,
9722 U: *mut ::core::ffi::c_void,
9723 ldu: i64,
9724 dataTypeVT: cudaDataType,
9725 VT: *mut ::core::ffi::c_void,
9726 ldvt: i64,
9727 computeType: cudaDataType,
9728 pBuffer: *mut ::core::ffi::c_void,
9729 workspaceInBytes: usize,
9730 info: *mut ::core::ffi::c_int,
9731 ) -> cusolverStatus_t {
9732 (culib().cusolverDnGesvd)(
9733 handle,
9734 params,
9735 jobu,
9736 jobvt,
9737 m,
9738 n,
9739 dataTypeA,
9740 A,
9741 lda,
9742 dataTypeS,
9743 S,
9744 dataTypeU,
9745 U,
9746 ldu,
9747 dataTypeVT,
9748 VT,
9749 ldvt,
9750 computeType,
9751 pBuffer,
9752 workspaceInBytes,
9753 info,
9754 )
9755 }
9756 #[cfg(any(
9757 feature = "cuda-11040",
9758 feature = "cuda-11050",
9759 feature = "cuda-11060",
9760 feature = "cuda-11070",
9761 feature = "cuda-11080",
9762 feature = "cuda-12000",
9763 feature = "cuda-12010",
9764 feature = "cuda-12020",
9765 feature = "cuda-12030",
9766 feature = "cuda-12040",
9767 feature = "cuda-12050",
9768 feature = "cuda-12060",
9769 feature = "cuda-12080",
9770 feature = "cuda-12090"
9771 ))]
9772 pub unsafe fn cusolverDnGesvd_bufferSize(
9773 handle: cusolverDnHandle_t,
9774 params: cusolverDnParams_t,
9775 jobu: ::core::ffi::c_schar,
9776 jobvt: ::core::ffi::c_schar,
9777 m: i64,
9778 n: i64,
9779 dataTypeA: cudaDataType,
9780 A: *const ::core::ffi::c_void,
9781 lda: i64,
9782 dataTypeS: cudaDataType,
9783 S: *const ::core::ffi::c_void,
9784 dataTypeU: cudaDataType,
9785 U: *const ::core::ffi::c_void,
9786 ldu: i64,
9787 dataTypeVT: cudaDataType,
9788 VT: *const ::core::ffi::c_void,
9789 ldvt: i64,
9790 computeType: cudaDataType,
9791 workspaceInBytes: *mut usize,
9792 ) -> cusolverStatus_t {
9793 (culib().cusolverDnGesvd_bufferSize)(
9794 handle,
9795 params,
9796 jobu,
9797 jobvt,
9798 m,
9799 n,
9800 dataTypeA,
9801 A,
9802 lda,
9803 dataTypeS,
9804 S,
9805 dataTypeU,
9806 U,
9807 ldu,
9808 dataTypeVT,
9809 VT,
9810 ldvt,
9811 computeType,
9812 workspaceInBytes,
9813 )
9814 }
9815 #[cfg(any(
9816 feature = "cuda-12020",
9817 feature = "cuda-12030",
9818 feature = "cuda-12040",
9819 feature = "cuda-12050",
9820 feature = "cuda-12060",
9821 feature = "cuda-12080",
9822 feature = "cuda-12090",
9823 feature = "cuda-13000",
9824 feature = "cuda-13010"
9825 ))]
9826 pub unsafe fn cusolverDnGetDeterministicMode(
9827 handle: cusolverDnHandle_t,
9828 mode: *mut cusolverDeterministicMode_t,
9829 ) -> cusolverStatus_t {
9830 (culib().cusolverDnGetDeterministicMode)(handle, mode)
9831 }
9832 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
9833 pub unsafe fn cusolverDnGetEmulationStrategy(
9834 handle: cusolverDnHandle_t,
9835 strategy: *mut cudaEmulationStrategy_t,
9836 ) -> cusolverStatus_t {
9837 (culib().cusolverDnGetEmulationStrategy)(handle, strategy)
9838 }
9839 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
9840 pub unsafe fn cusolverDnGetMathMode(
9841 handle: cusolverDnHandle_t,
9842 mode: *mut cusolverMathMode_t,
9843 ) -> cusolverStatus_t {
9844 (culib().cusolverDnGetMathMode)(handle, mode)
9845 }
9846 pub unsafe fn cusolverDnGetStream(
9847 handle: cusolverDnHandle_t,
9848 streamId: *mut cudaStream_t,
9849 ) -> cusolverStatus_t {
9850 (culib().cusolverDnGetStream)(handle, streamId)
9851 }
9852 #[cfg(any(
9853 feature = "cuda-11040",
9854 feature = "cuda-11050",
9855 feature = "cuda-11060",
9856 feature = "cuda-11070",
9857 feature = "cuda-11080",
9858 feature = "cuda-12000",
9859 feature = "cuda-12010",
9860 feature = "cuda-12020",
9861 feature = "cuda-12030",
9862 feature = "cuda-12040",
9863 feature = "cuda-12050",
9864 feature = "cuda-12060",
9865 feature = "cuda-12080",
9866 feature = "cuda-12090"
9867 ))]
9868 pub unsafe fn cusolverDnGetrf(
9869 handle: cusolverDnHandle_t,
9870 params: cusolverDnParams_t,
9871 m: i64,
9872 n: i64,
9873 dataTypeA: cudaDataType,
9874 A: *mut ::core::ffi::c_void,
9875 lda: i64,
9876 ipiv: *mut i64,
9877 computeType: cudaDataType,
9878 pBuffer: *mut ::core::ffi::c_void,
9879 workspaceInBytes: usize,
9880 info: *mut ::core::ffi::c_int,
9881 ) -> cusolverStatus_t {
9882 (culib().cusolverDnGetrf)(
9883 handle,
9884 params,
9885 m,
9886 n,
9887 dataTypeA,
9888 A,
9889 lda,
9890 ipiv,
9891 computeType,
9892 pBuffer,
9893 workspaceInBytes,
9894 info,
9895 )
9896 }
9897 #[cfg(any(
9898 feature = "cuda-11040",
9899 feature = "cuda-11050",
9900 feature = "cuda-11060",
9901 feature = "cuda-11070",
9902 feature = "cuda-11080",
9903 feature = "cuda-12000",
9904 feature = "cuda-12010",
9905 feature = "cuda-12020",
9906 feature = "cuda-12030",
9907 feature = "cuda-12040",
9908 feature = "cuda-12050",
9909 feature = "cuda-12060",
9910 feature = "cuda-12080",
9911 feature = "cuda-12090"
9912 ))]
9913 pub unsafe fn cusolverDnGetrf_bufferSize(
9914 handle: cusolverDnHandle_t,
9915 params: cusolverDnParams_t,
9916 m: i64,
9917 n: i64,
9918 dataTypeA: cudaDataType,
9919 A: *const ::core::ffi::c_void,
9920 lda: i64,
9921 computeType: cudaDataType,
9922 workspaceInBytes: *mut usize,
9923 ) -> cusolverStatus_t {
9924 (culib().cusolverDnGetrf_bufferSize)(
9925 handle,
9926 params,
9927 m,
9928 n,
9929 dataTypeA,
9930 A,
9931 lda,
9932 computeType,
9933 workspaceInBytes,
9934 )
9935 }
9936 #[cfg(any(
9937 feature = "cuda-11040",
9938 feature = "cuda-11050",
9939 feature = "cuda-11060",
9940 feature = "cuda-11070",
9941 feature = "cuda-11080",
9942 feature = "cuda-12000",
9943 feature = "cuda-12010",
9944 feature = "cuda-12020",
9945 feature = "cuda-12030",
9946 feature = "cuda-12040",
9947 feature = "cuda-12050",
9948 feature = "cuda-12060",
9949 feature = "cuda-12080",
9950 feature = "cuda-12090"
9951 ))]
9952 pub unsafe fn cusolverDnGetrs(
9953 handle: cusolverDnHandle_t,
9954 params: cusolverDnParams_t,
9955 trans: cublasOperation_t,
9956 n: i64,
9957 nrhs: i64,
9958 dataTypeA: cudaDataType,
9959 A: *const ::core::ffi::c_void,
9960 lda: i64,
9961 ipiv: *const i64,
9962 dataTypeB: cudaDataType,
9963 B: *mut ::core::ffi::c_void,
9964 ldb: i64,
9965 info: *mut ::core::ffi::c_int,
9966 ) -> cusolverStatus_t {
9967 (culib().cusolverDnGetrs)(
9968 handle, params, trans, n, nrhs, dataTypeA, A, lda, ipiv, dataTypeB, B, ldb, info,
9969 )
9970 }
9971 pub unsafe fn cusolverDnIRSInfosCreate(
9972 infos_ptr: *mut cusolverDnIRSInfos_t,
9973 ) -> cusolverStatus_t {
9974 (culib().cusolverDnIRSInfosCreate)(infos_ptr)
9975 }
9976 pub unsafe fn cusolverDnIRSInfosDestroy(infos: cusolverDnIRSInfos_t) -> cusolverStatus_t {
9977 (culib().cusolverDnIRSInfosDestroy)(infos)
9978 }
9979 pub unsafe fn cusolverDnIRSInfosGetMaxIters(
9980 infos: cusolverDnIRSInfos_t,
9981 maxiters: *mut cusolver_int_t,
9982 ) -> cusolverStatus_t {
9983 (culib().cusolverDnIRSInfosGetMaxIters)(infos, maxiters)
9984 }
9985 pub unsafe fn cusolverDnIRSInfosGetNiters(
9986 infos: cusolverDnIRSInfos_t,
9987 niters: *mut cusolver_int_t,
9988 ) -> cusolverStatus_t {
9989 (culib().cusolverDnIRSInfosGetNiters)(infos, niters)
9990 }
9991 pub unsafe fn cusolverDnIRSInfosGetOuterNiters(
9992 infos: cusolverDnIRSInfos_t,
9993 outer_niters: *mut cusolver_int_t,
9994 ) -> cusolverStatus_t {
9995 (culib().cusolverDnIRSInfosGetOuterNiters)(infos, outer_niters)
9996 }
9997 pub unsafe fn cusolverDnIRSInfosGetResidualHistory(
9998 infos: cusolverDnIRSInfos_t,
9999 residual_history: *mut *mut ::core::ffi::c_void,
10000 ) -> cusolverStatus_t {
10001 (culib().cusolverDnIRSInfosGetResidualHistory)(infos, residual_history)
10002 }
10003 pub unsafe fn cusolverDnIRSInfosRequestResidual(
10004 infos: cusolverDnIRSInfos_t,
10005 ) -> cusolverStatus_t {
10006 (culib().cusolverDnIRSInfosRequestResidual)(infos)
10007 }
10008 pub unsafe fn cusolverDnIRSParamsCreate(
10009 params_ptr: *mut cusolverDnIRSParams_t,
10010 ) -> cusolverStatus_t {
10011 (culib().cusolverDnIRSParamsCreate)(params_ptr)
10012 }
10013 pub unsafe fn cusolverDnIRSParamsDestroy(params: cusolverDnIRSParams_t) -> cusolverStatus_t {
10014 (culib().cusolverDnIRSParamsDestroy)(params)
10015 }
10016 pub unsafe fn cusolverDnIRSParamsDisableFallback(
10017 params: cusolverDnIRSParams_t,
10018 ) -> cusolverStatus_t {
10019 (culib().cusolverDnIRSParamsDisableFallback)(params)
10020 }
10021 pub unsafe fn cusolverDnIRSParamsEnableFallback(
10022 params: cusolverDnIRSParams_t,
10023 ) -> cusolverStatus_t {
10024 (culib().cusolverDnIRSParamsEnableFallback)(params)
10025 }
10026 pub unsafe fn cusolverDnIRSParamsGetMaxIters(
10027 params: cusolverDnIRSParams_t,
10028 maxiters: *mut cusolver_int_t,
10029 ) -> cusolverStatus_t {
10030 (culib().cusolverDnIRSParamsGetMaxIters)(params, maxiters)
10031 }
10032 pub unsafe fn cusolverDnIRSParamsSetMaxIters(
10033 params: cusolverDnIRSParams_t,
10034 maxiters: cusolver_int_t,
10035 ) -> cusolverStatus_t {
10036 (culib().cusolverDnIRSParamsSetMaxIters)(params, maxiters)
10037 }
10038 pub unsafe fn cusolverDnIRSParamsSetMaxItersInner(
10039 params: cusolverDnIRSParams_t,
10040 maxiters_inner: cusolver_int_t,
10041 ) -> cusolverStatus_t {
10042 (culib().cusolverDnIRSParamsSetMaxItersInner)(params, maxiters_inner)
10043 }
10044 pub unsafe fn cusolverDnIRSParamsSetRefinementSolver(
10045 params: cusolverDnIRSParams_t,
10046 refinement_solver: cusolverIRSRefinement_t,
10047 ) -> cusolverStatus_t {
10048 (culib().cusolverDnIRSParamsSetRefinementSolver)(params, refinement_solver)
10049 }
10050 pub unsafe fn cusolverDnIRSParamsSetSolverLowestPrecision(
10051 params: cusolverDnIRSParams_t,
10052 solver_lowest_precision: cusolverPrecType_t,
10053 ) -> cusolverStatus_t {
10054 (culib().cusolverDnIRSParamsSetSolverLowestPrecision)(params, solver_lowest_precision)
10055 }
10056 pub unsafe fn cusolverDnIRSParamsSetSolverMainPrecision(
10057 params: cusolverDnIRSParams_t,
10058 solver_main_precision: cusolverPrecType_t,
10059 ) -> cusolverStatus_t {
10060 (culib().cusolverDnIRSParamsSetSolverMainPrecision)(params, solver_main_precision)
10061 }
10062 pub unsafe fn cusolverDnIRSParamsSetSolverPrecisions(
10063 params: cusolverDnIRSParams_t,
10064 solver_main_precision: cusolverPrecType_t,
10065 solver_lowest_precision: cusolverPrecType_t,
10066 ) -> cusolverStatus_t {
10067 (culib().cusolverDnIRSParamsSetSolverPrecisions)(
10068 params,
10069 solver_main_precision,
10070 solver_lowest_precision,
10071 )
10072 }
10073 pub unsafe fn cusolverDnIRSParamsSetTol(
10074 params: cusolverDnIRSParams_t,
10075 val: f64,
10076 ) -> cusolverStatus_t {
10077 (culib().cusolverDnIRSParamsSetTol)(params, val)
10078 }
10079 pub unsafe fn cusolverDnIRSParamsSetTolInner(
10080 params: cusolverDnIRSParams_t,
10081 val: f64,
10082 ) -> cusolverStatus_t {
10083 (culib().cusolverDnIRSParamsSetTolInner)(params, val)
10084 }
10085 pub unsafe fn cusolverDnIRSXgels(
10086 handle: cusolverDnHandle_t,
10087 gels_irs_params: cusolverDnIRSParams_t,
10088 gels_irs_infos: cusolverDnIRSInfos_t,
10089 m: cusolver_int_t,
10090 n: cusolver_int_t,
10091 nrhs: cusolver_int_t,
10092 dA: *mut ::core::ffi::c_void,
10093 ldda: cusolver_int_t,
10094 dB: *mut ::core::ffi::c_void,
10095 lddb: cusolver_int_t,
10096 dX: *mut ::core::ffi::c_void,
10097 lddx: cusolver_int_t,
10098 dWorkspace: *mut ::core::ffi::c_void,
10099 lwork_bytes: usize,
10100 niters: *mut cusolver_int_t,
10101 d_info: *mut cusolver_int_t,
10102 ) -> cusolverStatus_t {
10103 (culib().cusolverDnIRSXgels)(
10104 handle,
10105 gels_irs_params,
10106 gels_irs_infos,
10107 m,
10108 n,
10109 nrhs,
10110 dA,
10111 ldda,
10112 dB,
10113 lddb,
10114 dX,
10115 lddx,
10116 dWorkspace,
10117 lwork_bytes,
10118 niters,
10119 d_info,
10120 )
10121 }
10122 pub unsafe fn cusolverDnIRSXgels_bufferSize(
10123 handle: cusolverDnHandle_t,
10124 params: cusolverDnIRSParams_t,
10125 m: cusolver_int_t,
10126 n: cusolver_int_t,
10127 nrhs: cusolver_int_t,
10128 lwork_bytes: *mut usize,
10129 ) -> cusolverStatus_t {
10130 (culib().cusolverDnIRSXgels_bufferSize)(handle, params, m, n, nrhs, lwork_bytes)
10131 }
10132 pub unsafe fn cusolverDnIRSXgesv(
10133 handle: cusolverDnHandle_t,
10134 gesv_irs_params: cusolverDnIRSParams_t,
10135 gesv_irs_infos: cusolverDnIRSInfos_t,
10136 n: cusolver_int_t,
10137 nrhs: cusolver_int_t,
10138 dA: *mut ::core::ffi::c_void,
10139 ldda: cusolver_int_t,
10140 dB: *mut ::core::ffi::c_void,
10141 lddb: cusolver_int_t,
10142 dX: *mut ::core::ffi::c_void,
10143 lddx: cusolver_int_t,
10144 dWorkspace: *mut ::core::ffi::c_void,
10145 lwork_bytes: usize,
10146 niters: *mut cusolver_int_t,
10147 d_info: *mut cusolver_int_t,
10148 ) -> cusolverStatus_t {
10149 (culib().cusolverDnIRSXgesv)(
10150 handle,
10151 gesv_irs_params,
10152 gesv_irs_infos,
10153 n,
10154 nrhs,
10155 dA,
10156 ldda,
10157 dB,
10158 lddb,
10159 dX,
10160 lddx,
10161 dWorkspace,
10162 lwork_bytes,
10163 niters,
10164 d_info,
10165 )
10166 }
10167 pub unsafe fn cusolverDnIRSXgesv_bufferSize(
10168 handle: cusolverDnHandle_t,
10169 params: cusolverDnIRSParams_t,
10170 n: cusolver_int_t,
10171 nrhs: cusolver_int_t,
10172 lwork_bytes: *mut usize,
10173 ) -> cusolverStatus_t {
10174 (culib().cusolverDnIRSXgesv_bufferSize)(handle, params, n, nrhs, lwork_bytes)
10175 }
10176 #[cfg(any(
10177 feature = "cuda-11040",
10178 feature = "cuda-11050",
10179 feature = "cuda-11060",
10180 feature = "cuda-11070",
10181 feature = "cuda-11080",
10182 feature = "cuda-12000",
10183 feature = "cuda-12010",
10184 feature = "cuda-12020",
10185 feature = "cuda-12030",
10186 feature = "cuda-12040",
10187 feature = "cuda-12050",
10188 feature = "cuda-12060",
10189 feature = "cuda-12080",
10190 feature = "cuda-12090"
10191 ))]
10192 pub unsafe fn cusolverDnPotrf(
10193 handle: cusolverDnHandle_t,
10194 params: cusolverDnParams_t,
10195 uplo: cublasFillMode_t,
10196 n: i64,
10197 dataTypeA: cudaDataType,
10198 A: *mut ::core::ffi::c_void,
10199 lda: i64,
10200 computeType: cudaDataType,
10201 pBuffer: *mut ::core::ffi::c_void,
10202 workspaceInBytes: usize,
10203 info: *mut ::core::ffi::c_int,
10204 ) -> cusolverStatus_t {
10205 (culib().cusolverDnPotrf)(
10206 handle,
10207 params,
10208 uplo,
10209 n,
10210 dataTypeA,
10211 A,
10212 lda,
10213 computeType,
10214 pBuffer,
10215 workspaceInBytes,
10216 info,
10217 )
10218 }
10219 #[cfg(any(
10220 feature = "cuda-11040",
10221 feature = "cuda-11050",
10222 feature = "cuda-11060",
10223 feature = "cuda-11070",
10224 feature = "cuda-11080",
10225 feature = "cuda-12000",
10226 feature = "cuda-12010",
10227 feature = "cuda-12020",
10228 feature = "cuda-12030",
10229 feature = "cuda-12040",
10230 feature = "cuda-12050",
10231 feature = "cuda-12060",
10232 feature = "cuda-12080",
10233 feature = "cuda-12090"
10234 ))]
10235 pub unsafe fn cusolverDnPotrf_bufferSize(
10236 handle: cusolverDnHandle_t,
10237 params: cusolverDnParams_t,
10238 uplo: cublasFillMode_t,
10239 n: i64,
10240 dataTypeA: cudaDataType,
10241 A: *const ::core::ffi::c_void,
10242 lda: i64,
10243 computeType: cudaDataType,
10244 workspaceInBytes: *mut usize,
10245 ) -> cusolverStatus_t {
10246 (culib().cusolverDnPotrf_bufferSize)(
10247 handle,
10248 params,
10249 uplo,
10250 n,
10251 dataTypeA,
10252 A,
10253 lda,
10254 computeType,
10255 workspaceInBytes,
10256 )
10257 }
10258 #[cfg(any(
10259 feature = "cuda-11040",
10260 feature = "cuda-11050",
10261 feature = "cuda-11060",
10262 feature = "cuda-11070",
10263 feature = "cuda-11080",
10264 feature = "cuda-12000",
10265 feature = "cuda-12010",
10266 feature = "cuda-12020",
10267 feature = "cuda-12030",
10268 feature = "cuda-12040",
10269 feature = "cuda-12050",
10270 feature = "cuda-12060",
10271 feature = "cuda-12080",
10272 feature = "cuda-12090"
10273 ))]
10274 pub unsafe fn cusolverDnPotrs(
10275 handle: cusolverDnHandle_t,
10276 params: cusolverDnParams_t,
10277 uplo: cublasFillMode_t,
10278 n: i64,
10279 nrhs: i64,
10280 dataTypeA: cudaDataType,
10281 A: *const ::core::ffi::c_void,
10282 lda: i64,
10283 dataTypeB: cudaDataType,
10284 B: *mut ::core::ffi::c_void,
10285 ldb: i64,
10286 info: *mut ::core::ffi::c_int,
10287 ) -> cusolverStatus_t {
10288 (culib().cusolverDnPotrs)(
10289 handle, params, uplo, n, nrhs, dataTypeA, A, lda, dataTypeB, B, ldb, info,
10290 )
10291 }
10292 pub unsafe fn cusolverDnSBgels(
10293 handle: cusolverDnHandle_t,
10294 m: cusolver_int_t,
10295 n: cusolver_int_t,
10296 nrhs: cusolver_int_t,
10297 dA: *mut f32,
10298 ldda: cusolver_int_t,
10299 dB: *mut f32,
10300 lddb: cusolver_int_t,
10301 dX: *mut f32,
10302 lddx: cusolver_int_t,
10303 dWorkspace: *mut ::core::ffi::c_void,
10304 lwork_bytes: usize,
10305 iter: *mut cusolver_int_t,
10306 d_info: *mut cusolver_int_t,
10307 ) -> cusolverStatus_t {
10308 (culib().cusolverDnSBgels)(
10309 handle,
10310 m,
10311 n,
10312 nrhs,
10313 dA,
10314 ldda,
10315 dB,
10316 lddb,
10317 dX,
10318 lddx,
10319 dWorkspace,
10320 lwork_bytes,
10321 iter,
10322 d_info,
10323 )
10324 }
10325 pub unsafe fn cusolverDnSBgels_bufferSize(
10326 handle: cusolverDnHandle_t,
10327 m: cusolver_int_t,
10328 n: cusolver_int_t,
10329 nrhs: cusolver_int_t,
10330 dA: *mut f32,
10331 ldda: cusolver_int_t,
10332 dB: *mut f32,
10333 lddb: cusolver_int_t,
10334 dX: *mut f32,
10335 lddx: cusolver_int_t,
10336 dWorkspace: *mut ::core::ffi::c_void,
10337 lwork_bytes: *mut usize,
10338 ) -> cusolverStatus_t {
10339 (culib().cusolverDnSBgels_bufferSize)(
10340 handle,
10341 m,
10342 n,
10343 nrhs,
10344 dA,
10345 ldda,
10346 dB,
10347 lddb,
10348 dX,
10349 lddx,
10350 dWorkspace,
10351 lwork_bytes,
10352 )
10353 }
10354 pub unsafe fn cusolverDnSBgesv(
10355 handle: cusolverDnHandle_t,
10356 n: cusolver_int_t,
10357 nrhs: cusolver_int_t,
10358 dA: *mut f32,
10359 ldda: cusolver_int_t,
10360 dipiv: *mut cusolver_int_t,
10361 dB: *mut f32,
10362 lddb: cusolver_int_t,
10363 dX: *mut f32,
10364 lddx: cusolver_int_t,
10365 dWorkspace: *mut ::core::ffi::c_void,
10366 lwork_bytes: usize,
10367 iter: *mut cusolver_int_t,
10368 d_info: *mut cusolver_int_t,
10369 ) -> cusolverStatus_t {
10370 (culib().cusolverDnSBgesv)(
10371 handle,
10372 n,
10373 nrhs,
10374 dA,
10375 ldda,
10376 dipiv,
10377 dB,
10378 lddb,
10379 dX,
10380 lddx,
10381 dWorkspace,
10382 lwork_bytes,
10383 iter,
10384 d_info,
10385 )
10386 }
10387 pub unsafe fn cusolverDnSBgesv_bufferSize(
10388 handle: cusolverDnHandle_t,
10389 n: cusolver_int_t,
10390 nrhs: cusolver_int_t,
10391 dA: *mut f32,
10392 ldda: cusolver_int_t,
10393 dipiv: *mut cusolver_int_t,
10394 dB: *mut f32,
10395 lddb: cusolver_int_t,
10396 dX: *mut f32,
10397 lddx: cusolver_int_t,
10398 dWorkspace: *mut ::core::ffi::c_void,
10399 lwork_bytes: *mut usize,
10400 ) -> cusolverStatus_t {
10401 (culib().cusolverDnSBgesv_bufferSize)(
10402 handle,
10403 n,
10404 nrhs,
10405 dA,
10406 ldda,
10407 dipiv,
10408 dB,
10409 lddb,
10410 dX,
10411 lddx,
10412 dWorkspace,
10413 lwork_bytes,
10414 )
10415 }
10416 pub unsafe fn cusolverDnSHgels(
10417 handle: cusolverDnHandle_t,
10418 m: cusolver_int_t,
10419 n: cusolver_int_t,
10420 nrhs: cusolver_int_t,
10421 dA: *mut f32,
10422 ldda: cusolver_int_t,
10423 dB: *mut f32,
10424 lddb: cusolver_int_t,
10425 dX: *mut f32,
10426 lddx: cusolver_int_t,
10427 dWorkspace: *mut ::core::ffi::c_void,
10428 lwork_bytes: usize,
10429 iter: *mut cusolver_int_t,
10430 d_info: *mut cusolver_int_t,
10431 ) -> cusolverStatus_t {
10432 (culib().cusolverDnSHgels)(
10433 handle,
10434 m,
10435 n,
10436 nrhs,
10437 dA,
10438 ldda,
10439 dB,
10440 lddb,
10441 dX,
10442 lddx,
10443 dWorkspace,
10444 lwork_bytes,
10445 iter,
10446 d_info,
10447 )
10448 }
10449 pub unsafe fn cusolverDnSHgels_bufferSize(
10450 handle: cusolverDnHandle_t,
10451 m: cusolver_int_t,
10452 n: cusolver_int_t,
10453 nrhs: cusolver_int_t,
10454 dA: *mut f32,
10455 ldda: cusolver_int_t,
10456 dB: *mut f32,
10457 lddb: cusolver_int_t,
10458 dX: *mut f32,
10459 lddx: cusolver_int_t,
10460 dWorkspace: *mut ::core::ffi::c_void,
10461 lwork_bytes: *mut usize,
10462 ) -> cusolverStatus_t {
10463 (culib().cusolverDnSHgels_bufferSize)(
10464 handle,
10465 m,
10466 n,
10467 nrhs,
10468 dA,
10469 ldda,
10470 dB,
10471 lddb,
10472 dX,
10473 lddx,
10474 dWorkspace,
10475 lwork_bytes,
10476 )
10477 }
10478 pub unsafe fn cusolverDnSHgesv(
10479 handle: cusolverDnHandle_t,
10480 n: cusolver_int_t,
10481 nrhs: cusolver_int_t,
10482 dA: *mut f32,
10483 ldda: cusolver_int_t,
10484 dipiv: *mut cusolver_int_t,
10485 dB: *mut f32,
10486 lddb: cusolver_int_t,
10487 dX: *mut f32,
10488 lddx: cusolver_int_t,
10489 dWorkspace: *mut ::core::ffi::c_void,
10490 lwork_bytes: usize,
10491 iter: *mut cusolver_int_t,
10492 d_info: *mut cusolver_int_t,
10493 ) -> cusolverStatus_t {
10494 (culib().cusolverDnSHgesv)(
10495 handle,
10496 n,
10497 nrhs,
10498 dA,
10499 ldda,
10500 dipiv,
10501 dB,
10502 lddb,
10503 dX,
10504 lddx,
10505 dWorkspace,
10506 lwork_bytes,
10507 iter,
10508 d_info,
10509 )
10510 }
10511 pub unsafe fn cusolverDnSHgesv_bufferSize(
10512 handle: cusolverDnHandle_t,
10513 n: cusolver_int_t,
10514 nrhs: cusolver_int_t,
10515 dA: *mut f32,
10516 ldda: cusolver_int_t,
10517 dipiv: *mut cusolver_int_t,
10518 dB: *mut f32,
10519 lddb: cusolver_int_t,
10520 dX: *mut f32,
10521 lddx: cusolver_int_t,
10522 dWorkspace: *mut ::core::ffi::c_void,
10523 lwork_bytes: *mut usize,
10524 ) -> cusolverStatus_t {
10525 (culib().cusolverDnSHgesv_bufferSize)(
10526 handle,
10527 n,
10528 nrhs,
10529 dA,
10530 ldda,
10531 dipiv,
10532 dB,
10533 lddb,
10534 dX,
10535 lddx,
10536 dWorkspace,
10537 lwork_bytes,
10538 )
10539 }
10540 pub unsafe fn cusolverDnSSgels(
10541 handle: cusolverDnHandle_t,
10542 m: cusolver_int_t,
10543 n: cusolver_int_t,
10544 nrhs: cusolver_int_t,
10545 dA: *mut f32,
10546 ldda: cusolver_int_t,
10547 dB: *mut f32,
10548 lddb: cusolver_int_t,
10549 dX: *mut f32,
10550 lddx: cusolver_int_t,
10551 dWorkspace: *mut ::core::ffi::c_void,
10552 lwork_bytes: usize,
10553 iter: *mut cusolver_int_t,
10554 d_info: *mut cusolver_int_t,
10555 ) -> cusolverStatus_t {
10556 (culib().cusolverDnSSgels)(
10557 handle,
10558 m,
10559 n,
10560 nrhs,
10561 dA,
10562 ldda,
10563 dB,
10564 lddb,
10565 dX,
10566 lddx,
10567 dWorkspace,
10568 lwork_bytes,
10569 iter,
10570 d_info,
10571 )
10572 }
10573 pub unsafe fn cusolverDnSSgels_bufferSize(
10574 handle: cusolverDnHandle_t,
10575 m: cusolver_int_t,
10576 n: cusolver_int_t,
10577 nrhs: cusolver_int_t,
10578 dA: *mut f32,
10579 ldda: cusolver_int_t,
10580 dB: *mut f32,
10581 lddb: cusolver_int_t,
10582 dX: *mut f32,
10583 lddx: cusolver_int_t,
10584 dWorkspace: *mut ::core::ffi::c_void,
10585 lwork_bytes: *mut usize,
10586 ) -> cusolverStatus_t {
10587 (culib().cusolverDnSSgels_bufferSize)(
10588 handle,
10589 m,
10590 n,
10591 nrhs,
10592 dA,
10593 ldda,
10594 dB,
10595 lddb,
10596 dX,
10597 lddx,
10598 dWorkspace,
10599 lwork_bytes,
10600 )
10601 }
10602 pub unsafe fn cusolverDnSSgesv(
10603 handle: cusolverDnHandle_t,
10604 n: cusolver_int_t,
10605 nrhs: cusolver_int_t,
10606 dA: *mut f32,
10607 ldda: cusolver_int_t,
10608 dipiv: *mut cusolver_int_t,
10609 dB: *mut f32,
10610 lddb: cusolver_int_t,
10611 dX: *mut f32,
10612 lddx: cusolver_int_t,
10613 dWorkspace: *mut ::core::ffi::c_void,
10614 lwork_bytes: usize,
10615 iter: *mut cusolver_int_t,
10616 d_info: *mut cusolver_int_t,
10617 ) -> cusolverStatus_t {
10618 (culib().cusolverDnSSgesv)(
10619 handle,
10620 n,
10621 nrhs,
10622 dA,
10623 ldda,
10624 dipiv,
10625 dB,
10626 lddb,
10627 dX,
10628 lddx,
10629 dWorkspace,
10630 lwork_bytes,
10631 iter,
10632 d_info,
10633 )
10634 }
10635 pub unsafe fn cusolverDnSSgesv_bufferSize(
10636 handle: cusolverDnHandle_t,
10637 n: cusolver_int_t,
10638 nrhs: cusolver_int_t,
10639 dA: *mut f32,
10640 ldda: cusolver_int_t,
10641 dipiv: *mut cusolver_int_t,
10642 dB: *mut f32,
10643 lddb: cusolver_int_t,
10644 dX: *mut f32,
10645 lddx: cusolver_int_t,
10646 dWorkspace: *mut ::core::ffi::c_void,
10647 lwork_bytes: *mut usize,
10648 ) -> cusolverStatus_t {
10649 (culib().cusolverDnSSgesv_bufferSize)(
10650 handle,
10651 n,
10652 nrhs,
10653 dA,
10654 ldda,
10655 dipiv,
10656 dB,
10657 lddb,
10658 dX,
10659 lddx,
10660 dWorkspace,
10661 lwork_bytes,
10662 )
10663 }
10664 pub unsafe fn cusolverDnSXgels(
10665 handle: cusolverDnHandle_t,
10666 m: cusolver_int_t,
10667 n: cusolver_int_t,
10668 nrhs: cusolver_int_t,
10669 dA: *mut f32,
10670 ldda: cusolver_int_t,
10671 dB: *mut f32,
10672 lddb: cusolver_int_t,
10673 dX: *mut f32,
10674 lddx: cusolver_int_t,
10675 dWorkspace: *mut ::core::ffi::c_void,
10676 lwork_bytes: usize,
10677 iter: *mut cusolver_int_t,
10678 d_info: *mut cusolver_int_t,
10679 ) -> cusolverStatus_t {
10680 (culib().cusolverDnSXgels)(
10681 handle,
10682 m,
10683 n,
10684 nrhs,
10685 dA,
10686 ldda,
10687 dB,
10688 lddb,
10689 dX,
10690 lddx,
10691 dWorkspace,
10692 lwork_bytes,
10693 iter,
10694 d_info,
10695 )
10696 }
10697 pub unsafe fn cusolverDnSXgels_bufferSize(
10698 handle: cusolverDnHandle_t,
10699 m: cusolver_int_t,
10700 n: cusolver_int_t,
10701 nrhs: cusolver_int_t,
10702 dA: *mut f32,
10703 ldda: cusolver_int_t,
10704 dB: *mut f32,
10705 lddb: cusolver_int_t,
10706 dX: *mut f32,
10707 lddx: cusolver_int_t,
10708 dWorkspace: *mut ::core::ffi::c_void,
10709 lwork_bytes: *mut usize,
10710 ) -> cusolverStatus_t {
10711 (culib().cusolverDnSXgels_bufferSize)(
10712 handle,
10713 m,
10714 n,
10715 nrhs,
10716 dA,
10717 ldda,
10718 dB,
10719 lddb,
10720 dX,
10721 lddx,
10722 dWorkspace,
10723 lwork_bytes,
10724 )
10725 }
10726 pub unsafe fn cusolverDnSXgesv(
10727 handle: cusolverDnHandle_t,
10728 n: cusolver_int_t,
10729 nrhs: cusolver_int_t,
10730 dA: *mut f32,
10731 ldda: cusolver_int_t,
10732 dipiv: *mut cusolver_int_t,
10733 dB: *mut f32,
10734 lddb: cusolver_int_t,
10735 dX: *mut f32,
10736 lddx: cusolver_int_t,
10737 dWorkspace: *mut ::core::ffi::c_void,
10738 lwork_bytes: usize,
10739 iter: *mut cusolver_int_t,
10740 d_info: *mut cusolver_int_t,
10741 ) -> cusolverStatus_t {
10742 (culib().cusolverDnSXgesv)(
10743 handle,
10744 n,
10745 nrhs,
10746 dA,
10747 ldda,
10748 dipiv,
10749 dB,
10750 lddb,
10751 dX,
10752 lddx,
10753 dWorkspace,
10754 lwork_bytes,
10755 iter,
10756 d_info,
10757 )
10758 }
10759 pub unsafe fn cusolverDnSXgesv_bufferSize(
10760 handle: cusolverDnHandle_t,
10761 n: cusolver_int_t,
10762 nrhs: cusolver_int_t,
10763 dA: *mut f32,
10764 ldda: cusolver_int_t,
10765 dipiv: *mut cusolver_int_t,
10766 dB: *mut f32,
10767 lddb: cusolver_int_t,
10768 dX: *mut f32,
10769 lddx: cusolver_int_t,
10770 dWorkspace: *mut ::core::ffi::c_void,
10771 lwork_bytes: *mut usize,
10772 ) -> cusolverStatus_t {
10773 (culib().cusolverDnSXgesv_bufferSize)(
10774 handle,
10775 n,
10776 nrhs,
10777 dA,
10778 ldda,
10779 dipiv,
10780 dB,
10781 lddb,
10782 dX,
10783 lddx,
10784 dWorkspace,
10785 lwork_bytes,
10786 )
10787 }
10788 pub unsafe fn cusolverDnSetAdvOptions(
10789 params: cusolverDnParams_t,
10790 function: cusolverDnFunction_t,
10791 algo: cusolverAlgMode_t,
10792 ) -> cusolverStatus_t {
10793 (culib().cusolverDnSetAdvOptions)(params, function, algo)
10794 }
10795 #[cfg(any(
10796 feature = "cuda-12020",
10797 feature = "cuda-12030",
10798 feature = "cuda-12040",
10799 feature = "cuda-12050",
10800 feature = "cuda-12060",
10801 feature = "cuda-12080",
10802 feature = "cuda-12090",
10803 feature = "cuda-13000",
10804 feature = "cuda-13010"
10805 ))]
10806 pub unsafe fn cusolverDnSetDeterministicMode(
10807 handle: cusolverDnHandle_t,
10808 mode: cusolverDeterministicMode_t,
10809 ) -> cusolverStatus_t {
10810 (culib().cusolverDnSetDeterministicMode)(handle, mode)
10811 }
10812 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
10813 pub unsafe fn cusolverDnSetEmulationStrategy(
10814 handle: cusolverDnHandle_t,
10815 strategy: cudaEmulationStrategy_t,
10816 ) -> cusolverStatus_t {
10817 (culib().cusolverDnSetEmulationStrategy)(handle, strategy)
10818 }
10819 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
10820 pub unsafe fn cusolverDnSetMathMode(
10821 handle: cusolverDnHandle_t,
10822 mode: cusolverMathMode_t,
10823 ) -> cusolverStatus_t {
10824 (culib().cusolverDnSetMathMode)(handle, mode)
10825 }
10826 pub unsafe fn cusolverDnSetStream(
10827 handle: cusolverDnHandle_t,
10828 streamId: cudaStream_t,
10829 ) -> cusolverStatus_t {
10830 (culib().cusolverDnSetStream)(handle, streamId)
10831 }
10832 pub unsafe fn cusolverDnSgebrd(
10833 handle: cusolverDnHandle_t,
10834 m: ::core::ffi::c_int,
10835 n: ::core::ffi::c_int,
10836 A: *mut f32,
10837 lda: ::core::ffi::c_int,
10838 D: *mut f32,
10839 E: *mut f32,
10840 TAUQ: *mut f32,
10841 TAUP: *mut f32,
10842 Work: *mut f32,
10843 Lwork: ::core::ffi::c_int,
10844 devInfo: *mut ::core::ffi::c_int,
10845 ) -> cusolverStatus_t {
10846 (culib().cusolverDnSgebrd)(handle, m, n, A, lda, D, E, TAUQ, TAUP, Work, Lwork, devInfo)
10847 }
10848 pub unsafe fn cusolverDnSgebrd_bufferSize(
10849 handle: cusolverDnHandle_t,
10850 m: ::core::ffi::c_int,
10851 n: ::core::ffi::c_int,
10852 Lwork: *mut ::core::ffi::c_int,
10853 ) -> cusolverStatus_t {
10854 (culib().cusolverDnSgebrd_bufferSize)(handle, m, n, Lwork)
10855 }
10856 pub unsafe fn cusolverDnSgeqrf(
10857 handle: cusolverDnHandle_t,
10858 m: ::core::ffi::c_int,
10859 n: ::core::ffi::c_int,
10860 A: *mut f32,
10861 lda: ::core::ffi::c_int,
10862 TAU: *mut f32,
10863 Workspace: *mut f32,
10864 Lwork: ::core::ffi::c_int,
10865 devInfo: *mut ::core::ffi::c_int,
10866 ) -> cusolverStatus_t {
10867 (culib().cusolverDnSgeqrf)(handle, m, n, A, lda, TAU, Workspace, Lwork, devInfo)
10868 }
10869 pub unsafe fn cusolverDnSgeqrf_bufferSize(
10870 handle: cusolverDnHandle_t,
10871 m: ::core::ffi::c_int,
10872 n: ::core::ffi::c_int,
10873 A: *mut f32,
10874 lda: ::core::ffi::c_int,
10875 lwork: *mut ::core::ffi::c_int,
10876 ) -> cusolverStatus_t {
10877 (culib().cusolverDnSgeqrf_bufferSize)(handle, m, n, A, lda, lwork)
10878 }
10879 pub unsafe fn cusolverDnSgesvd(
10880 handle: cusolverDnHandle_t,
10881 jobu: ::core::ffi::c_schar,
10882 jobvt: ::core::ffi::c_schar,
10883 m: ::core::ffi::c_int,
10884 n: ::core::ffi::c_int,
10885 A: *mut f32,
10886 lda: ::core::ffi::c_int,
10887 S: *mut f32,
10888 U: *mut f32,
10889 ldu: ::core::ffi::c_int,
10890 VT: *mut f32,
10891 ldvt: ::core::ffi::c_int,
10892 work: *mut f32,
10893 lwork: ::core::ffi::c_int,
10894 rwork: *mut f32,
10895 info: *mut ::core::ffi::c_int,
10896 ) -> cusolverStatus_t {
10897 (culib().cusolverDnSgesvd)(
10898 handle, jobu, jobvt, m, n, A, lda, S, U, ldu, VT, ldvt, work, lwork, rwork, info,
10899 )
10900 }
10901 pub unsafe fn cusolverDnSgesvd_bufferSize(
10902 handle: cusolverDnHandle_t,
10903 m: ::core::ffi::c_int,
10904 n: ::core::ffi::c_int,
10905 lwork: *mut ::core::ffi::c_int,
10906 ) -> cusolverStatus_t {
10907 (culib().cusolverDnSgesvd_bufferSize)(handle, m, n, lwork)
10908 }
10909 pub unsafe fn cusolverDnSgesvdaStridedBatched(
10910 handle: cusolverDnHandle_t,
10911 jobz: cusolverEigMode_t,
10912 rank: ::core::ffi::c_int,
10913 m: ::core::ffi::c_int,
10914 n: ::core::ffi::c_int,
10915 d_A: *const f32,
10916 lda: ::core::ffi::c_int,
10917 strideA: ::core::ffi::c_longlong,
10918 d_S: *mut f32,
10919 strideS: ::core::ffi::c_longlong,
10920 d_U: *mut f32,
10921 ldu: ::core::ffi::c_int,
10922 strideU: ::core::ffi::c_longlong,
10923 d_V: *mut f32,
10924 ldv: ::core::ffi::c_int,
10925 strideV: ::core::ffi::c_longlong,
10926 d_work: *mut f32,
10927 lwork: ::core::ffi::c_int,
10928 d_info: *mut ::core::ffi::c_int,
10929 h_R_nrmF: *mut f64,
10930 batchSize: ::core::ffi::c_int,
10931 ) -> cusolverStatus_t {
10932 (culib().cusolverDnSgesvdaStridedBatched)(
10933 handle, jobz, rank, m, n, d_A, lda, strideA, d_S, strideS, d_U, ldu, strideU, d_V, ldv,
10934 strideV, d_work, lwork, d_info, h_R_nrmF, batchSize,
10935 )
10936 }
10937 pub unsafe fn cusolverDnSgesvdaStridedBatched_bufferSize(
10938 handle: cusolverDnHandle_t,
10939 jobz: cusolverEigMode_t,
10940 rank: ::core::ffi::c_int,
10941 m: ::core::ffi::c_int,
10942 n: ::core::ffi::c_int,
10943 d_A: *const f32,
10944 lda: ::core::ffi::c_int,
10945 strideA: ::core::ffi::c_longlong,
10946 d_S: *const f32,
10947 strideS: ::core::ffi::c_longlong,
10948 d_U: *const f32,
10949 ldu: ::core::ffi::c_int,
10950 strideU: ::core::ffi::c_longlong,
10951 d_V: *const f32,
10952 ldv: ::core::ffi::c_int,
10953 strideV: ::core::ffi::c_longlong,
10954 lwork: *mut ::core::ffi::c_int,
10955 batchSize: ::core::ffi::c_int,
10956 ) -> cusolverStatus_t {
10957 (culib().cusolverDnSgesvdaStridedBatched_bufferSize)(
10958 handle, jobz, rank, m, n, d_A, lda, strideA, d_S, strideS, d_U, ldu, strideU, d_V, ldv,
10959 strideV, lwork, batchSize,
10960 )
10961 }
10962 pub unsafe fn cusolverDnSgesvdj(
10963 handle: cusolverDnHandle_t,
10964 jobz: cusolverEigMode_t,
10965 econ: ::core::ffi::c_int,
10966 m: ::core::ffi::c_int,
10967 n: ::core::ffi::c_int,
10968 A: *mut f32,
10969 lda: ::core::ffi::c_int,
10970 S: *mut f32,
10971 U: *mut f32,
10972 ldu: ::core::ffi::c_int,
10973 V: *mut f32,
10974 ldv: ::core::ffi::c_int,
10975 work: *mut f32,
10976 lwork: ::core::ffi::c_int,
10977 info: *mut ::core::ffi::c_int,
10978 params: gesvdjInfo_t,
10979 ) -> cusolverStatus_t {
10980 (culib().cusolverDnSgesvdj)(
10981 handle, jobz, econ, m, n, A, lda, S, U, ldu, V, ldv, work, lwork, info, params,
10982 )
10983 }
10984 pub unsafe fn cusolverDnSgesvdjBatched(
10985 handle: cusolverDnHandle_t,
10986 jobz: cusolverEigMode_t,
10987 m: ::core::ffi::c_int,
10988 n: ::core::ffi::c_int,
10989 A: *mut f32,
10990 lda: ::core::ffi::c_int,
10991 S: *mut f32,
10992 U: *mut f32,
10993 ldu: ::core::ffi::c_int,
10994 V: *mut f32,
10995 ldv: ::core::ffi::c_int,
10996 work: *mut f32,
10997 lwork: ::core::ffi::c_int,
10998 info: *mut ::core::ffi::c_int,
10999 params: gesvdjInfo_t,
11000 batchSize: ::core::ffi::c_int,
11001 ) -> cusolverStatus_t {
11002 (culib().cusolverDnSgesvdjBatched)(
11003 handle, jobz, m, n, A, lda, S, U, ldu, V, ldv, work, lwork, info, params, batchSize,
11004 )
11005 }
11006 pub unsafe fn cusolverDnSgesvdjBatched_bufferSize(
11007 handle: cusolverDnHandle_t,
11008 jobz: cusolverEigMode_t,
11009 m: ::core::ffi::c_int,
11010 n: ::core::ffi::c_int,
11011 A: *const f32,
11012 lda: ::core::ffi::c_int,
11013 S: *const f32,
11014 U: *const f32,
11015 ldu: ::core::ffi::c_int,
11016 V: *const f32,
11017 ldv: ::core::ffi::c_int,
11018 lwork: *mut ::core::ffi::c_int,
11019 params: gesvdjInfo_t,
11020 batchSize: ::core::ffi::c_int,
11021 ) -> cusolverStatus_t {
11022 (culib().cusolverDnSgesvdjBatched_bufferSize)(
11023 handle, jobz, m, n, A, lda, S, U, ldu, V, ldv, lwork, params, batchSize,
11024 )
11025 }
11026 pub unsafe fn cusolverDnSgesvdj_bufferSize(
11027 handle: cusolverDnHandle_t,
11028 jobz: cusolverEigMode_t,
11029 econ: ::core::ffi::c_int,
11030 m: ::core::ffi::c_int,
11031 n: ::core::ffi::c_int,
11032 A: *const f32,
11033 lda: ::core::ffi::c_int,
11034 S: *const f32,
11035 U: *const f32,
11036 ldu: ::core::ffi::c_int,
11037 V: *const f32,
11038 ldv: ::core::ffi::c_int,
11039 lwork: *mut ::core::ffi::c_int,
11040 params: gesvdjInfo_t,
11041 ) -> cusolverStatus_t {
11042 (culib().cusolverDnSgesvdj_bufferSize)(
11043 handle, jobz, econ, m, n, A, lda, S, U, ldu, V, ldv, lwork, params,
11044 )
11045 }
11046 pub unsafe fn cusolverDnSgetrf(
11047 handle: cusolverDnHandle_t,
11048 m: ::core::ffi::c_int,
11049 n: ::core::ffi::c_int,
11050 A: *mut f32,
11051 lda: ::core::ffi::c_int,
11052 Workspace: *mut f32,
11053 devIpiv: *mut ::core::ffi::c_int,
11054 devInfo: *mut ::core::ffi::c_int,
11055 ) -> cusolverStatus_t {
11056 (culib().cusolverDnSgetrf)(handle, m, n, A, lda, Workspace, devIpiv, devInfo)
11057 }
11058 pub unsafe fn cusolverDnSgetrf_bufferSize(
11059 handle: cusolverDnHandle_t,
11060 m: ::core::ffi::c_int,
11061 n: ::core::ffi::c_int,
11062 A: *mut f32,
11063 lda: ::core::ffi::c_int,
11064 Lwork: *mut ::core::ffi::c_int,
11065 ) -> cusolverStatus_t {
11066 (culib().cusolverDnSgetrf_bufferSize)(handle, m, n, A, lda, Lwork)
11067 }
11068 pub unsafe fn cusolverDnSgetrs(
11069 handle: cusolverDnHandle_t,
11070 trans: cublasOperation_t,
11071 n: ::core::ffi::c_int,
11072 nrhs: ::core::ffi::c_int,
11073 A: *const f32,
11074 lda: ::core::ffi::c_int,
11075 devIpiv: *const ::core::ffi::c_int,
11076 B: *mut f32,
11077 ldb: ::core::ffi::c_int,
11078 devInfo: *mut ::core::ffi::c_int,
11079 ) -> cusolverStatus_t {
11080 (culib().cusolverDnSgetrs)(handle, trans, n, nrhs, A, lda, devIpiv, B, ldb, devInfo)
11081 }
11082 pub unsafe fn cusolverDnSlaswp(
11083 handle: cusolverDnHandle_t,
11084 n: ::core::ffi::c_int,
11085 A: *mut f32,
11086 lda: ::core::ffi::c_int,
11087 k1: ::core::ffi::c_int,
11088 k2: ::core::ffi::c_int,
11089 devIpiv: *const ::core::ffi::c_int,
11090 incx: ::core::ffi::c_int,
11091 ) -> cusolverStatus_t {
11092 (culib().cusolverDnSlaswp)(handle, n, A, lda, k1, k2, devIpiv, incx)
11093 }
11094 pub unsafe fn cusolverDnSlauum(
11095 handle: cusolverDnHandle_t,
11096 uplo: cublasFillMode_t,
11097 n: ::core::ffi::c_int,
11098 A: *mut f32,
11099 lda: ::core::ffi::c_int,
11100 work: *mut f32,
11101 lwork: ::core::ffi::c_int,
11102 devInfo: *mut ::core::ffi::c_int,
11103 ) -> cusolverStatus_t {
11104 (culib().cusolverDnSlauum)(handle, uplo, n, A, lda, work, lwork, devInfo)
11105 }
11106 pub unsafe fn cusolverDnSlauum_bufferSize(
11107 handle: cusolverDnHandle_t,
11108 uplo: cublasFillMode_t,
11109 n: ::core::ffi::c_int,
11110 A: *mut f32,
11111 lda: ::core::ffi::c_int,
11112 lwork: *mut ::core::ffi::c_int,
11113 ) -> cusolverStatus_t {
11114 (culib().cusolverDnSlauum_bufferSize)(handle, uplo, n, A, lda, lwork)
11115 }
11116 pub unsafe fn cusolverDnSorgbr(
11117 handle: cusolverDnHandle_t,
11118 side: cublasSideMode_t,
11119 m: ::core::ffi::c_int,
11120 n: ::core::ffi::c_int,
11121 k: ::core::ffi::c_int,
11122 A: *mut f32,
11123 lda: ::core::ffi::c_int,
11124 tau: *const f32,
11125 work: *mut f32,
11126 lwork: ::core::ffi::c_int,
11127 info: *mut ::core::ffi::c_int,
11128 ) -> cusolverStatus_t {
11129 (culib().cusolverDnSorgbr)(handle, side, m, n, k, A, lda, tau, work, lwork, info)
11130 }
11131 pub unsafe fn cusolverDnSorgbr_bufferSize(
11132 handle: cusolverDnHandle_t,
11133 side: cublasSideMode_t,
11134 m: ::core::ffi::c_int,
11135 n: ::core::ffi::c_int,
11136 k: ::core::ffi::c_int,
11137 A: *const f32,
11138 lda: ::core::ffi::c_int,
11139 tau: *const f32,
11140 lwork: *mut ::core::ffi::c_int,
11141 ) -> cusolverStatus_t {
11142 (culib().cusolverDnSorgbr_bufferSize)(handle, side, m, n, k, A, lda, tau, lwork)
11143 }
11144 pub unsafe fn cusolverDnSorgqr(
11145 handle: cusolverDnHandle_t,
11146 m: ::core::ffi::c_int,
11147 n: ::core::ffi::c_int,
11148 k: ::core::ffi::c_int,
11149 A: *mut f32,
11150 lda: ::core::ffi::c_int,
11151 tau: *const f32,
11152 work: *mut f32,
11153 lwork: ::core::ffi::c_int,
11154 info: *mut ::core::ffi::c_int,
11155 ) -> cusolverStatus_t {
11156 (culib().cusolverDnSorgqr)(handle, m, n, k, A, lda, tau, work, lwork, info)
11157 }
11158 pub unsafe fn cusolverDnSorgqr_bufferSize(
11159 handle: cusolverDnHandle_t,
11160 m: ::core::ffi::c_int,
11161 n: ::core::ffi::c_int,
11162 k: ::core::ffi::c_int,
11163 A: *const f32,
11164 lda: ::core::ffi::c_int,
11165 tau: *const f32,
11166 lwork: *mut ::core::ffi::c_int,
11167 ) -> cusolverStatus_t {
11168 (culib().cusolverDnSorgqr_bufferSize)(handle, m, n, k, A, lda, tau, lwork)
11169 }
11170 pub unsafe fn cusolverDnSorgtr(
11171 handle: cusolverDnHandle_t,
11172 uplo: cublasFillMode_t,
11173 n: ::core::ffi::c_int,
11174 A: *mut f32,
11175 lda: ::core::ffi::c_int,
11176 tau: *const f32,
11177 work: *mut f32,
11178 lwork: ::core::ffi::c_int,
11179 info: *mut ::core::ffi::c_int,
11180 ) -> cusolverStatus_t {
11181 (culib().cusolverDnSorgtr)(handle, uplo, n, A, lda, tau, work, lwork, info)
11182 }
11183 pub unsafe fn cusolverDnSorgtr_bufferSize(
11184 handle: cusolverDnHandle_t,
11185 uplo: cublasFillMode_t,
11186 n: ::core::ffi::c_int,
11187 A: *const f32,
11188 lda: ::core::ffi::c_int,
11189 tau: *const f32,
11190 lwork: *mut ::core::ffi::c_int,
11191 ) -> cusolverStatus_t {
11192 (culib().cusolverDnSorgtr_bufferSize)(handle, uplo, n, A, lda, tau, lwork)
11193 }
11194 pub unsafe fn cusolverDnSormqr(
11195 handle: cusolverDnHandle_t,
11196 side: cublasSideMode_t,
11197 trans: cublasOperation_t,
11198 m: ::core::ffi::c_int,
11199 n: ::core::ffi::c_int,
11200 k: ::core::ffi::c_int,
11201 A: *const f32,
11202 lda: ::core::ffi::c_int,
11203 tau: *const f32,
11204 C: *mut f32,
11205 ldc: ::core::ffi::c_int,
11206 work: *mut f32,
11207 lwork: ::core::ffi::c_int,
11208 devInfo: *mut ::core::ffi::c_int,
11209 ) -> cusolverStatus_t {
11210 (culib().cusolverDnSormqr)(
11211 handle, side, trans, m, n, k, A, lda, tau, C, ldc, work, lwork, devInfo,
11212 )
11213 }
11214 pub unsafe fn cusolverDnSormqr_bufferSize(
11215 handle: cusolverDnHandle_t,
11216 side: cublasSideMode_t,
11217 trans: cublasOperation_t,
11218 m: ::core::ffi::c_int,
11219 n: ::core::ffi::c_int,
11220 k: ::core::ffi::c_int,
11221 A: *const f32,
11222 lda: ::core::ffi::c_int,
11223 tau: *const f32,
11224 C: *const f32,
11225 ldc: ::core::ffi::c_int,
11226 lwork: *mut ::core::ffi::c_int,
11227 ) -> cusolverStatus_t {
11228 (culib().cusolverDnSormqr_bufferSize)(
11229 handle, side, trans, m, n, k, A, lda, tau, C, ldc, lwork,
11230 )
11231 }
11232 pub unsafe fn cusolverDnSormtr(
11233 handle: cusolverDnHandle_t,
11234 side: cublasSideMode_t,
11235 uplo: cublasFillMode_t,
11236 trans: cublasOperation_t,
11237 m: ::core::ffi::c_int,
11238 n: ::core::ffi::c_int,
11239 A: *mut f32,
11240 lda: ::core::ffi::c_int,
11241 tau: *mut f32,
11242 C: *mut f32,
11243 ldc: ::core::ffi::c_int,
11244 work: *mut f32,
11245 lwork: ::core::ffi::c_int,
11246 info: *mut ::core::ffi::c_int,
11247 ) -> cusolverStatus_t {
11248 (culib().cusolverDnSormtr)(
11249 handle, side, uplo, trans, m, n, A, lda, tau, C, ldc, work, lwork, info,
11250 )
11251 }
11252 pub unsafe fn cusolverDnSormtr_bufferSize(
11253 handle: cusolverDnHandle_t,
11254 side: cublasSideMode_t,
11255 uplo: cublasFillMode_t,
11256 trans: cublasOperation_t,
11257 m: ::core::ffi::c_int,
11258 n: ::core::ffi::c_int,
11259 A: *const f32,
11260 lda: ::core::ffi::c_int,
11261 tau: *const f32,
11262 C: *const f32,
11263 ldc: ::core::ffi::c_int,
11264 lwork: *mut ::core::ffi::c_int,
11265 ) -> cusolverStatus_t {
11266 (culib().cusolverDnSormtr_bufferSize)(
11267 handle, side, uplo, trans, m, n, A, lda, tau, C, ldc, lwork,
11268 )
11269 }
11270 pub unsafe fn cusolverDnSpotrf(
11271 handle: cusolverDnHandle_t,
11272 uplo: cublasFillMode_t,
11273 n: ::core::ffi::c_int,
11274 A: *mut f32,
11275 lda: ::core::ffi::c_int,
11276 Workspace: *mut f32,
11277 Lwork: ::core::ffi::c_int,
11278 devInfo: *mut ::core::ffi::c_int,
11279 ) -> cusolverStatus_t {
11280 (culib().cusolverDnSpotrf)(handle, uplo, n, A, lda, Workspace, Lwork, devInfo)
11281 }
11282 pub unsafe fn cusolverDnSpotrfBatched(
11283 handle: cusolverDnHandle_t,
11284 uplo: cublasFillMode_t,
11285 n: ::core::ffi::c_int,
11286 Aarray: *mut *mut f32,
11287 lda: ::core::ffi::c_int,
11288 infoArray: *mut ::core::ffi::c_int,
11289 batchSize: ::core::ffi::c_int,
11290 ) -> cusolverStatus_t {
11291 (culib().cusolverDnSpotrfBatched)(handle, uplo, n, Aarray, lda, infoArray, batchSize)
11292 }
11293 pub unsafe fn cusolverDnSpotrf_bufferSize(
11294 handle: cusolverDnHandle_t,
11295 uplo: cublasFillMode_t,
11296 n: ::core::ffi::c_int,
11297 A: *mut f32,
11298 lda: ::core::ffi::c_int,
11299 Lwork: *mut ::core::ffi::c_int,
11300 ) -> cusolverStatus_t {
11301 (culib().cusolverDnSpotrf_bufferSize)(handle, uplo, n, A, lda, Lwork)
11302 }
11303 pub unsafe fn cusolverDnSpotri(
11304 handle: cusolverDnHandle_t,
11305 uplo: cublasFillMode_t,
11306 n: ::core::ffi::c_int,
11307 A: *mut f32,
11308 lda: ::core::ffi::c_int,
11309 work: *mut f32,
11310 lwork: ::core::ffi::c_int,
11311 devInfo: *mut ::core::ffi::c_int,
11312 ) -> cusolverStatus_t {
11313 (culib().cusolverDnSpotri)(handle, uplo, n, A, lda, work, lwork, devInfo)
11314 }
11315 pub unsafe fn cusolverDnSpotri_bufferSize(
11316 handle: cusolverDnHandle_t,
11317 uplo: cublasFillMode_t,
11318 n: ::core::ffi::c_int,
11319 A: *mut f32,
11320 lda: ::core::ffi::c_int,
11321 lwork: *mut ::core::ffi::c_int,
11322 ) -> cusolverStatus_t {
11323 (culib().cusolverDnSpotri_bufferSize)(handle, uplo, n, A, lda, lwork)
11324 }
11325 pub unsafe fn cusolverDnSpotrs(
11326 handle: cusolverDnHandle_t,
11327 uplo: cublasFillMode_t,
11328 n: ::core::ffi::c_int,
11329 nrhs: ::core::ffi::c_int,
11330 A: *const f32,
11331 lda: ::core::ffi::c_int,
11332 B: *mut f32,
11333 ldb: ::core::ffi::c_int,
11334 devInfo: *mut ::core::ffi::c_int,
11335 ) -> cusolverStatus_t {
11336 (culib().cusolverDnSpotrs)(handle, uplo, n, nrhs, A, lda, B, ldb, devInfo)
11337 }
11338 pub unsafe fn cusolverDnSpotrsBatched(
11339 handle: cusolverDnHandle_t,
11340 uplo: cublasFillMode_t,
11341 n: ::core::ffi::c_int,
11342 nrhs: ::core::ffi::c_int,
11343 A: *mut *mut f32,
11344 lda: ::core::ffi::c_int,
11345 B: *mut *mut f32,
11346 ldb: ::core::ffi::c_int,
11347 d_info: *mut ::core::ffi::c_int,
11348 batchSize: ::core::ffi::c_int,
11349 ) -> cusolverStatus_t {
11350 (culib().cusolverDnSpotrsBatched)(handle, uplo, n, nrhs, A, lda, B, ldb, d_info, batchSize)
11351 }
11352 pub unsafe fn cusolverDnSsyevd(
11353 handle: cusolverDnHandle_t,
11354 jobz: cusolverEigMode_t,
11355 uplo: cublasFillMode_t,
11356 n: ::core::ffi::c_int,
11357 A: *mut f32,
11358 lda: ::core::ffi::c_int,
11359 W: *mut f32,
11360 work: *mut f32,
11361 lwork: ::core::ffi::c_int,
11362 info: *mut ::core::ffi::c_int,
11363 ) -> cusolverStatus_t {
11364 (culib().cusolverDnSsyevd)(handle, jobz, uplo, n, A, lda, W, work, lwork, info)
11365 }
11366 pub unsafe fn cusolverDnSsyevd_bufferSize(
11367 handle: cusolverDnHandle_t,
11368 jobz: cusolverEigMode_t,
11369 uplo: cublasFillMode_t,
11370 n: ::core::ffi::c_int,
11371 A: *const f32,
11372 lda: ::core::ffi::c_int,
11373 W: *const f32,
11374 lwork: *mut ::core::ffi::c_int,
11375 ) -> cusolverStatus_t {
11376 (culib().cusolverDnSsyevd_bufferSize)(handle, jobz, uplo, n, A, lda, W, lwork)
11377 }
11378 pub unsafe fn cusolverDnSsyevdx(
11379 handle: cusolverDnHandle_t,
11380 jobz: cusolverEigMode_t,
11381 range: cusolverEigRange_t,
11382 uplo: cublasFillMode_t,
11383 n: ::core::ffi::c_int,
11384 A: *mut f32,
11385 lda: ::core::ffi::c_int,
11386 vl: f32,
11387 vu: f32,
11388 il: ::core::ffi::c_int,
11389 iu: ::core::ffi::c_int,
11390 meig: *mut ::core::ffi::c_int,
11391 W: *mut f32,
11392 work: *mut f32,
11393 lwork: ::core::ffi::c_int,
11394 info: *mut ::core::ffi::c_int,
11395 ) -> cusolverStatus_t {
11396 (culib().cusolverDnSsyevdx)(
11397 handle, jobz, range, uplo, n, A, lda, vl, vu, il, iu, meig, W, work, lwork, info,
11398 )
11399 }
11400 pub unsafe fn cusolverDnSsyevdx_bufferSize(
11401 handle: cusolverDnHandle_t,
11402 jobz: cusolverEigMode_t,
11403 range: cusolverEigRange_t,
11404 uplo: cublasFillMode_t,
11405 n: ::core::ffi::c_int,
11406 A: *const f32,
11407 lda: ::core::ffi::c_int,
11408 vl: f32,
11409 vu: f32,
11410 il: ::core::ffi::c_int,
11411 iu: ::core::ffi::c_int,
11412 meig: *mut ::core::ffi::c_int,
11413 W: *const f32,
11414 lwork: *mut ::core::ffi::c_int,
11415 ) -> cusolverStatus_t {
11416 (culib().cusolverDnSsyevdx_bufferSize)(
11417 handle, jobz, range, uplo, n, A, lda, vl, vu, il, iu, meig, W, lwork,
11418 )
11419 }
11420 pub unsafe fn cusolverDnSsyevj(
11421 handle: cusolverDnHandle_t,
11422 jobz: cusolverEigMode_t,
11423 uplo: cublasFillMode_t,
11424 n: ::core::ffi::c_int,
11425 A: *mut f32,
11426 lda: ::core::ffi::c_int,
11427 W: *mut f32,
11428 work: *mut f32,
11429 lwork: ::core::ffi::c_int,
11430 info: *mut ::core::ffi::c_int,
11431 params: syevjInfo_t,
11432 ) -> cusolverStatus_t {
11433 (culib().cusolverDnSsyevj)(handle, jobz, uplo, n, A, lda, W, work, lwork, info, params)
11434 }
11435 pub unsafe fn cusolverDnSsyevjBatched(
11436 handle: cusolverDnHandle_t,
11437 jobz: cusolverEigMode_t,
11438 uplo: cublasFillMode_t,
11439 n: ::core::ffi::c_int,
11440 A: *mut f32,
11441 lda: ::core::ffi::c_int,
11442 W: *mut f32,
11443 work: *mut f32,
11444 lwork: ::core::ffi::c_int,
11445 info: *mut ::core::ffi::c_int,
11446 params: syevjInfo_t,
11447 batchSize: ::core::ffi::c_int,
11448 ) -> cusolverStatus_t {
11449 (culib().cusolverDnSsyevjBatched)(
11450 handle, jobz, uplo, n, A, lda, W, work, lwork, info, params, batchSize,
11451 )
11452 }
11453 pub unsafe fn cusolverDnSsyevjBatched_bufferSize(
11454 handle: cusolverDnHandle_t,
11455 jobz: cusolverEigMode_t,
11456 uplo: cublasFillMode_t,
11457 n: ::core::ffi::c_int,
11458 A: *const f32,
11459 lda: ::core::ffi::c_int,
11460 W: *const f32,
11461 lwork: *mut ::core::ffi::c_int,
11462 params: syevjInfo_t,
11463 batchSize: ::core::ffi::c_int,
11464 ) -> cusolverStatus_t {
11465 (culib().cusolverDnSsyevjBatched_bufferSize)(
11466 handle, jobz, uplo, n, A, lda, W, lwork, params, batchSize,
11467 )
11468 }
11469 pub unsafe fn cusolverDnSsyevj_bufferSize(
11470 handle: cusolverDnHandle_t,
11471 jobz: cusolverEigMode_t,
11472 uplo: cublasFillMode_t,
11473 n: ::core::ffi::c_int,
11474 A: *const f32,
11475 lda: ::core::ffi::c_int,
11476 W: *const f32,
11477 lwork: *mut ::core::ffi::c_int,
11478 params: syevjInfo_t,
11479 ) -> cusolverStatus_t {
11480 (culib().cusolverDnSsyevj_bufferSize)(handle, jobz, uplo, n, A, lda, W, lwork, params)
11481 }
11482 pub unsafe fn cusolverDnSsygvd(
11483 handle: cusolverDnHandle_t,
11484 itype: cusolverEigType_t,
11485 jobz: cusolverEigMode_t,
11486 uplo: cublasFillMode_t,
11487 n: ::core::ffi::c_int,
11488 A: *mut f32,
11489 lda: ::core::ffi::c_int,
11490 B: *mut f32,
11491 ldb: ::core::ffi::c_int,
11492 W: *mut f32,
11493 work: *mut f32,
11494 lwork: ::core::ffi::c_int,
11495 info: *mut ::core::ffi::c_int,
11496 ) -> cusolverStatus_t {
11497 (culib().cusolverDnSsygvd)(
11498 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, work, lwork, info,
11499 )
11500 }
11501 pub unsafe fn cusolverDnSsygvd_bufferSize(
11502 handle: cusolverDnHandle_t,
11503 itype: cusolverEigType_t,
11504 jobz: cusolverEigMode_t,
11505 uplo: cublasFillMode_t,
11506 n: ::core::ffi::c_int,
11507 A: *const f32,
11508 lda: ::core::ffi::c_int,
11509 B: *const f32,
11510 ldb: ::core::ffi::c_int,
11511 W: *const f32,
11512 lwork: *mut ::core::ffi::c_int,
11513 ) -> cusolverStatus_t {
11514 (culib().cusolverDnSsygvd_bufferSize)(
11515 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, lwork,
11516 )
11517 }
11518 pub unsafe fn cusolverDnSsygvdx(
11519 handle: cusolverDnHandle_t,
11520 itype: cusolverEigType_t,
11521 jobz: cusolverEigMode_t,
11522 range: cusolverEigRange_t,
11523 uplo: cublasFillMode_t,
11524 n: ::core::ffi::c_int,
11525 A: *mut f32,
11526 lda: ::core::ffi::c_int,
11527 B: *mut f32,
11528 ldb: ::core::ffi::c_int,
11529 vl: f32,
11530 vu: f32,
11531 il: ::core::ffi::c_int,
11532 iu: ::core::ffi::c_int,
11533 meig: *mut ::core::ffi::c_int,
11534 W: *mut f32,
11535 work: *mut f32,
11536 lwork: ::core::ffi::c_int,
11537 info: *mut ::core::ffi::c_int,
11538 ) -> cusolverStatus_t {
11539 (culib().cusolverDnSsygvdx)(
11540 handle, itype, jobz, range, uplo, n, A, lda, B, ldb, vl, vu, il, iu, meig, W, work,
11541 lwork, info,
11542 )
11543 }
11544 pub unsafe fn cusolverDnSsygvdx_bufferSize(
11545 handle: cusolverDnHandle_t,
11546 itype: cusolverEigType_t,
11547 jobz: cusolverEigMode_t,
11548 range: cusolverEigRange_t,
11549 uplo: cublasFillMode_t,
11550 n: ::core::ffi::c_int,
11551 A: *const f32,
11552 lda: ::core::ffi::c_int,
11553 B: *const f32,
11554 ldb: ::core::ffi::c_int,
11555 vl: f32,
11556 vu: f32,
11557 il: ::core::ffi::c_int,
11558 iu: ::core::ffi::c_int,
11559 meig: *mut ::core::ffi::c_int,
11560 W: *const f32,
11561 lwork: *mut ::core::ffi::c_int,
11562 ) -> cusolverStatus_t {
11563 (culib().cusolverDnSsygvdx_bufferSize)(
11564 handle, itype, jobz, range, uplo, n, A, lda, B, ldb, vl, vu, il, iu, meig, W, lwork,
11565 )
11566 }
11567 pub unsafe fn cusolverDnSsygvj(
11568 handle: cusolverDnHandle_t,
11569 itype: cusolverEigType_t,
11570 jobz: cusolverEigMode_t,
11571 uplo: cublasFillMode_t,
11572 n: ::core::ffi::c_int,
11573 A: *mut f32,
11574 lda: ::core::ffi::c_int,
11575 B: *mut f32,
11576 ldb: ::core::ffi::c_int,
11577 W: *mut f32,
11578 work: *mut f32,
11579 lwork: ::core::ffi::c_int,
11580 info: *mut ::core::ffi::c_int,
11581 params: syevjInfo_t,
11582 ) -> cusolverStatus_t {
11583 (culib().cusolverDnSsygvj)(
11584 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, work, lwork, info, params,
11585 )
11586 }
11587 pub unsafe fn cusolverDnSsygvj_bufferSize(
11588 handle: cusolverDnHandle_t,
11589 itype: cusolverEigType_t,
11590 jobz: cusolverEigMode_t,
11591 uplo: cublasFillMode_t,
11592 n: ::core::ffi::c_int,
11593 A: *const f32,
11594 lda: ::core::ffi::c_int,
11595 B: *const f32,
11596 ldb: ::core::ffi::c_int,
11597 W: *const f32,
11598 lwork: *mut ::core::ffi::c_int,
11599 params: syevjInfo_t,
11600 ) -> cusolverStatus_t {
11601 (culib().cusolverDnSsygvj_bufferSize)(
11602 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, lwork, params,
11603 )
11604 }
11605 pub unsafe fn cusolverDnSsytrd(
11606 handle: cusolverDnHandle_t,
11607 uplo: cublasFillMode_t,
11608 n: ::core::ffi::c_int,
11609 A: *mut f32,
11610 lda: ::core::ffi::c_int,
11611 d: *mut f32,
11612 e: *mut f32,
11613 tau: *mut f32,
11614 work: *mut f32,
11615 lwork: ::core::ffi::c_int,
11616 info: *mut ::core::ffi::c_int,
11617 ) -> cusolverStatus_t {
11618 (culib().cusolverDnSsytrd)(handle, uplo, n, A, lda, d, e, tau, work, lwork, info)
11619 }
11620 pub unsafe fn cusolverDnSsytrd_bufferSize(
11621 handle: cusolverDnHandle_t,
11622 uplo: cublasFillMode_t,
11623 n: ::core::ffi::c_int,
11624 A: *const f32,
11625 lda: ::core::ffi::c_int,
11626 d: *const f32,
11627 e: *const f32,
11628 tau: *const f32,
11629 lwork: *mut ::core::ffi::c_int,
11630 ) -> cusolverStatus_t {
11631 (culib().cusolverDnSsytrd_bufferSize)(handle, uplo, n, A, lda, d, e, tau, lwork)
11632 }
11633 pub unsafe fn cusolverDnSsytrf(
11634 handle: cusolverDnHandle_t,
11635 uplo: cublasFillMode_t,
11636 n: ::core::ffi::c_int,
11637 A: *mut f32,
11638 lda: ::core::ffi::c_int,
11639 ipiv: *mut ::core::ffi::c_int,
11640 work: *mut f32,
11641 lwork: ::core::ffi::c_int,
11642 info: *mut ::core::ffi::c_int,
11643 ) -> cusolverStatus_t {
11644 (culib().cusolverDnSsytrf)(handle, uplo, n, A, lda, ipiv, work, lwork, info)
11645 }
11646 pub unsafe fn cusolverDnSsytrf_bufferSize(
11647 handle: cusolverDnHandle_t,
11648 n: ::core::ffi::c_int,
11649 A: *mut f32,
11650 lda: ::core::ffi::c_int,
11651 lwork: *mut ::core::ffi::c_int,
11652 ) -> cusolverStatus_t {
11653 (culib().cusolverDnSsytrf_bufferSize)(handle, n, A, lda, lwork)
11654 }
11655 pub unsafe fn cusolverDnSsytri(
11656 handle: cusolverDnHandle_t,
11657 uplo: cublasFillMode_t,
11658 n: ::core::ffi::c_int,
11659 A: *mut f32,
11660 lda: ::core::ffi::c_int,
11661 ipiv: *const ::core::ffi::c_int,
11662 work: *mut f32,
11663 lwork: ::core::ffi::c_int,
11664 info: *mut ::core::ffi::c_int,
11665 ) -> cusolverStatus_t {
11666 (culib().cusolverDnSsytri)(handle, uplo, n, A, lda, ipiv, work, lwork, info)
11667 }
11668 pub unsafe fn cusolverDnSsytri_bufferSize(
11669 handle: cusolverDnHandle_t,
11670 uplo: cublasFillMode_t,
11671 n: ::core::ffi::c_int,
11672 A: *mut f32,
11673 lda: ::core::ffi::c_int,
11674 ipiv: *const ::core::ffi::c_int,
11675 lwork: *mut ::core::ffi::c_int,
11676 ) -> cusolverStatus_t {
11677 (culib().cusolverDnSsytri_bufferSize)(handle, uplo, n, A, lda, ipiv, lwork)
11678 }
11679 #[cfg(any(
11680 feature = "cuda-11040",
11681 feature = "cuda-11050",
11682 feature = "cuda-11060",
11683 feature = "cuda-11070",
11684 feature = "cuda-11080",
11685 feature = "cuda-12000",
11686 feature = "cuda-12010",
11687 feature = "cuda-12020",
11688 feature = "cuda-12030",
11689 feature = "cuda-12040",
11690 feature = "cuda-12050",
11691 feature = "cuda-12060",
11692 feature = "cuda-12080",
11693 feature = "cuda-12090"
11694 ))]
11695 pub unsafe fn cusolverDnSyevd(
11696 handle: cusolverDnHandle_t,
11697 params: cusolverDnParams_t,
11698 jobz: cusolverEigMode_t,
11699 uplo: cublasFillMode_t,
11700 n: i64,
11701 dataTypeA: cudaDataType,
11702 A: *mut ::core::ffi::c_void,
11703 lda: i64,
11704 dataTypeW: cudaDataType,
11705 W: *mut ::core::ffi::c_void,
11706 computeType: cudaDataType,
11707 pBuffer: *mut ::core::ffi::c_void,
11708 workspaceInBytes: usize,
11709 info: *mut ::core::ffi::c_int,
11710 ) -> cusolverStatus_t {
11711 (culib().cusolverDnSyevd)(
11712 handle,
11713 params,
11714 jobz,
11715 uplo,
11716 n,
11717 dataTypeA,
11718 A,
11719 lda,
11720 dataTypeW,
11721 W,
11722 computeType,
11723 pBuffer,
11724 workspaceInBytes,
11725 info,
11726 )
11727 }
11728 #[cfg(any(
11729 feature = "cuda-11040",
11730 feature = "cuda-11050",
11731 feature = "cuda-11060",
11732 feature = "cuda-11070",
11733 feature = "cuda-11080",
11734 feature = "cuda-12000",
11735 feature = "cuda-12010",
11736 feature = "cuda-12020",
11737 feature = "cuda-12030",
11738 feature = "cuda-12040",
11739 feature = "cuda-12050",
11740 feature = "cuda-12060",
11741 feature = "cuda-12080",
11742 feature = "cuda-12090"
11743 ))]
11744 pub unsafe fn cusolverDnSyevd_bufferSize(
11745 handle: cusolverDnHandle_t,
11746 params: cusolverDnParams_t,
11747 jobz: cusolverEigMode_t,
11748 uplo: cublasFillMode_t,
11749 n: i64,
11750 dataTypeA: cudaDataType,
11751 A: *const ::core::ffi::c_void,
11752 lda: i64,
11753 dataTypeW: cudaDataType,
11754 W: *const ::core::ffi::c_void,
11755 computeType: cudaDataType,
11756 workspaceInBytes: *mut usize,
11757 ) -> cusolverStatus_t {
11758 (culib().cusolverDnSyevd_bufferSize)(
11759 handle,
11760 params,
11761 jobz,
11762 uplo,
11763 n,
11764 dataTypeA,
11765 A,
11766 lda,
11767 dataTypeW,
11768 W,
11769 computeType,
11770 workspaceInBytes,
11771 )
11772 }
11773 #[cfg(any(
11774 feature = "cuda-11040",
11775 feature = "cuda-11050",
11776 feature = "cuda-11060",
11777 feature = "cuda-11070",
11778 feature = "cuda-11080",
11779 feature = "cuda-12000",
11780 feature = "cuda-12010",
11781 feature = "cuda-12020",
11782 feature = "cuda-12030",
11783 feature = "cuda-12040",
11784 feature = "cuda-12050",
11785 feature = "cuda-12060",
11786 feature = "cuda-12080",
11787 feature = "cuda-12090"
11788 ))]
11789 pub unsafe fn cusolverDnSyevdx(
11790 handle: cusolverDnHandle_t,
11791 params: cusolverDnParams_t,
11792 jobz: cusolverEigMode_t,
11793 range: cusolverEigRange_t,
11794 uplo: cublasFillMode_t,
11795 n: i64,
11796 dataTypeA: cudaDataType,
11797 A: *mut ::core::ffi::c_void,
11798 lda: i64,
11799 vl: *mut ::core::ffi::c_void,
11800 vu: *mut ::core::ffi::c_void,
11801 il: i64,
11802 iu: i64,
11803 meig64: *mut i64,
11804 dataTypeW: cudaDataType,
11805 W: *mut ::core::ffi::c_void,
11806 computeType: cudaDataType,
11807 pBuffer: *mut ::core::ffi::c_void,
11808 workspaceInBytes: usize,
11809 info: *mut ::core::ffi::c_int,
11810 ) -> cusolverStatus_t {
11811 (culib().cusolverDnSyevdx)(
11812 handle,
11813 params,
11814 jobz,
11815 range,
11816 uplo,
11817 n,
11818 dataTypeA,
11819 A,
11820 lda,
11821 vl,
11822 vu,
11823 il,
11824 iu,
11825 meig64,
11826 dataTypeW,
11827 W,
11828 computeType,
11829 pBuffer,
11830 workspaceInBytes,
11831 info,
11832 )
11833 }
11834 #[cfg(any(
11835 feature = "cuda-11040",
11836 feature = "cuda-11050",
11837 feature = "cuda-11060",
11838 feature = "cuda-11070",
11839 feature = "cuda-11080",
11840 feature = "cuda-12000",
11841 feature = "cuda-12010",
11842 feature = "cuda-12020",
11843 feature = "cuda-12030",
11844 feature = "cuda-12040",
11845 feature = "cuda-12050",
11846 feature = "cuda-12060",
11847 feature = "cuda-12080",
11848 feature = "cuda-12090"
11849 ))]
11850 pub unsafe fn cusolverDnSyevdx_bufferSize(
11851 handle: cusolverDnHandle_t,
11852 params: cusolverDnParams_t,
11853 jobz: cusolverEigMode_t,
11854 range: cusolverEigRange_t,
11855 uplo: cublasFillMode_t,
11856 n: i64,
11857 dataTypeA: cudaDataType,
11858 A: *const ::core::ffi::c_void,
11859 lda: i64,
11860 vl: *mut ::core::ffi::c_void,
11861 vu: *mut ::core::ffi::c_void,
11862 il: i64,
11863 iu: i64,
11864 h_meig: *mut i64,
11865 dataTypeW: cudaDataType,
11866 W: *const ::core::ffi::c_void,
11867 computeType: cudaDataType,
11868 workspaceInBytes: *mut usize,
11869 ) -> cusolverStatus_t {
11870 (culib().cusolverDnSyevdx_bufferSize)(
11871 handle,
11872 params,
11873 jobz,
11874 range,
11875 uplo,
11876 n,
11877 dataTypeA,
11878 A,
11879 lda,
11880 vl,
11881 vu,
11882 il,
11883 iu,
11884 h_meig,
11885 dataTypeW,
11886 W,
11887 computeType,
11888 workspaceInBytes,
11889 )
11890 }
11891 #[cfg(any(
11892 feature = "cuda-12060",
11893 feature = "cuda-12080",
11894 feature = "cuda-12090",
11895 feature = "cuda-13000",
11896 feature = "cuda-13010"
11897 ))]
11898 pub unsafe fn cusolverDnXgeev(
11899 handle: cusolverDnHandle_t,
11900 params: cusolverDnParams_t,
11901 jobvl: cusolverEigMode_t,
11902 jobvr: cusolverEigMode_t,
11903 n: i64,
11904 dataTypeA: cudaDataType,
11905 A: *mut ::core::ffi::c_void,
11906 lda: i64,
11907 dataTypeW: cudaDataType,
11908 W: *mut ::core::ffi::c_void,
11909 dataTypeVL: cudaDataType,
11910 VL: *mut ::core::ffi::c_void,
11911 ldvl: i64,
11912 dataTypeVR: cudaDataType,
11913 VR: *mut ::core::ffi::c_void,
11914 ldvr: i64,
11915 computeType: cudaDataType,
11916 bufferOnDevice: *mut ::core::ffi::c_void,
11917 workspaceInBytesOnDevice: usize,
11918 bufferOnHost: *mut ::core::ffi::c_void,
11919 workspaceInBytesOnHost: usize,
11920 info: *mut ::core::ffi::c_int,
11921 ) -> cusolverStatus_t {
11922 (culib().cusolverDnXgeev)(
11923 handle,
11924 params,
11925 jobvl,
11926 jobvr,
11927 n,
11928 dataTypeA,
11929 A,
11930 lda,
11931 dataTypeW,
11932 W,
11933 dataTypeVL,
11934 VL,
11935 ldvl,
11936 dataTypeVR,
11937 VR,
11938 ldvr,
11939 computeType,
11940 bufferOnDevice,
11941 workspaceInBytesOnDevice,
11942 bufferOnHost,
11943 workspaceInBytesOnHost,
11944 info,
11945 )
11946 }
11947 #[cfg(any(
11948 feature = "cuda-12060",
11949 feature = "cuda-12080",
11950 feature = "cuda-12090",
11951 feature = "cuda-13000",
11952 feature = "cuda-13010"
11953 ))]
11954 pub unsafe fn cusolverDnXgeev_bufferSize(
11955 handle: cusolverDnHandle_t,
11956 params: cusolverDnParams_t,
11957 jobvl: cusolverEigMode_t,
11958 jobvr: cusolverEigMode_t,
11959 n: i64,
11960 dataTypeA: cudaDataType,
11961 A: *const ::core::ffi::c_void,
11962 lda: i64,
11963 dataTypeW: cudaDataType,
11964 W: *const ::core::ffi::c_void,
11965 dataTypeVL: cudaDataType,
11966 VL: *const ::core::ffi::c_void,
11967 ldvl: i64,
11968 dataTypeVR: cudaDataType,
11969 VR: *const ::core::ffi::c_void,
11970 ldvr: i64,
11971 computeType: cudaDataType,
11972 workspaceInBytesOnDevice: *mut usize,
11973 workspaceInBytesOnHost: *mut usize,
11974 ) -> cusolverStatus_t {
11975 (culib().cusolverDnXgeev_bufferSize)(
11976 handle,
11977 params,
11978 jobvl,
11979 jobvr,
11980 n,
11981 dataTypeA,
11982 A,
11983 lda,
11984 dataTypeW,
11985 W,
11986 dataTypeVL,
11987 VL,
11988 ldvl,
11989 dataTypeVR,
11990 VR,
11991 ldvr,
11992 computeType,
11993 workspaceInBytesOnDevice,
11994 workspaceInBytesOnHost,
11995 )
11996 }
11997 pub unsafe fn cusolverDnXgeqrf(
11998 handle: cusolverDnHandle_t,
11999 params: cusolverDnParams_t,
12000 m: i64,
12001 n: i64,
12002 dataTypeA: cudaDataType,
12003 A: *mut ::core::ffi::c_void,
12004 lda: i64,
12005 dataTypeTau: cudaDataType,
12006 tau: *mut ::core::ffi::c_void,
12007 computeType: cudaDataType,
12008 bufferOnDevice: *mut ::core::ffi::c_void,
12009 workspaceInBytesOnDevice: usize,
12010 bufferOnHost: *mut ::core::ffi::c_void,
12011 workspaceInBytesOnHost: usize,
12012 info: *mut ::core::ffi::c_int,
12013 ) -> cusolverStatus_t {
12014 (culib().cusolverDnXgeqrf)(
12015 handle,
12016 params,
12017 m,
12018 n,
12019 dataTypeA,
12020 A,
12021 lda,
12022 dataTypeTau,
12023 tau,
12024 computeType,
12025 bufferOnDevice,
12026 workspaceInBytesOnDevice,
12027 bufferOnHost,
12028 workspaceInBytesOnHost,
12029 info,
12030 )
12031 }
12032 pub unsafe fn cusolverDnXgeqrf_bufferSize(
12033 handle: cusolverDnHandle_t,
12034 params: cusolverDnParams_t,
12035 m: i64,
12036 n: i64,
12037 dataTypeA: cudaDataType,
12038 A: *const ::core::ffi::c_void,
12039 lda: i64,
12040 dataTypeTau: cudaDataType,
12041 tau: *const ::core::ffi::c_void,
12042 computeType: cudaDataType,
12043 workspaceInBytesOnDevice: *mut usize,
12044 workspaceInBytesOnHost: *mut usize,
12045 ) -> cusolverStatus_t {
12046 (culib().cusolverDnXgeqrf_bufferSize)(
12047 handle,
12048 params,
12049 m,
12050 n,
12051 dataTypeA,
12052 A,
12053 lda,
12054 dataTypeTau,
12055 tau,
12056 computeType,
12057 workspaceInBytesOnDevice,
12058 workspaceInBytesOnHost,
12059 )
12060 }
12061 pub unsafe fn cusolverDnXgesvd(
12062 handle: cusolverDnHandle_t,
12063 params: cusolverDnParams_t,
12064 jobu: ::core::ffi::c_schar,
12065 jobvt: ::core::ffi::c_schar,
12066 m: i64,
12067 n: i64,
12068 dataTypeA: cudaDataType,
12069 A: *mut ::core::ffi::c_void,
12070 lda: i64,
12071 dataTypeS: cudaDataType,
12072 S: *mut ::core::ffi::c_void,
12073 dataTypeU: cudaDataType,
12074 U: *mut ::core::ffi::c_void,
12075 ldu: i64,
12076 dataTypeVT: cudaDataType,
12077 VT: *mut ::core::ffi::c_void,
12078 ldvt: i64,
12079 computeType: cudaDataType,
12080 bufferOnDevice: *mut ::core::ffi::c_void,
12081 workspaceInBytesOnDevice: usize,
12082 bufferOnHost: *mut ::core::ffi::c_void,
12083 workspaceInBytesOnHost: usize,
12084 info: *mut ::core::ffi::c_int,
12085 ) -> cusolverStatus_t {
12086 (culib().cusolverDnXgesvd)(
12087 handle,
12088 params,
12089 jobu,
12090 jobvt,
12091 m,
12092 n,
12093 dataTypeA,
12094 A,
12095 lda,
12096 dataTypeS,
12097 S,
12098 dataTypeU,
12099 U,
12100 ldu,
12101 dataTypeVT,
12102 VT,
12103 ldvt,
12104 computeType,
12105 bufferOnDevice,
12106 workspaceInBytesOnDevice,
12107 bufferOnHost,
12108 workspaceInBytesOnHost,
12109 info,
12110 )
12111 }
12112 pub unsafe fn cusolverDnXgesvd_bufferSize(
12113 handle: cusolverDnHandle_t,
12114 params: cusolverDnParams_t,
12115 jobu: ::core::ffi::c_schar,
12116 jobvt: ::core::ffi::c_schar,
12117 m: i64,
12118 n: i64,
12119 dataTypeA: cudaDataType,
12120 A: *const ::core::ffi::c_void,
12121 lda: i64,
12122 dataTypeS: cudaDataType,
12123 S: *const ::core::ffi::c_void,
12124 dataTypeU: cudaDataType,
12125 U: *const ::core::ffi::c_void,
12126 ldu: i64,
12127 dataTypeVT: cudaDataType,
12128 VT: *const ::core::ffi::c_void,
12129 ldvt: i64,
12130 computeType: cudaDataType,
12131 workspaceInBytesOnDevice: *mut usize,
12132 workspaceInBytesOnHost: *mut usize,
12133 ) -> cusolverStatus_t {
12134 (culib().cusolverDnXgesvd_bufferSize)(
12135 handle,
12136 params,
12137 jobu,
12138 jobvt,
12139 m,
12140 n,
12141 dataTypeA,
12142 A,
12143 lda,
12144 dataTypeS,
12145 S,
12146 dataTypeU,
12147 U,
12148 ldu,
12149 dataTypeVT,
12150 VT,
12151 ldvt,
12152 computeType,
12153 workspaceInBytesOnDevice,
12154 workspaceInBytesOnHost,
12155 )
12156 }
12157 pub unsafe fn cusolverDnXgesvdjGetResidual(
12158 handle: cusolverDnHandle_t,
12159 info: gesvdjInfo_t,
12160 residual: *mut f64,
12161 ) -> cusolverStatus_t {
12162 (culib().cusolverDnXgesvdjGetResidual)(handle, info, residual)
12163 }
12164 pub unsafe fn cusolverDnXgesvdjGetSweeps(
12165 handle: cusolverDnHandle_t,
12166 info: gesvdjInfo_t,
12167 executed_sweeps: *mut ::core::ffi::c_int,
12168 ) -> cusolverStatus_t {
12169 (culib().cusolverDnXgesvdjGetSweeps)(handle, info, executed_sweeps)
12170 }
12171 pub unsafe fn cusolverDnXgesvdjSetMaxSweeps(
12172 info: gesvdjInfo_t,
12173 max_sweeps: ::core::ffi::c_int,
12174 ) -> cusolverStatus_t {
12175 (culib().cusolverDnXgesvdjSetMaxSweeps)(info, max_sweeps)
12176 }
12177 pub unsafe fn cusolverDnXgesvdjSetSortEig(
12178 info: gesvdjInfo_t,
12179 sort_svd: ::core::ffi::c_int,
12180 ) -> cusolverStatus_t {
12181 (culib().cusolverDnXgesvdjSetSortEig)(info, sort_svd)
12182 }
12183 pub unsafe fn cusolverDnXgesvdjSetTolerance(
12184 info: gesvdjInfo_t,
12185 tolerance: f64,
12186 ) -> cusolverStatus_t {
12187 (culib().cusolverDnXgesvdjSetTolerance)(info, tolerance)
12188 }
12189 pub unsafe fn cusolverDnXgesvdp(
12190 handle: cusolverDnHandle_t,
12191 params: cusolverDnParams_t,
12192 jobz: cusolverEigMode_t,
12193 econ: ::core::ffi::c_int,
12194 m: i64,
12195 n: i64,
12196 dataTypeA: cudaDataType,
12197 A: *mut ::core::ffi::c_void,
12198 lda: i64,
12199 dataTypeS: cudaDataType,
12200 S: *mut ::core::ffi::c_void,
12201 dataTypeU: cudaDataType,
12202 U: *mut ::core::ffi::c_void,
12203 ldu: i64,
12204 dataTypeV: cudaDataType,
12205 V: *mut ::core::ffi::c_void,
12206 ldv: i64,
12207 computeType: cudaDataType,
12208 bufferOnDevice: *mut ::core::ffi::c_void,
12209 workspaceInBytesOnDevice: usize,
12210 bufferOnHost: *mut ::core::ffi::c_void,
12211 workspaceInBytesOnHost: usize,
12212 d_info: *mut ::core::ffi::c_int,
12213 h_err_sigma: *mut f64,
12214 ) -> cusolverStatus_t {
12215 (culib().cusolverDnXgesvdp)(
12216 handle,
12217 params,
12218 jobz,
12219 econ,
12220 m,
12221 n,
12222 dataTypeA,
12223 A,
12224 lda,
12225 dataTypeS,
12226 S,
12227 dataTypeU,
12228 U,
12229 ldu,
12230 dataTypeV,
12231 V,
12232 ldv,
12233 computeType,
12234 bufferOnDevice,
12235 workspaceInBytesOnDevice,
12236 bufferOnHost,
12237 workspaceInBytesOnHost,
12238 d_info,
12239 h_err_sigma,
12240 )
12241 }
12242 pub unsafe fn cusolverDnXgesvdp_bufferSize(
12243 handle: cusolverDnHandle_t,
12244 params: cusolverDnParams_t,
12245 jobz: cusolverEigMode_t,
12246 econ: ::core::ffi::c_int,
12247 m: i64,
12248 n: i64,
12249 dataTypeA: cudaDataType,
12250 A: *const ::core::ffi::c_void,
12251 lda: i64,
12252 dataTypeS: cudaDataType,
12253 S: *const ::core::ffi::c_void,
12254 dataTypeU: cudaDataType,
12255 U: *const ::core::ffi::c_void,
12256 ldu: i64,
12257 dataTypeV: cudaDataType,
12258 V: *const ::core::ffi::c_void,
12259 ldv: i64,
12260 computeType: cudaDataType,
12261 workspaceInBytesOnDevice: *mut usize,
12262 workspaceInBytesOnHost: *mut usize,
12263 ) -> cusolverStatus_t {
12264 (culib().cusolverDnXgesvdp_bufferSize)(
12265 handle,
12266 params,
12267 jobz,
12268 econ,
12269 m,
12270 n,
12271 dataTypeA,
12272 A,
12273 lda,
12274 dataTypeS,
12275 S,
12276 dataTypeU,
12277 U,
12278 ldu,
12279 dataTypeV,
12280 V,
12281 ldv,
12282 computeType,
12283 workspaceInBytesOnDevice,
12284 workspaceInBytesOnHost,
12285 )
12286 }
12287 pub unsafe fn cusolverDnXgesvdr(
12288 handle: cusolverDnHandle_t,
12289 params: cusolverDnParams_t,
12290 jobu: ::core::ffi::c_schar,
12291 jobv: ::core::ffi::c_schar,
12292 m: i64,
12293 n: i64,
12294 k: i64,
12295 p: i64,
12296 niters: i64,
12297 dataTypeA: cudaDataType,
12298 A: *mut ::core::ffi::c_void,
12299 lda: i64,
12300 dataTypeSrand: cudaDataType,
12301 Srand: *mut ::core::ffi::c_void,
12302 dataTypeUrand: cudaDataType,
12303 Urand: *mut ::core::ffi::c_void,
12304 ldUrand: i64,
12305 dataTypeVrand: cudaDataType,
12306 Vrand: *mut ::core::ffi::c_void,
12307 ldVrand: i64,
12308 computeType: cudaDataType,
12309 bufferOnDevice: *mut ::core::ffi::c_void,
12310 workspaceInBytesOnDevice: usize,
12311 bufferOnHost: *mut ::core::ffi::c_void,
12312 workspaceInBytesOnHost: usize,
12313 d_info: *mut ::core::ffi::c_int,
12314 ) -> cusolverStatus_t {
12315 (culib().cusolverDnXgesvdr)(
12316 handle,
12317 params,
12318 jobu,
12319 jobv,
12320 m,
12321 n,
12322 k,
12323 p,
12324 niters,
12325 dataTypeA,
12326 A,
12327 lda,
12328 dataTypeSrand,
12329 Srand,
12330 dataTypeUrand,
12331 Urand,
12332 ldUrand,
12333 dataTypeVrand,
12334 Vrand,
12335 ldVrand,
12336 computeType,
12337 bufferOnDevice,
12338 workspaceInBytesOnDevice,
12339 bufferOnHost,
12340 workspaceInBytesOnHost,
12341 d_info,
12342 )
12343 }
12344 pub unsafe fn cusolverDnXgesvdr_bufferSize(
12345 handle: cusolverDnHandle_t,
12346 params: cusolverDnParams_t,
12347 jobu: ::core::ffi::c_schar,
12348 jobv: ::core::ffi::c_schar,
12349 m: i64,
12350 n: i64,
12351 k: i64,
12352 p: i64,
12353 niters: i64,
12354 dataTypeA: cudaDataType,
12355 A: *const ::core::ffi::c_void,
12356 lda: i64,
12357 dataTypeSrand: cudaDataType,
12358 Srand: *const ::core::ffi::c_void,
12359 dataTypeUrand: cudaDataType,
12360 Urand: *const ::core::ffi::c_void,
12361 ldUrand: i64,
12362 dataTypeVrand: cudaDataType,
12363 Vrand: *const ::core::ffi::c_void,
12364 ldVrand: i64,
12365 computeType: cudaDataType,
12366 workspaceInBytesOnDevice: *mut usize,
12367 workspaceInBytesOnHost: *mut usize,
12368 ) -> cusolverStatus_t {
12369 (culib().cusolverDnXgesvdr_bufferSize)(
12370 handle,
12371 params,
12372 jobu,
12373 jobv,
12374 m,
12375 n,
12376 k,
12377 p,
12378 niters,
12379 dataTypeA,
12380 A,
12381 lda,
12382 dataTypeSrand,
12383 Srand,
12384 dataTypeUrand,
12385 Urand,
12386 ldUrand,
12387 dataTypeVrand,
12388 Vrand,
12389 ldVrand,
12390 computeType,
12391 workspaceInBytesOnDevice,
12392 workspaceInBytesOnHost,
12393 )
12394 }
12395 pub unsafe fn cusolverDnXgetrf(
12396 handle: cusolverDnHandle_t,
12397 params: cusolverDnParams_t,
12398 m: i64,
12399 n: i64,
12400 dataTypeA: cudaDataType,
12401 A: *mut ::core::ffi::c_void,
12402 lda: i64,
12403 ipiv: *mut i64,
12404 computeType: cudaDataType,
12405 bufferOnDevice: *mut ::core::ffi::c_void,
12406 workspaceInBytesOnDevice: usize,
12407 bufferOnHost: *mut ::core::ffi::c_void,
12408 workspaceInBytesOnHost: usize,
12409 info: *mut ::core::ffi::c_int,
12410 ) -> cusolverStatus_t {
12411 (culib().cusolverDnXgetrf)(
12412 handle,
12413 params,
12414 m,
12415 n,
12416 dataTypeA,
12417 A,
12418 lda,
12419 ipiv,
12420 computeType,
12421 bufferOnDevice,
12422 workspaceInBytesOnDevice,
12423 bufferOnHost,
12424 workspaceInBytesOnHost,
12425 info,
12426 )
12427 }
12428 pub unsafe fn cusolverDnXgetrf_bufferSize(
12429 handle: cusolverDnHandle_t,
12430 params: cusolverDnParams_t,
12431 m: i64,
12432 n: i64,
12433 dataTypeA: cudaDataType,
12434 A: *const ::core::ffi::c_void,
12435 lda: i64,
12436 computeType: cudaDataType,
12437 workspaceInBytesOnDevice: *mut usize,
12438 workspaceInBytesOnHost: *mut usize,
12439 ) -> cusolverStatus_t {
12440 (culib().cusolverDnXgetrf_bufferSize)(
12441 handle,
12442 params,
12443 m,
12444 n,
12445 dataTypeA,
12446 A,
12447 lda,
12448 computeType,
12449 workspaceInBytesOnDevice,
12450 workspaceInBytesOnHost,
12451 )
12452 }
12453 pub unsafe fn cusolverDnXgetrs(
12454 handle: cusolverDnHandle_t,
12455 params: cusolverDnParams_t,
12456 trans: cublasOperation_t,
12457 n: i64,
12458 nrhs: i64,
12459 dataTypeA: cudaDataType,
12460 A: *const ::core::ffi::c_void,
12461 lda: i64,
12462 ipiv: *const i64,
12463 dataTypeB: cudaDataType,
12464 B: *mut ::core::ffi::c_void,
12465 ldb: i64,
12466 info: *mut ::core::ffi::c_int,
12467 ) -> cusolverStatus_t {
12468 (culib().cusolverDnXgetrs)(
12469 handle, params, trans, n, nrhs, dataTypeA, A, lda, ipiv, dataTypeB, B, ldb, info,
12470 )
12471 }
12472 #[cfg(any(feature = "cuda-12040"))]
12473 pub unsafe fn cusolverDnXlarft(
12474 handle: cusolverDnHandle_t,
12475 params: cusolverDnParams_t,
12476 direct: cusolverDirectMode_t,
12477 storev: cusolverStorevMode_t,
12478 N: i64,
12479 K: i64,
12480 dataTypeV: cudaDataType,
12481 d_V: *const ::core::ffi::c_void,
12482 ldv: i64,
12483 dataTypeTau: cudaDataType,
12484 d_tau: *const ::core::ffi::c_void,
12485 dataTypeT: cudaDataType,
12486 d_T: *mut ::core::ffi::c_void,
12487 ldt: i64,
12488 computeType: cudaDataType,
12489 bufferOnDevice: *mut ::core::ffi::c_void,
12490 workspaceInBytesOnDevice: usize,
12491 bufferOnHost: *mut ::core::ffi::c_void,
12492 workspaceInBytesOnHost: usize,
12493 ) -> cusolverStatus_t {
12494 (culib().cusolverDnXlarft)(
12495 handle,
12496 params,
12497 direct,
12498 storev,
12499 N,
12500 K,
12501 dataTypeV,
12502 d_V,
12503 ldv,
12504 dataTypeTau,
12505 d_tau,
12506 dataTypeT,
12507 d_T,
12508 ldt,
12509 computeType,
12510 bufferOnDevice,
12511 workspaceInBytesOnDevice,
12512 bufferOnHost,
12513 workspaceInBytesOnHost,
12514 )
12515 }
12516 #[cfg(any(
12517 feature = "cuda-12050",
12518 feature = "cuda-12060",
12519 feature = "cuda-12080",
12520 feature = "cuda-12090",
12521 feature = "cuda-13000",
12522 feature = "cuda-13010"
12523 ))]
12524 pub unsafe fn cusolverDnXlarft(
12525 handle: cusolverDnHandle_t,
12526 params: cusolverDnParams_t,
12527 direct: cusolverDirectMode_t,
12528 storev: cusolverStorevMode_t,
12529 n: i64,
12530 k: i64,
12531 dataTypeV: cudaDataType,
12532 V: *const ::core::ffi::c_void,
12533 ldv: i64,
12534 dataTypeTau: cudaDataType,
12535 tau: *const ::core::ffi::c_void,
12536 dataTypeT: cudaDataType,
12537 T: *mut ::core::ffi::c_void,
12538 ldt: i64,
12539 computeType: cudaDataType,
12540 bufferOnDevice: *mut ::core::ffi::c_void,
12541 workspaceInBytesOnDevice: usize,
12542 bufferOnHost: *mut ::core::ffi::c_void,
12543 workspaceInBytesOnHost: usize,
12544 ) -> cusolverStatus_t {
12545 (culib().cusolverDnXlarft)(
12546 handle,
12547 params,
12548 direct,
12549 storev,
12550 n,
12551 k,
12552 dataTypeV,
12553 V,
12554 ldv,
12555 dataTypeTau,
12556 tau,
12557 dataTypeT,
12558 T,
12559 ldt,
12560 computeType,
12561 bufferOnDevice,
12562 workspaceInBytesOnDevice,
12563 bufferOnHost,
12564 workspaceInBytesOnHost,
12565 )
12566 }
12567 #[cfg(any(feature = "cuda-12040"))]
12568 pub unsafe fn cusolverDnXlarft_bufferSize(
12569 handle: cusolverDnHandle_t,
12570 params: cusolverDnParams_t,
12571 direct: cusolverDirectMode_t,
12572 storev: cusolverStorevMode_t,
12573 N: i64,
12574 K: i64,
12575 dataTypeV: cudaDataType,
12576 d_V: *const ::core::ffi::c_void,
12577 ldv: i64,
12578 dataTypeTau: cudaDataType,
12579 d_tau: *const ::core::ffi::c_void,
12580 dataTypeT: cudaDataType,
12581 d_T: *mut ::core::ffi::c_void,
12582 ldt: i64,
12583 computeType: cudaDataType,
12584 workspaceInBytesOnDevice: *mut usize,
12585 workspaceInBytesOnHost: *mut usize,
12586 ) -> cusolverStatus_t {
12587 (culib().cusolverDnXlarft_bufferSize)(
12588 handle,
12589 params,
12590 direct,
12591 storev,
12592 N,
12593 K,
12594 dataTypeV,
12595 d_V,
12596 ldv,
12597 dataTypeTau,
12598 d_tau,
12599 dataTypeT,
12600 d_T,
12601 ldt,
12602 computeType,
12603 workspaceInBytesOnDevice,
12604 workspaceInBytesOnHost,
12605 )
12606 }
12607 #[cfg(any(
12608 feature = "cuda-12050",
12609 feature = "cuda-12060",
12610 feature = "cuda-12080",
12611 feature = "cuda-12090",
12612 feature = "cuda-13000",
12613 feature = "cuda-13010"
12614 ))]
12615 pub unsafe fn cusolverDnXlarft_bufferSize(
12616 handle: cusolverDnHandle_t,
12617 params: cusolverDnParams_t,
12618 direct: cusolverDirectMode_t,
12619 storev: cusolverStorevMode_t,
12620 n: i64,
12621 k: i64,
12622 dataTypeV: cudaDataType,
12623 V: *const ::core::ffi::c_void,
12624 ldv: i64,
12625 dataTypeTau: cudaDataType,
12626 tau: *const ::core::ffi::c_void,
12627 dataTypeT: cudaDataType,
12628 T: *mut ::core::ffi::c_void,
12629 ldt: i64,
12630 computeType: cudaDataType,
12631 workspaceInBytesOnDevice: *mut usize,
12632 workspaceInBytesOnHost: *mut usize,
12633 ) -> cusolverStatus_t {
12634 (culib().cusolverDnXlarft_bufferSize)(
12635 handle,
12636 params,
12637 direct,
12638 storev,
12639 n,
12640 k,
12641 dataTypeV,
12642 V,
12643 ldv,
12644 dataTypeTau,
12645 tau,
12646 dataTypeT,
12647 T,
12648 ldt,
12649 computeType,
12650 workspaceInBytesOnDevice,
12651 workspaceInBytesOnHost,
12652 )
12653 }
12654 pub unsafe fn cusolverDnXpotrf(
12655 handle: cusolverDnHandle_t,
12656 params: cusolverDnParams_t,
12657 uplo: cublasFillMode_t,
12658 n: i64,
12659 dataTypeA: cudaDataType,
12660 A: *mut ::core::ffi::c_void,
12661 lda: i64,
12662 computeType: cudaDataType,
12663 bufferOnDevice: *mut ::core::ffi::c_void,
12664 workspaceInBytesOnDevice: usize,
12665 bufferOnHost: *mut ::core::ffi::c_void,
12666 workspaceInBytesOnHost: usize,
12667 info: *mut ::core::ffi::c_int,
12668 ) -> cusolverStatus_t {
12669 (culib().cusolverDnXpotrf)(
12670 handle,
12671 params,
12672 uplo,
12673 n,
12674 dataTypeA,
12675 A,
12676 lda,
12677 computeType,
12678 bufferOnDevice,
12679 workspaceInBytesOnDevice,
12680 bufferOnHost,
12681 workspaceInBytesOnHost,
12682 info,
12683 )
12684 }
12685 pub unsafe fn cusolverDnXpotrf_bufferSize(
12686 handle: cusolverDnHandle_t,
12687 params: cusolverDnParams_t,
12688 uplo: cublasFillMode_t,
12689 n: i64,
12690 dataTypeA: cudaDataType,
12691 A: *const ::core::ffi::c_void,
12692 lda: i64,
12693 computeType: cudaDataType,
12694 workspaceInBytesOnDevice: *mut usize,
12695 workspaceInBytesOnHost: *mut usize,
12696 ) -> cusolverStatus_t {
12697 (culib().cusolverDnXpotrf_bufferSize)(
12698 handle,
12699 params,
12700 uplo,
12701 n,
12702 dataTypeA,
12703 A,
12704 lda,
12705 computeType,
12706 workspaceInBytesOnDevice,
12707 workspaceInBytesOnHost,
12708 )
12709 }
12710 pub unsafe fn cusolverDnXpotrs(
12711 handle: cusolverDnHandle_t,
12712 params: cusolverDnParams_t,
12713 uplo: cublasFillMode_t,
12714 n: i64,
12715 nrhs: i64,
12716 dataTypeA: cudaDataType,
12717 A: *const ::core::ffi::c_void,
12718 lda: i64,
12719 dataTypeB: cudaDataType,
12720 B: *mut ::core::ffi::c_void,
12721 ldb: i64,
12722 info: *mut ::core::ffi::c_int,
12723 ) -> cusolverStatus_t {
12724 (culib().cusolverDnXpotrs)(
12725 handle, params, uplo, n, nrhs, dataTypeA, A, lda, dataTypeB, B, ldb, info,
12726 )
12727 }
12728 #[cfg(any(
12729 feature = "cuda-12060",
12730 feature = "cuda-12080",
12731 feature = "cuda-12090",
12732 feature = "cuda-13000",
12733 feature = "cuda-13010"
12734 ))]
12735 pub unsafe fn cusolverDnXsyevBatched(
12736 handle: cusolverDnHandle_t,
12737 params: cusolverDnParams_t,
12738 jobz: cusolverEigMode_t,
12739 uplo: cublasFillMode_t,
12740 n: i64,
12741 dataTypeA: cudaDataType,
12742 A: *mut ::core::ffi::c_void,
12743 lda: i64,
12744 dataTypeW: cudaDataType,
12745 W: *mut ::core::ffi::c_void,
12746 computeType: cudaDataType,
12747 bufferOnDevice: *mut ::core::ffi::c_void,
12748 workspaceInBytesOnDevice: usize,
12749 bufferOnHost: *mut ::core::ffi::c_void,
12750 workspaceInBytesOnHost: usize,
12751 info: *mut ::core::ffi::c_int,
12752 batchSize: i64,
12753 ) -> cusolverStatus_t {
12754 (culib().cusolverDnXsyevBatched)(
12755 handle,
12756 params,
12757 jobz,
12758 uplo,
12759 n,
12760 dataTypeA,
12761 A,
12762 lda,
12763 dataTypeW,
12764 W,
12765 computeType,
12766 bufferOnDevice,
12767 workspaceInBytesOnDevice,
12768 bufferOnHost,
12769 workspaceInBytesOnHost,
12770 info,
12771 batchSize,
12772 )
12773 }
12774 #[cfg(any(
12775 feature = "cuda-12060",
12776 feature = "cuda-12080",
12777 feature = "cuda-12090",
12778 feature = "cuda-13000",
12779 feature = "cuda-13010"
12780 ))]
12781 pub unsafe fn cusolverDnXsyevBatched_bufferSize(
12782 handle: cusolverDnHandle_t,
12783 params: cusolverDnParams_t,
12784 jobz: cusolverEigMode_t,
12785 uplo: cublasFillMode_t,
12786 n: i64,
12787 dataTypeA: cudaDataType,
12788 A: *const ::core::ffi::c_void,
12789 lda: i64,
12790 dataTypeW: cudaDataType,
12791 W: *const ::core::ffi::c_void,
12792 computeType: cudaDataType,
12793 workspaceInBytesOnDevice: *mut usize,
12794 workspaceInBytesOnHost: *mut usize,
12795 batchSize: i64,
12796 ) -> cusolverStatus_t {
12797 (culib().cusolverDnXsyevBatched_bufferSize)(
12798 handle,
12799 params,
12800 jobz,
12801 uplo,
12802 n,
12803 dataTypeA,
12804 A,
12805 lda,
12806 dataTypeW,
12807 W,
12808 computeType,
12809 workspaceInBytesOnDevice,
12810 workspaceInBytesOnHost,
12811 batchSize,
12812 )
12813 }
12814 pub unsafe fn cusolverDnXsyevd(
12815 handle: cusolverDnHandle_t,
12816 params: cusolverDnParams_t,
12817 jobz: cusolverEigMode_t,
12818 uplo: cublasFillMode_t,
12819 n: i64,
12820 dataTypeA: cudaDataType,
12821 A: *mut ::core::ffi::c_void,
12822 lda: i64,
12823 dataTypeW: cudaDataType,
12824 W: *mut ::core::ffi::c_void,
12825 computeType: cudaDataType,
12826 bufferOnDevice: *mut ::core::ffi::c_void,
12827 workspaceInBytesOnDevice: usize,
12828 bufferOnHost: *mut ::core::ffi::c_void,
12829 workspaceInBytesOnHost: usize,
12830 info: *mut ::core::ffi::c_int,
12831 ) -> cusolverStatus_t {
12832 (culib().cusolverDnXsyevd)(
12833 handle,
12834 params,
12835 jobz,
12836 uplo,
12837 n,
12838 dataTypeA,
12839 A,
12840 lda,
12841 dataTypeW,
12842 W,
12843 computeType,
12844 bufferOnDevice,
12845 workspaceInBytesOnDevice,
12846 bufferOnHost,
12847 workspaceInBytesOnHost,
12848 info,
12849 )
12850 }
12851 pub unsafe fn cusolverDnXsyevd_bufferSize(
12852 handle: cusolverDnHandle_t,
12853 params: cusolverDnParams_t,
12854 jobz: cusolverEigMode_t,
12855 uplo: cublasFillMode_t,
12856 n: i64,
12857 dataTypeA: cudaDataType,
12858 A: *const ::core::ffi::c_void,
12859 lda: i64,
12860 dataTypeW: cudaDataType,
12861 W: *const ::core::ffi::c_void,
12862 computeType: cudaDataType,
12863 workspaceInBytesOnDevice: *mut usize,
12864 workspaceInBytesOnHost: *mut usize,
12865 ) -> cusolverStatus_t {
12866 (culib().cusolverDnXsyevd_bufferSize)(
12867 handle,
12868 params,
12869 jobz,
12870 uplo,
12871 n,
12872 dataTypeA,
12873 A,
12874 lda,
12875 dataTypeW,
12876 W,
12877 computeType,
12878 workspaceInBytesOnDevice,
12879 workspaceInBytesOnHost,
12880 )
12881 }
12882 pub unsafe fn cusolverDnXsyevdx(
12883 handle: cusolverDnHandle_t,
12884 params: cusolverDnParams_t,
12885 jobz: cusolverEigMode_t,
12886 range: cusolverEigRange_t,
12887 uplo: cublasFillMode_t,
12888 n: i64,
12889 dataTypeA: cudaDataType,
12890 A: *mut ::core::ffi::c_void,
12891 lda: i64,
12892 vl: *mut ::core::ffi::c_void,
12893 vu: *mut ::core::ffi::c_void,
12894 il: i64,
12895 iu: i64,
12896 meig64: *mut i64,
12897 dataTypeW: cudaDataType,
12898 W: *mut ::core::ffi::c_void,
12899 computeType: cudaDataType,
12900 bufferOnDevice: *mut ::core::ffi::c_void,
12901 workspaceInBytesOnDevice: usize,
12902 bufferOnHost: *mut ::core::ffi::c_void,
12903 workspaceInBytesOnHost: usize,
12904 info: *mut ::core::ffi::c_int,
12905 ) -> cusolverStatus_t {
12906 (culib().cusolverDnXsyevdx)(
12907 handle,
12908 params,
12909 jobz,
12910 range,
12911 uplo,
12912 n,
12913 dataTypeA,
12914 A,
12915 lda,
12916 vl,
12917 vu,
12918 il,
12919 iu,
12920 meig64,
12921 dataTypeW,
12922 W,
12923 computeType,
12924 bufferOnDevice,
12925 workspaceInBytesOnDevice,
12926 bufferOnHost,
12927 workspaceInBytesOnHost,
12928 info,
12929 )
12930 }
12931 pub unsafe fn cusolverDnXsyevdx_bufferSize(
12932 handle: cusolverDnHandle_t,
12933 params: cusolverDnParams_t,
12934 jobz: cusolverEigMode_t,
12935 range: cusolverEigRange_t,
12936 uplo: cublasFillMode_t,
12937 n: i64,
12938 dataTypeA: cudaDataType,
12939 A: *const ::core::ffi::c_void,
12940 lda: i64,
12941 vl: *mut ::core::ffi::c_void,
12942 vu: *mut ::core::ffi::c_void,
12943 il: i64,
12944 iu: i64,
12945 h_meig: *mut i64,
12946 dataTypeW: cudaDataType,
12947 W: *const ::core::ffi::c_void,
12948 computeType: cudaDataType,
12949 workspaceInBytesOnDevice: *mut usize,
12950 workspaceInBytesOnHost: *mut usize,
12951 ) -> cusolverStatus_t {
12952 (culib().cusolverDnXsyevdx_bufferSize)(
12953 handle,
12954 params,
12955 jobz,
12956 range,
12957 uplo,
12958 n,
12959 dataTypeA,
12960 A,
12961 lda,
12962 vl,
12963 vu,
12964 il,
12965 iu,
12966 h_meig,
12967 dataTypeW,
12968 W,
12969 computeType,
12970 workspaceInBytesOnDevice,
12971 workspaceInBytesOnHost,
12972 )
12973 }
12974 pub unsafe fn cusolverDnXsyevjGetResidual(
12975 handle: cusolverDnHandle_t,
12976 info: syevjInfo_t,
12977 residual: *mut f64,
12978 ) -> cusolverStatus_t {
12979 (culib().cusolverDnXsyevjGetResidual)(handle, info, residual)
12980 }
12981 pub unsafe fn cusolverDnXsyevjGetSweeps(
12982 handle: cusolverDnHandle_t,
12983 info: syevjInfo_t,
12984 executed_sweeps: *mut ::core::ffi::c_int,
12985 ) -> cusolverStatus_t {
12986 (culib().cusolverDnXsyevjGetSweeps)(handle, info, executed_sweeps)
12987 }
12988 pub unsafe fn cusolverDnXsyevjSetMaxSweeps(
12989 info: syevjInfo_t,
12990 max_sweeps: ::core::ffi::c_int,
12991 ) -> cusolverStatus_t {
12992 (culib().cusolverDnXsyevjSetMaxSweeps)(info, max_sweeps)
12993 }
12994 pub unsafe fn cusolverDnXsyevjSetSortEig(
12995 info: syevjInfo_t,
12996 sort_eig: ::core::ffi::c_int,
12997 ) -> cusolverStatus_t {
12998 (culib().cusolverDnXsyevjSetSortEig)(info, sort_eig)
12999 }
13000 pub unsafe fn cusolverDnXsyevjSetTolerance(
13001 info: syevjInfo_t,
13002 tolerance: f64,
13003 ) -> cusolverStatus_t {
13004 (culib().cusolverDnXsyevjSetTolerance)(info, tolerance)
13005 }
13006 pub unsafe fn cusolverDnXsytrs(
13007 handle: cusolverDnHandle_t,
13008 uplo: cublasFillMode_t,
13009 n: i64,
13010 nrhs: i64,
13011 dataTypeA: cudaDataType,
13012 A: *const ::core::ffi::c_void,
13013 lda: i64,
13014 ipiv: *const i64,
13015 dataTypeB: cudaDataType,
13016 B: *mut ::core::ffi::c_void,
13017 ldb: i64,
13018 bufferOnDevice: *mut ::core::ffi::c_void,
13019 workspaceInBytesOnDevice: usize,
13020 bufferOnHost: *mut ::core::ffi::c_void,
13021 workspaceInBytesOnHost: usize,
13022 info: *mut ::core::ffi::c_int,
13023 ) -> cusolverStatus_t {
13024 (culib().cusolverDnXsytrs)(
13025 handle,
13026 uplo,
13027 n,
13028 nrhs,
13029 dataTypeA,
13030 A,
13031 lda,
13032 ipiv,
13033 dataTypeB,
13034 B,
13035 ldb,
13036 bufferOnDevice,
13037 workspaceInBytesOnDevice,
13038 bufferOnHost,
13039 workspaceInBytesOnHost,
13040 info,
13041 )
13042 }
13043 pub unsafe fn cusolverDnXsytrs_bufferSize(
13044 handle: cusolverDnHandle_t,
13045 uplo: cublasFillMode_t,
13046 n: i64,
13047 nrhs: i64,
13048 dataTypeA: cudaDataType,
13049 A: *const ::core::ffi::c_void,
13050 lda: i64,
13051 ipiv: *const i64,
13052 dataTypeB: cudaDataType,
13053 B: *mut ::core::ffi::c_void,
13054 ldb: i64,
13055 workspaceInBytesOnDevice: *mut usize,
13056 workspaceInBytesOnHost: *mut usize,
13057 ) -> cusolverStatus_t {
13058 (culib().cusolverDnXsytrs_bufferSize)(
13059 handle,
13060 uplo,
13061 n,
13062 nrhs,
13063 dataTypeA,
13064 A,
13065 lda,
13066 ipiv,
13067 dataTypeB,
13068 B,
13069 ldb,
13070 workspaceInBytesOnDevice,
13071 workspaceInBytesOnHost,
13072 )
13073 }
13074 pub unsafe fn cusolverDnXtrtri(
13075 handle: cusolverDnHandle_t,
13076 uplo: cublasFillMode_t,
13077 diag: cublasDiagType_t,
13078 n: i64,
13079 dataTypeA: cudaDataType,
13080 A: *mut ::core::ffi::c_void,
13081 lda: i64,
13082 bufferOnDevice: *mut ::core::ffi::c_void,
13083 workspaceInBytesOnDevice: usize,
13084 bufferOnHost: *mut ::core::ffi::c_void,
13085 workspaceInBytesOnHost: usize,
13086 devInfo: *mut ::core::ffi::c_int,
13087 ) -> cusolverStatus_t {
13088 (culib().cusolverDnXtrtri)(
13089 handle,
13090 uplo,
13091 diag,
13092 n,
13093 dataTypeA,
13094 A,
13095 lda,
13096 bufferOnDevice,
13097 workspaceInBytesOnDevice,
13098 bufferOnHost,
13099 workspaceInBytesOnHost,
13100 devInfo,
13101 )
13102 }
13103 pub unsafe fn cusolverDnXtrtri_bufferSize(
13104 handle: cusolverDnHandle_t,
13105 uplo: cublasFillMode_t,
13106 diag: cublasDiagType_t,
13107 n: i64,
13108 dataTypeA: cudaDataType,
13109 A: *mut ::core::ffi::c_void,
13110 lda: i64,
13111 workspaceInBytesOnDevice: *mut usize,
13112 workspaceInBytesOnHost: *mut usize,
13113 ) -> cusolverStatus_t {
13114 (culib().cusolverDnXtrtri_bufferSize)(
13115 handle,
13116 uplo,
13117 diag,
13118 n,
13119 dataTypeA,
13120 A,
13121 lda,
13122 workspaceInBytesOnDevice,
13123 workspaceInBytesOnHost,
13124 )
13125 }
13126 pub unsafe fn cusolverDnZCgels(
13127 handle: cusolverDnHandle_t,
13128 m: cusolver_int_t,
13129 n: cusolver_int_t,
13130 nrhs: cusolver_int_t,
13131 dA: *mut cuDoubleComplex,
13132 ldda: cusolver_int_t,
13133 dB: *mut cuDoubleComplex,
13134 lddb: cusolver_int_t,
13135 dX: *mut cuDoubleComplex,
13136 lddx: cusolver_int_t,
13137 dWorkspace: *mut ::core::ffi::c_void,
13138 lwork_bytes: usize,
13139 iter: *mut cusolver_int_t,
13140 d_info: *mut cusolver_int_t,
13141 ) -> cusolverStatus_t {
13142 (culib().cusolverDnZCgels)(
13143 handle,
13144 m,
13145 n,
13146 nrhs,
13147 dA,
13148 ldda,
13149 dB,
13150 lddb,
13151 dX,
13152 lddx,
13153 dWorkspace,
13154 lwork_bytes,
13155 iter,
13156 d_info,
13157 )
13158 }
13159 pub unsafe fn cusolverDnZCgels_bufferSize(
13160 handle: cusolverDnHandle_t,
13161 m: cusolver_int_t,
13162 n: cusolver_int_t,
13163 nrhs: cusolver_int_t,
13164 dA: *mut cuDoubleComplex,
13165 ldda: cusolver_int_t,
13166 dB: *mut cuDoubleComplex,
13167 lddb: cusolver_int_t,
13168 dX: *mut cuDoubleComplex,
13169 lddx: cusolver_int_t,
13170 dWorkspace: *mut ::core::ffi::c_void,
13171 lwork_bytes: *mut usize,
13172 ) -> cusolverStatus_t {
13173 (culib().cusolverDnZCgels_bufferSize)(
13174 handle,
13175 m,
13176 n,
13177 nrhs,
13178 dA,
13179 ldda,
13180 dB,
13181 lddb,
13182 dX,
13183 lddx,
13184 dWorkspace,
13185 lwork_bytes,
13186 )
13187 }
13188 pub unsafe fn cusolverDnZCgesv(
13189 handle: cusolverDnHandle_t,
13190 n: cusolver_int_t,
13191 nrhs: cusolver_int_t,
13192 dA: *mut cuDoubleComplex,
13193 ldda: cusolver_int_t,
13194 dipiv: *mut cusolver_int_t,
13195 dB: *mut cuDoubleComplex,
13196 lddb: cusolver_int_t,
13197 dX: *mut cuDoubleComplex,
13198 lddx: cusolver_int_t,
13199 dWorkspace: *mut ::core::ffi::c_void,
13200 lwork_bytes: usize,
13201 iter: *mut cusolver_int_t,
13202 d_info: *mut cusolver_int_t,
13203 ) -> cusolverStatus_t {
13204 (culib().cusolverDnZCgesv)(
13205 handle,
13206 n,
13207 nrhs,
13208 dA,
13209 ldda,
13210 dipiv,
13211 dB,
13212 lddb,
13213 dX,
13214 lddx,
13215 dWorkspace,
13216 lwork_bytes,
13217 iter,
13218 d_info,
13219 )
13220 }
13221 pub unsafe fn cusolverDnZCgesv_bufferSize(
13222 handle: cusolverDnHandle_t,
13223 n: cusolver_int_t,
13224 nrhs: cusolver_int_t,
13225 dA: *mut cuDoubleComplex,
13226 ldda: cusolver_int_t,
13227 dipiv: *mut cusolver_int_t,
13228 dB: *mut cuDoubleComplex,
13229 lddb: cusolver_int_t,
13230 dX: *mut cuDoubleComplex,
13231 lddx: cusolver_int_t,
13232 dWorkspace: *mut ::core::ffi::c_void,
13233 lwork_bytes: *mut usize,
13234 ) -> cusolverStatus_t {
13235 (culib().cusolverDnZCgesv_bufferSize)(
13236 handle,
13237 n,
13238 nrhs,
13239 dA,
13240 ldda,
13241 dipiv,
13242 dB,
13243 lddb,
13244 dX,
13245 lddx,
13246 dWorkspace,
13247 lwork_bytes,
13248 )
13249 }
13250 pub unsafe fn cusolverDnZEgels(
13251 handle: cusolverDnHandle_t,
13252 m: cusolver_int_t,
13253 n: cusolver_int_t,
13254 nrhs: cusolver_int_t,
13255 dA: *mut cuDoubleComplex,
13256 ldda: cusolver_int_t,
13257 dB: *mut cuDoubleComplex,
13258 lddb: cusolver_int_t,
13259 dX: *mut cuDoubleComplex,
13260 lddx: cusolver_int_t,
13261 dWorkspace: *mut ::core::ffi::c_void,
13262 lwork_bytes: usize,
13263 iter: *mut cusolver_int_t,
13264 d_info: *mut cusolver_int_t,
13265 ) -> cusolverStatus_t {
13266 (culib().cusolverDnZEgels)(
13267 handle,
13268 m,
13269 n,
13270 nrhs,
13271 dA,
13272 ldda,
13273 dB,
13274 lddb,
13275 dX,
13276 lddx,
13277 dWorkspace,
13278 lwork_bytes,
13279 iter,
13280 d_info,
13281 )
13282 }
13283 pub unsafe fn cusolverDnZEgels_bufferSize(
13284 handle: cusolverDnHandle_t,
13285 m: cusolver_int_t,
13286 n: cusolver_int_t,
13287 nrhs: cusolver_int_t,
13288 dA: *mut cuDoubleComplex,
13289 ldda: cusolver_int_t,
13290 dB: *mut cuDoubleComplex,
13291 lddb: cusolver_int_t,
13292 dX: *mut cuDoubleComplex,
13293 lddx: cusolver_int_t,
13294 dWorkspace: *mut ::core::ffi::c_void,
13295 lwork_bytes: *mut usize,
13296 ) -> cusolverStatus_t {
13297 (culib().cusolverDnZEgels_bufferSize)(
13298 handle,
13299 m,
13300 n,
13301 nrhs,
13302 dA,
13303 ldda,
13304 dB,
13305 lddb,
13306 dX,
13307 lddx,
13308 dWorkspace,
13309 lwork_bytes,
13310 )
13311 }
13312 pub unsafe fn cusolverDnZEgesv(
13313 handle: cusolverDnHandle_t,
13314 n: cusolver_int_t,
13315 nrhs: cusolver_int_t,
13316 dA: *mut cuDoubleComplex,
13317 ldda: cusolver_int_t,
13318 dipiv: *mut cusolver_int_t,
13319 dB: *mut cuDoubleComplex,
13320 lddb: cusolver_int_t,
13321 dX: *mut cuDoubleComplex,
13322 lddx: cusolver_int_t,
13323 dWorkspace: *mut ::core::ffi::c_void,
13324 lwork_bytes: usize,
13325 iter: *mut cusolver_int_t,
13326 d_info: *mut cusolver_int_t,
13327 ) -> cusolverStatus_t {
13328 (culib().cusolverDnZEgesv)(
13329 handle,
13330 n,
13331 nrhs,
13332 dA,
13333 ldda,
13334 dipiv,
13335 dB,
13336 lddb,
13337 dX,
13338 lddx,
13339 dWorkspace,
13340 lwork_bytes,
13341 iter,
13342 d_info,
13343 )
13344 }
13345 pub unsafe fn cusolverDnZEgesv_bufferSize(
13346 handle: cusolverDnHandle_t,
13347 n: cusolver_int_t,
13348 nrhs: cusolver_int_t,
13349 dA: *mut cuDoubleComplex,
13350 ldda: cusolver_int_t,
13351 dipiv: *mut cusolver_int_t,
13352 dB: *mut cuDoubleComplex,
13353 lddb: cusolver_int_t,
13354 dX: *mut cuDoubleComplex,
13355 lddx: cusolver_int_t,
13356 dWorkspace: *mut ::core::ffi::c_void,
13357 lwork_bytes: *mut usize,
13358 ) -> cusolverStatus_t {
13359 (culib().cusolverDnZEgesv_bufferSize)(
13360 handle,
13361 n,
13362 nrhs,
13363 dA,
13364 ldda,
13365 dipiv,
13366 dB,
13367 lddb,
13368 dX,
13369 lddx,
13370 dWorkspace,
13371 lwork_bytes,
13372 )
13373 }
13374 pub unsafe fn cusolverDnZKgels(
13375 handle: cusolverDnHandle_t,
13376 m: cusolver_int_t,
13377 n: cusolver_int_t,
13378 nrhs: cusolver_int_t,
13379 dA: *mut cuDoubleComplex,
13380 ldda: cusolver_int_t,
13381 dB: *mut cuDoubleComplex,
13382 lddb: cusolver_int_t,
13383 dX: *mut cuDoubleComplex,
13384 lddx: cusolver_int_t,
13385 dWorkspace: *mut ::core::ffi::c_void,
13386 lwork_bytes: usize,
13387 iter: *mut cusolver_int_t,
13388 d_info: *mut cusolver_int_t,
13389 ) -> cusolverStatus_t {
13390 (culib().cusolverDnZKgels)(
13391 handle,
13392 m,
13393 n,
13394 nrhs,
13395 dA,
13396 ldda,
13397 dB,
13398 lddb,
13399 dX,
13400 lddx,
13401 dWorkspace,
13402 lwork_bytes,
13403 iter,
13404 d_info,
13405 )
13406 }
13407 pub unsafe fn cusolverDnZKgels_bufferSize(
13408 handle: cusolverDnHandle_t,
13409 m: cusolver_int_t,
13410 n: cusolver_int_t,
13411 nrhs: cusolver_int_t,
13412 dA: *mut cuDoubleComplex,
13413 ldda: cusolver_int_t,
13414 dB: *mut cuDoubleComplex,
13415 lddb: cusolver_int_t,
13416 dX: *mut cuDoubleComplex,
13417 lddx: cusolver_int_t,
13418 dWorkspace: *mut ::core::ffi::c_void,
13419 lwork_bytes: *mut usize,
13420 ) -> cusolverStatus_t {
13421 (culib().cusolverDnZKgels_bufferSize)(
13422 handle,
13423 m,
13424 n,
13425 nrhs,
13426 dA,
13427 ldda,
13428 dB,
13429 lddb,
13430 dX,
13431 lddx,
13432 dWorkspace,
13433 lwork_bytes,
13434 )
13435 }
13436 pub unsafe fn cusolverDnZKgesv(
13437 handle: cusolverDnHandle_t,
13438 n: cusolver_int_t,
13439 nrhs: cusolver_int_t,
13440 dA: *mut cuDoubleComplex,
13441 ldda: cusolver_int_t,
13442 dipiv: *mut cusolver_int_t,
13443 dB: *mut cuDoubleComplex,
13444 lddb: cusolver_int_t,
13445 dX: *mut cuDoubleComplex,
13446 lddx: cusolver_int_t,
13447 dWorkspace: *mut ::core::ffi::c_void,
13448 lwork_bytes: usize,
13449 iter: *mut cusolver_int_t,
13450 d_info: *mut cusolver_int_t,
13451 ) -> cusolverStatus_t {
13452 (culib().cusolverDnZKgesv)(
13453 handle,
13454 n,
13455 nrhs,
13456 dA,
13457 ldda,
13458 dipiv,
13459 dB,
13460 lddb,
13461 dX,
13462 lddx,
13463 dWorkspace,
13464 lwork_bytes,
13465 iter,
13466 d_info,
13467 )
13468 }
13469 pub unsafe fn cusolverDnZKgesv_bufferSize(
13470 handle: cusolverDnHandle_t,
13471 n: cusolver_int_t,
13472 nrhs: cusolver_int_t,
13473 dA: *mut cuDoubleComplex,
13474 ldda: cusolver_int_t,
13475 dipiv: *mut cusolver_int_t,
13476 dB: *mut cuDoubleComplex,
13477 lddb: cusolver_int_t,
13478 dX: *mut cuDoubleComplex,
13479 lddx: cusolver_int_t,
13480 dWorkspace: *mut ::core::ffi::c_void,
13481 lwork_bytes: *mut usize,
13482 ) -> cusolverStatus_t {
13483 (culib().cusolverDnZKgesv_bufferSize)(
13484 handle,
13485 n,
13486 nrhs,
13487 dA,
13488 ldda,
13489 dipiv,
13490 dB,
13491 lddb,
13492 dX,
13493 lddx,
13494 dWorkspace,
13495 lwork_bytes,
13496 )
13497 }
13498 pub unsafe fn cusolverDnZYgels(
13499 handle: cusolverDnHandle_t,
13500 m: cusolver_int_t,
13501 n: cusolver_int_t,
13502 nrhs: cusolver_int_t,
13503 dA: *mut cuDoubleComplex,
13504 ldda: cusolver_int_t,
13505 dB: *mut cuDoubleComplex,
13506 lddb: cusolver_int_t,
13507 dX: *mut cuDoubleComplex,
13508 lddx: cusolver_int_t,
13509 dWorkspace: *mut ::core::ffi::c_void,
13510 lwork_bytes: usize,
13511 iter: *mut cusolver_int_t,
13512 d_info: *mut cusolver_int_t,
13513 ) -> cusolverStatus_t {
13514 (culib().cusolverDnZYgels)(
13515 handle,
13516 m,
13517 n,
13518 nrhs,
13519 dA,
13520 ldda,
13521 dB,
13522 lddb,
13523 dX,
13524 lddx,
13525 dWorkspace,
13526 lwork_bytes,
13527 iter,
13528 d_info,
13529 )
13530 }
13531 pub unsafe fn cusolverDnZYgels_bufferSize(
13532 handle: cusolverDnHandle_t,
13533 m: cusolver_int_t,
13534 n: cusolver_int_t,
13535 nrhs: cusolver_int_t,
13536 dA: *mut cuDoubleComplex,
13537 ldda: cusolver_int_t,
13538 dB: *mut cuDoubleComplex,
13539 lddb: cusolver_int_t,
13540 dX: *mut cuDoubleComplex,
13541 lddx: cusolver_int_t,
13542 dWorkspace: *mut ::core::ffi::c_void,
13543 lwork_bytes: *mut usize,
13544 ) -> cusolverStatus_t {
13545 (culib().cusolverDnZYgels_bufferSize)(
13546 handle,
13547 m,
13548 n,
13549 nrhs,
13550 dA,
13551 ldda,
13552 dB,
13553 lddb,
13554 dX,
13555 lddx,
13556 dWorkspace,
13557 lwork_bytes,
13558 )
13559 }
13560 pub unsafe fn cusolverDnZYgesv(
13561 handle: cusolverDnHandle_t,
13562 n: cusolver_int_t,
13563 nrhs: cusolver_int_t,
13564 dA: *mut cuDoubleComplex,
13565 ldda: cusolver_int_t,
13566 dipiv: *mut cusolver_int_t,
13567 dB: *mut cuDoubleComplex,
13568 lddb: cusolver_int_t,
13569 dX: *mut cuDoubleComplex,
13570 lddx: cusolver_int_t,
13571 dWorkspace: *mut ::core::ffi::c_void,
13572 lwork_bytes: usize,
13573 iter: *mut cusolver_int_t,
13574 d_info: *mut cusolver_int_t,
13575 ) -> cusolverStatus_t {
13576 (culib().cusolverDnZYgesv)(
13577 handle,
13578 n,
13579 nrhs,
13580 dA,
13581 ldda,
13582 dipiv,
13583 dB,
13584 lddb,
13585 dX,
13586 lddx,
13587 dWorkspace,
13588 lwork_bytes,
13589 iter,
13590 d_info,
13591 )
13592 }
13593 pub unsafe fn cusolverDnZYgesv_bufferSize(
13594 handle: cusolverDnHandle_t,
13595 n: cusolver_int_t,
13596 nrhs: cusolver_int_t,
13597 dA: *mut cuDoubleComplex,
13598 ldda: cusolver_int_t,
13599 dipiv: *mut cusolver_int_t,
13600 dB: *mut cuDoubleComplex,
13601 lddb: cusolver_int_t,
13602 dX: *mut cuDoubleComplex,
13603 lddx: cusolver_int_t,
13604 dWorkspace: *mut ::core::ffi::c_void,
13605 lwork_bytes: *mut usize,
13606 ) -> cusolverStatus_t {
13607 (culib().cusolverDnZYgesv_bufferSize)(
13608 handle,
13609 n,
13610 nrhs,
13611 dA,
13612 ldda,
13613 dipiv,
13614 dB,
13615 lddb,
13616 dX,
13617 lddx,
13618 dWorkspace,
13619 lwork_bytes,
13620 )
13621 }
13622 pub unsafe fn cusolverDnZZgels(
13623 handle: cusolverDnHandle_t,
13624 m: cusolver_int_t,
13625 n: cusolver_int_t,
13626 nrhs: cusolver_int_t,
13627 dA: *mut cuDoubleComplex,
13628 ldda: cusolver_int_t,
13629 dB: *mut cuDoubleComplex,
13630 lddb: cusolver_int_t,
13631 dX: *mut cuDoubleComplex,
13632 lddx: cusolver_int_t,
13633 dWorkspace: *mut ::core::ffi::c_void,
13634 lwork_bytes: usize,
13635 iter: *mut cusolver_int_t,
13636 d_info: *mut cusolver_int_t,
13637 ) -> cusolverStatus_t {
13638 (culib().cusolverDnZZgels)(
13639 handle,
13640 m,
13641 n,
13642 nrhs,
13643 dA,
13644 ldda,
13645 dB,
13646 lddb,
13647 dX,
13648 lddx,
13649 dWorkspace,
13650 lwork_bytes,
13651 iter,
13652 d_info,
13653 )
13654 }
13655 pub unsafe fn cusolverDnZZgels_bufferSize(
13656 handle: cusolverDnHandle_t,
13657 m: cusolver_int_t,
13658 n: cusolver_int_t,
13659 nrhs: cusolver_int_t,
13660 dA: *mut cuDoubleComplex,
13661 ldda: cusolver_int_t,
13662 dB: *mut cuDoubleComplex,
13663 lddb: cusolver_int_t,
13664 dX: *mut cuDoubleComplex,
13665 lddx: cusolver_int_t,
13666 dWorkspace: *mut ::core::ffi::c_void,
13667 lwork_bytes: *mut usize,
13668 ) -> cusolverStatus_t {
13669 (culib().cusolverDnZZgels_bufferSize)(
13670 handle,
13671 m,
13672 n,
13673 nrhs,
13674 dA,
13675 ldda,
13676 dB,
13677 lddb,
13678 dX,
13679 lddx,
13680 dWorkspace,
13681 lwork_bytes,
13682 )
13683 }
13684 pub unsafe fn cusolverDnZZgesv(
13685 handle: cusolverDnHandle_t,
13686 n: cusolver_int_t,
13687 nrhs: cusolver_int_t,
13688 dA: *mut cuDoubleComplex,
13689 ldda: cusolver_int_t,
13690 dipiv: *mut cusolver_int_t,
13691 dB: *mut cuDoubleComplex,
13692 lddb: cusolver_int_t,
13693 dX: *mut cuDoubleComplex,
13694 lddx: cusolver_int_t,
13695 dWorkspace: *mut ::core::ffi::c_void,
13696 lwork_bytes: usize,
13697 iter: *mut cusolver_int_t,
13698 d_info: *mut cusolver_int_t,
13699 ) -> cusolverStatus_t {
13700 (culib().cusolverDnZZgesv)(
13701 handle,
13702 n,
13703 nrhs,
13704 dA,
13705 ldda,
13706 dipiv,
13707 dB,
13708 lddb,
13709 dX,
13710 lddx,
13711 dWorkspace,
13712 lwork_bytes,
13713 iter,
13714 d_info,
13715 )
13716 }
13717 pub unsafe fn cusolverDnZZgesv_bufferSize(
13718 handle: cusolverDnHandle_t,
13719 n: cusolver_int_t,
13720 nrhs: cusolver_int_t,
13721 dA: *mut cuDoubleComplex,
13722 ldda: cusolver_int_t,
13723 dipiv: *mut cusolver_int_t,
13724 dB: *mut cuDoubleComplex,
13725 lddb: cusolver_int_t,
13726 dX: *mut cuDoubleComplex,
13727 lddx: cusolver_int_t,
13728 dWorkspace: *mut ::core::ffi::c_void,
13729 lwork_bytes: *mut usize,
13730 ) -> cusolverStatus_t {
13731 (culib().cusolverDnZZgesv_bufferSize)(
13732 handle,
13733 n,
13734 nrhs,
13735 dA,
13736 ldda,
13737 dipiv,
13738 dB,
13739 lddb,
13740 dX,
13741 lddx,
13742 dWorkspace,
13743 lwork_bytes,
13744 )
13745 }
13746 pub unsafe fn cusolverDnZgebrd(
13747 handle: cusolverDnHandle_t,
13748 m: ::core::ffi::c_int,
13749 n: ::core::ffi::c_int,
13750 A: *mut cuDoubleComplex,
13751 lda: ::core::ffi::c_int,
13752 D: *mut f64,
13753 E: *mut f64,
13754 TAUQ: *mut cuDoubleComplex,
13755 TAUP: *mut cuDoubleComplex,
13756 Work: *mut cuDoubleComplex,
13757 Lwork: ::core::ffi::c_int,
13758 devInfo: *mut ::core::ffi::c_int,
13759 ) -> cusolverStatus_t {
13760 (culib().cusolverDnZgebrd)(handle, m, n, A, lda, D, E, TAUQ, TAUP, Work, Lwork, devInfo)
13761 }
13762 pub unsafe fn cusolverDnZgebrd_bufferSize(
13763 handle: cusolverDnHandle_t,
13764 m: ::core::ffi::c_int,
13765 n: ::core::ffi::c_int,
13766 Lwork: *mut ::core::ffi::c_int,
13767 ) -> cusolverStatus_t {
13768 (culib().cusolverDnZgebrd_bufferSize)(handle, m, n, Lwork)
13769 }
13770 pub unsafe fn cusolverDnZgeqrf(
13771 handle: cusolverDnHandle_t,
13772 m: ::core::ffi::c_int,
13773 n: ::core::ffi::c_int,
13774 A: *mut cuDoubleComplex,
13775 lda: ::core::ffi::c_int,
13776 TAU: *mut cuDoubleComplex,
13777 Workspace: *mut cuDoubleComplex,
13778 Lwork: ::core::ffi::c_int,
13779 devInfo: *mut ::core::ffi::c_int,
13780 ) -> cusolverStatus_t {
13781 (culib().cusolverDnZgeqrf)(handle, m, n, A, lda, TAU, Workspace, Lwork, devInfo)
13782 }
13783 pub unsafe fn cusolverDnZgeqrf_bufferSize(
13784 handle: cusolverDnHandle_t,
13785 m: ::core::ffi::c_int,
13786 n: ::core::ffi::c_int,
13787 A: *mut cuDoubleComplex,
13788 lda: ::core::ffi::c_int,
13789 lwork: *mut ::core::ffi::c_int,
13790 ) -> cusolverStatus_t {
13791 (culib().cusolverDnZgeqrf_bufferSize)(handle, m, n, A, lda, lwork)
13792 }
13793 pub unsafe fn cusolverDnZgesvd(
13794 handle: cusolverDnHandle_t,
13795 jobu: ::core::ffi::c_schar,
13796 jobvt: ::core::ffi::c_schar,
13797 m: ::core::ffi::c_int,
13798 n: ::core::ffi::c_int,
13799 A: *mut cuDoubleComplex,
13800 lda: ::core::ffi::c_int,
13801 S: *mut f64,
13802 U: *mut cuDoubleComplex,
13803 ldu: ::core::ffi::c_int,
13804 VT: *mut cuDoubleComplex,
13805 ldvt: ::core::ffi::c_int,
13806 work: *mut cuDoubleComplex,
13807 lwork: ::core::ffi::c_int,
13808 rwork: *mut f64,
13809 info: *mut ::core::ffi::c_int,
13810 ) -> cusolverStatus_t {
13811 (culib().cusolverDnZgesvd)(
13812 handle, jobu, jobvt, m, n, A, lda, S, U, ldu, VT, ldvt, work, lwork, rwork, info,
13813 )
13814 }
13815 pub unsafe fn cusolverDnZgesvd_bufferSize(
13816 handle: cusolverDnHandle_t,
13817 m: ::core::ffi::c_int,
13818 n: ::core::ffi::c_int,
13819 lwork: *mut ::core::ffi::c_int,
13820 ) -> cusolverStatus_t {
13821 (culib().cusolverDnZgesvd_bufferSize)(handle, m, n, lwork)
13822 }
13823 pub unsafe fn cusolverDnZgesvdaStridedBatched(
13824 handle: cusolverDnHandle_t,
13825 jobz: cusolverEigMode_t,
13826 rank: ::core::ffi::c_int,
13827 m: ::core::ffi::c_int,
13828 n: ::core::ffi::c_int,
13829 d_A: *const cuDoubleComplex,
13830 lda: ::core::ffi::c_int,
13831 strideA: ::core::ffi::c_longlong,
13832 d_S: *mut f64,
13833 strideS: ::core::ffi::c_longlong,
13834 d_U: *mut cuDoubleComplex,
13835 ldu: ::core::ffi::c_int,
13836 strideU: ::core::ffi::c_longlong,
13837 d_V: *mut cuDoubleComplex,
13838 ldv: ::core::ffi::c_int,
13839 strideV: ::core::ffi::c_longlong,
13840 d_work: *mut cuDoubleComplex,
13841 lwork: ::core::ffi::c_int,
13842 d_info: *mut ::core::ffi::c_int,
13843 h_R_nrmF: *mut f64,
13844 batchSize: ::core::ffi::c_int,
13845 ) -> cusolverStatus_t {
13846 (culib().cusolverDnZgesvdaStridedBatched)(
13847 handle, jobz, rank, m, n, d_A, lda, strideA, d_S, strideS, d_U, ldu, strideU, d_V, ldv,
13848 strideV, d_work, lwork, d_info, h_R_nrmF, batchSize,
13849 )
13850 }
13851 pub unsafe fn cusolverDnZgesvdaStridedBatched_bufferSize(
13852 handle: cusolverDnHandle_t,
13853 jobz: cusolverEigMode_t,
13854 rank: ::core::ffi::c_int,
13855 m: ::core::ffi::c_int,
13856 n: ::core::ffi::c_int,
13857 d_A: *const cuDoubleComplex,
13858 lda: ::core::ffi::c_int,
13859 strideA: ::core::ffi::c_longlong,
13860 d_S: *const f64,
13861 strideS: ::core::ffi::c_longlong,
13862 d_U: *const cuDoubleComplex,
13863 ldu: ::core::ffi::c_int,
13864 strideU: ::core::ffi::c_longlong,
13865 d_V: *const cuDoubleComplex,
13866 ldv: ::core::ffi::c_int,
13867 strideV: ::core::ffi::c_longlong,
13868 lwork: *mut ::core::ffi::c_int,
13869 batchSize: ::core::ffi::c_int,
13870 ) -> cusolverStatus_t {
13871 (culib().cusolverDnZgesvdaStridedBatched_bufferSize)(
13872 handle, jobz, rank, m, n, d_A, lda, strideA, d_S, strideS, d_U, ldu, strideU, d_V, ldv,
13873 strideV, lwork, batchSize,
13874 )
13875 }
13876 pub unsafe fn cusolverDnZgesvdj(
13877 handle: cusolverDnHandle_t,
13878 jobz: cusolverEigMode_t,
13879 econ: ::core::ffi::c_int,
13880 m: ::core::ffi::c_int,
13881 n: ::core::ffi::c_int,
13882 A: *mut cuDoubleComplex,
13883 lda: ::core::ffi::c_int,
13884 S: *mut f64,
13885 U: *mut cuDoubleComplex,
13886 ldu: ::core::ffi::c_int,
13887 V: *mut cuDoubleComplex,
13888 ldv: ::core::ffi::c_int,
13889 work: *mut cuDoubleComplex,
13890 lwork: ::core::ffi::c_int,
13891 info: *mut ::core::ffi::c_int,
13892 params: gesvdjInfo_t,
13893 ) -> cusolverStatus_t {
13894 (culib().cusolverDnZgesvdj)(
13895 handle, jobz, econ, m, n, A, lda, S, U, ldu, V, ldv, work, lwork, info, params,
13896 )
13897 }
13898 pub unsafe fn cusolverDnZgesvdjBatched(
13899 handle: cusolverDnHandle_t,
13900 jobz: cusolverEigMode_t,
13901 m: ::core::ffi::c_int,
13902 n: ::core::ffi::c_int,
13903 A: *mut cuDoubleComplex,
13904 lda: ::core::ffi::c_int,
13905 S: *mut f64,
13906 U: *mut cuDoubleComplex,
13907 ldu: ::core::ffi::c_int,
13908 V: *mut cuDoubleComplex,
13909 ldv: ::core::ffi::c_int,
13910 work: *mut cuDoubleComplex,
13911 lwork: ::core::ffi::c_int,
13912 info: *mut ::core::ffi::c_int,
13913 params: gesvdjInfo_t,
13914 batchSize: ::core::ffi::c_int,
13915 ) -> cusolverStatus_t {
13916 (culib().cusolverDnZgesvdjBatched)(
13917 handle, jobz, m, n, A, lda, S, U, ldu, V, ldv, work, lwork, info, params, batchSize,
13918 )
13919 }
13920 pub unsafe fn cusolverDnZgesvdjBatched_bufferSize(
13921 handle: cusolverDnHandle_t,
13922 jobz: cusolverEigMode_t,
13923 m: ::core::ffi::c_int,
13924 n: ::core::ffi::c_int,
13925 A: *const cuDoubleComplex,
13926 lda: ::core::ffi::c_int,
13927 S: *const f64,
13928 U: *const cuDoubleComplex,
13929 ldu: ::core::ffi::c_int,
13930 V: *const cuDoubleComplex,
13931 ldv: ::core::ffi::c_int,
13932 lwork: *mut ::core::ffi::c_int,
13933 params: gesvdjInfo_t,
13934 batchSize: ::core::ffi::c_int,
13935 ) -> cusolverStatus_t {
13936 (culib().cusolverDnZgesvdjBatched_bufferSize)(
13937 handle, jobz, m, n, A, lda, S, U, ldu, V, ldv, lwork, params, batchSize,
13938 )
13939 }
13940 pub unsafe fn cusolverDnZgesvdj_bufferSize(
13941 handle: cusolverDnHandle_t,
13942 jobz: cusolverEigMode_t,
13943 econ: ::core::ffi::c_int,
13944 m: ::core::ffi::c_int,
13945 n: ::core::ffi::c_int,
13946 A: *const cuDoubleComplex,
13947 lda: ::core::ffi::c_int,
13948 S: *const f64,
13949 U: *const cuDoubleComplex,
13950 ldu: ::core::ffi::c_int,
13951 V: *const cuDoubleComplex,
13952 ldv: ::core::ffi::c_int,
13953 lwork: *mut ::core::ffi::c_int,
13954 params: gesvdjInfo_t,
13955 ) -> cusolverStatus_t {
13956 (culib().cusolverDnZgesvdj_bufferSize)(
13957 handle, jobz, econ, m, n, A, lda, S, U, ldu, V, ldv, lwork, params,
13958 )
13959 }
13960 pub unsafe fn cusolverDnZgetrf(
13961 handle: cusolverDnHandle_t,
13962 m: ::core::ffi::c_int,
13963 n: ::core::ffi::c_int,
13964 A: *mut cuDoubleComplex,
13965 lda: ::core::ffi::c_int,
13966 Workspace: *mut cuDoubleComplex,
13967 devIpiv: *mut ::core::ffi::c_int,
13968 devInfo: *mut ::core::ffi::c_int,
13969 ) -> cusolverStatus_t {
13970 (culib().cusolverDnZgetrf)(handle, m, n, A, lda, Workspace, devIpiv, devInfo)
13971 }
13972 pub unsafe fn cusolverDnZgetrf_bufferSize(
13973 handle: cusolverDnHandle_t,
13974 m: ::core::ffi::c_int,
13975 n: ::core::ffi::c_int,
13976 A: *mut cuDoubleComplex,
13977 lda: ::core::ffi::c_int,
13978 Lwork: *mut ::core::ffi::c_int,
13979 ) -> cusolverStatus_t {
13980 (culib().cusolverDnZgetrf_bufferSize)(handle, m, n, A, lda, Lwork)
13981 }
13982 pub unsafe fn cusolverDnZgetrs(
13983 handle: cusolverDnHandle_t,
13984 trans: cublasOperation_t,
13985 n: ::core::ffi::c_int,
13986 nrhs: ::core::ffi::c_int,
13987 A: *const cuDoubleComplex,
13988 lda: ::core::ffi::c_int,
13989 devIpiv: *const ::core::ffi::c_int,
13990 B: *mut cuDoubleComplex,
13991 ldb: ::core::ffi::c_int,
13992 devInfo: *mut ::core::ffi::c_int,
13993 ) -> cusolverStatus_t {
13994 (culib().cusolverDnZgetrs)(handle, trans, n, nrhs, A, lda, devIpiv, B, ldb, devInfo)
13995 }
13996 pub unsafe fn cusolverDnZheevd(
13997 handle: cusolverDnHandle_t,
13998 jobz: cusolverEigMode_t,
13999 uplo: cublasFillMode_t,
14000 n: ::core::ffi::c_int,
14001 A: *mut cuDoubleComplex,
14002 lda: ::core::ffi::c_int,
14003 W: *mut f64,
14004 work: *mut cuDoubleComplex,
14005 lwork: ::core::ffi::c_int,
14006 info: *mut ::core::ffi::c_int,
14007 ) -> cusolverStatus_t {
14008 (culib().cusolverDnZheevd)(handle, jobz, uplo, n, A, lda, W, work, lwork, info)
14009 }
14010 pub unsafe fn cusolverDnZheevd_bufferSize(
14011 handle: cusolverDnHandle_t,
14012 jobz: cusolverEigMode_t,
14013 uplo: cublasFillMode_t,
14014 n: ::core::ffi::c_int,
14015 A: *const cuDoubleComplex,
14016 lda: ::core::ffi::c_int,
14017 W: *const f64,
14018 lwork: *mut ::core::ffi::c_int,
14019 ) -> cusolverStatus_t {
14020 (culib().cusolverDnZheevd_bufferSize)(handle, jobz, uplo, n, A, lda, W, lwork)
14021 }
14022 pub unsafe fn cusolverDnZheevdx(
14023 handle: cusolverDnHandle_t,
14024 jobz: cusolverEigMode_t,
14025 range: cusolverEigRange_t,
14026 uplo: cublasFillMode_t,
14027 n: ::core::ffi::c_int,
14028 A: *mut cuDoubleComplex,
14029 lda: ::core::ffi::c_int,
14030 vl: f64,
14031 vu: f64,
14032 il: ::core::ffi::c_int,
14033 iu: ::core::ffi::c_int,
14034 meig: *mut ::core::ffi::c_int,
14035 W: *mut f64,
14036 work: *mut cuDoubleComplex,
14037 lwork: ::core::ffi::c_int,
14038 info: *mut ::core::ffi::c_int,
14039 ) -> cusolverStatus_t {
14040 (culib().cusolverDnZheevdx)(
14041 handle, jobz, range, uplo, n, A, lda, vl, vu, il, iu, meig, W, work, lwork, info,
14042 )
14043 }
14044 pub unsafe fn cusolverDnZheevdx_bufferSize(
14045 handle: cusolverDnHandle_t,
14046 jobz: cusolverEigMode_t,
14047 range: cusolverEigRange_t,
14048 uplo: cublasFillMode_t,
14049 n: ::core::ffi::c_int,
14050 A: *const cuDoubleComplex,
14051 lda: ::core::ffi::c_int,
14052 vl: f64,
14053 vu: f64,
14054 il: ::core::ffi::c_int,
14055 iu: ::core::ffi::c_int,
14056 meig: *mut ::core::ffi::c_int,
14057 W: *const f64,
14058 lwork: *mut ::core::ffi::c_int,
14059 ) -> cusolverStatus_t {
14060 (culib().cusolverDnZheevdx_bufferSize)(
14061 handle, jobz, range, uplo, n, A, lda, vl, vu, il, iu, meig, W, lwork,
14062 )
14063 }
14064 pub unsafe fn cusolverDnZheevj(
14065 handle: cusolverDnHandle_t,
14066 jobz: cusolverEigMode_t,
14067 uplo: cublasFillMode_t,
14068 n: ::core::ffi::c_int,
14069 A: *mut cuDoubleComplex,
14070 lda: ::core::ffi::c_int,
14071 W: *mut f64,
14072 work: *mut cuDoubleComplex,
14073 lwork: ::core::ffi::c_int,
14074 info: *mut ::core::ffi::c_int,
14075 params: syevjInfo_t,
14076 ) -> cusolverStatus_t {
14077 (culib().cusolverDnZheevj)(handle, jobz, uplo, n, A, lda, W, work, lwork, info, params)
14078 }
14079 pub unsafe fn cusolverDnZheevjBatched(
14080 handle: cusolverDnHandle_t,
14081 jobz: cusolverEigMode_t,
14082 uplo: cublasFillMode_t,
14083 n: ::core::ffi::c_int,
14084 A: *mut cuDoubleComplex,
14085 lda: ::core::ffi::c_int,
14086 W: *mut f64,
14087 work: *mut cuDoubleComplex,
14088 lwork: ::core::ffi::c_int,
14089 info: *mut ::core::ffi::c_int,
14090 params: syevjInfo_t,
14091 batchSize: ::core::ffi::c_int,
14092 ) -> cusolverStatus_t {
14093 (culib().cusolverDnZheevjBatched)(
14094 handle, jobz, uplo, n, A, lda, W, work, lwork, info, params, batchSize,
14095 )
14096 }
14097 pub unsafe fn cusolverDnZheevjBatched_bufferSize(
14098 handle: cusolverDnHandle_t,
14099 jobz: cusolverEigMode_t,
14100 uplo: cublasFillMode_t,
14101 n: ::core::ffi::c_int,
14102 A: *const cuDoubleComplex,
14103 lda: ::core::ffi::c_int,
14104 W: *const f64,
14105 lwork: *mut ::core::ffi::c_int,
14106 params: syevjInfo_t,
14107 batchSize: ::core::ffi::c_int,
14108 ) -> cusolverStatus_t {
14109 (culib().cusolverDnZheevjBatched_bufferSize)(
14110 handle, jobz, uplo, n, A, lda, W, lwork, params, batchSize,
14111 )
14112 }
14113 pub unsafe fn cusolverDnZheevj_bufferSize(
14114 handle: cusolverDnHandle_t,
14115 jobz: cusolverEigMode_t,
14116 uplo: cublasFillMode_t,
14117 n: ::core::ffi::c_int,
14118 A: *const cuDoubleComplex,
14119 lda: ::core::ffi::c_int,
14120 W: *const f64,
14121 lwork: *mut ::core::ffi::c_int,
14122 params: syevjInfo_t,
14123 ) -> cusolverStatus_t {
14124 (culib().cusolverDnZheevj_bufferSize)(handle, jobz, uplo, n, A, lda, W, lwork, params)
14125 }
14126 pub unsafe fn cusolverDnZhegvd(
14127 handle: cusolverDnHandle_t,
14128 itype: cusolverEigType_t,
14129 jobz: cusolverEigMode_t,
14130 uplo: cublasFillMode_t,
14131 n: ::core::ffi::c_int,
14132 A: *mut cuDoubleComplex,
14133 lda: ::core::ffi::c_int,
14134 B: *mut cuDoubleComplex,
14135 ldb: ::core::ffi::c_int,
14136 W: *mut f64,
14137 work: *mut cuDoubleComplex,
14138 lwork: ::core::ffi::c_int,
14139 info: *mut ::core::ffi::c_int,
14140 ) -> cusolverStatus_t {
14141 (culib().cusolverDnZhegvd)(
14142 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, work, lwork, info,
14143 )
14144 }
14145 pub unsafe fn cusolverDnZhegvd_bufferSize(
14146 handle: cusolverDnHandle_t,
14147 itype: cusolverEigType_t,
14148 jobz: cusolverEigMode_t,
14149 uplo: cublasFillMode_t,
14150 n: ::core::ffi::c_int,
14151 A: *const cuDoubleComplex,
14152 lda: ::core::ffi::c_int,
14153 B: *const cuDoubleComplex,
14154 ldb: ::core::ffi::c_int,
14155 W: *const f64,
14156 lwork: *mut ::core::ffi::c_int,
14157 ) -> cusolverStatus_t {
14158 (culib().cusolverDnZhegvd_bufferSize)(
14159 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, lwork,
14160 )
14161 }
14162 pub unsafe fn cusolverDnZhegvdx(
14163 handle: cusolverDnHandle_t,
14164 itype: cusolverEigType_t,
14165 jobz: cusolverEigMode_t,
14166 range: cusolverEigRange_t,
14167 uplo: cublasFillMode_t,
14168 n: ::core::ffi::c_int,
14169 A: *mut cuDoubleComplex,
14170 lda: ::core::ffi::c_int,
14171 B: *mut cuDoubleComplex,
14172 ldb: ::core::ffi::c_int,
14173 vl: f64,
14174 vu: f64,
14175 il: ::core::ffi::c_int,
14176 iu: ::core::ffi::c_int,
14177 meig: *mut ::core::ffi::c_int,
14178 W: *mut f64,
14179 work: *mut cuDoubleComplex,
14180 lwork: ::core::ffi::c_int,
14181 info: *mut ::core::ffi::c_int,
14182 ) -> cusolverStatus_t {
14183 (culib().cusolverDnZhegvdx)(
14184 handle, itype, jobz, range, uplo, n, A, lda, B, ldb, vl, vu, il, iu, meig, W, work,
14185 lwork, info,
14186 )
14187 }
14188 pub unsafe fn cusolverDnZhegvdx_bufferSize(
14189 handle: cusolverDnHandle_t,
14190 itype: cusolverEigType_t,
14191 jobz: cusolverEigMode_t,
14192 range: cusolverEigRange_t,
14193 uplo: cublasFillMode_t,
14194 n: ::core::ffi::c_int,
14195 A: *const cuDoubleComplex,
14196 lda: ::core::ffi::c_int,
14197 B: *const cuDoubleComplex,
14198 ldb: ::core::ffi::c_int,
14199 vl: f64,
14200 vu: f64,
14201 il: ::core::ffi::c_int,
14202 iu: ::core::ffi::c_int,
14203 meig: *mut ::core::ffi::c_int,
14204 W: *const f64,
14205 lwork: *mut ::core::ffi::c_int,
14206 ) -> cusolverStatus_t {
14207 (culib().cusolverDnZhegvdx_bufferSize)(
14208 handle, itype, jobz, range, uplo, n, A, lda, B, ldb, vl, vu, il, iu, meig, W, lwork,
14209 )
14210 }
14211 pub unsafe fn cusolverDnZhegvj(
14212 handle: cusolverDnHandle_t,
14213 itype: cusolverEigType_t,
14214 jobz: cusolverEigMode_t,
14215 uplo: cublasFillMode_t,
14216 n: ::core::ffi::c_int,
14217 A: *mut cuDoubleComplex,
14218 lda: ::core::ffi::c_int,
14219 B: *mut cuDoubleComplex,
14220 ldb: ::core::ffi::c_int,
14221 W: *mut f64,
14222 work: *mut cuDoubleComplex,
14223 lwork: ::core::ffi::c_int,
14224 info: *mut ::core::ffi::c_int,
14225 params: syevjInfo_t,
14226 ) -> cusolverStatus_t {
14227 (culib().cusolverDnZhegvj)(
14228 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, work, lwork, info, params,
14229 )
14230 }
14231 pub unsafe fn cusolverDnZhegvj_bufferSize(
14232 handle: cusolverDnHandle_t,
14233 itype: cusolverEigType_t,
14234 jobz: cusolverEigMode_t,
14235 uplo: cublasFillMode_t,
14236 n: ::core::ffi::c_int,
14237 A: *const cuDoubleComplex,
14238 lda: ::core::ffi::c_int,
14239 B: *const cuDoubleComplex,
14240 ldb: ::core::ffi::c_int,
14241 W: *const f64,
14242 lwork: *mut ::core::ffi::c_int,
14243 params: syevjInfo_t,
14244 ) -> cusolverStatus_t {
14245 (culib().cusolverDnZhegvj_bufferSize)(
14246 handle, itype, jobz, uplo, n, A, lda, B, ldb, W, lwork, params,
14247 )
14248 }
14249 pub unsafe fn cusolverDnZhetrd(
14250 handle: cusolverDnHandle_t,
14251 uplo: cublasFillMode_t,
14252 n: ::core::ffi::c_int,
14253 A: *mut cuDoubleComplex,
14254 lda: ::core::ffi::c_int,
14255 d: *mut f64,
14256 e: *mut f64,
14257 tau: *mut cuDoubleComplex,
14258 work: *mut cuDoubleComplex,
14259 lwork: ::core::ffi::c_int,
14260 info: *mut ::core::ffi::c_int,
14261 ) -> cusolverStatus_t {
14262 (culib().cusolverDnZhetrd)(handle, uplo, n, A, lda, d, e, tau, work, lwork, info)
14263 }
14264 pub unsafe fn cusolverDnZhetrd_bufferSize(
14265 handle: cusolverDnHandle_t,
14266 uplo: cublasFillMode_t,
14267 n: ::core::ffi::c_int,
14268 A: *const cuDoubleComplex,
14269 lda: ::core::ffi::c_int,
14270 d: *const f64,
14271 e: *const f64,
14272 tau: *const cuDoubleComplex,
14273 lwork: *mut ::core::ffi::c_int,
14274 ) -> cusolverStatus_t {
14275 (culib().cusolverDnZhetrd_bufferSize)(handle, uplo, n, A, lda, d, e, tau, lwork)
14276 }
14277 pub unsafe fn cusolverDnZlaswp(
14278 handle: cusolverDnHandle_t,
14279 n: ::core::ffi::c_int,
14280 A: *mut cuDoubleComplex,
14281 lda: ::core::ffi::c_int,
14282 k1: ::core::ffi::c_int,
14283 k2: ::core::ffi::c_int,
14284 devIpiv: *const ::core::ffi::c_int,
14285 incx: ::core::ffi::c_int,
14286 ) -> cusolverStatus_t {
14287 (culib().cusolverDnZlaswp)(handle, n, A, lda, k1, k2, devIpiv, incx)
14288 }
14289 pub unsafe fn cusolverDnZlauum(
14290 handle: cusolverDnHandle_t,
14291 uplo: cublasFillMode_t,
14292 n: ::core::ffi::c_int,
14293 A: *mut cuDoubleComplex,
14294 lda: ::core::ffi::c_int,
14295 work: *mut cuDoubleComplex,
14296 lwork: ::core::ffi::c_int,
14297 devInfo: *mut ::core::ffi::c_int,
14298 ) -> cusolverStatus_t {
14299 (culib().cusolverDnZlauum)(handle, uplo, n, A, lda, work, lwork, devInfo)
14300 }
14301 pub unsafe fn cusolverDnZlauum_bufferSize(
14302 handle: cusolverDnHandle_t,
14303 uplo: cublasFillMode_t,
14304 n: ::core::ffi::c_int,
14305 A: *mut cuDoubleComplex,
14306 lda: ::core::ffi::c_int,
14307 lwork: *mut ::core::ffi::c_int,
14308 ) -> cusolverStatus_t {
14309 (culib().cusolverDnZlauum_bufferSize)(handle, uplo, n, A, lda, lwork)
14310 }
14311 pub unsafe fn cusolverDnZpotrf(
14312 handle: cusolverDnHandle_t,
14313 uplo: cublasFillMode_t,
14314 n: ::core::ffi::c_int,
14315 A: *mut cuDoubleComplex,
14316 lda: ::core::ffi::c_int,
14317 Workspace: *mut cuDoubleComplex,
14318 Lwork: ::core::ffi::c_int,
14319 devInfo: *mut ::core::ffi::c_int,
14320 ) -> cusolverStatus_t {
14321 (culib().cusolverDnZpotrf)(handle, uplo, n, A, lda, Workspace, Lwork, devInfo)
14322 }
14323 pub unsafe fn cusolverDnZpotrfBatched(
14324 handle: cusolverDnHandle_t,
14325 uplo: cublasFillMode_t,
14326 n: ::core::ffi::c_int,
14327 Aarray: *mut *mut cuDoubleComplex,
14328 lda: ::core::ffi::c_int,
14329 infoArray: *mut ::core::ffi::c_int,
14330 batchSize: ::core::ffi::c_int,
14331 ) -> cusolverStatus_t {
14332 (culib().cusolverDnZpotrfBatched)(handle, uplo, n, Aarray, lda, infoArray, batchSize)
14333 }
14334 pub unsafe fn cusolverDnZpotrf_bufferSize(
14335 handle: cusolverDnHandle_t,
14336 uplo: cublasFillMode_t,
14337 n: ::core::ffi::c_int,
14338 A: *mut cuDoubleComplex,
14339 lda: ::core::ffi::c_int,
14340 Lwork: *mut ::core::ffi::c_int,
14341 ) -> cusolverStatus_t {
14342 (culib().cusolverDnZpotrf_bufferSize)(handle, uplo, n, A, lda, Lwork)
14343 }
14344 pub unsafe fn cusolverDnZpotri(
14345 handle: cusolverDnHandle_t,
14346 uplo: cublasFillMode_t,
14347 n: ::core::ffi::c_int,
14348 A: *mut cuDoubleComplex,
14349 lda: ::core::ffi::c_int,
14350 work: *mut cuDoubleComplex,
14351 lwork: ::core::ffi::c_int,
14352 devInfo: *mut ::core::ffi::c_int,
14353 ) -> cusolverStatus_t {
14354 (culib().cusolverDnZpotri)(handle, uplo, n, A, lda, work, lwork, devInfo)
14355 }
14356 pub unsafe fn cusolverDnZpotri_bufferSize(
14357 handle: cusolverDnHandle_t,
14358 uplo: cublasFillMode_t,
14359 n: ::core::ffi::c_int,
14360 A: *mut cuDoubleComplex,
14361 lda: ::core::ffi::c_int,
14362 lwork: *mut ::core::ffi::c_int,
14363 ) -> cusolverStatus_t {
14364 (culib().cusolverDnZpotri_bufferSize)(handle, uplo, n, A, lda, lwork)
14365 }
14366 pub unsafe fn cusolverDnZpotrs(
14367 handle: cusolverDnHandle_t,
14368 uplo: cublasFillMode_t,
14369 n: ::core::ffi::c_int,
14370 nrhs: ::core::ffi::c_int,
14371 A: *const cuDoubleComplex,
14372 lda: ::core::ffi::c_int,
14373 B: *mut cuDoubleComplex,
14374 ldb: ::core::ffi::c_int,
14375 devInfo: *mut ::core::ffi::c_int,
14376 ) -> cusolverStatus_t {
14377 (culib().cusolverDnZpotrs)(handle, uplo, n, nrhs, A, lda, B, ldb, devInfo)
14378 }
14379 pub unsafe fn cusolverDnZpotrsBatched(
14380 handle: cusolverDnHandle_t,
14381 uplo: cublasFillMode_t,
14382 n: ::core::ffi::c_int,
14383 nrhs: ::core::ffi::c_int,
14384 A: *mut *mut cuDoubleComplex,
14385 lda: ::core::ffi::c_int,
14386 B: *mut *mut cuDoubleComplex,
14387 ldb: ::core::ffi::c_int,
14388 d_info: *mut ::core::ffi::c_int,
14389 batchSize: ::core::ffi::c_int,
14390 ) -> cusolverStatus_t {
14391 (culib().cusolverDnZpotrsBatched)(handle, uplo, n, nrhs, A, lda, B, ldb, d_info, batchSize)
14392 }
14393 pub unsafe fn cusolverDnZsytrf(
14394 handle: cusolverDnHandle_t,
14395 uplo: cublasFillMode_t,
14396 n: ::core::ffi::c_int,
14397 A: *mut cuDoubleComplex,
14398 lda: ::core::ffi::c_int,
14399 ipiv: *mut ::core::ffi::c_int,
14400 work: *mut cuDoubleComplex,
14401 lwork: ::core::ffi::c_int,
14402 info: *mut ::core::ffi::c_int,
14403 ) -> cusolverStatus_t {
14404 (culib().cusolverDnZsytrf)(handle, uplo, n, A, lda, ipiv, work, lwork, info)
14405 }
14406 pub unsafe fn cusolverDnZsytrf_bufferSize(
14407 handle: cusolverDnHandle_t,
14408 n: ::core::ffi::c_int,
14409 A: *mut cuDoubleComplex,
14410 lda: ::core::ffi::c_int,
14411 lwork: *mut ::core::ffi::c_int,
14412 ) -> cusolverStatus_t {
14413 (culib().cusolverDnZsytrf_bufferSize)(handle, n, A, lda, lwork)
14414 }
14415 pub unsafe fn cusolverDnZsytri(
14416 handle: cusolverDnHandle_t,
14417 uplo: cublasFillMode_t,
14418 n: ::core::ffi::c_int,
14419 A: *mut cuDoubleComplex,
14420 lda: ::core::ffi::c_int,
14421 ipiv: *const ::core::ffi::c_int,
14422 work: *mut cuDoubleComplex,
14423 lwork: ::core::ffi::c_int,
14424 info: *mut ::core::ffi::c_int,
14425 ) -> cusolverStatus_t {
14426 (culib().cusolverDnZsytri)(handle, uplo, n, A, lda, ipiv, work, lwork, info)
14427 }
14428 pub unsafe fn cusolverDnZsytri_bufferSize(
14429 handle: cusolverDnHandle_t,
14430 uplo: cublasFillMode_t,
14431 n: ::core::ffi::c_int,
14432 A: *mut cuDoubleComplex,
14433 lda: ::core::ffi::c_int,
14434 ipiv: *const ::core::ffi::c_int,
14435 lwork: *mut ::core::ffi::c_int,
14436 ) -> cusolverStatus_t {
14437 (culib().cusolverDnZsytri_bufferSize)(handle, uplo, n, A, lda, ipiv, lwork)
14438 }
14439 pub unsafe fn cusolverDnZungbr(
14440 handle: cusolverDnHandle_t,
14441 side: cublasSideMode_t,
14442 m: ::core::ffi::c_int,
14443 n: ::core::ffi::c_int,
14444 k: ::core::ffi::c_int,
14445 A: *mut cuDoubleComplex,
14446 lda: ::core::ffi::c_int,
14447 tau: *const cuDoubleComplex,
14448 work: *mut cuDoubleComplex,
14449 lwork: ::core::ffi::c_int,
14450 info: *mut ::core::ffi::c_int,
14451 ) -> cusolverStatus_t {
14452 (culib().cusolverDnZungbr)(handle, side, m, n, k, A, lda, tau, work, lwork, info)
14453 }
14454 pub unsafe fn cusolverDnZungbr_bufferSize(
14455 handle: cusolverDnHandle_t,
14456 side: cublasSideMode_t,
14457 m: ::core::ffi::c_int,
14458 n: ::core::ffi::c_int,
14459 k: ::core::ffi::c_int,
14460 A: *const cuDoubleComplex,
14461 lda: ::core::ffi::c_int,
14462 tau: *const cuDoubleComplex,
14463 lwork: *mut ::core::ffi::c_int,
14464 ) -> cusolverStatus_t {
14465 (culib().cusolverDnZungbr_bufferSize)(handle, side, m, n, k, A, lda, tau, lwork)
14466 }
14467 pub unsafe fn cusolverDnZungqr(
14468 handle: cusolverDnHandle_t,
14469 m: ::core::ffi::c_int,
14470 n: ::core::ffi::c_int,
14471 k: ::core::ffi::c_int,
14472 A: *mut cuDoubleComplex,
14473 lda: ::core::ffi::c_int,
14474 tau: *const cuDoubleComplex,
14475 work: *mut cuDoubleComplex,
14476 lwork: ::core::ffi::c_int,
14477 info: *mut ::core::ffi::c_int,
14478 ) -> cusolverStatus_t {
14479 (culib().cusolverDnZungqr)(handle, m, n, k, A, lda, tau, work, lwork, info)
14480 }
14481 pub unsafe fn cusolverDnZungqr_bufferSize(
14482 handle: cusolverDnHandle_t,
14483 m: ::core::ffi::c_int,
14484 n: ::core::ffi::c_int,
14485 k: ::core::ffi::c_int,
14486 A: *const cuDoubleComplex,
14487 lda: ::core::ffi::c_int,
14488 tau: *const cuDoubleComplex,
14489 lwork: *mut ::core::ffi::c_int,
14490 ) -> cusolverStatus_t {
14491 (culib().cusolverDnZungqr_bufferSize)(handle, m, n, k, A, lda, tau, lwork)
14492 }
14493 pub unsafe fn cusolverDnZungtr(
14494 handle: cusolverDnHandle_t,
14495 uplo: cublasFillMode_t,
14496 n: ::core::ffi::c_int,
14497 A: *mut cuDoubleComplex,
14498 lda: ::core::ffi::c_int,
14499 tau: *const cuDoubleComplex,
14500 work: *mut cuDoubleComplex,
14501 lwork: ::core::ffi::c_int,
14502 info: *mut ::core::ffi::c_int,
14503 ) -> cusolverStatus_t {
14504 (culib().cusolverDnZungtr)(handle, uplo, n, A, lda, tau, work, lwork, info)
14505 }
14506 pub unsafe fn cusolverDnZungtr_bufferSize(
14507 handle: cusolverDnHandle_t,
14508 uplo: cublasFillMode_t,
14509 n: ::core::ffi::c_int,
14510 A: *const cuDoubleComplex,
14511 lda: ::core::ffi::c_int,
14512 tau: *const cuDoubleComplex,
14513 lwork: *mut ::core::ffi::c_int,
14514 ) -> cusolverStatus_t {
14515 (culib().cusolverDnZungtr_bufferSize)(handle, uplo, n, A, lda, tau, lwork)
14516 }
14517 pub unsafe fn cusolverDnZunmqr(
14518 handle: cusolverDnHandle_t,
14519 side: cublasSideMode_t,
14520 trans: cublasOperation_t,
14521 m: ::core::ffi::c_int,
14522 n: ::core::ffi::c_int,
14523 k: ::core::ffi::c_int,
14524 A: *const cuDoubleComplex,
14525 lda: ::core::ffi::c_int,
14526 tau: *const cuDoubleComplex,
14527 C: *mut cuDoubleComplex,
14528 ldc: ::core::ffi::c_int,
14529 work: *mut cuDoubleComplex,
14530 lwork: ::core::ffi::c_int,
14531 devInfo: *mut ::core::ffi::c_int,
14532 ) -> cusolverStatus_t {
14533 (culib().cusolverDnZunmqr)(
14534 handle, side, trans, m, n, k, A, lda, tau, C, ldc, work, lwork, devInfo,
14535 )
14536 }
14537 pub unsafe fn cusolverDnZunmqr_bufferSize(
14538 handle: cusolverDnHandle_t,
14539 side: cublasSideMode_t,
14540 trans: cublasOperation_t,
14541 m: ::core::ffi::c_int,
14542 n: ::core::ffi::c_int,
14543 k: ::core::ffi::c_int,
14544 A: *const cuDoubleComplex,
14545 lda: ::core::ffi::c_int,
14546 tau: *const cuDoubleComplex,
14547 C: *const cuDoubleComplex,
14548 ldc: ::core::ffi::c_int,
14549 lwork: *mut ::core::ffi::c_int,
14550 ) -> cusolverStatus_t {
14551 (culib().cusolverDnZunmqr_bufferSize)(
14552 handle, side, trans, m, n, k, A, lda, tau, C, ldc, lwork,
14553 )
14554 }
14555 pub unsafe fn cusolverDnZunmtr(
14556 handle: cusolverDnHandle_t,
14557 side: cublasSideMode_t,
14558 uplo: cublasFillMode_t,
14559 trans: cublasOperation_t,
14560 m: ::core::ffi::c_int,
14561 n: ::core::ffi::c_int,
14562 A: *mut cuDoubleComplex,
14563 lda: ::core::ffi::c_int,
14564 tau: *mut cuDoubleComplex,
14565 C: *mut cuDoubleComplex,
14566 ldc: ::core::ffi::c_int,
14567 work: *mut cuDoubleComplex,
14568 lwork: ::core::ffi::c_int,
14569 info: *mut ::core::ffi::c_int,
14570 ) -> cusolverStatus_t {
14571 (culib().cusolverDnZunmtr)(
14572 handle, side, uplo, trans, m, n, A, lda, tau, C, ldc, work, lwork, info,
14573 )
14574 }
14575 pub unsafe fn cusolverDnZunmtr_bufferSize(
14576 handle: cusolverDnHandle_t,
14577 side: cublasSideMode_t,
14578 uplo: cublasFillMode_t,
14579 trans: cublasOperation_t,
14580 m: ::core::ffi::c_int,
14581 n: ::core::ffi::c_int,
14582 A: *const cuDoubleComplex,
14583 lda: ::core::ffi::c_int,
14584 tau: *const cuDoubleComplex,
14585 C: *const cuDoubleComplex,
14586 ldc: ::core::ffi::c_int,
14587 lwork: *mut ::core::ffi::c_int,
14588 ) -> cusolverStatus_t {
14589 (culib().cusolverDnZunmtr_bufferSize)(
14590 handle, side, uplo, trans, m, n, A, lda, tau, C, ldc, lwork,
14591 )
14592 }
14593 pub unsafe fn cusolverGetProperty(
14594 type_: libraryPropertyType,
14595 value: *mut ::core::ffi::c_int,
14596 ) -> cusolverStatus_t {
14597 (culib().cusolverGetProperty)(type_, value)
14598 }
14599 pub unsafe fn cusolverGetVersion(version: *mut ::core::ffi::c_int) -> cusolverStatus_t {
14600 (culib().cusolverGetVersion)(version)
14601 }
14602 pub unsafe fn cusolverRfAccessBundledFactorsDevice(
14603 handle: cusolverRfHandle_t,
14604 nnzM: *mut ::core::ffi::c_int,
14605 Mp: *mut *mut ::core::ffi::c_int,
14606 Mi: *mut *mut ::core::ffi::c_int,
14607 Mx: *mut *mut f64,
14608 ) -> cusolverStatus_t {
14609 (culib().cusolverRfAccessBundledFactorsDevice)(handle, nnzM, Mp, Mi, Mx)
14610 }
14611 pub unsafe fn cusolverRfAnalyze(handle: cusolverRfHandle_t) -> cusolverStatus_t {
14612 (culib().cusolverRfAnalyze)(handle)
14613 }
14614 pub unsafe fn cusolverRfBatchAnalyze(handle: cusolverRfHandle_t) -> cusolverStatus_t {
14615 (culib().cusolverRfBatchAnalyze)(handle)
14616 }
14617 pub unsafe fn cusolverRfBatchRefactor(handle: cusolverRfHandle_t) -> cusolverStatus_t {
14618 (culib().cusolverRfBatchRefactor)(handle)
14619 }
14620 pub unsafe fn cusolverRfBatchResetValues(
14621 batchSize: ::core::ffi::c_int,
14622 n: ::core::ffi::c_int,
14623 nnzA: ::core::ffi::c_int,
14624 csrRowPtrA: *mut ::core::ffi::c_int,
14625 csrColIndA: *mut ::core::ffi::c_int,
14626 csrValA_array: *mut *mut f64,
14627 P: *mut ::core::ffi::c_int,
14628 Q: *mut ::core::ffi::c_int,
14629 handle: cusolverRfHandle_t,
14630 ) -> cusolverStatus_t {
14631 (culib().cusolverRfBatchResetValues)(
14632 batchSize,
14633 n,
14634 nnzA,
14635 csrRowPtrA,
14636 csrColIndA,
14637 csrValA_array,
14638 P,
14639 Q,
14640 handle,
14641 )
14642 }
14643 pub unsafe fn cusolverRfBatchSetupHost(
14644 batchSize: ::core::ffi::c_int,
14645 n: ::core::ffi::c_int,
14646 nnzA: ::core::ffi::c_int,
14647 h_csrRowPtrA: *mut ::core::ffi::c_int,
14648 h_csrColIndA: *mut ::core::ffi::c_int,
14649 h_csrValA_array: *mut *mut f64,
14650 nnzL: ::core::ffi::c_int,
14651 h_csrRowPtrL: *mut ::core::ffi::c_int,
14652 h_csrColIndL: *mut ::core::ffi::c_int,
14653 h_csrValL: *mut f64,
14654 nnzU: ::core::ffi::c_int,
14655 h_csrRowPtrU: *mut ::core::ffi::c_int,
14656 h_csrColIndU: *mut ::core::ffi::c_int,
14657 h_csrValU: *mut f64,
14658 h_P: *mut ::core::ffi::c_int,
14659 h_Q: *mut ::core::ffi::c_int,
14660 handle: cusolverRfHandle_t,
14661 ) -> cusolverStatus_t {
14662 (culib().cusolverRfBatchSetupHost)(
14663 batchSize,
14664 n,
14665 nnzA,
14666 h_csrRowPtrA,
14667 h_csrColIndA,
14668 h_csrValA_array,
14669 nnzL,
14670 h_csrRowPtrL,
14671 h_csrColIndL,
14672 h_csrValL,
14673 nnzU,
14674 h_csrRowPtrU,
14675 h_csrColIndU,
14676 h_csrValU,
14677 h_P,
14678 h_Q,
14679 handle,
14680 )
14681 }
14682 pub unsafe fn cusolverRfBatchSolve(
14683 handle: cusolverRfHandle_t,
14684 P: *mut ::core::ffi::c_int,
14685 Q: *mut ::core::ffi::c_int,
14686 nrhs: ::core::ffi::c_int,
14687 Temp: *mut f64,
14688 ldt: ::core::ffi::c_int,
14689 XF_array: *mut *mut f64,
14690 ldxf: ::core::ffi::c_int,
14691 ) -> cusolverStatus_t {
14692 (culib().cusolverRfBatchSolve)(handle, P, Q, nrhs, Temp, ldt, XF_array, ldxf)
14693 }
14694 pub unsafe fn cusolverRfBatchZeroPivot(
14695 handle: cusolverRfHandle_t,
14696 position: *mut ::core::ffi::c_int,
14697 ) -> cusolverStatus_t {
14698 (culib().cusolverRfBatchZeroPivot)(handle, position)
14699 }
14700 pub unsafe fn cusolverRfCreate(handle: *mut cusolverRfHandle_t) -> cusolverStatus_t {
14701 (culib().cusolverRfCreate)(handle)
14702 }
14703 pub unsafe fn cusolverRfDestroy(handle: cusolverRfHandle_t) -> cusolverStatus_t {
14704 (culib().cusolverRfDestroy)(handle)
14705 }
14706 pub unsafe fn cusolverRfExtractBundledFactorsHost(
14707 handle: cusolverRfHandle_t,
14708 h_nnzM: *mut ::core::ffi::c_int,
14709 h_Mp: *mut *mut ::core::ffi::c_int,
14710 h_Mi: *mut *mut ::core::ffi::c_int,
14711 h_Mx: *mut *mut f64,
14712 ) -> cusolverStatus_t {
14713 (culib().cusolverRfExtractBundledFactorsHost)(handle, h_nnzM, h_Mp, h_Mi, h_Mx)
14714 }
14715 pub unsafe fn cusolverRfExtractSplitFactorsHost(
14716 handle: cusolverRfHandle_t,
14717 h_nnzL: *mut ::core::ffi::c_int,
14718 h_csrRowPtrL: *mut *mut ::core::ffi::c_int,
14719 h_csrColIndL: *mut *mut ::core::ffi::c_int,
14720 h_csrValL: *mut *mut f64,
14721 h_nnzU: *mut ::core::ffi::c_int,
14722 h_csrRowPtrU: *mut *mut ::core::ffi::c_int,
14723 h_csrColIndU: *mut *mut ::core::ffi::c_int,
14724 h_csrValU: *mut *mut f64,
14725 ) -> cusolverStatus_t {
14726 (culib().cusolverRfExtractSplitFactorsHost)(
14727 handle,
14728 h_nnzL,
14729 h_csrRowPtrL,
14730 h_csrColIndL,
14731 h_csrValL,
14732 h_nnzU,
14733 h_csrRowPtrU,
14734 h_csrColIndU,
14735 h_csrValU,
14736 )
14737 }
14738 pub unsafe fn cusolverRfGetAlgs(
14739 handle: cusolverRfHandle_t,
14740 factAlg: *mut cusolverRfFactorization_t,
14741 solveAlg: *mut cusolverRfTriangularSolve_t,
14742 ) -> cusolverStatus_t {
14743 (culib().cusolverRfGetAlgs)(handle, factAlg, solveAlg)
14744 }
14745 pub unsafe fn cusolverRfGetMatrixFormat(
14746 handle: cusolverRfHandle_t,
14747 format: *mut cusolverRfMatrixFormat_t,
14748 diag: *mut cusolverRfUnitDiagonal_t,
14749 ) -> cusolverStatus_t {
14750 (culib().cusolverRfGetMatrixFormat)(handle, format, diag)
14751 }
14752 pub unsafe fn cusolverRfGetNumericBoostReport(
14753 handle: cusolverRfHandle_t,
14754 report: *mut cusolverRfNumericBoostReport_t,
14755 ) -> cusolverStatus_t {
14756 (culib().cusolverRfGetNumericBoostReport)(handle, report)
14757 }
14758 pub unsafe fn cusolverRfGetNumericProperties(
14759 handle: cusolverRfHandle_t,
14760 zero: *mut f64,
14761 boost: *mut f64,
14762 ) -> cusolverStatus_t {
14763 (culib().cusolverRfGetNumericProperties)(handle, zero, boost)
14764 }
14765 pub unsafe fn cusolverRfGetResetValuesFastMode(
14766 handle: cusolverRfHandle_t,
14767 fastMode: *mut cusolverRfResetValuesFastMode_t,
14768 ) -> cusolverStatus_t {
14769 (culib().cusolverRfGetResetValuesFastMode)(handle, fastMode)
14770 }
14771 pub unsafe fn cusolverRfRefactor(handle: cusolverRfHandle_t) -> cusolverStatus_t {
14772 (culib().cusolverRfRefactor)(handle)
14773 }
14774 pub unsafe fn cusolverRfResetValues(
14775 n: ::core::ffi::c_int,
14776 nnzA: ::core::ffi::c_int,
14777 csrRowPtrA: *mut ::core::ffi::c_int,
14778 csrColIndA: *mut ::core::ffi::c_int,
14779 csrValA: *mut f64,
14780 P: *mut ::core::ffi::c_int,
14781 Q: *mut ::core::ffi::c_int,
14782 handle: cusolverRfHandle_t,
14783 ) -> cusolverStatus_t {
14784 (culib().cusolverRfResetValues)(n, nnzA, csrRowPtrA, csrColIndA, csrValA, P, Q, handle)
14785 }
14786 pub unsafe fn cusolverRfSetAlgs(
14787 handle: cusolverRfHandle_t,
14788 factAlg: cusolverRfFactorization_t,
14789 solveAlg: cusolverRfTriangularSolve_t,
14790 ) -> cusolverStatus_t {
14791 (culib().cusolverRfSetAlgs)(handle, factAlg, solveAlg)
14792 }
14793 pub unsafe fn cusolverRfSetMatrixFormat(
14794 handle: cusolverRfHandle_t,
14795 format: cusolverRfMatrixFormat_t,
14796 diag: cusolverRfUnitDiagonal_t,
14797 ) -> cusolverStatus_t {
14798 (culib().cusolverRfSetMatrixFormat)(handle, format, diag)
14799 }
14800 pub unsafe fn cusolverRfSetNumericProperties(
14801 handle: cusolverRfHandle_t,
14802 zero: f64,
14803 boost: f64,
14804 ) -> cusolverStatus_t {
14805 (culib().cusolverRfSetNumericProperties)(handle, zero, boost)
14806 }
14807 pub unsafe fn cusolverRfSetResetValuesFastMode(
14808 handle: cusolverRfHandle_t,
14809 fastMode: cusolverRfResetValuesFastMode_t,
14810 ) -> cusolverStatus_t {
14811 (culib().cusolverRfSetResetValuesFastMode)(handle, fastMode)
14812 }
14813 pub unsafe fn cusolverRfSetupDevice(
14814 n: ::core::ffi::c_int,
14815 nnzA: ::core::ffi::c_int,
14816 csrRowPtrA: *mut ::core::ffi::c_int,
14817 csrColIndA: *mut ::core::ffi::c_int,
14818 csrValA: *mut f64,
14819 nnzL: ::core::ffi::c_int,
14820 csrRowPtrL: *mut ::core::ffi::c_int,
14821 csrColIndL: *mut ::core::ffi::c_int,
14822 csrValL: *mut f64,
14823 nnzU: ::core::ffi::c_int,
14824 csrRowPtrU: *mut ::core::ffi::c_int,
14825 csrColIndU: *mut ::core::ffi::c_int,
14826 csrValU: *mut f64,
14827 P: *mut ::core::ffi::c_int,
14828 Q: *mut ::core::ffi::c_int,
14829 handle: cusolverRfHandle_t,
14830 ) -> cusolverStatus_t {
14831 (culib().cusolverRfSetupDevice)(
14832 n, nnzA, csrRowPtrA, csrColIndA, csrValA, nnzL, csrRowPtrL, csrColIndL, csrValL, nnzU,
14833 csrRowPtrU, csrColIndU, csrValU, P, Q, handle,
14834 )
14835 }
14836 pub unsafe fn cusolverRfSetupHost(
14837 n: ::core::ffi::c_int,
14838 nnzA: ::core::ffi::c_int,
14839 h_csrRowPtrA: *mut ::core::ffi::c_int,
14840 h_csrColIndA: *mut ::core::ffi::c_int,
14841 h_csrValA: *mut f64,
14842 nnzL: ::core::ffi::c_int,
14843 h_csrRowPtrL: *mut ::core::ffi::c_int,
14844 h_csrColIndL: *mut ::core::ffi::c_int,
14845 h_csrValL: *mut f64,
14846 nnzU: ::core::ffi::c_int,
14847 h_csrRowPtrU: *mut ::core::ffi::c_int,
14848 h_csrColIndU: *mut ::core::ffi::c_int,
14849 h_csrValU: *mut f64,
14850 h_P: *mut ::core::ffi::c_int,
14851 h_Q: *mut ::core::ffi::c_int,
14852 handle: cusolverRfHandle_t,
14853 ) -> cusolverStatus_t {
14854 (culib().cusolverRfSetupHost)(
14855 n,
14856 nnzA,
14857 h_csrRowPtrA,
14858 h_csrColIndA,
14859 h_csrValA,
14860 nnzL,
14861 h_csrRowPtrL,
14862 h_csrColIndL,
14863 h_csrValL,
14864 nnzU,
14865 h_csrRowPtrU,
14866 h_csrColIndU,
14867 h_csrValU,
14868 h_P,
14869 h_Q,
14870 handle,
14871 )
14872 }
14873 pub unsafe fn cusolverRfSolve(
14874 handle: cusolverRfHandle_t,
14875 P: *mut ::core::ffi::c_int,
14876 Q: *mut ::core::ffi::c_int,
14877 nrhs: ::core::ffi::c_int,
14878 Temp: *mut f64,
14879 ldt: ::core::ffi::c_int,
14880 XF: *mut f64,
14881 ldxf: ::core::ffi::c_int,
14882 ) -> cusolverStatus_t {
14883 (culib().cusolverRfSolve)(handle, P, Q, nrhs, Temp, ldt, XF, ldxf)
14884 }
14885 pub unsafe fn cusolverSpCcsreigsHost(
14886 handle: cusolverSpHandle_t,
14887 m: ::core::ffi::c_int,
14888 nnz: ::core::ffi::c_int,
14889 descrA: cusparseMatDescr_t,
14890 csrValA: *const cuComplex,
14891 csrRowPtrA: *const ::core::ffi::c_int,
14892 csrColIndA: *const ::core::ffi::c_int,
14893 left_bottom_corner: cuComplex,
14894 right_upper_corner: cuComplex,
14895 num_eigs: *mut ::core::ffi::c_int,
14896 ) -> cusolverStatus_t {
14897 (culib().cusolverSpCcsreigsHost)(
14898 handle,
14899 m,
14900 nnz,
14901 descrA,
14902 csrValA,
14903 csrRowPtrA,
14904 csrColIndA,
14905 left_bottom_corner,
14906 right_upper_corner,
14907 num_eigs,
14908 )
14909 }
14910 pub unsafe fn cusolverSpCcsreigvsi(
14911 handle: cusolverSpHandle_t,
14912 m: ::core::ffi::c_int,
14913 nnz: ::core::ffi::c_int,
14914 descrA: cusparseMatDescr_t,
14915 csrValA: *const cuComplex,
14916 csrRowPtrA: *const ::core::ffi::c_int,
14917 csrColIndA: *const ::core::ffi::c_int,
14918 mu0: cuComplex,
14919 x0: *const cuComplex,
14920 maxite: ::core::ffi::c_int,
14921 eps: f32,
14922 mu: *mut cuComplex,
14923 x: *mut cuComplex,
14924 ) -> cusolverStatus_t {
14925 (culib().cusolverSpCcsreigvsi)(
14926 handle, m, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, mu0, x0, maxite, eps, mu, x,
14927 )
14928 }
14929 pub unsafe fn cusolverSpCcsreigvsiHost(
14930 handle: cusolverSpHandle_t,
14931 m: ::core::ffi::c_int,
14932 nnz: ::core::ffi::c_int,
14933 descrA: cusparseMatDescr_t,
14934 csrValA: *const cuComplex,
14935 csrRowPtrA: *const ::core::ffi::c_int,
14936 csrColIndA: *const ::core::ffi::c_int,
14937 mu0: cuComplex,
14938 x0: *const cuComplex,
14939 maxite: ::core::ffi::c_int,
14940 tol: f32,
14941 mu: *mut cuComplex,
14942 x: *mut cuComplex,
14943 ) -> cusolverStatus_t {
14944 (culib().cusolverSpCcsreigvsiHost)(
14945 handle, m, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, mu0, x0, maxite, tol, mu, x,
14946 )
14947 }
14948 pub unsafe fn cusolverSpCcsrlsqvqrHost(
14949 handle: cusolverSpHandle_t,
14950 m: ::core::ffi::c_int,
14951 n: ::core::ffi::c_int,
14952 nnz: ::core::ffi::c_int,
14953 descrA: cusparseMatDescr_t,
14954 csrValA: *const cuComplex,
14955 csrRowPtrA: *const ::core::ffi::c_int,
14956 csrColIndA: *const ::core::ffi::c_int,
14957 b: *const cuComplex,
14958 tol: f32,
14959 rankA: *mut ::core::ffi::c_int,
14960 x: *mut cuComplex,
14961 p: *mut ::core::ffi::c_int,
14962 min_norm: *mut f32,
14963 ) -> cusolverStatus_t {
14964 (culib().cusolverSpCcsrlsqvqrHost)(
14965 handle, m, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, b, tol, rankA, x, p,
14966 min_norm,
14967 )
14968 }
14969 pub unsafe fn cusolverSpCcsrlsvchol(
14970 handle: cusolverSpHandle_t,
14971 m: ::core::ffi::c_int,
14972 nnz: ::core::ffi::c_int,
14973 descrA: cusparseMatDescr_t,
14974 csrVal: *const cuComplex,
14975 csrRowPtr: *const ::core::ffi::c_int,
14976 csrColInd: *const ::core::ffi::c_int,
14977 b: *const cuComplex,
14978 tol: f32,
14979 reorder: ::core::ffi::c_int,
14980 x: *mut cuComplex,
14981 singularity: *mut ::core::ffi::c_int,
14982 ) -> cusolverStatus_t {
14983 (culib().cusolverSpCcsrlsvchol)(
14984 handle,
14985 m,
14986 nnz,
14987 descrA,
14988 csrVal,
14989 csrRowPtr,
14990 csrColInd,
14991 b,
14992 tol,
14993 reorder,
14994 x,
14995 singularity,
14996 )
14997 }
14998 pub unsafe fn cusolverSpCcsrlsvcholHost(
14999 handle: cusolverSpHandle_t,
15000 m: ::core::ffi::c_int,
15001 nnz: ::core::ffi::c_int,
15002 descrA: cusparseMatDescr_t,
15003 csrVal: *const cuComplex,
15004 csrRowPtr: *const ::core::ffi::c_int,
15005 csrColInd: *const ::core::ffi::c_int,
15006 b: *const cuComplex,
15007 tol: f32,
15008 reorder: ::core::ffi::c_int,
15009 x: *mut cuComplex,
15010 singularity: *mut ::core::ffi::c_int,
15011 ) -> cusolverStatus_t {
15012 (culib().cusolverSpCcsrlsvcholHost)(
15013 handle,
15014 m,
15015 nnz,
15016 descrA,
15017 csrVal,
15018 csrRowPtr,
15019 csrColInd,
15020 b,
15021 tol,
15022 reorder,
15023 x,
15024 singularity,
15025 )
15026 }
15027 pub unsafe fn cusolverSpCcsrlsvluHost(
15028 handle: cusolverSpHandle_t,
15029 n: ::core::ffi::c_int,
15030 nnzA: ::core::ffi::c_int,
15031 descrA: cusparseMatDescr_t,
15032 csrValA: *const cuComplex,
15033 csrRowPtrA: *const ::core::ffi::c_int,
15034 csrColIndA: *const ::core::ffi::c_int,
15035 b: *const cuComplex,
15036 tol: f32,
15037 reorder: ::core::ffi::c_int,
15038 x: *mut cuComplex,
15039 singularity: *mut ::core::ffi::c_int,
15040 ) -> cusolverStatus_t {
15041 (culib().cusolverSpCcsrlsvluHost)(
15042 handle,
15043 n,
15044 nnzA,
15045 descrA,
15046 csrValA,
15047 csrRowPtrA,
15048 csrColIndA,
15049 b,
15050 tol,
15051 reorder,
15052 x,
15053 singularity,
15054 )
15055 }
15056 pub unsafe fn cusolverSpCcsrlsvqr(
15057 handle: cusolverSpHandle_t,
15058 m: ::core::ffi::c_int,
15059 nnz: ::core::ffi::c_int,
15060 descrA: cusparseMatDescr_t,
15061 csrVal: *const cuComplex,
15062 csrRowPtr: *const ::core::ffi::c_int,
15063 csrColInd: *const ::core::ffi::c_int,
15064 b: *const cuComplex,
15065 tol: f32,
15066 reorder: ::core::ffi::c_int,
15067 x: *mut cuComplex,
15068 singularity: *mut ::core::ffi::c_int,
15069 ) -> cusolverStatus_t {
15070 (culib().cusolverSpCcsrlsvqr)(
15071 handle,
15072 m,
15073 nnz,
15074 descrA,
15075 csrVal,
15076 csrRowPtr,
15077 csrColInd,
15078 b,
15079 tol,
15080 reorder,
15081 x,
15082 singularity,
15083 )
15084 }
15085 pub unsafe fn cusolverSpCcsrlsvqrHost(
15086 handle: cusolverSpHandle_t,
15087 m: ::core::ffi::c_int,
15088 nnz: ::core::ffi::c_int,
15089 descrA: cusparseMatDescr_t,
15090 csrValA: *const cuComplex,
15091 csrRowPtrA: *const ::core::ffi::c_int,
15092 csrColIndA: *const ::core::ffi::c_int,
15093 b: *const cuComplex,
15094 tol: f32,
15095 reorder: ::core::ffi::c_int,
15096 x: *mut cuComplex,
15097 singularity: *mut ::core::ffi::c_int,
15098 ) -> cusolverStatus_t {
15099 (culib().cusolverSpCcsrlsvqrHost)(
15100 handle,
15101 m,
15102 nnz,
15103 descrA,
15104 csrValA,
15105 csrRowPtrA,
15106 csrColIndA,
15107 b,
15108 tol,
15109 reorder,
15110 x,
15111 singularity,
15112 )
15113 }
15114 pub unsafe fn cusolverSpCcsrqrBufferInfoBatched(
15115 handle: cusolverSpHandle_t,
15116 m: ::core::ffi::c_int,
15117 n: ::core::ffi::c_int,
15118 nnz: ::core::ffi::c_int,
15119 descrA: cusparseMatDescr_t,
15120 csrVal: *const cuComplex,
15121 csrRowPtr: *const ::core::ffi::c_int,
15122 csrColInd: *const ::core::ffi::c_int,
15123 batchSize: ::core::ffi::c_int,
15124 info: csrqrInfo_t,
15125 internalDataInBytes: *mut usize,
15126 workspaceInBytes: *mut usize,
15127 ) -> cusolverStatus_t {
15128 (culib().cusolverSpCcsrqrBufferInfoBatched)(
15129 handle,
15130 m,
15131 n,
15132 nnz,
15133 descrA,
15134 csrVal,
15135 csrRowPtr,
15136 csrColInd,
15137 batchSize,
15138 info,
15139 internalDataInBytes,
15140 workspaceInBytes,
15141 )
15142 }
15143 pub unsafe fn cusolverSpCcsrqrsvBatched(
15144 handle: cusolverSpHandle_t,
15145 m: ::core::ffi::c_int,
15146 n: ::core::ffi::c_int,
15147 nnz: ::core::ffi::c_int,
15148 descrA: cusparseMatDescr_t,
15149 csrValA: *const cuComplex,
15150 csrRowPtrA: *const ::core::ffi::c_int,
15151 csrColIndA: *const ::core::ffi::c_int,
15152 b: *const cuComplex,
15153 x: *mut cuComplex,
15154 batchSize: ::core::ffi::c_int,
15155 info: csrqrInfo_t,
15156 pBuffer: *mut ::core::ffi::c_void,
15157 ) -> cusolverStatus_t {
15158 (culib().cusolverSpCcsrqrsvBatched)(
15159 handle, m, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, b, x, batchSize, info,
15160 pBuffer,
15161 )
15162 }
15163 pub unsafe fn cusolverSpCcsrzfdHost(
15164 handle: cusolverSpHandle_t,
15165 n: ::core::ffi::c_int,
15166 nnz: ::core::ffi::c_int,
15167 descrA: cusparseMatDescr_t,
15168 csrValA: *const cuComplex,
15169 csrRowPtrA: *const ::core::ffi::c_int,
15170 csrColIndA: *const ::core::ffi::c_int,
15171 P: *mut ::core::ffi::c_int,
15172 numnz: *mut ::core::ffi::c_int,
15173 ) -> cusolverStatus_t {
15174 (culib().cusolverSpCcsrzfdHost)(
15175 handle, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, P, numnz,
15176 )
15177 }
15178 pub unsafe fn cusolverSpCreate(handle: *mut cusolverSpHandle_t) -> cusolverStatus_t {
15179 (culib().cusolverSpCreate)(handle)
15180 }
15181 pub unsafe fn cusolverSpCreateCsrqrInfo(info: *mut csrqrInfo_t) -> cusolverStatus_t {
15182 (culib().cusolverSpCreateCsrqrInfo)(info)
15183 }
15184 pub unsafe fn cusolverSpDcsreigsHost(
15185 handle: cusolverSpHandle_t,
15186 m: ::core::ffi::c_int,
15187 nnz: ::core::ffi::c_int,
15188 descrA: cusparseMatDescr_t,
15189 csrValA: *const f64,
15190 csrRowPtrA: *const ::core::ffi::c_int,
15191 csrColIndA: *const ::core::ffi::c_int,
15192 left_bottom_corner: cuDoubleComplex,
15193 right_upper_corner: cuDoubleComplex,
15194 num_eigs: *mut ::core::ffi::c_int,
15195 ) -> cusolverStatus_t {
15196 (culib().cusolverSpDcsreigsHost)(
15197 handle,
15198 m,
15199 nnz,
15200 descrA,
15201 csrValA,
15202 csrRowPtrA,
15203 csrColIndA,
15204 left_bottom_corner,
15205 right_upper_corner,
15206 num_eigs,
15207 )
15208 }
15209 pub unsafe fn cusolverSpDcsreigvsi(
15210 handle: cusolverSpHandle_t,
15211 m: ::core::ffi::c_int,
15212 nnz: ::core::ffi::c_int,
15213 descrA: cusparseMatDescr_t,
15214 csrValA: *const f64,
15215 csrRowPtrA: *const ::core::ffi::c_int,
15216 csrColIndA: *const ::core::ffi::c_int,
15217 mu0: f64,
15218 x0: *const f64,
15219 maxite: ::core::ffi::c_int,
15220 eps: f64,
15221 mu: *mut f64,
15222 x: *mut f64,
15223 ) -> cusolverStatus_t {
15224 (culib().cusolverSpDcsreigvsi)(
15225 handle, m, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, mu0, x0, maxite, eps, mu, x,
15226 )
15227 }
15228 pub unsafe fn cusolverSpDcsreigvsiHost(
15229 handle: cusolverSpHandle_t,
15230 m: ::core::ffi::c_int,
15231 nnz: ::core::ffi::c_int,
15232 descrA: cusparseMatDescr_t,
15233 csrValA: *const f64,
15234 csrRowPtrA: *const ::core::ffi::c_int,
15235 csrColIndA: *const ::core::ffi::c_int,
15236 mu0: f64,
15237 x0: *const f64,
15238 maxite: ::core::ffi::c_int,
15239 tol: f64,
15240 mu: *mut f64,
15241 x: *mut f64,
15242 ) -> cusolverStatus_t {
15243 (culib().cusolverSpDcsreigvsiHost)(
15244 handle, m, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, mu0, x0, maxite, tol, mu, x,
15245 )
15246 }
15247 pub unsafe fn cusolverSpDcsrlsqvqrHost(
15248 handle: cusolverSpHandle_t,
15249 m: ::core::ffi::c_int,
15250 n: ::core::ffi::c_int,
15251 nnz: ::core::ffi::c_int,
15252 descrA: cusparseMatDescr_t,
15253 csrValA: *const f64,
15254 csrRowPtrA: *const ::core::ffi::c_int,
15255 csrColIndA: *const ::core::ffi::c_int,
15256 b: *const f64,
15257 tol: f64,
15258 rankA: *mut ::core::ffi::c_int,
15259 x: *mut f64,
15260 p: *mut ::core::ffi::c_int,
15261 min_norm: *mut f64,
15262 ) -> cusolverStatus_t {
15263 (culib().cusolverSpDcsrlsqvqrHost)(
15264 handle, m, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, b, tol, rankA, x, p,
15265 min_norm,
15266 )
15267 }
15268 pub unsafe fn cusolverSpDcsrlsvchol(
15269 handle: cusolverSpHandle_t,
15270 m: ::core::ffi::c_int,
15271 nnz: ::core::ffi::c_int,
15272 descrA: cusparseMatDescr_t,
15273 csrVal: *const f64,
15274 csrRowPtr: *const ::core::ffi::c_int,
15275 csrColInd: *const ::core::ffi::c_int,
15276 b: *const f64,
15277 tol: f64,
15278 reorder: ::core::ffi::c_int,
15279 x: *mut f64,
15280 singularity: *mut ::core::ffi::c_int,
15281 ) -> cusolverStatus_t {
15282 (culib().cusolverSpDcsrlsvchol)(
15283 handle,
15284 m,
15285 nnz,
15286 descrA,
15287 csrVal,
15288 csrRowPtr,
15289 csrColInd,
15290 b,
15291 tol,
15292 reorder,
15293 x,
15294 singularity,
15295 )
15296 }
15297 pub unsafe fn cusolverSpDcsrlsvcholHost(
15298 handle: cusolverSpHandle_t,
15299 m: ::core::ffi::c_int,
15300 nnz: ::core::ffi::c_int,
15301 descrA: cusparseMatDescr_t,
15302 csrVal: *const f64,
15303 csrRowPtr: *const ::core::ffi::c_int,
15304 csrColInd: *const ::core::ffi::c_int,
15305 b: *const f64,
15306 tol: f64,
15307 reorder: ::core::ffi::c_int,
15308 x: *mut f64,
15309 singularity: *mut ::core::ffi::c_int,
15310 ) -> cusolverStatus_t {
15311 (culib().cusolverSpDcsrlsvcholHost)(
15312 handle,
15313 m,
15314 nnz,
15315 descrA,
15316 csrVal,
15317 csrRowPtr,
15318 csrColInd,
15319 b,
15320 tol,
15321 reorder,
15322 x,
15323 singularity,
15324 )
15325 }
15326 pub unsafe fn cusolverSpDcsrlsvluHost(
15327 handle: cusolverSpHandle_t,
15328 n: ::core::ffi::c_int,
15329 nnzA: ::core::ffi::c_int,
15330 descrA: cusparseMatDescr_t,
15331 csrValA: *const f64,
15332 csrRowPtrA: *const ::core::ffi::c_int,
15333 csrColIndA: *const ::core::ffi::c_int,
15334 b: *const f64,
15335 tol: f64,
15336 reorder: ::core::ffi::c_int,
15337 x: *mut f64,
15338 singularity: *mut ::core::ffi::c_int,
15339 ) -> cusolverStatus_t {
15340 (culib().cusolverSpDcsrlsvluHost)(
15341 handle,
15342 n,
15343 nnzA,
15344 descrA,
15345 csrValA,
15346 csrRowPtrA,
15347 csrColIndA,
15348 b,
15349 tol,
15350 reorder,
15351 x,
15352 singularity,
15353 )
15354 }
15355 pub unsafe fn cusolverSpDcsrlsvqr(
15356 handle: cusolverSpHandle_t,
15357 m: ::core::ffi::c_int,
15358 nnz: ::core::ffi::c_int,
15359 descrA: cusparseMatDescr_t,
15360 csrVal: *const f64,
15361 csrRowPtr: *const ::core::ffi::c_int,
15362 csrColInd: *const ::core::ffi::c_int,
15363 b: *const f64,
15364 tol: f64,
15365 reorder: ::core::ffi::c_int,
15366 x: *mut f64,
15367 singularity: *mut ::core::ffi::c_int,
15368 ) -> cusolverStatus_t {
15369 (culib().cusolverSpDcsrlsvqr)(
15370 handle,
15371 m,
15372 nnz,
15373 descrA,
15374 csrVal,
15375 csrRowPtr,
15376 csrColInd,
15377 b,
15378 tol,
15379 reorder,
15380 x,
15381 singularity,
15382 )
15383 }
15384 pub unsafe fn cusolverSpDcsrlsvqrHost(
15385 handle: cusolverSpHandle_t,
15386 m: ::core::ffi::c_int,
15387 nnz: ::core::ffi::c_int,
15388 descrA: cusparseMatDescr_t,
15389 csrValA: *const f64,
15390 csrRowPtrA: *const ::core::ffi::c_int,
15391 csrColIndA: *const ::core::ffi::c_int,
15392 b: *const f64,
15393 tol: f64,
15394 reorder: ::core::ffi::c_int,
15395 x: *mut f64,
15396 singularity: *mut ::core::ffi::c_int,
15397 ) -> cusolverStatus_t {
15398 (culib().cusolverSpDcsrlsvqrHost)(
15399 handle,
15400 m,
15401 nnz,
15402 descrA,
15403 csrValA,
15404 csrRowPtrA,
15405 csrColIndA,
15406 b,
15407 tol,
15408 reorder,
15409 x,
15410 singularity,
15411 )
15412 }
15413 pub unsafe fn cusolverSpDcsrqrBufferInfoBatched(
15414 handle: cusolverSpHandle_t,
15415 m: ::core::ffi::c_int,
15416 n: ::core::ffi::c_int,
15417 nnz: ::core::ffi::c_int,
15418 descrA: cusparseMatDescr_t,
15419 csrVal: *const f64,
15420 csrRowPtr: *const ::core::ffi::c_int,
15421 csrColInd: *const ::core::ffi::c_int,
15422 batchSize: ::core::ffi::c_int,
15423 info: csrqrInfo_t,
15424 internalDataInBytes: *mut usize,
15425 workspaceInBytes: *mut usize,
15426 ) -> cusolverStatus_t {
15427 (culib().cusolverSpDcsrqrBufferInfoBatched)(
15428 handle,
15429 m,
15430 n,
15431 nnz,
15432 descrA,
15433 csrVal,
15434 csrRowPtr,
15435 csrColInd,
15436 batchSize,
15437 info,
15438 internalDataInBytes,
15439 workspaceInBytes,
15440 )
15441 }
15442 pub unsafe fn cusolverSpDcsrqrsvBatched(
15443 handle: cusolverSpHandle_t,
15444 m: ::core::ffi::c_int,
15445 n: ::core::ffi::c_int,
15446 nnz: ::core::ffi::c_int,
15447 descrA: cusparseMatDescr_t,
15448 csrValA: *const f64,
15449 csrRowPtrA: *const ::core::ffi::c_int,
15450 csrColIndA: *const ::core::ffi::c_int,
15451 b: *const f64,
15452 x: *mut f64,
15453 batchSize: ::core::ffi::c_int,
15454 info: csrqrInfo_t,
15455 pBuffer: *mut ::core::ffi::c_void,
15456 ) -> cusolverStatus_t {
15457 (culib().cusolverSpDcsrqrsvBatched)(
15458 handle, m, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, b, x, batchSize, info,
15459 pBuffer,
15460 )
15461 }
15462 pub unsafe fn cusolverSpDcsrzfdHost(
15463 handle: cusolverSpHandle_t,
15464 n: ::core::ffi::c_int,
15465 nnz: ::core::ffi::c_int,
15466 descrA: cusparseMatDescr_t,
15467 csrValA: *const f64,
15468 csrRowPtrA: *const ::core::ffi::c_int,
15469 csrColIndA: *const ::core::ffi::c_int,
15470 P: *mut ::core::ffi::c_int,
15471 numnz: *mut ::core::ffi::c_int,
15472 ) -> cusolverStatus_t {
15473 (culib().cusolverSpDcsrzfdHost)(
15474 handle, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, P, numnz,
15475 )
15476 }
15477 pub unsafe fn cusolverSpDestroy(handle: cusolverSpHandle_t) -> cusolverStatus_t {
15478 (culib().cusolverSpDestroy)(handle)
15479 }
15480 pub unsafe fn cusolverSpDestroyCsrqrInfo(info: csrqrInfo_t) -> cusolverStatus_t {
15481 (culib().cusolverSpDestroyCsrqrInfo)(info)
15482 }
15483 pub unsafe fn cusolverSpGetStream(
15484 handle: cusolverSpHandle_t,
15485 streamId: *mut cudaStream_t,
15486 ) -> cusolverStatus_t {
15487 (culib().cusolverSpGetStream)(handle, streamId)
15488 }
15489 pub unsafe fn cusolverSpScsreigsHost(
15490 handle: cusolverSpHandle_t,
15491 m: ::core::ffi::c_int,
15492 nnz: ::core::ffi::c_int,
15493 descrA: cusparseMatDescr_t,
15494 csrValA: *const f32,
15495 csrRowPtrA: *const ::core::ffi::c_int,
15496 csrColIndA: *const ::core::ffi::c_int,
15497 left_bottom_corner: cuComplex,
15498 right_upper_corner: cuComplex,
15499 num_eigs: *mut ::core::ffi::c_int,
15500 ) -> cusolverStatus_t {
15501 (culib().cusolverSpScsreigsHost)(
15502 handle,
15503 m,
15504 nnz,
15505 descrA,
15506 csrValA,
15507 csrRowPtrA,
15508 csrColIndA,
15509 left_bottom_corner,
15510 right_upper_corner,
15511 num_eigs,
15512 )
15513 }
15514 pub unsafe fn cusolverSpScsreigvsi(
15515 handle: cusolverSpHandle_t,
15516 m: ::core::ffi::c_int,
15517 nnz: ::core::ffi::c_int,
15518 descrA: cusparseMatDescr_t,
15519 csrValA: *const f32,
15520 csrRowPtrA: *const ::core::ffi::c_int,
15521 csrColIndA: *const ::core::ffi::c_int,
15522 mu0: f32,
15523 x0: *const f32,
15524 maxite: ::core::ffi::c_int,
15525 eps: f32,
15526 mu: *mut f32,
15527 x: *mut f32,
15528 ) -> cusolverStatus_t {
15529 (culib().cusolverSpScsreigvsi)(
15530 handle, m, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, mu0, x0, maxite, eps, mu, x,
15531 )
15532 }
15533 pub unsafe fn cusolverSpScsreigvsiHost(
15534 handle: cusolverSpHandle_t,
15535 m: ::core::ffi::c_int,
15536 nnz: ::core::ffi::c_int,
15537 descrA: cusparseMatDescr_t,
15538 csrValA: *const f32,
15539 csrRowPtrA: *const ::core::ffi::c_int,
15540 csrColIndA: *const ::core::ffi::c_int,
15541 mu0: f32,
15542 x0: *const f32,
15543 maxite: ::core::ffi::c_int,
15544 tol: f32,
15545 mu: *mut f32,
15546 x: *mut f32,
15547 ) -> cusolverStatus_t {
15548 (culib().cusolverSpScsreigvsiHost)(
15549 handle, m, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, mu0, x0, maxite, tol, mu, x,
15550 )
15551 }
15552 pub unsafe fn cusolverSpScsrlsqvqrHost(
15553 handle: cusolverSpHandle_t,
15554 m: ::core::ffi::c_int,
15555 n: ::core::ffi::c_int,
15556 nnz: ::core::ffi::c_int,
15557 descrA: cusparseMatDescr_t,
15558 csrValA: *const f32,
15559 csrRowPtrA: *const ::core::ffi::c_int,
15560 csrColIndA: *const ::core::ffi::c_int,
15561 b: *const f32,
15562 tol: f32,
15563 rankA: *mut ::core::ffi::c_int,
15564 x: *mut f32,
15565 p: *mut ::core::ffi::c_int,
15566 min_norm: *mut f32,
15567 ) -> cusolverStatus_t {
15568 (culib().cusolverSpScsrlsqvqrHost)(
15569 handle, m, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, b, tol, rankA, x, p,
15570 min_norm,
15571 )
15572 }
15573 pub unsafe fn cusolverSpScsrlsvchol(
15574 handle: cusolverSpHandle_t,
15575 m: ::core::ffi::c_int,
15576 nnz: ::core::ffi::c_int,
15577 descrA: cusparseMatDescr_t,
15578 csrVal: *const f32,
15579 csrRowPtr: *const ::core::ffi::c_int,
15580 csrColInd: *const ::core::ffi::c_int,
15581 b: *const f32,
15582 tol: f32,
15583 reorder: ::core::ffi::c_int,
15584 x: *mut f32,
15585 singularity: *mut ::core::ffi::c_int,
15586 ) -> cusolverStatus_t {
15587 (culib().cusolverSpScsrlsvchol)(
15588 handle,
15589 m,
15590 nnz,
15591 descrA,
15592 csrVal,
15593 csrRowPtr,
15594 csrColInd,
15595 b,
15596 tol,
15597 reorder,
15598 x,
15599 singularity,
15600 )
15601 }
15602 pub unsafe fn cusolverSpScsrlsvcholHost(
15603 handle: cusolverSpHandle_t,
15604 m: ::core::ffi::c_int,
15605 nnz: ::core::ffi::c_int,
15606 descrA: cusparseMatDescr_t,
15607 csrVal: *const f32,
15608 csrRowPtr: *const ::core::ffi::c_int,
15609 csrColInd: *const ::core::ffi::c_int,
15610 b: *const f32,
15611 tol: f32,
15612 reorder: ::core::ffi::c_int,
15613 x: *mut f32,
15614 singularity: *mut ::core::ffi::c_int,
15615 ) -> cusolverStatus_t {
15616 (culib().cusolverSpScsrlsvcholHost)(
15617 handle,
15618 m,
15619 nnz,
15620 descrA,
15621 csrVal,
15622 csrRowPtr,
15623 csrColInd,
15624 b,
15625 tol,
15626 reorder,
15627 x,
15628 singularity,
15629 )
15630 }
15631 pub unsafe fn cusolverSpScsrlsvluHost(
15632 handle: cusolverSpHandle_t,
15633 n: ::core::ffi::c_int,
15634 nnzA: ::core::ffi::c_int,
15635 descrA: cusparseMatDescr_t,
15636 csrValA: *const f32,
15637 csrRowPtrA: *const ::core::ffi::c_int,
15638 csrColIndA: *const ::core::ffi::c_int,
15639 b: *const f32,
15640 tol: f32,
15641 reorder: ::core::ffi::c_int,
15642 x: *mut f32,
15643 singularity: *mut ::core::ffi::c_int,
15644 ) -> cusolverStatus_t {
15645 (culib().cusolverSpScsrlsvluHost)(
15646 handle,
15647 n,
15648 nnzA,
15649 descrA,
15650 csrValA,
15651 csrRowPtrA,
15652 csrColIndA,
15653 b,
15654 tol,
15655 reorder,
15656 x,
15657 singularity,
15658 )
15659 }
15660 pub unsafe fn cusolverSpScsrlsvqr(
15661 handle: cusolverSpHandle_t,
15662 m: ::core::ffi::c_int,
15663 nnz: ::core::ffi::c_int,
15664 descrA: cusparseMatDescr_t,
15665 csrVal: *const f32,
15666 csrRowPtr: *const ::core::ffi::c_int,
15667 csrColInd: *const ::core::ffi::c_int,
15668 b: *const f32,
15669 tol: f32,
15670 reorder: ::core::ffi::c_int,
15671 x: *mut f32,
15672 singularity: *mut ::core::ffi::c_int,
15673 ) -> cusolverStatus_t {
15674 (culib().cusolverSpScsrlsvqr)(
15675 handle,
15676 m,
15677 nnz,
15678 descrA,
15679 csrVal,
15680 csrRowPtr,
15681 csrColInd,
15682 b,
15683 tol,
15684 reorder,
15685 x,
15686 singularity,
15687 )
15688 }
15689 pub unsafe fn cusolverSpScsrlsvqrHost(
15690 handle: cusolverSpHandle_t,
15691 m: ::core::ffi::c_int,
15692 nnz: ::core::ffi::c_int,
15693 descrA: cusparseMatDescr_t,
15694 csrValA: *const f32,
15695 csrRowPtrA: *const ::core::ffi::c_int,
15696 csrColIndA: *const ::core::ffi::c_int,
15697 b: *const f32,
15698 tol: f32,
15699 reorder: ::core::ffi::c_int,
15700 x: *mut f32,
15701 singularity: *mut ::core::ffi::c_int,
15702 ) -> cusolverStatus_t {
15703 (culib().cusolverSpScsrlsvqrHost)(
15704 handle,
15705 m,
15706 nnz,
15707 descrA,
15708 csrValA,
15709 csrRowPtrA,
15710 csrColIndA,
15711 b,
15712 tol,
15713 reorder,
15714 x,
15715 singularity,
15716 )
15717 }
15718 pub unsafe fn cusolverSpScsrqrBufferInfoBatched(
15719 handle: cusolverSpHandle_t,
15720 m: ::core::ffi::c_int,
15721 n: ::core::ffi::c_int,
15722 nnz: ::core::ffi::c_int,
15723 descrA: cusparseMatDescr_t,
15724 csrVal: *const f32,
15725 csrRowPtr: *const ::core::ffi::c_int,
15726 csrColInd: *const ::core::ffi::c_int,
15727 batchSize: ::core::ffi::c_int,
15728 info: csrqrInfo_t,
15729 internalDataInBytes: *mut usize,
15730 workspaceInBytes: *mut usize,
15731 ) -> cusolverStatus_t {
15732 (culib().cusolverSpScsrqrBufferInfoBatched)(
15733 handle,
15734 m,
15735 n,
15736 nnz,
15737 descrA,
15738 csrVal,
15739 csrRowPtr,
15740 csrColInd,
15741 batchSize,
15742 info,
15743 internalDataInBytes,
15744 workspaceInBytes,
15745 )
15746 }
15747 pub unsafe fn cusolverSpScsrqrsvBatched(
15748 handle: cusolverSpHandle_t,
15749 m: ::core::ffi::c_int,
15750 n: ::core::ffi::c_int,
15751 nnz: ::core::ffi::c_int,
15752 descrA: cusparseMatDescr_t,
15753 csrValA: *const f32,
15754 csrRowPtrA: *const ::core::ffi::c_int,
15755 csrColIndA: *const ::core::ffi::c_int,
15756 b: *const f32,
15757 x: *mut f32,
15758 batchSize: ::core::ffi::c_int,
15759 info: csrqrInfo_t,
15760 pBuffer: *mut ::core::ffi::c_void,
15761 ) -> cusolverStatus_t {
15762 (culib().cusolverSpScsrqrsvBatched)(
15763 handle, m, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, b, x, batchSize, info,
15764 pBuffer,
15765 )
15766 }
15767 pub unsafe fn cusolverSpScsrzfdHost(
15768 handle: cusolverSpHandle_t,
15769 n: ::core::ffi::c_int,
15770 nnz: ::core::ffi::c_int,
15771 descrA: cusparseMatDescr_t,
15772 csrValA: *const f32,
15773 csrRowPtrA: *const ::core::ffi::c_int,
15774 csrColIndA: *const ::core::ffi::c_int,
15775 P: *mut ::core::ffi::c_int,
15776 numnz: *mut ::core::ffi::c_int,
15777 ) -> cusolverStatus_t {
15778 (culib().cusolverSpScsrzfdHost)(
15779 handle, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, P, numnz,
15780 )
15781 }
15782 pub unsafe fn cusolverSpSetStream(
15783 handle: cusolverSpHandle_t,
15784 streamId: cudaStream_t,
15785 ) -> cusolverStatus_t {
15786 (culib().cusolverSpSetStream)(handle, streamId)
15787 }
15788 pub unsafe fn cusolverSpXcsrissymHost(
15789 handle: cusolverSpHandle_t,
15790 m: ::core::ffi::c_int,
15791 nnzA: ::core::ffi::c_int,
15792 descrA: cusparseMatDescr_t,
15793 csrRowPtrA: *const ::core::ffi::c_int,
15794 csrEndPtrA: *const ::core::ffi::c_int,
15795 csrColIndA: *const ::core::ffi::c_int,
15796 issym: *mut ::core::ffi::c_int,
15797 ) -> cusolverStatus_t {
15798 (culib().cusolverSpXcsrissymHost)(
15799 handle, m, nnzA, descrA, csrRowPtrA, csrEndPtrA, csrColIndA, issym,
15800 )
15801 }
15802 pub unsafe fn cusolverSpXcsrmetisndHost(
15803 handle: cusolverSpHandle_t,
15804 n: ::core::ffi::c_int,
15805 nnzA: ::core::ffi::c_int,
15806 descrA: cusparseMatDescr_t,
15807 csrRowPtrA: *const ::core::ffi::c_int,
15808 csrColIndA: *const ::core::ffi::c_int,
15809 options: *const i64,
15810 p: *mut ::core::ffi::c_int,
15811 ) -> cusolverStatus_t {
15812 (culib().cusolverSpXcsrmetisndHost)(
15813 handle, n, nnzA, descrA, csrRowPtrA, csrColIndA, options, p,
15814 )
15815 }
15816 pub unsafe fn cusolverSpXcsrpermHost(
15817 handle: cusolverSpHandle_t,
15818 m: ::core::ffi::c_int,
15819 n: ::core::ffi::c_int,
15820 nnzA: ::core::ffi::c_int,
15821 descrA: cusparseMatDescr_t,
15822 csrRowPtrA: *mut ::core::ffi::c_int,
15823 csrColIndA: *mut ::core::ffi::c_int,
15824 p: *const ::core::ffi::c_int,
15825 q: *const ::core::ffi::c_int,
15826 map: *mut ::core::ffi::c_int,
15827 pBuffer: *mut ::core::ffi::c_void,
15828 ) -> cusolverStatus_t {
15829 (culib().cusolverSpXcsrpermHost)(
15830 handle, m, n, nnzA, descrA, csrRowPtrA, csrColIndA, p, q, map, pBuffer,
15831 )
15832 }
15833 pub unsafe fn cusolverSpXcsrperm_bufferSizeHost(
15834 handle: cusolverSpHandle_t,
15835 m: ::core::ffi::c_int,
15836 n: ::core::ffi::c_int,
15837 nnzA: ::core::ffi::c_int,
15838 descrA: cusparseMatDescr_t,
15839 csrRowPtrA: *const ::core::ffi::c_int,
15840 csrColIndA: *const ::core::ffi::c_int,
15841 p: *const ::core::ffi::c_int,
15842 q: *const ::core::ffi::c_int,
15843 bufferSizeInBytes: *mut usize,
15844 ) -> cusolverStatus_t {
15845 (culib().cusolverSpXcsrperm_bufferSizeHost)(
15846 handle,
15847 m,
15848 n,
15849 nnzA,
15850 descrA,
15851 csrRowPtrA,
15852 csrColIndA,
15853 p,
15854 q,
15855 bufferSizeInBytes,
15856 )
15857 }
15858 pub unsafe fn cusolverSpXcsrqrAnalysisBatched(
15859 handle: cusolverSpHandle_t,
15860 m: ::core::ffi::c_int,
15861 n: ::core::ffi::c_int,
15862 nnzA: ::core::ffi::c_int,
15863 descrA: cusparseMatDescr_t,
15864 csrRowPtrA: *const ::core::ffi::c_int,
15865 csrColIndA: *const ::core::ffi::c_int,
15866 info: csrqrInfo_t,
15867 ) -> cusolverStatus_t {
15868 (culib().cusolverSpXcsrqrAnalysisBatched)(
15869 handle, m, n, nnzA, descrA, csrRowPtrA, csrColIndA, info,
15870 )
15871 }
15872 pub unsafe fn cusolverSpXcsrsymamdHost(
15873 handle: cusolverSpHandle_t,
15874 n: ::core::ffi::c_int,
15875 nnzA: ::core::ffi::c_int,
15876 descrA: cusparseMatDescr_t,
15877 csrRowPtrA: *const ::core::ffi::c_int,
15878 csrColIndA: *const ::core::ffi::c_int,
15879 p: *mut ::core::ffi::c_int,
15880 ) -> cusolverStatus_t {
15881 (culib().cusolverSpXcsrsymamdHost)(handle, n, nnzA, descrA, csrRowPtrA, csrColIndA, p)
15882 }
15883 pub unsafe fn cusolverSpXcsrsymmdqHost(
15884 handle: cusolverSpHandle_t,
15885 n: ::core::ffi::c_int,
15886 nnzA: ::core::ffi::c_int,
15887 descrA: cusparseMatDescr_t,
15888 csrRowPtrA: *const ::core::ffi::c_int,
15889 csrColIndA: *const ::core::ffi::c_int,
15890 p: *mut ::core::ffi::c_int,
15891 ) -> cusolverStatus_t {
15892 (culib().cusolverSpXcsrsymmdqHost)(handle, n, nnzA, descrA, csrRowPtrA, csrColIndA, p)
15893 }
15894 pub unsafe fn cusolverSpXcsrsymrcmHost(
15895 handle: cusolverSpHandle_t,
15896 n: ::core::ffi::c_int,
15897 nnzA: ::core::ffi::c_int,
15898 descrA: cusparseMatDescr_t,
15899 csrRowPtrA: *const ::core::ffi::c_int,
15900 csrColIndA: *const ::core::ffi::c_int,
15901 p: *mut ::core::ffi::c_int,
15902 ) -> cusolverStatus_t {
15903 (culib().cusolverSpXcsrsymrcmHost)(handle, n, nnzA, descrA, csrRowPtrA, csrColIndA, p)
15904 }
15905 pub unsafe fn cusolverSpZcsreigsHost(
15906 handle: cusolverSpHandle_t,
15907 m: ::core::ffi::c_int,
15908 nnz: ::core::ffi::c_int,
15909 descrA: cusparseMatDescr_t,
15910 csrValA: *const cuDoubleComplex,
15911 csrRowPtrA: *const ::core::ffi::c_int,
15912 csrColIndA: *const ::core::ffi::c_int,
15913 left_bottom_corner: cuDoubleComplex,
15914 right_upper_corner: cuDoubleComplex,
15915 num_eigs: *mut ::core::ffi::c_int,
15916 ) -> cusolverStatus_t {
15917 (culib().cusolverSpZcsreigsHost)(
15918 handle,
15919 m,
15920 nnz,
15921 descrA,
15922 csrValA,
15923 csrRowPtrA,
15924 csrColIndA,
15925 left_bottom_corner,
15926 right_upper_corner,
15927 num_eigs,
15928 )
15929 }
15930 pub unsafe fn cusolverSpZcsreigvsi(
15931 handle: cusolverSpHandle_t,
15932 m: ::core::ffi::c_int,
15933 nnz: ::core::ffi::c_int,
15934 descrA: cusparseMatDescr_t,
15935 csrValA: *const cuDoubleComplex,
15936 csrRowPtrA: *const ::core::ffi::c_int,
15937 csrColIndA: *const ::core::ffi::c_int,
15938 mu0: cuDoubleComplex,
15939 x0: *const cuDoubleComplex,
15940 maxite: ::core::ffi::c_int,
15941 eps: f64,
15942 mu: *mut cuDoubleComplex,
15943 x: *mut cuDoubleComplex,
15944 ) -> cusolverStatus_t {
15945 (culib().cusolverSpZcsreigvsi)(
15946 handle, m, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, mu0, x0, maxite, eps, mu, x,
15947 )
15948 }
15949 pub unsafe fn cusolverSpZcsreigvsiHost(
15950 handle: cusolverSpHandle_t,
15951 m: ::core::ffi::c_int,
15952 nnz: ::core::ffi::c_int,
15953 descrA: cusparseMatDescr_t,
15954 csrValA: *const cuDoubleComplex,
15955 csrRowPtrA: *const ::core::ffi::c_int,
15956 csrColIndA: *const ::core::ffi::c_int,
15957 mu0: cuDoubleComplex,
15958 x0: *const cuDoubleComplex,
15959 maxite: ::core::ffi::c_int,
15960 tol: f64,
15961 mu: *mut cuDoubleComplex,
15962 x: *mut cuDoubleComplex,
15963 ) -> cusolverStatus_t {
15964 (culib().cusolverSpZcsreigvsiHost)(
15965 handle, m, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, mu0, x0, maxite, tol, mu, x,
15966 )
15967 }
15968 pub unsafe fn cusolverSpZcsrlsqvqrHost(
15969 handle: cusolverSpHandle_t,
15970 m: ::core::ffi::c_int,
15971 n: ::core::ffi::c_int,
15972 nnz: ::core::ffi::c_int,
15973 descrA: cusparseMatDescr_t,
15974 csrValA: *const cuDoubleComplex,
15975 csrRowPtrA: *const ::core::ffi::c_int,
15976 csrColIndA: *const ::core::ffi::c_int,
15977 b: *const cuDoubleComplex,
15978 tol: f64,
15979 rankA: *mut ::core::ffi::c_int,
15980 x: *mut cuDoubleComplex,
15981 p: *mut ::core::ffi::c_int,
15982 min_norm: *mut f64,
15983 ) -> cusolverStatus_t {
15984 (culib().cusolverSpZcsrlsqvqrHost)(
15985 handle, m, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, b, tol, rankA, x, p,
15986 min_norm,
15987 )
15988 }
15989 pub unsafe fn cusolverSpZcsrlsvchol(
15990 handle: cusolverSpHandle_t,
15991 m: ::core::ffi::c_int,
15992 nnz: ::core::ffi::c_int,
15993 descrA: cusparseMatDescr_t,
15994 csrVal: *const cuDoubleComplex,
15995 csrRowPtr: *const ::core::ffi::c_int,
15996 csrColInd: *const ::core::ffi::c_int,
15997 b: *const cuDoubleComplex,
15998 tol: f64,
15999 reorder: ::core::ffi::c_int,
16000 x: *mut cuDoubleComplex,
16001 singularity: *mut ::core::ffi::c_int,
16002 ) -> cusolverStatus_t {
16003 (culib().cusolverSpZcsrlsvchol)(
16004 handle,
16005 m,
16006 nnz,
16007 descrA,
16008 csrVal,
16009 csrRowPtr,
16010 csrColInd,
16011 b,
16012 tol,
16013 reorder,
16014 x,
16015 singularity,
16016 )
16017 }
16018 pub unsafe fn cusolverSpZcsrlsvcholHost(
16019 handle: cusolverSpHandle_t,
16020 m: ::core::ffi::c_int,
16021 nnz: ::core::ffi::c_int,
16022 descrA: cusparseMatDescr_t,
16023 csrVal: *const cuDoubleComplex,
16024 csrRowPtr: *const ::core::ffi::c_int,
16025 csrColInd: *const ::core::ffi::c_int,
16026 b: *const cuDoubleComplex,
16027 tol: f64,
16028 reorder: ::core::ffi::c_int,
16029 x: *mut cuDoubleComplex,
16030 singularity: *mut ::core::ffi::c_int,
16031 ) -> cusolverStatus_t {
16032 (culib().cusolverSpZcsrlsvcholHost)(
16033 handle,
16034 m,
16035 nnz,
16036 descrA,
16037 csrVal,
16038 csrRowPtr,
16039 csrColInd,
16040 b,
16041 tol,
16042 reorder,
16043 x,
16044 singularity,
16045 )
16046 }
16047 pub unsafe fn cusolverSpZcsrlsvluHost(
16048 handle: cusolverSpHandle_t,
16049 n: ::core::ffi::c_int,
16050 nnzA: ::core::ffi::c_int,
16051 descrA: cusparseMatDescr_t,
16052 csrValA: *const cuDoubleComplex,
16053 csrRowPtrA: *const ::core::ffi::c_int,
16054 csrColIndA: *const ::core::ffi::c_int,
16055 b: *const cuDoubleComplex,
16056 tol: f64,
16057 reorder: ::core::ffi::c_int,
16058 x: *mut cuDoubleComplex,
16059 singularity: *mut ::core::ffi::c_int,
16060 ) -> cusolverStatus_t {
16061 (culib().cusolverSpZcsrlsvluHost)(
16062 handle,
16063 n,
16064 nnzA,
16065 descrA,
16066 csrValA,
16067 csrRowPtrA,
16068 csrColIndA,
16069 b,
16070 tol,
16071 reorder,
16072 x,
16073 singularity,
16074 )
16075 }
16076 pub unsafe fn cusolverSpZcsrlsvqr(
16077 handle: cusolverSpHandle_t,
16078 m: ::core::ffi::c_int,
16079 nnz: ::core::ffi::c_int,
16080 descrA: cusparseMatDescr_t,
16081 csrVal: *const cuDoubleComplex,
16082 csrRowPtr: *const ::core::ffi::c_int,
16083 csrColInd: *const ::core::ffi::c_int,
16084 b: *const cuDoubleComplex,
16085 tol: f64,
16086 reorder: ::core::ffi::c_int,
16087 x: *mut cuDoubleComplex,
16088 singularity: *mut ::core::ffi::c_int,
16089 ) -> cusolverStatus_t {
16090 (culib().cusolverSpZcsrlsvqr)(
16091 handle,
16092 m,
16093 nnz,
16094 descrA,
16095 csrVal,
16096 csrRowPtr,
16097 csrColInd,
16098 b,
16099 tol,
16100 reorder,
16101 x,
16102 singularity,
16103 )
16104 }
16105 pub unsafe fn cusolverSpZcsrlsvqrHost(
16106 handle: cusolverSpHandle_t,
16107 m: ::core::ffi::c_int,
16108 nnz: ::core::ffi::c_int,
16109 descrA: cusparseMatDescr_t,
16110 csrValA: *const cuDoubleComplex,
16111 csrRowPtrA: *const ::core::ffi::c_int,
16112 csrColIndA: *const ::core::ffi::c_int,
16113 b: *const cuDoubleComplex,
16114 tol: f64,
16115 reorder: ::core::ffi::c_int,
16116 x: *mut cuDoubleComplex,
16117 singularity: *mut ::core::ffi::c_int,
16118 ) -> cusolverStatus_t {
16119 (culib().cusolverSpZcsrlsvqrHost)(
16120 handle,
16121 m,
16122 nnz,
16123 descrA,
16124 csrValA,
16125 csrRowPtrA,
16126 csrColIndA,
16127 b,
16128 tol,
16129 reorder,
16130 x,
16131 singularity,
16132 )
16133 }
16134 pub unsafe fn cusolverSpZcsrqrBufferInfoBatched(
16135 handle: cusolverSpHandle_t,
16136 m: ::core::ffi::c_int,
16137 n: ::core::ffi::c_int,
16138 nnz: ::core::ffi::c_int,
16139 descrA: cusparseMatDescr_t,
16140 csrVal: *const cuDoubleComplex,
16141 csrRowPtr: *const ::core::ffi::c_int,
16142 csrColInd: *const ::core::ffi::c_int,
16143 batchSize: ::core::ffi::c_int,
16144 info: csrqrInfo_t,
16145 internalDataInBytes: *mut usize,
16146 workspaceInBytes: *mut usize,
16147 ) -> cusolverStatus_t {
16148 (culib().cusolverSpZcsrqrBufferInfoBatched)(
16149 handle,
16150 m,
16151 n,
16152 nnz,
16153 descrA,
16154 csrVal,
16155 csrRowPtr,
16156 csrColInd,
16157 batchSize,
16158 info,
16159 internalDataInBytes,
16160 workspaceInBytes,
16161 )
16162 }
16163 pub unsafe fn cusolverSpZcsrqrsvBatched(
16164 handle: cusolverSpHandle_t,
16165 m: ::core::ffi::c_int,
16166 n: ::core::ffi::c_int,
16167 nnz: ::core::ffi::c_int,
16168 descrA: cusparseMatDescr_t,
16169 csrValA: *const cuDoubleComplex,
16170 csrRowPtrA: *const ::core::ffi::c_int,
16171 csrColIndA: *const ::core::ffi::c_int,
16172 b: *const cuDoubleComplex,
16173 x: *mut cuDoubleComplex,
16174 batchSize: ::core::ffi::c_int,
16175 info: csrqrInfo_t,
16176 pBuffer: *mut ::core::ffi::c_void,
16177 ) -> cusolverStatus_t {
16178 (culib().cusolverSpZcsrqrsvBatched)(
16179 handle, m, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, b, x, batchSize, info,
16180 pBuffer,
16181 )
16182 }
16183 pub unsafe fn cusolverSpZcsrzfdHost(
16184 handle: cusolverSpHandle_t,
16185 n: ::core::ffi::c_int,
16186 nnz: ::core::ffi::c_int,
16187 descrA: cusparseMatDescr_t,
16188 csrValA: *const cuDoubleComplex,
16189 csrRowPtrA: *const ::core::ffi::c_int,
16190 csrColIndA: *const ::core::ffi::c_int,
16191 P: *mut ::core::ffi::c_int,
16192 numnz: *mut ::core::ffi::c_int,
16193 ) -> cusolverStatus_t {
16194 (culib().cusolverSpZcsrzfdHost)(
16195 handle, n, nnz, descrA, csrValA, csrRowPtrA, csrColIndA, P, numnz,
16196 )
16197 }
16198 pub struct Lib {
16199 __library: ::libloading::Library,
16200 pub cusolverDnCCgels: unsafe extern "C" fn(
16201 handle: cusolverDnHandle_t,
16202 m: cusolver_int_t,
16203 n: cusolver_int_t,
16204 nrhs: cusolver_int_t,
16205 dA: *mut cuComplex,
16206 ldda: cusolver_int_t,
16207 dB: *mut cuComplex,
16208 lddb: cusolver_int_t,
16209 dX: *mut cuComplex,
16210 lddx: cusolver_int_t,
16211 dWorkspace: *mut ::core::ffi::c_void,
16212 lwork_bytes: usize,
16213 iter: *mut cusolver_int_t,
16214 d_info: *mut cusolver_int_t,
16215 ) -> cusolverStatus_t,
16216 pub cusolverDnCCgels_bufferSize: unsafe extern "C" fn(
16217 handle: cusolverDnHandle_t,
16218 m: cusolver_int_t,
16219 n: cusolver_int_t,
16220 nrhs: cusolver_int_t,
16221 dA: *mut cuComplex,
16222 ldda: cusolver_int_t,
16223 dB: *mut cuComplex,
16224 lddb: cusolver_int_t,
16225 dX: *mut cuComplex,
16226 lddx: cusolver_int_t,
16227 dWorkspace: *mut ::core::ffi::c_void,
16228 lwork_bytes: *mut usize,
16229 ) -> cusolverStatus_t,
16230 pub cusolverDnCCgesv: unsafe extern "C" fn(
16231 handle: cusolverDnHandle_t,
16232 n: cusolver_int_t,
16233 nrhs: cusolver_int_t,
16234 dA: *mut cuComplex,
16235 ldda: cusolver_int_t,
16236 dipiv: *mut cusolver_int_t,
16237 dB: *mut cuComplex,
16238 lddb: cusolver_int_t,
16239 dX: *mut cuComplex,
16240 lddx: cusolver_int_t,
16241 dWorkspace: *mut ::core::ffi::c_void,
16242 lwork_bytes: usize,
16243 iter: *mut cusolver_int_t,
16244 d_info: *mut cusolver_int_t,
16245 ) -> cusolverStatus_t,
16246 pub cusolverDnCCgesv_bufferSize: unsafe extern "C" fn(
16247 handle: cusolverDnHandle_t,
16248 n: cusolver_int_t,
16249 nrhs: cusolver_int_t,
16250 dA: *mut cuComplex,
16251 ldda: cusolver_int_t,
16252 dipiv: *mut cusolver_int_t,
16253 dB: *mut cuComplex,
16254 lddb: cusolver_int_t,
16255 dX: *mut cuComplex,
16256 lddx: cusolver_int_t,
16257 dWorkspace: *mut ::core::ffi::c_void,
16258 lwork_bytes: *mut usize,
16259 ) -> cusolverStatus_t,
16260 pub cusolverDnCEgels: unsafe extern "C" fn(
16261 handle: cusolverDnHandle_t,
16262 m: cusolver_int_t,
16263 n: cusolver_int_t,
16264 nrhs: cusolver_int_t,
16265 dA: *mut cuComplex,
16266 ldda: cusolver_int_t,
16267 dB: *mut cuComplex,
16268 lddb: cusolver_int_t,
16269 dX: *mut cuComplex,
16270 lddx: cusolver_int_t,
16271 dWorkspace: *mut ::core::ffi::c_void,
16272 lwork_bytes: usize,
16273 iter: *mut cusolver_int_t,
16274 d_info: *mut cusolver_int_t,
16275 ) -> cusolverStatus_t,
16276 pub cusolverDnCEgels_bufferSize: unsafe extern "C" fn(
16277 handle: cusolverDnHandle_t,
16278 m: cusolver_int_t,
16279 n: cusolver_int_t,
16280 nrhs: cusolver_int_t,
16281 dA: *mut cuComplex,
16282 ldda: cusolver_int_t,
16283 dB: *mut cuComplex,
16284 lddb: cusolver_int_t,
16285 dX: *mut cuComplex,
16286 lddx: cusolver_int_t,
16287 dWorkspace: *mut ::core::ffi::c_void,
16288 lwork_bytes: *mut usize,
16289 ) -> cusolverStatus_t,
16290 pub cusolverDnCEgesv: unsafe extern "C" fn(
16291 handle: cusolverDnHandle_t,
16292 n: cusolver_int_t,
16293 nrhs: cusolver_int_t,
16294 dA: *mut cuComplex,
16295 ldda: cusolver_int_t,
16296 dipiv: *mut cusolver_int_t,
16297 dB: *mut cuComplex,
16298 lddb: cusolver_int_t,
16299 dX: *mut cuComplex,
16300 lddx: cusolver_int_t,
16301 dWorkspace: *mut ::core::ffi::c_void,
16302 lwork_bytes: usize,
16303 iter: *mut cusolver_int_t,
16304 d_info: *mut cusolver_int_t,
16305 ) -> cusolverStatus_t,
16306 pub cusolverDnCEgesv_bufferSize: unsafe extern "C" fn(
16307 handle: cusolverDnHandle_t,
16308 n: cusolver_int_t,
16309 nrhs: cusolver_int_t,
16310 dA: *mut cuComplex,
16311 ldda: cusolver_int_t,
16312 dipiv: *mut cusolver_int_t,
16313 dB: *mut cuComplex,
16314 lddb: cusolver_int_t,
16315 dX: *mut cuComplex,
16316 lddx: cusolver_int_t,
16317 dWorkspace: *mut ::core::ffi::c_void,
16318 lwork_bytes: *mut usize,
16319 ) -> cusolverStatus_t,
16320 pub cusolverDnCKgels: unsafe extern "C" fn(
16321 handle: cusolverDnHandle_t,
16322 m: cusolver_int_t,
16323 n: cusolver_int_t,
16324 nrhs: cusolver_int_t,
16325 dA: *mut cuComplex,
16326 ldda: cusolver_int_t,
16327 dB: *mut cuComplex,
16328 lddb: cusolver_int_t,
16329 dX: *mut cuComplex,
16330 lddx: cusolver_int_t,
16331 dWorkspace: *mut ::core::ffi::c_void,
16332 lwork_bytes: usize,
16333 iter: *mut cusolver_int_t,
16334 d_info: *mut cusolver_int_t,
16335 ) -> cusolverStatus_t,
16336 pub cusolverDnCKgels_bufferSize: unsafe extern "C" fn(
16337 handle: cusolverDnHandle_t,
16338 m: cusolver_int_t,
16339 n: cusolver_int_t,
16340 nrhs: cusolver_int_t,
16341 dA: *mut cuComplex,
16342 ldda: cusolver_int_t,
16343 dB: *mut cuComplex,
16344 lddb: cusolver_int_t,
16345 dX: *mut cuComplex,
16346 lddx: cusolver_int_t,
16347 dWorkspace: *mut ::core::ffi::c_void,
16348 lwork_bytes: *mut usize,
16349 ) -> cusolverStatus_t,
16350 pub cusolverDnCKgesv: unsafe extern "C" fn(
16351 handle: cusolverDnHandle_t,
16352 n: cusolver_int_t,
16353 nrhs: cusolver_int_t,
16354 dA: *mut cuComplex,
16355 ldda: cusolver_int_t,
16356 dipiv: *mut cusolver_int_t,
16357 dB: *mut cuComplex,
16358 lddb: cusolver_int_t,
16359 dX: *mut cuComplex,
16360 lddx: cusolver_int_t,
16361 dWorkspace: *mut ::core::ffi::c_void,
16362 lwork_bytes: usize,
16363 iter: *mut cusolver_int_t,
16364 d_info: *mut cusolver_int_t,
16365 ) -> cusolverStatus_t,
16366 pub cusolverDnCKgesv_bufferSize: unsafe extern "C" fn(
16367 handle: cusolverDnHandle_t,
16368 n: cusolver_int_t,
16369 nrhs: cusolver_int_t,
16370 dA: *mut cuComplex,
16371 ldda: cusolver_int_t,
16372 dipiv: *mut cusolver_int_t,
16373 dB: *mut cuComplex,
16374 lddb: cusolver_int_t,
16375 dX: *mut cuComplex,
16376 lddx: cusolver_int_t,
16377 dWorkspace: *mut ::core::ffi::c_void,
16378 lwork_bytes: *mut usize,
16379 ) -> cusolverStatus_t,
16380 pub cusolverDnCYgels: unsafe extern "C" fn(
16381 handle: cusolverDnHandle_t,
16382 m: cusolver_int_t,
16383 n: cusolver_int_t,
16384 nrhs: cusolver_int_t,
16385 dA: *mut cuComplex,
16386 ldda: cusolver_int_t,
16387 dB: *mut cuComplex,
16388 lddb: cusolver_int_t,
16389 dX: *mut cuComplex,
16390 lddx: cusolver_int_t,
16391 dWorkspace: *mut ::core::ffi::c_void,
16392 lwork_bytes: usize,
16393 iter: *mut cusolver_int_t,
16394 d_info: *mut cusolver_int_t,
16395 ) -> cusolverStatus_t,
16396 pub cusolverDnCYgels_bufferSize: unsafe extern "C" fn(
16397 handle: cusolverDnHandle_t,
16398 m: cusolver_int_t,
16399 n: cusolver_int_t,
16400 nrhs: cusolver_int_t,
16401 dA: *mut cuComplex,
16402 ldda: cusolver_int_t,
16403 dB: *mut cuComplex,
16404 lddb: cusolver_int_t,
16405 dX: *mut cuComplex,
16406 lddx: cusolver_int_t,
16407 dWorkspace: *mut ::core::ffi::c_void,
16408 lwork_bytes: *mut usize,
16409 ) -> cusolverStatus_t,
16410 pub cusolverDnCYgesv: unsafe extern "C" fn(
16411 handle: cusolverDnHandle_t,
16412 n: cusolver_int_t,
16413 nrhs: cusolver_int_t,
16414 dA: *mut cuComplex,
16415 ldda: cusolver_int_t,
16416 dipiv: *mut cusolver_int_t,
16417 dB: *mut cuComplex,
16418 lddb: cusolver_int_t,
16419 dX: *mut cuComplex,
16420 lddx: cusolver_int_t,
16421 dWorkspace: *mut ::core::ffi::c_void,
16422 lwork_bytes: usize,
16423 iter: *mut cusolver_int_t,
16424 d_info: *mut cusolver_int_t,
16425 ) -> cusolverStatus_t,
16426 pub cusolverDnCYgesv_bufferSize: unsafe extern "C" fn(
16427 handle: cusolverDnHandle_t,
16428 n: cusolver_int_t,
16429 nrhs: cusolver_int_t,
16430 dA: *mut cuComplex,
16431 ldda: cusolver_int_t,
16432 dipiv: *mut cusolver_int_t,
16433 dB: *mut cuComplex,
16434 lddb: cusolver_int_t,
16435 dX: *mut cuComplex,
16436 lddx: cusolver_int_t,
16437 dWorkspace: *mut ::core::ffi::c_void,
16438 lwork_bytes: *mut usize,
16439 ) -> cusolverStatus_t,
16440 pub cusolverDnCgebrd: unsafe extern "C" fn(
16441 handle: cusolverDnHandle_t,
16442 m: ::core::ffi::c_int,
16443 n: ::core::ffi::c_int,
16444 A: *mut cuComplex,
16445 lda: ::core::ffi::c_int,
16446 D: *mut f32,
16447 E: *mut f32,
16448 TAUQ: *mut cuComplex,
16449 TAUP: *mut cuComplex,
16450 Work: *mut cuComplex,
16451 Lwork: ::core::ffi::c_int,
16452 devInfo: *mut ::core::ffi::c_int,
16453 ) -> cusolverStatus_t,
16454 pub cusolverDnCgebrd_bufferSize: unsafe extern "C" fn(
16455 handle: cusolverDnHandle_t,
16456 m: ::core::ffi::c_int,
16457 n: ::core::ffi::c_int,
16458 Lwork: *mut ::core::ffi::c_int,
16459 ) -> cusolverStatus_t,
16460 pub cusolverDnCgeqrf: unsafe extern "C" fn(
16461 handle: cusolverDnHandle_t,
16462 m: ::core::ffi::c_int,
16463 n: ::core::ffi::c_int,
16464 A: *mut cuComplex,
16465 lda: ::core::ffi::c_int,
16466 TAU: *mut cuComplex,
16467 Workspace: *mut cuComplex,
16468 Lwork: ::core::ffi::c_int,
16469 devInfo: *mut ::core::ffi::c_int,
16470 ) -> cusolverStatus_t,
16471 pub cusolverDnCgeqrf_bufferSize: unsafe extern "C" fn(
16472 handle: cusolverDnHandle_t,
16473 m: ::core::ffi::c_int,
16474 n: ::core::ffi::c_int,
16475 A: *mut cuComplex,
16476 lda: ::core::ffi::c_int,
16477 lwork: *mut ::core::ffi::c_int,
16478 ) -> cusolverStatus_t,
16479 pub cusolverDnCgesvd: unsafe extern "C" fn(
16480 handle: cusolverDnHandle_t,
16481 jobu: ::core::ffi::c_schar,
16482 jobvt: ::core::ffi::c_schar,
16483 m: ::core::ffi::c_int,
16484 n: ::core::ffi::c_int,
16485 A: *mut cuComplex,
16486 lda: ::core::ffi::c_int,
16487 S: *mut f32,
16488 U: *mut cuComplex,
16489 ldu: ::core::ffi::c_int,
16490 VT: *mut cuComplex,
16491 ldvt: ::core::ffi::c_int,
16492 work: *mut cuComplex,
16493 lwork: ::core::ffi::c_int,
16494 rwork: *mut f32,
16495 info: *mut ::core::ffi::c_int,
16496 ) -> cusolverStatus_t,
16497 pub cusolverDnCgesvd_bufferSize: unsafe extern "C" fn(
16498 handle: cusolverDnHandle_t,
16499 m: ::core::ffi::c_int,
16500 n: ::core::ffi::c_int,
16501 lwork: *mut ::core::ffi::c_int,
16502 ) -> cusolverStatus_t,
16503 pub cusolverDnCgesvdaStridedBatched: unsafe extern "C" fn(
16504 handle: cusolverDnHandle_t,
16505 jobz: cusolverEigMode_t,
16506 rank: ::core::ffi::c_int,
16507 m: ::core::ffi::c_int,
16508 n: ::core::ffi::c_int,
16509 d_A: *const cuComplex,
16510 lda: ::core::ffi::c_int,
16511 strideA: ::core::ffi::c_longlong,
16512 d_S: *mut f32,
16513 strideS: ::core::ffi::c_longlong,
16514 d_U: *mut cuComplex,
16515 ldu: ::core::ffi::c_int,
16516 strideU: ::core::ffi::c_longlong,
16517 d_V: *mut cuComplex,
16518 ldv: ::core::ffi::c_int,
16519 strideV: ::core::ffi::c_longlong,
16520 d_work: *mut cuComplex,
16521 lwork: ::core::ffi::c_int,
16522 d_info: *mut ::core::ffi::c_int,
16523 h_R_nrmF: *mut f64,
16524 batchSize: ::core::ffi::c_int,
16525 ) -> cusolverStatus_t,
16526 pub cusolverDnCgesvdaStridedBatched_bufferSize: unsafe extern "C" fn(
16527 handle: cusolverDnHandle_t,
16528 jobz: cusolverEigMode_t,
16529 rank: ::core::ffi::c_int,
16530 m: ::core::ffi::c_int,
16531 n: ::core::ffi::c_int,
16532 d_A: *const cuComplex,
16533 lda: ::core::ffi::c_int,
16534 strideA: ::core::ffi::c_longlong,
16535 d_S: *const f32,
16536 strideS: ::core::ffi::c_longlong,
16537 d_U: *const cuComplex,
16538 ldu: ::core::ffi::c_int,
16539 strideU: ::core::ffi::c_longlong,
16540 d_V: *const cuComplex,
16541 ldv: ::core::ffi::c_int,
16542 strideV: ::core::ffi::c_longlong,
16543 lwork: *mut ::core::ffi::c_int,
16544 batchSize: ::core::ffi::c_int,
16545 )
16546 -> cusolverStatus_t,
16547 pub cusolverDnCgesvdj: unsafe extern "C" fn(
16548 handle: cusolverDnHandle_t,
16549 jobz: cusolverEigMode_t,
16550 econ: ::core::ffi::c_int,
16551 m: ::core::ffi::c_int,
16552 n: ::core::ffi::c_int,
16553 A: *mut cuComplex,
16554 lda: ::core::ffi::c_int,
16555 S: *mut f32,
16556 U: *mut cuComplex,
16557 ldu: ::core::ffi::c_int,
16558 V: *mut cuComplex,
16559 ldv: ::core::ffi::c_int,
16560 work: *mut cuComplex,
16561 lwork: ::core::ffi::c_int,
16562 info: *mut ::core::ffi::c_int,
16563 params: gesvdjInfo_t,
16564 ) -> cusolverStatus_t,
16565 pub cusolverDnCgesvdjBatched: unsafe extern "C" fn(
16566 handle: cusolverDnHandle_t,
16567 jobz: cusolverEigMode_t,
16568 m: ::core::ffi::c_int,
16569 n: ::core::ffi::c_int,
16570 A: *mut cuComplex,
16571 lda: ::core::ffi::c_int,
16572 S: *mut f32,
16573 U: *mut cuComplex,
16574 ldu: ::core::ffi::c_int,
16575 V: *mut cuComplex,
16576 ldv: ::core::ffi::c_int,
16577 work: *mut cuComplex,
16578 lwork: ::core::ffi::c_int,
16579 info: *mut ::core::ffi::c_int,
16580 params: gesvdjInfo_t,
16581 batchSize: ::core::ffi::c_int,
16582 ) -> cusolverStatus_t,
16583 pub cusolverDnCgesvdjBatched_bufferSize: unsafe extern "C" fn(
16584 handle: cusolverDnHandle_t,
16585 jobz: cusolverEigMode_t,
16586 m: ::core::ffi::c_int,
16587 n: ::core::ffi::c_int,
16588 A: *const cuComplex,
16589 lda: ::core::ffi::c_int,
16590 S: *const f32,
16591 U: *const cuComplex,
16592 ldu: ::core::ffi::c_int,
16593 V: *const cuComplex,
16594 ldv: ::core::ffi::c_int,
16595 lwork: *mut ::core::ffi::c_int,
16596 params: gesvdjInfo_t,
16597 batchSize: ::core::ffi::c_int,
16598 ) -> cusolverStatus_t,
16599 pub cusolverDnCgesvdj_bufferSize: unsafe extern "C" fn(
16600 handle: cusolverDnHandle_t,
16601 jobz: cusolverEigMode_t,
16602 econ: ::core::ffi::c_int,
16603 m: ::core::ffi::c_int,
16604 n: ::core::ffi::c_int,
16605 A: *const cuComplex,
16606 lda: ::core::ffi::c_int,
16607 S: *const f32,
16608 U: *const cuComplex,
16609 ldu: ::core::ffi::c_int,
16610 V: *const cuComplex,
16611 ldv: ::core::ffi::c_int,
16612 lwork: *mut ::core::ffi::c_int,
16613 params: gesvdjInfo_t,
16614 ) -> cusolverStatus_t,
16615 pub cusolverDnCgetrf: unsafe extern "C" fn(
16616 handle: cusolverDnHandle_t,
16617 m: ::core::ffi::c_int,
16618 n: ::core::ffi::c_int,
16619 A: *mut cuComplex,
16620 lda: ::core::ffi::c_int,
16621 Workspace: *mut cuComplex,
16622 devIpiv: *mut ::core::ffi::c_int,
16623 devInfo: *mut ::core::ffi::c_int,
16624 ) -> cusolverStatus_t,
16625 pub cusolverDnCgetrf_bufferSize: unsafe extern "C" fn(
16626 handle: cusolverDnHandle_t,
16627 m: ::core::ffi::c_int,
16628 n: ::core::ffi::c_int,
16629 A: *mut cuComplex,
16630 lda: ::core::ffi::c_int,
16631 Lwork: *mut ::core::ffi::c_int,
16632 ) -> cusolverStatus_t,
16633 pub cusolverDnCgetrs: unsafe extern "C" fn(
16634 handle: cusolverDnHandle_t,
16635 trans: cublasOperation_t,
16636 n: ::core::ffi::c_int,
16637 nrhs: ::core::ffi::c_int,
16638 A: *const cuComplex,
16639 lda: ::core::ffi::c_int,
16640 devIpiv: *const ::core::ffi::c_int,
16641 B: *mut cuComplex,
16642 ldb: ::core::ffi::c_int,
16643 devInfo: *mut ::core::ffi::c_int,
16644 ) -> cusolverStatus_t,
16645 pub cusolverDnCheevd: unsafe extern "C" fn(
16646 handle: cusolverDnHandle_t,
16647 jobz: cusolverEigMode_t,
16648 uplo: cublasFillMode_t,
16649 n: ::core::ffi::c_int,
16650 A: *mut cuComplex,
16651 lda: ::core::ffi::c_int,
16652 W: *mut f32,
16653 work: *mut cuComplex,
16654 lwork: ::core::ffi::c_int,
16655 info: *mut ::core::ffi::c_int,
16656 ) -> cusolverStatus_t,
16657 pub cusolverDnCheevd_bufferSize: unsafe extern "C" fn(
16658 handle: cusolverDnHandle_t,
16659 jobz: cusolverEigMode_t,
16660 uplo: cublasFillMode_t,
16661 n: ::core::ffi::c_int,
16662 A: *const cuComplex,
16663 lda: ::core::ffi::c_int,
16664 W: *const f32,
16665 lwork: *mut ::core::ffi::c_int,
16666 ) -> cusolverStatus_t,
16667 pub cusolverDnCheevdx: unsafe extern "C" fn(
16668 handle: cusolverDnHandle_t,
16669 jobz: cusolverEigMode_t,
16670 range: cusolverEigRange_t,
16671 uplo: cublasFillMode_t,
16672 n: ::core::ffi::c_int,
16673 A: *mut cuComplex,
16674 lda: ::core::ffi::c_int,
16675 vl: f32,
16676 vu: f32,
16677 il: ::core::ffi::c_int,
16678 iu: ::core::ffi::c_int,
16679 meig: *mut ::core::ffi::c_int,
16680 W: *mut f32,
16681 work: *mut cuComplex,
16682 lwork: ::core::ffi::c_int,
16683 info: *mut ::core::ffi::c_int,
16684 ) -> cusolverStatus_t,
16685 pub cusolverDnCheevdx_bufferSize: unsafe extern "C" fn(
16686 handle: cusolverDnHandle_t,
16687 jobz: cusolverEigMode_t,
16688 range: cusolverEigRange_t,
16689 uplo: cublasFillMode_t,
16690 n: ::core::ffi::c_int,
16691 A: *const cuComplex,
16692 lda: ::core::ffi::c_int,
16693 vl: f32,
16694 vu: f32,
16695 il: ::core::ffi::c_int,
16696 iu: ::core::ffi::c_int,
16697 meig: *mut ::core::ffi::c_int,
16698 W: *const f32,
16699 lwork: *mut ::core::ffi::c_int,
16700 ) -> cusolverStatus_t,
16701 pub cusolverDnCheevj: unsafe extern "C" fn(
16702 handle: cusolverDnHandle_t,
16703 jobz: cusolverEigMode_t,
16704 uplo: cublasFillMode_t,
16705 n: ::core::ffi::c_int,
16706 A: *mut cuComplex,
16707 lda: ::core::ffi::c_int,
16708 W: *mut f32,
16709 work: *mut cuComplex,
16710 lwork: ::core::ffi::c_int,
16711 info: *mut ::core::ffi::c_int,
16712 params: syevjInfo_t,
16713 ) -> cusolverStatus_t,
16714 pub cusolverDnCheevjBatched: unsafe extern "C" fn(
16715 handle: cusolverDnHandle_t,
16716 jobz: cusolverEigMode_t,
16717 uplo: cublasFillMode_t,
16718 n: ::core::ffi::c_int,
16719 A: *mut cuComplex,
16720 lda: ::core::ffi::c_int,
16721 W: *mut f32,
16722 work: *mut cuComplex,
16723 lwork: ::core::ffi::c_int,
16724 info: *mut ::core::ffi::c_int,
16725 params: syevjInfo_t,
16726 batchSize: ::core::ffi::c_int,
16727 ) -> cusolverStatus_t,
16728 pub cusolverDnCheevjBatched_bufferSize: unsafe extern "C" fn(
16729 handle: cusolverDnHandle_t,
16730 jobz: cusolverEigMode_t,
16731 uplo: cublasFillMode_t,
16732 n: ::core::ffi::c_int,
16733 A: *const cuComplex,
16734 lda: ::core::ffi::c_int,
16735 W: *const f32,
16736 lwork: *mut ::core::ffi::c_int,
16737 params: syevjInfo_t,
16738 batchSize: ::core::ffi::c_int,
16739 ) -> cusolverStatus_t,
16740 pub cusolverDnCheevj_bufferSize: unsafe extern "C" fn(
16741 handle: cusolverDnHandle_t,
16742 jobz: cusolverEigMode_t,
16743 uplo: cublasFillMode_t,
16744 n: ::core::ffi::c_int,
16745 A: *const cuComplex,
16746 lda: ::core::ffi::c_int,
16747 W: *const f32,
16748 lwork: *mut ::core::ffi::c_int,
16749 params: syevjInfo_t,
16750 ) -> cusolverStatus_t,
16751 pub cusolverDnChegvd: unsafe extern "C" fn(
16752 handle: cusolverDnHandle_t,
16753 itype: cusolverEigType_t,
16754 jobz: cusolverEigMode_t,
16755 uplo: cublasFillMode_t,
16756 n: ::core::ffi::c_int,
16757 A: *mut cuComplex,
16758 lda: ::core::ffi::c_int,
16759 B: *mut cuComplex,
16760 ldb: ::core::ffi::c_int,
16761 W: *mut f32,
16762 work: *mut cuComplex,
16763 lwork: ::core::ffi::c_int,
16764 info: *mut ::core::ffi::c_int,
16765 ) -> cusolverStatus_t,
16766 pub cusolverDnChegvd_bufferSize: unsafe extern "C" fn(
16767 handle: cusolverDnHandle_t,
16768 itype: cusolverEigType_t,
16769 jobz: cusolverEigMode_t,
16770 uplo: cublasFillMode_t,
16771 n: ::core::ffi::c_int,
16772 A: *const cuComplex,
16773 lda: ::core::ffi::c_int,
16774 B: *const cuComplex,
16775 ldb: ::core::ffi::c_int,
16776 W: *const f32,
16777 lwork: *mut ::core::ffi::c_int,
16778 ) -> cusolverStatus_t,
16779 pub cusolverDnChegvdx: unsafe extern "C" fn(
16780 handle: cusolverDnHandle_t,
16781 itype: cusolverEigType_t,
16782 jobz: cusolverEigMode_t,
16783 range: cusolverEigRange_t,
16784 uplo: cublasFillMode_t,
16785 n: ::core::ffi::c_int,
16786 A: *mut cuComplex,
16787 lda: ::core::ffi::c_int,
16788 B: *mut cuComplex,
16789 ldb: ::core::ffi::c_int,
16790 vl: f32,
16791 vu: f32,
16792 il: ::core::ffi::c_int,
16793 iu: ::core::ffi::c_int,
16794 meig: *mut ::core::ffi::c_int,
16795 W: *mut f32,
16796 work: *mut cuComplex,
16797 lwork: ::core::ffi::c_int,
16798 info: *mut ::core::ffi::c_int,
16799 ) -> cusolverStatus_t,
16800 pub cusolverDnChegvdx_bufferSize: unsafe extern "C" fn(
16801 handle: cusolverDnHandle_t,
16802 itype: cusolverEigType_t,
16803 jobz: cusolverEigMode_t,
16804 range: cusolverEigRange_t,
16805 uplo: cublasFillMode_t,
16806 n: ::core::ffi::c_int,
16807 A: *const cuComplex,
16808 lda: ::core::ffi::c_int,
16809 B: *const cuComplex,
16810 ldb: ::core::ffi::c_int,
16811 vl: f32,
16812 vu: f32,
16813 il: ::core::ffi::c_int,
16814 iu: ::core::ffi::c_int,
16815 meig: *mut ::core::ffi::c_int,
16816 W: *const f32,
16817 lwork: *mut ::core::ffi::c_int,
16818 ) -> cusolverStatus_t,
16819 pub cusolverDnChegvj: unsafe extern "C" fn(
16820 handle: cusolverDnHandle_t,
16821 itype: cusolverEigType_t,
16822 jobz: cusolverEigMode_t,
16823 uplo: cublasFillMode_t,
16824 n: ::core::ffi::c_int,
16825 A: *mut cuComplex,
16826 lda: ::core::ffi::c_int,
16827 B: *mut cuComplex,
16828 ldb: ::core::ffi::c_int,
16829 W: *mut f32,
16830 work: *mut cuComplex,
16831 lwork: ::core::ffi::c_int,
16832 info: *mut ::core::ffi::c_int,
16833 params: syevjInfo_t,
16834 ) -> cusolverStatus_t,
16835 pub cusolverDnChegvj_bufferSize: unsafe extern "C" fn(
16836 handle: cusolverDnHandle_t,
16837 itype: cusolverEigType_t,
16838 jobz: cusolverEigMode_t,
16839 uplo: cublasFillMode_t,
16840 n: ::core::ffi::c_int,
16841 A: *const cuComplex,
16842 lda: ::core::ffi::c_int,
16843 B: *const cuComplex,
16844 ldb: ::core::ffi::c_int,
16845 W: *const f32,
16846 lwork: *mut ::core::ffi::c_int,
16847 params: syevjInfo_t,
16848 ) -> cusolverStatus_t,
16849 pub cusolverDnChetrd: unsafe extern "C" fn(
16850 handle: cusolverDnHandle_t,
16851 uplo: cublasFillMode_t,
16852 n: ::core::ffi::c_int,
16853 A: *mut cuComplex,
16854 lda: ::core::ffi::c_int,
16855 d: *mut f32,
16856 e: *mut f32,
16857 tau: *mut cuComplex,
16858 work: *mut cuComplex,
16859 lwork: ::core::ffi::c_int,
16860 info: *mut ::core::ffi::c_int,
16861 ) -> cusolverStatus_t,
16862 pub cusolverDnChetrd_bufferSize: unsafe extern "C" fn(
16863 handle: cusolverDnHandle_t,
16864 uplo: cublasFillMode_t,
16865 n: ::core::ffi::c_int,
16866 A: *const cuComplex,
16867 lda: ::core::ffi::c_int,
16868 d: *const f32,
16869 e: *const f32,
16870 tau: *const cuComplex,
16871 lwork: *mut ::core::ffi::c_int,
16872 ) -> cusolverStatus_t,
16873 pub cusolverDnClaswp: unsafe extern "C" fn(
16874 handle: cusolverDnHandle_t,
16875 n: ::core::ffi::c_int,
16876 A: *mut cuComplex,
16877 lda: ::core::ffi::c_int,
16878 k1: ::core::ffi::c_int,
16879 k2: ::core::ffi::c_int,
16880 devIpiv: *const ::core::ffi::c_int,
16881 incx: ::core::ffi::c_int,
16882 ) -> cusolverStatus_t,
16883 pub cusolverDnClauum: unsafe extern "C" fn(
16884 handle: cusolverDnHandle_t,
16885 uplo: cublasFillMode_t,
16886 n: ::core::ffi::c_int,
16887 A: *mut cuComplex,
16888 lda: ::core::ffi::c_int,
16889 work: *mut cuComplex,
16890 lwork: ::core::ffi::c_int,
16891 devInfo: *mut ::core::ffi::c_int,
16892 ) -> cusolverStatus_t,
16893 pub cusolverDnClauum_bufferSize: unsafe extern "C" fn(
16894 handle: cusolverDnHandle_t,
16895 uplo: cublasFillMode_t,
16896 n: ::core::ffi::c_int,
16897 A: *mut cuComplex,
16898 lda: ::core::ffi::c_int,
16899 lwork: *mut ::core::ffi::c_int,
16900 ) -> cusolverStatus_t,
16901 pub cusolverDnCpotrf: unsafe extern "C" fn(
16902 handle: cusolverDnHandle_t,
16903 uplo: cublasFillMode_t,
16904 n: ::core::ffi::c_int,
16905 A: *mut cuComplex,
16906 lda: ::core::ffi::c_int,
16907 Workspace: *mut cuComplex,
16908 Lwork: ::core::ffi::c_int,
16909 devInfo: *mut ::core::ffi::c_int,
16910 ) -> cusolverStatus_t,
16911 pub cusolverDnCpotrfBatched: unsafe extern "C" fn(
16912 handle: cusolverDnHandle_t,
16913 uplo: cublasFillMode_t,
16914 n: ::core::ffi::c_int,
16915 Aarray: *mut *mut cuComplex,
16916 lda: ::core::ffi::c_int,
16917 infoArray: *mut ::core::ffi::c_int,
16918 batchSize: ::core::ffi::c_int,
16919 ) -> cusolverStatus_t,
16920 pub cusolverDnCpotrf_bufferSize: unsafe extern "C" fn(
16921 handle: cusolverDnHandle_t,
16922 uplo: cublasFillMode_t,
16923 n: ::core::ffi::c_int,
16924 A: *mut cuComplex,
16925 lda: ::core::ffi::c_int,
16926 Lwork: *mut ::core::ffi::c_int,
16927 ) -> cusolverStatus_t,
16928 pub cusolverDnCpotri: unsafe extern "C" fn(
16929 handle: cusolverDnHandle_t,
16930 uplo: cublasFillMode_t,
16931 n: ::core::ffi::c_int,
16932 A: *mut cuComplex,
16933 lda: ::core::ffi::c_int,
16934 work: *mut cuComplex,
16935 lwork: ::core::ffi::c_int,
16936 devInfo: *mut ::core::ffi::c_int,
16937 ) -> cusolverStatus_t,
16938 pub cusolverDnCpotri_bufferSize: unsafe extern "C" fn(
16939 handle: cusolverDnHandle_t,
16940 uplo: cublasFillMode_t,
16941 n: ::core::ffi::c_int,
16942 A: *mut cuComplex,
16943 lda: ::core::ffi::c_int,
16944 lwork: *mut ::core::ffi::c_int,
16945 ) -> cusolverStatus_t,
16946 pub cusolverDnCpotrs: unsafe extern "C" fn(
16947 handle: cusolverDnHandle_t,
16948 uplo: cublasFillMode_t,
16949 n: ::core::ffi::c_int,
16950 nrhs: ::core::ffi::c_int,
16951 A: *const cuComplex,
16952 lda: ::core::ffi::c_int,
16953 B: *mut cuComplex,
16954 ldb: ::core::ffi::c_int,
16955 devInfo: *mut ::core::ffi::c_int,
16956 ) -> cusolverStatus_t,
16957 pub cusolverDnCpotrsBatched: unsafe extern "C" fn(
16958 handle: cusolverDnHandle_t,
16959 uplo: cublasFillMode_t,
16960 n: ::core::ffi::c_int,
16961 nrhs: ::core::ffi::c_int,
16962 A: *mut *mut cuComplex,
16963 lda: ::core::ffi::c_int,
16964 B: *mut *mut cuComplex,
16965 ldb: ::core::ffi::c_int,
16966 d_info: *mut ::core::ffi::c_int,
16967 batchSize: ::core::ffi::c_int,
16968 ) -> cusolverStatus_t,
16969 pub cusolverDnCreate:
16970 unsafe extern "C" fn(handle: *mut cusolverDnHandle_t) -> cusolverStatus_t,
16971 pub cusolverDnCreateGesvdjInfo:
16972 unsafe extern "C" fn(info: *mut gesvdjInfo_t) -> cusolverStatus_t,
16973 pub cusolverDnCreateParams:
16974 unsafe extern "C" fn(params: *mut cusolverDnParams_t) -> cusolverStatus_t,
16975 pub cusolverDnCreateSyevjInfo:
16976 unsafe extern "C" fn(info: *mut syevjInfo_t) -> cusolverStatus_t,
16977 pub cusolverDnCsytrf: unsafe extern "C" fn(
16978 handle: cusolverDnHandle_t,
16979 uplo: cublasFillMode_t,
16980 n: ::core::ffi::c_int,
16981 A: *mut cuComplex,
16982 lda: ::core::ffi::c_int,
16983 ipiv: *mut ::core::ffi::c_int,
16984 work: *mut cuComplex,
16985 lwork: ::core::ffi::c_int,
16986 info: *mut ::core::ffi::c_int,
16987 ) -> cusolverStatus_t,
16988 pub cusolverDnCsytrf_bufferSize: unsafe extern "C" fn(
16989 handle: cusolverDnHandle_t,
16990 n: ::core::ffi::c_int,
16991 A: *mut cuComplex,
16992 lda: ::core::ffi::c_int,
16993 lwork: *mut ::core::ffi::c_int,
16994 ) -> cusolverStatus_t,
16995 pub cusolverDnCsytri: unsafe extern "C" fn(
16996 handle: cusolverDnHandle_t,
16997 uplo: cublasFillMode_t,
16998 n: ::core::ffi::c_int,
16999 A: *mut cuComplex,
17000 lda: ::core::ffi::c_int,
17001 ipiv: *const ::core::ffi::c_int,
17002 work: *mut cuComplex,
17003 lwork: ::core::ffi::c_int,
17004 info: *mut ::core::ffi::c_int,
17005 ) -> cusolverStatus_t,
17006 pub cusolverDnCsytri_bufferSize: unsafe extern "C" fn(
17007 handle: cusolverDnHandle_t,
17008 uplo: cublasFillMode_t,
17009 n: ::core::ffi::c_int,
17010 A: *mut cuComplex,
17011 lda: ::core::ffi::c_int,
17012 ipiv: *const ::core::ffi::c_int,
17013 lwork: *mut ::core::ffi::c_int,
17014 ) -> cusolverStatus_t,
17015 pub cusolverDnCungbr: unsafe extern "C" fn(
17016 handle: cusolverDnHandle_t,
17017 side: cublasSideMode_t,
17018 m: ::core::ffi::c_int,
17019 n: ::core::ffi::c_int,
17020 k: ::core::ffi::c_int,
17021 A: *mut cuComplex,
17022 lda: ::core::ffi::c_int,
17023 tau: *const cuComplex,
17024 work: *mut cuComplex,
17025 lwork: ::core::ffi::c_int,
17026 info: *mut ::core::ffi::c_int,
17027 ) -> cusolverStatus_t,
17028 pub cusolverDnCungbr_bufferSize: unsafe extern "C" fn(
17029 handle: cusolverDnHandle_t,
17030 side: cublasSideMode_t,
17031 m: ::core::ffi::c_int,
17032 n: ::core::ffi::c_int,
17033 k: ::core::ffi::c_int,
17034 A: *const cuComplex,
17035 lda: ::core::ffi::c_int,
17036 tau: *const cuComplex,
17037 lwork: *mut ::core::ffi::c_int,
17038 ) -> cusolverStatus_t,
17039 pub cusolverDnCungqr: unsafe extern "C" fn(
17040 handle: cusolverDnHandle_t,
17041 m: ::core::ffi::c_int,
17042 n: ::core::ffi::c_int,
17043 k: ::core::ffi::c_int,
17044 A: *mut cuComplex,
17045 lda: ::core::ffi::c_int,
17046 tau: *const cuComplex,
17047 work: *mut cuComplex,
17048 lwork: ::core::ffi::c_int,
17049 info: *mut ::core::ffi::c_int,
17050 ) -> cusolverStatus_t,
17051 pub cusolverDnCungqr_bufferSize: unsafe extern "C" fn(
17052 handle: cusolverDnHandle_t,
17053 m: ::core::ffi::c_int,
17054 n: ::core::ffi::c_int,
17055 k: ::core::ffi::c_int,
17056 A: *const cuComplex,
17057 lda: ::core::ffi::c_int,
17058 tau: *const cuComplex,
17059 lwork: *mut ::core::ffi::c_int,
17060 ) -> cusolverStatus_t,
17061 pub cusolverDnCungtr: unsafe extern "C" fn(
17062 handle: cusolverDnHandle_t,
17063 uplo: cublasFillMode_t,
17064 n: ::core::ffi::c_int,
17065 A: *mut cuComplex,
17066 lda: ::core::ffi::c_int,
17067 tau: *const cuComplex,
17068 work: *mut cuComplex,
17069 lwork: ::core::ffi::c_int,
17070 info: *mut ::core::ffi::c_int,
17071 ) -> cusolverStatus_t,
17072 pub cusolverDnCungtr_bufferSize: unsafe extern "C" fn(
17073 handle: cusolverDnHandle_t,
17074 uplo: cublasFillMode_t,
17075 n: ::core::ffi::c_int,
17076 A: *const cuComplex,
17077 lda: ::core::ffi::c_int,
17078 tau: *const cuComplex,
17079 lwork: *mut ::core::ffi::c_int,
17080 ) -> cusolverStatus_t,
17081 pub cusolverDnCunmqr: unsafe extern "C" fn(
17082 handle: cusolverDnHandle_t,
17083 side: cublasSideMode_t,
17084 trans: cublasOperation_t,
17085 m: ::core::ffi::c_int,
17086 n: ::core::ffi::c_int,
17087 k: ::core::ffi::c_int,
17088 A: *const cuComplex,
17089 lda: ::core::ffi::c_int,
17090 tau: *const cuComplex,
17091 C: *mut cuComplex,
17092 ldc: ::core::ffi::c_int,
17093 work: *mut cuComplex,
17094 lwork: ::core::ffi::c_int,
17095 devInfo: *mut ::core::ffi::c_int,
17096 ) -> cusolverStatus_t,
17097 pub cusolverDnCunmqr_bufferSize: unsafe extern "C" fn(
17098 handle: cusolverDnHandle_t,
17099 side: cublasSideMode_t,
17100 trans: cublasOperation_t,
17101 m: ::core::ffi::c_int,
17102 n: ::core::ffi::c_int,
17103 k: ::core::ffi::c_int,
17104 A: *const cuComplex,
17105 lda: ::core::ffi::c_int,
17106 tau: *const cuComplex,
17107 C: *const cuComplex,
17108 ldc: ::core::ffi::c_int,
17109 lwork: *mut ::core::ffi::c_int,
17110 ) -> cusolverStatus_t,
17111 pub cusolverDnCunmtr: unsafe extern "C" fn(
17112 handle: cusolverDnHandle_t,
17113 side: cublasSideMode_t,
17114 uplo: cublasFillMode_t,
17115 trans: cublasOperation_t,
17116 m: ::core::ffi::c_int,
17117 n: ::core::ffi::c_int,
17118 A: *mut cuComplex,
17119 lda: ::core::ffi::c_int,
17120 tau: *mut cuComplex,
17121 C: *mut cuComplex,
17122 ldc: ::core::ffi::c_int,
17123 work: *mut cuComplex,
17124 lwork: ::core::ffi::c_int,
17125 info: *mut ::core::ffi::c_int,
17126 ) -> cusolverStatus_t,
17127 pub cusolverDnCunmtr_bufferSize: unsafe extern "C" fn(
17128 handle: cusolverDnHandle_t,
17129 side: cublasSideMode_t,
17130 uplo: cublasFillMode_t,
17131 trans: cublasOperation_t,
17132 m: ::core::ffi::c_int,
17133 n: ::core::ffi::c_int,
17134 A: *const cuComplex,
17135 lda: ::core::ffi::c_int,
17136 tau: *const cuComplex,
17137 C: *const cuComplex,
17138 ldc: ::core::ffi::c_int,
17139 lwork: *mut ::core::ffi::c_int,
17140 ) -> cusolverStatus_t,
17141 pub cusolverDnDBgels: unsafe extern "C" fn(
17142 handle: cusolverDnHandle_t,
17143 m: cusolver_int_t,
17144 n: cusolver_int_t,
17145 nrhs: cusolver_int_t,
17146 dA: *mut f64,
17147 ldda: cusolver_int_t,
17148 dB: *mut f64,
17149 lddb: cusolver_int_t,
17150 dX: *mut f64,
17151 lddx: cusolver_int_t,
17152 dWorkspace: *mut ::core::ffi::c_void,
17153 lwork_bytes: usize,
17154 iter: *mut cusolver_int_t,
17155 d_info: *mut cusolver_int_t,
17156 ) -> cusolverStatus_t,
17157 pub cusolverDnDBgels_bufferSize: unsafe extern "C" fn(
17158 handle: cusolverDnHandle_t,
17159 m: cusolver_int_t,
17160 n: cusolver_int_t,
17161 nrhs: cusolver_int_t,
17162 dA: *mut f64,
17163 ldda: cusolver_int_t,
17164 dB: *mut f64,
17165 lddb: cusolver_int_t,
17166 dX: *mut f64,
17167 lddx: cusolver_int_t,
17168 dWorkspace: *mut ::core::ffi::c_void,
17169 lwork_bytes: *mut usize,
17170 ) -> cusolverStatus_t,
17171 pub cusolverDnDBgesv: unsafe extern "C" fn(
17172 handle: cusolverDnHandle_t,
17173 n: cusolver_int_t,
17174 nrhs: cusolver_int_t,
17175 dA: *mut f64,
17176 ldda: cusolver_int_t,
17177 dipiv: *mut cusolver_int_t,
17178 dB: *mut f64,
17179 lddb: cusolver_int_t,
17180 dX: *mut f64,
17181 lddx: cusolver_int_t,
17182 dWorkspace: *mut ::core::ffi::c_void,
17183 lwork_bytes: usize,
17184 iter: *mut cusolver_int_t,
17185 d_info: *mut cusolver_int_t,
17186 ) -> cusolverStatus_t,
17187 pub cusolverDnDBgesv_bufferSize: unsafe extern "C" fn(
17188 handle: cusolverDnHandle_t,
17189 n: cusolver_int_t,
17190 nrhs: cusolver_int_t,
17191 dA: *mut f64,
17192 ldda: cusolver_int_t,
17193 dipiv: *mut cusolver_int_t,
17194 dB: *mut f64,
17195 lddb: cusolver_int_t,
17196 dX: *mut f64,
17197 lddx: cusolver_int_t,
17198 dWorkspace: *mut ::core::ffi::c_void,
17199 lwork_bytes: *mut usize,
17200 ) -> cusolverStatus_t,
17201 pub cusolverDnDDgels: unsafe extern "C" fn(
17202 handle: cusolverDnHandle_t,
17203 m: cusolver_int_t,
17204 n: cusolver_int_t,
17205 nrhs: cusolver_int_t,
17206 dA: *mut f64,
17207 ldda: cusolver_int_t,
17208 dB: *mut f64,
17209 lddb: cusolver_int_t,
17210 dX: *mut f64,
17211 lddx: cusolver_int_t,
17212 dWorkspace: *mut ::core::ffi::c_void,
17213 lwork_bytes: usize,
17214 iter: *mut cusolver_int_t,
17215 d_info: *mut cusolver_int_t,
17216 ) -> cusolverStatus_t,
17217 pub cusolverDnDDgels_bufferSize: unsafe extern "C" fn(
17218 handle: cusolverDnHandle_t,
17219 m: cusolver_int_t,
17220 n: cusolver_int_t,
17221 nrhs: cusolver_int_t,
17222 dA: *mut f64,
17223 ldda: cusolver_int_t,
17224 dB: *mut f64,
17225 lddb: cusolver_int_t,
17226 dX: *mut f64,
17227 lddx: cusolver_int_t,
17228 dWorkspace: *mut ::core::ffi::c_void,
17229 lwork_bytes: *mut usize,
17230 ) -> cusolverStatus_t,
17231 pub cusolverDnDDgesv: unsafe extern "C" fn(
17232 handle: cusolverDnHandle_t,
17233 n: cusolver_int_t,
17234 nrhs: cusolver_int_t,
17235 dA: *mut f64,
17236 ldda: cusolver_int_t,
17237 dipiv: *mut cusolver_int_t,
17238 dB: *mut f64,
17239 lddb: cusolver_int_t,
17240 dX: *mut f64,
17241 lddx: cusolver_int_t,
17242 dWorkspace: *mut ::core::ffi::c_void,
17243 lwork_bytes: usize,
17244 iter: *mut cusolver_int_t,
17245 d_info: *mut cusolver_int_t,
17246 ) -> cusolverStatus_t,
17247 pub cusolverDnDDgesv_bufferSize: unsafe extern "C" fn(
17248 handle: cusolverDnHandle_t,
17249 n: cusolver_int_t,
17250 nrhs: cusolver_int_t,
17251 dA: *mut f64,
17252 ldda: cusolver_int_t,
17253 dipiv: *mut cusolver_int_t,
17254 dB: *mut f64,
17255 lddb: cusolver_int_t,
17256 dX: *mut f64,
17257 lddx: cusolver_int_t,
17258 dWorkspace: *mut ::core::ffi::c_void,
17259 lwork_bytes: *mut usize,
17260 ) -> cusolverStatus_t,
17261 pub cusolverDnDHgels: unsafe extern "C" fn(
17262 handle: cusolverDnHandle_t,
17263 m: cusolver_int_t,
17264 n: cusolver_int_t,
17265 nrhs: cusolver_int_t,
17266 dA: *mut f64,
17267 ldda: cusolver_int_t,
17268 dB: *mut f64,
17269 lddb: cusolver_int_t,
17270 dX: *mut f64,
17271 lddx: cusolver_int_t,
17272 dWorkspace: *mut ::core::ffi::c_void,
17273 lwork_bytes: usize,
17274 iter: *mut cusolver_int_t,
17275 d_info: *mut cusolver_int_t,
17276 ) -> cusolverStatus_t,
17277 pub cusolverDnDHgels_bufferSize: unsafe extern "C" fn(
17278 handle: cusolverDnHandle_t,
17279 m: cusolver_int_t,
17280 n: cusolver_int_t,
17281 nrhs: cusolver_int_t,
17282 dA: *mut f64,
17283 ldda: cusolver_int_t,
17284 dB: *mut f64,
17285 lddb: cusolver_int_t,
17286 dX: *mut f64,
17287 lddx: cusolver_int_t,
17288 dWorkspace: *mut ::core::ffi::c_void,
17289 lwork_bytes: *mut usize,
17290 ) -> cusolverStatus_t,
17291 pub cusolverDnDHgesv: unsafe extern "C" fn(
17292 handle: cusolverDnHandle_t,
17293 n: cusolver_int_t,
17294 nrhs: cusolver_int_t,
17295 dA: *mut f64,
17296 ldda: cusolver_int_t,
17297 dipiv: *mut cusolver_int_t,
17298 dB: *mut f64,
17299 lddb: cusolver_int_t,
17300 dX: *mut f64,
17301 lddx: cusolver_int_t,
17302 dWorkspace: *mut ::core::ffi::c_void,
17303 lwork_bytes: usize,
17304 iter: *mut cusolver_int_t,
17305 d_info: *mut cusolver_int_t,
17306 ) -> cusolverStatus_t,
17307 pub cusolverDnDHgesv_bufferSize: unsafe extern "C" fn(
17308 handle: cusolverDnHandle_t,
17309 n: cusolver_int_t,
17310 nrhs: cusolver_int_t,
17311 dA: *mut f64,
17312 ldda: cusolver_int_t,
17313 dipiv: *mut cusolver_int_t,
17314 dB: *mut f64,
17315 lddb: cusolver_int_t,
17316 dX: *mut f64,
17317 lddx: cusolver_int_t,
17318 dWorkspace: *mut ::core::ffi::c_void,
17319 lwork_bytes: *mut usize,
17320 ) -> cusolverStatus_t,
17321 pub cusolverDnDSgels: unsafe extern "C" fn(
17322 handle: cusolverDnHandle_t,
17323 m: cusolver_int_t,
17324 n: cusolver_int_t,
17325 nrhs: cusolver_int_t,
17326 dA: *mut f64,
17327 ldda: cusolver_int_t,
17328 dB: *mut f64,
17329 lddb: cusolver_int_t,
17330 dX: *mut f64,
17331 lddx: cusolver_int_t,
17332 dWorkspace: *mut ::core::ffi::c_void,
17333 lwork_bytes: usize,
17334 iter: *mut cusolver_int_t,
17335 d_info: *mut cusolver_int_t,
17336 ) -> cusolverStatus_t,
17337 pub cusolverDnDSgels_bufferSize: unsafe extern "C" fn(
17338 handle: cusolverDnHandle_t,
17339 m: cusolver_int_t,
17340 n: cusolver_int_t,
17341 nrhs: cusolver_int_t,
17342 dA: *mut f64,
17343 ldda: cusolver_int_t,
17344 dB: *mut f64,
17345 lddb: cusolver_int_t,
17346 dX: *mut f64,
17347 lddx: cusolver_int_t,
17348 dWorkspace: *mut ::core::ffi::c_void,
17349 lwork_bytes: *mut usize,
17350 ) -> cusolverStatus_t,
17351 pub cusolverDnDSgesv: unsafe extern "C" fn(
17352 handle: cusolverDnHandle_t,
17353 n: cusolver_int_t,
17354 nrhs: cusolver_int_t,
17355 dA: *mut f64,
17356 ldda: cusolver_int_t,
17357 dipiv: *mut cusolver_int_t,
17358 dB: *mut f64,
17359 lddb: cusolver_int_t,
17360 dX: *mut f64,
17361 lddx: cusolver_int_t,
17362 dWorkspace: *mut ::core::ffi::c_void,
17363 lwork_bytes: usize,
17364 iter: *mut cusolver_int_t,
17365 d_info: *mut cusolver_int_t,
17366 ) -> cusolverStatus_t,
17367 pub cusolverDnDSgesv_bufferSize: unsafe extern "C" fn(
17368 handle: cusolverDnHandle_t,
17369 n: cusolver_int_t,
17370 nrhs: cusolver_int_t,
17371 dA: *mut f64,
17372 ldda: cusolver_int_t,
17373 dipiv: *mut cusolver_int_t,
17374 dB: *mut f64,
17375 lddb: cusolver_int_t,
17376 dX: *mut f64,
17377 lddx: cusolver_int_t,
17378 dWorkspace: *mut ::core::ffi::c_void,
17379 lwork_bytes: *mut usize,
17380 ) -> cusolverStatus_t,
17381 pub cusolverDnDXgels: unsafe extern "C" fn(
17382 handle: cusolverDnHandle_t,
17383 m: cusolver_int_t,
17384 n: cusolver_int_t,
17385 nrhs: cusolver_int_t,
17386 dA: *mut f64,
17387 ldda: cusolver_int_t,
17388 dB: *mut f64,
17389 lddb: cusolver_int_t,
17390 dX: *mut f64,
17391 lddx: cusolver_int_t,
17392 dWorkspace: *mut ::core::ffi::c_void,
17393 lwork_bytes: usize,
17394 iter: *mut cusolver_int_t,
17395 d_info: *mut cusolver_int_t,
17396 ) -> cusolverStatus_t,
17397 pub cusolverDnDXgels_bufferSize: unsafe extern "C" fn(
17398 handle: cusolverDnHandle_t,
17399 m: cusolver_int_t,
17400 n: cusolver_int_t,
17401 nrhs: cusolver_int_t,
17402 dA: *mut f64,
17403 ldda: cusolver_int_t,
17404 dB: *mut f64,
17405 lddb: cusolver_int_t,
17406 dX: *mut f64,
17407 lddx: cusolver_int_t,
17408 dWorkspace: *mut ::core::ffi::c_void,
17409 lwork_bytes: *mut usize,
17410 ) -> cusolverStatus_t,
17411 pub cusolverDnDXgesv: unsafe extern "C" fn(
17412 handle: cusolverDnHandle_t,
17413 n: cusolver_int_t,
17414 nrhs: cusolver_int_t,
17415 dA: *mut f64,
17416 ldda: cusolver_int_t,
17417 dipiv: *mut cusolver_int_t,
17418 dB: *mut f64,
17419 lddb: cusolver_int_t,
17420 dX: *mut f64,
17421 lddx: cusolver_int_t,
17422 dWorkspace: *mut ::core::ffi::c_void,
17423 lwork_bytes: usize,
17424 iter: *mut cusolver_int_t,
17425 d_info: *mut cusolver_int_t,
17426 ) -> cusolverStatus_t,
17427 pub cusolverDnDXgesv_bufferSize: unsafe extern "C" fn(
17428 handle: cusolverDnHandle_t,
17429 n: cusolver_int_t,
17430 nrhs: cusolver_int_t,
17431 dA: *mut f64,
17432 ldda: cusolver_int_t,
17433 dipiv: *mut cusolver_int_t,
17434 dB: *mut f64,
17435 lddb: cusolver_int_t,
17436 dX: *mut f64,
17437 lddx: cusolver_int_t,
17438 dWorkspace: *mut ::core::ffi::c_void,
17439 lwork_bytes: *mut usize,
17440 ) -> cusolverStatus_t,
17441 pub cusolverDnDestroy: unsafe extern "C" fn(handle: cusolverDnHandle_t) -> cusolverStatus_t,
17442 pub cusolverDnDestroyGesvdjInfo:
17443 unsafe extern "C" fn(info: gesvdjInfo_t) -> cusolverStatus_t,
17444 pub cusolverDnDestroyParams:
17445 unsafe extern "C" fn(params: cusolverDnParams_t) -> cusolverStatus_t,
17446 pub cusolverDnDestroySyevjInfo: unsafe extern "C" fn(info: syevjInfo_t) -> cusolverStatus_t,
17447 pub cusolverDnDgebrd: unsafe extern "C" fn(
17448 handle: cusolverDnHandle_t,
17449 m: ::core::ffi::c_int,
17450 n: ::core::ffi::c_int,
17451 A: *mut f64,
17452 lda: ::core::ffi::c_int,
17453 D: *mut f64,
17454 E: *mut f64,
17455 TAUQ: *mut f64,
17456 TAUP: *mut f64,
17457 Work: *mut f64,
17458 Lwork: ::core::ffi::c_int,
17459 devInfo: *mut ::core::ffi::c_int,
17460 ) -> cusolverStatus_t,
17461 pub cusolverDnDgebrd_bufferSize: unsafe extern "C" fn(
17462 handle: cusolverDnHandle_t,
17463 m: ::core::ffi::c_int,
17464 n: ::core::ffi::c_int,
17465 Lwork: *mut ::core::ffi::c_int,
17466 ) -> cusolverStatus_t,
17467 pub cusolverDnDgeqrf: unsafe extern "C" fn(
17468 handle: cusolverDnHandle_t,
17469 m: ::core::ffi::c_int,
17470 n: ::core::ffi::c_int,
17471 A: *mut f64,
17472 lda: ::core::ffi::c_int,
17473 TAU: *mut f64,
17474 Workspace: *mut f64,
17475 Lwork: ::core::ffi::c_int,
17476 devInfo: *mut ::core::ffi::c_int,
17477 ) -> cusolverStatus_t,
17478 pub cusolverDnDgeqrf_bufferSize: unsafe extern "C" fn(
17479 handle: cusolverDnHandle_t,
17480 m: ::core::ffi::c_int,
17481 n: ::core::ffi::c_int,
17482 A: *mut f64,
17483 lda: ::core::ffi::c_int,
17484 lwork: *mut ::core::ffi::c_int,
17485 ) -> cusolverStatus_t,
17486 pub cusolverDnDgesvd: unsafe extern "C" fn(
17487 handle: cusolverDnHandle_t,
17488 jobu: ::core::ffi::c_schar,
17489 jobvt: ::core::ffi::c_schar,
17490 m: ::core::ffi::c_int,
17491 n: ::core::ffi::c_int,
17492 A: *mut f64,
17493 lda: ::core::ffi::c_int,
17494 S: *mut f64,
17495 U: *mut f64,
17496 ldu: ::core::ffi::c_int,
17497 VT: *mut f64,
17498 ldvt: ::core::ffi::c_int,
17499 work: *mut f64,
17500 lwork: ::core::ffi::c_int,
17501 rwork: *mut f64,
17502 info: *mut ::core::ffi::c_int,
17503 ) -> cusolverStatus_t,
17504 pub cusolverDnDgesvd_bufferSize: unsafe extern "C" fn(
17505 handle: cusolverDnHandle_t,
17506 m: ::core::ffi::c_int,
17507 n: ::core::ffi::c_int,
17508 lwork: *mut ::core::ffi::c_int,
17509 ) -> cusolverStatus_t,
17510 pub cusolverDnDgesvdaStridedBatched: unsafe extern "C" fn(
17511 handle: cusolverDnHandle_t,
17512 jobz: cusolverEigMode_t,
17513 rank: ::core::ffi::c_int,
17514 m: ::core::ffi::c_int,
17515 n: ::core::ffi::c_int,
17516 d_A: *const f64,
17517 lda: ::core::ffi::c_int,
17518 strideA: ::core::ffi::c_longlong,
17519 d_S: *mut f64,
17520 strideS: ::core::ffi::c_longlong,
17521 d_U: *mut f64,
17522 ldu: ::core::ffi::c_int,
17523 strideU: ::core::ffi::c_longlong,
17524 d_V: *mut f64,
17525 ldv: ::core::ffi::c_int,
17526 strideV: ::core::ffi::c_longlong,
17527 d_work: *mut f64,
17528 lwork: ::core::ffi::c_int,
17529 d_info: *mut ::core::ffi::c_int,
17530 h_R_nrmF: *mut f64,
17531 batchSize: ::core::ffi::c_int,
17532 ) -> cusolverStatus_t,
17533 pub cusolverDnDgesvdaStridedBatched_bufferSize: unsafe extern "C" fn(
17534 handle: cusolverDnHandle_t,
17535 jobz: cusolverEigMode_t,
17536 rank: ::core::ffi::c_int,
17537 m: ::core::ffi::c_int,
17538 n: ::core::ffi::c_int,
17539 d_A: *const f64,
17540 lda: ::core::ffi::c_int,
17541 strideA: ::core::ffi::c_longlong,
17542 d_S: *const f64,
17543 strideS: ::core::ffi::c_longlong,
17544 d_U: *const f64,
17545 ldu: ::core::ffi::c_int,
17546 strideU: ::core::ffi::c_longlong,
17547 d_V: *const f64,
17548 ldv: ::core::ffi::c_int,
17549 strideV: ::core::ffi::c_longlong,
17550 lwork: *mut ::core::ffi::c_int,
17551 batchSize: ::core::ffi::c_int,
17552 )
17553 -> cusolverStatus_t,
17554 pub cusolverDnDgesvdj: unsafe extern "C" fn(
17555 handle: cusolverDnHandle_t,
17556 jobz: cusolverEigMode_t,
17557 econ: ::core::ffi::c_int,
17558 m: ::core::ffi::c_int,
17559 n: ::core::ffi::c_int,
17560 A: *mut f64,
17561 lda: ::core::ffi::c_int,
17562 S: *mut f64,
17563 U: *mut f64,
17564 ldu: ::core::ffi::c_int,
17565 V: *mut f64,
17566 ldv: ::core::ffi::c_int,
17567 work: *mut f64,
17568 lwork: ::core::ffi::c_int,
17569 info: *mut ::core::ffi::c_int,
17570 params: gesvdjInfo_t,
17571 ) -> cusolverStatus_t,
17572 pub cusolverDnDgesvdjBatched: unsafe extern "C" fn(
17573 handle: cusolverDnHandle_t,
17574 jobz: cusolverEigMode_t,
17575 m: ::core::ffi::c_int,
17576 n: ::core::ffi::c_int,
17577 A: *mut f64,
17578 lda: ::core::ffi::c_int,
17579 S: *mut f64,
17580 U: *mut f64,
17581 ldu: ::core::ffi::c_int,
17582 V: *mut f64,
17583 ldv: ::core::ffi::c_int,
17584 work: *mut f64,
17585 lwork: ::core::ffi::c_int,
17586 info: *mut ::core::ffi::c_int,
17587 params: gesvdjInfo_t,
17588 batchSize: ::core::ffi::c_int,
17589 ) -> cusolverStatus_t,
17590 pub cusolverDnDgesvdjBatched_bufferSize: unsafe extern "C" fn(
17591 handle: cusolverDnHandle_t,
17592 jobz: cusolverEigMode_t,
17593 m: ::core::ffi::c_int,
17594 n: ::core::ffi::c_int,
17595 A: *const f64,
17596 lda: ::core::ffi::c_int,
17597 S: *const f64,
17598 U: *const f64,
17599 ldu: ::core::ffi::c_int,
17600 V: *const f64,
17601 ldv: ::core::ffi::c_int,
17602 lwork: *mut ::core::ffi::c_int,
17603 params: gesvdjInfo_t,
17604 batchSize: ::core::ffi::c_int,
17605 ) -> cusolverStatus_t,
17606 pub cusolverDnDgesvdj_bufferSize: unsafe extern "C" fn(
17607 handle: cusolverDnHandle_t,
17608 jobz: cusolverEigMode_t,
17609 econ: ::core::ffi::c_int,
17610 m: ::core::ffi::c_int,
17611 n: ::core::ffi::c_int,
17612 A: *const f64,
17613 lda: ::core::ffi::c_int,
17614 S: *const f64,
17615 U: *const f64,
17616 ldu: ::core::ffi::c_int,
17617 V: *const f64,
17618 ldv: ::core::ffi::c_int,
17619 lwork: *mut ::core::ffi::c_int,
17620 params: gesvdjInfo_t,
17621 ) -> cusolverStatus_t,
17622 pub cusolverDnDgetrf: unsafe extern "C" fn(
17623 handle: cusolverDnHandle_t,
17624 m: ::core::ffi::c_int,
17625 n: ::core::ffi::c_int,
17626 A: *mut f64,
17627 lda: ::core::ffi::c_int,
17628 Workspace: *mut f64,
17629 devIpiv: *mut ::core::ffi::c_int,
17630 devInfo: *mut ::core::ffi::c_int,
17631 ) -> cusolverStatus_t,
17632 pub cusolverDnDgetrf_bufferSize: unsafe extern "C" fn(
17633 handle: cusolverDnHandle_t,
17634 m: ::core::ffi::c_int,
17635 n: ::core::ffi::c_int,
17636 A: *mut f64,
17637 lda: ::core::ffi::c_int,
17638 Lwork: *mut ::core::ffi::c_int,
17639 ) -> cusolverStatus_t,
17640 pub cusolverDnDgetrs: unsafe extern "C" fn(
17641 handle: cusolverDnHandle_t,
17642 trans: cublasOperation_t,
17643 n: ::core::ffi::c_int,
17644 nrhs: ::core::ffi::c_int,
17645 A: *const f64,
17646 lda: ::core::ffi::c_int,
17647 devIpiv: *const ::core::ffi::c_int,
17648 B: *mut f64,
17649 ldb: ::core::ffi::c_int,
17650 devInfo: *mut ::core::ffi::c_int,
17651 ) -> cusolverStatus_t,
17652 pub cusolverDnDlaswp: unsafe extern "C" fn(
17653 handle: cusolverDnHandle_t,
17654 n: ::core::ffi::c_int,
17655 A: *mut f64,
17656 lda: ::core::ffi::c_int,
17657 k1: ::core::ffi::c_int,
17658 k2: ::core::ffi::c_int,
17659 devIpiv: *const ::core::ffi::c_int,
17660 incx: ::core::ffi::c_int,
17661 ) -> cusolverStatus_t,
17662 pub cusolverDnDlauum: unsafe extern "C" fn(
17663 handle: cusolverDnHandle_t,
17664 uplo: cublasFillMode_t,
17665 n: ::core::ffi::c_int,
17666 A: *mut f64,
17667 lda: ::core::ffi::c_int,
17668 work: *mut f64,
17669 lwork: ::core::ffi::c_int,
17670 devInfo: *mut ::core::ffi::c_int,
17671 ) -> cusolverStatus_t,
17672 pub cusolverDnDlauum_bufferSize: unsafe extern "C" fn(
17673 handle: cusolverDnHandle_t,
17674 uplo: cublasFillMode_t,
17675 n: ::core::ffi::c_int,
17676 A: *mut f64,
17677 lda: ::core::ffi::c_int,
17678 lwork: *mut ::core::ffi::c_int,
17679 ) -> cusolverStatus_t,
17680 pub cusolverDnDorgbr: unsafe extern "C" fn(
17681 handle: cusolverDnHandle_t,
17682 side: cublasSideMode_t,
17683 m: ::core::ffi::c_int,
17684 n: ::core::ffi::c_int,
17685 k: ::core::ffi::c_int,
17686 A: *mut f64,
17687 lda: ::core::ffi::c_int,
17688 tau: *const f64,
17689 work: *mut f64,
17690 lwork: ::core::ffi::c_int,
17691 info: *mut ::core::ffi::c_int,
17692 ) -> cusolverStatus_t,
17693 pub cusolverDnDorgbr_bufferSize: unsafe extern "C" fn(
17694 handle: cusolverDnHandle_t,
17695 side: cublasSideMode_t,
17696 m: ::core::ffi::c_int,
17697 n: ::core::ffi::c_int,
17698 k: ::core::ffi::c_int,
17699 A: *const f64,
17700 lda: ::core::ffi::c_int,
17701 tau: *const f64,
17702 lwork: *mut ::core::ffi::c_int,
17703 ) -> cusolverStatus_t,
17704 pub cusolverDnDorgqr: unsafe extern "C" fn(
17705 handle: cusolverDnHandle_t,
17706 m: ::core::ffi::c_int,
17707 n: ::core::ffi::c_int,
17708 k: ::core::ffi::c_int,
17709 A: *mut f64,
17710 lda: ::core::ffi::c_int,
17711 tau: *const f64,
17712 work: *mut f64,
17713 lwork: ::core::ffi::c_int,
17714 info: *mut ::core::ffi::c_int,
17715 ) -> cusolverStatus_t,
17716 pub cusolverDnDorgqr_bufferSize: unsafe extern "C" fn(
17717 handle: cusolverDnHandle_t,
17718 m: ::core::ffi::c_int,
17719 n: ::core::ffi::c_int,
17720 k: ::core::ffi::c_int,
17721 A: *const f64,
17722 lda: ::core::ffi::c_int,
17723 tau: *const f64,
17724 lwork: *mut ::core::ffi::c_int,
17725 ) -> cusolverStatus_t,
17726 pub cusolverDnDorgtr: unsafe extern "C" fn(
17727 handle: cusolverDnHandle_t,
17728 uplo: cublasFillMode_t,
17729 n: ::core::ffi::c_int,
17730 A: *mut f64,
17731 lda: ::core::ffi::c_int,
17732 tau: *const f64,
17733 work: *mut f64,
17734 lwork: ::core::ffi::c_int,
17735 info: *mut ::core::ffi::c_int,
17736 ) -> cusolverStatus_t,
17737 pub cusolverDnDorgtr_bufferSize: unsafe extern "C" fn(
17738 handle: cusolverDnHandle_t,
17739 uplo: cublasFillMode_t,
17740 n: ::core::ffi::c_int,
17741 A: *const f64,
17742 lda: ::core::ffi::c_int,
17743 tau: *const f64,
17744 lwork: *mut ::core::ffi::c_int,
17745 ) -> cusolverStatus_t,
17746 pub cusolverDnDormqr: unsafe extern "C" fn(
17747 handle: cusolverDnHandle_t,
17748 side: cublasSideMode_t,
17749 trans: cublasOperation_t,
17750 m: ::core::ffi::c_int,
17751 n: ::core::ffi::c_int,
17752 k: ::core::ffi::c_int,
17753 A: *const f64,
17754 lda: ::core::ffi::c_int,
17755 tau: *const f64,
17756 C: *mut f64,
17757 ldc: ::core::ffi::c_int,
17758 work: *mut f64,
17759 lwork: ::core::ffi::c_int,
17760 devInfo: *mut ::core::ffi::c_int,
17761 ) -> cusolverStatus_t,
17762 pub cusolverDnDormqr_bufferSize: unsafe extern "C" fn(
17763 handle: cusolverDnHandle_t,
17764 side: cublasSideMode_t,
17765 trans: cublasOperation_t,
17766 m: ::core::ffi::c_int,
17767 n: ::core::ffi::c_int,
17768 k: ::core::ffi::c_int,
17769 A: *const f64,
17770 lda: ::core::ffi::c_int,
17771 tau: *const f64,
17772 C: *const f64,
17773 ldc: ::core::ffi::c_int,
17774 lwork: *mut ::core::ffi::c_int,
17775 ) -> cusolverStatus_t,
17776 pub cusolverDnDormtr: unsafe extern "C" fn(
17777 handle: cusolverDnHandle_t,
17778 side: cublasSideMode_t,
17779 uplo: cublasFillMode_t,
17780 trans: cublasOperation_t,
17781 m: ::core::ffi::c_int,
17782 n: ::core::ffi::c_int,
17783 A: *mut f64,
17784 lda: ::core::ffi::c_int,
17785 tau: *mut f64,
17786 C: *mut f64,
17787 ldc: ::core::ffi::c_int,
17788 work: *mut f64,
17789 lwork: ::core::ffi::c_int,
17790 info: *mut ::core::ffi::c_int,
17791 ) -> cusolverStatus_t,
17792 pub cusolverDnDormtr_bufferSize: unsafe extern "C" fn(
17793 handle: cusolverDnHandle_t,
17794 side: cublasSideMode_t,
17795 uplo: cublasFillMode_t,
17796 trans: cublasOperation_t,
17797 m: ::core::ffi::c_int,
17798 n: ::core::ffi::c_int,
17799 A: *const f64,
17800 lda: ::core::ffi::c_int,
17801 tau: *const f64,
17802 C: *const f64,
17803 ldc: ::core::ffi::c_int,
17804 lwork: *mut ::core::ffi::c_int,
17805 ) -> cusolverStatus_t,
17806 pub cusolverDnDpotrf: unsafe extern "C" fn(
17807 handle: cusolverDnHandle_t,
17808 uplo: cublasFillMode_t,
17809 n: ::core::ffi::c_int,
17810 A: *mut f64,
17811 lda: ::core::ffi::c_int,
17812 Workspace: *mut f64,
17813 Lwork: ::core::ffi::c_int,
17814 devInfo: *mut ::core::ffi::c_int,
17815 ) -> cusolverStatus_t,
17816 pub cusolverDnDpotrfBatched: unsafe extern "C" fn(
17817 handle: cusolverDnHandle_t,
17818 uplo: cublasFillMode_t,
17819 n: ::core::ffi::c_int,
17820 Aarray: *mut *mut f64,
17821 lda: ::core::ffi::c_int,
17822 infoArray: *mut ::core::ffi::c_int,
17823 batchSize: ::core::ffi::c_int,
17824 ) -> cusolverStatus_t,
17825 pub cusolverDnDpotrf_bufferSize: unsafe extern "C" fn(
17826 handle: cusolverDnHandle_t,
17827 uplo: cublasFillMode_t,
17828 n: ::core::ffi::c_int,
17829 A: *mut f64,
17830 lda: ::core::ffi::c_int,
17831 Lwork: *mut ::core::ffi::c_int,
17832 ) -> cusolverStatus_t,
17833 pub cusolverDnDpotri: unsafe extern "C" fn(
17834 handle: cusolverDnHandle_t,
17835 uplo: cublasFillMode_t,
17836 n: ::core::ffi::c_int,
17837 A: *mut f64,
17838 lda: ::core::ffi::c_int,
17839 work: *mut f64,
17840 lwork: ::core::ffi::c_int,
17841 devInfo: *mut ::core::ffi::c_int,
17842 ) -> cusolverStatus_t,
17843 pub cusolverDnDpotri_bufferSize: unsafe extern "C" fn(
17844 handle: cusolverDnHandle_t,
17845 uplo: cublasFillMode_t,
17846 n: ::core::ffi::c_int,
17847 A: *mut f64,
17848 lda: ::core::ffi::c_int,
17849 lwork: *mut ::core::ffi::c_int,
17850 ) -> cusolverStatus_t,
17851 pub cusolverDnDpotrs: unsafe extern "C" fn(
17852 handle: cusolverDnHandle_t,
17853 uplo: cublasFillMode_t,
17854 n: ::core::ffi::c_int,
17855 nrhs: ::core::ffi::c_int,
17856 A: *const f64,
17857 lda: ::core::ffi::c_int,
17858 B: *mut f64,
17859 ldb: ::core::ffi::c_int,
17860 devInfo: *mut ::core::ffi::c_int,
17861 ) -> cusolverStatus_t,
17862 pub cusolverDnDpotrsBatched: unsafe extern "C" fn(
17863 handle: cusolverDnHandle_t,
17864 uplo: cublasFillMode_t,
17865 n: ::core::ffi::c_int,
17866 nrhs: ::core::ffi::c_int,
17867 A: *mut *mut f64,
17868 lda: ::core::ffi::c_int,
17869 B: *mut *mut f64,
17870 ldb: ::core::ffi::c_int,
17871 d_info: *mut ::core::ffi::c_int,
17872 batchSize: ::core::ffi::c_int,
17873 ) -> cusolverStatus_t,
17874 pub cusolverDnDsyevd: unsafe extern "C" fn(
17875 handle: cusolverDnHandle_t,
17876 jobz: cusolverEigMode_t,
17877 uplo: cublasFillMode_t,
17878 n: ::core::ffi::c_int,
17879 A: *mut f64,
17880 lda: ::core::ffi::c_int,
17881 W: *mut f64,
17882 work: *mut f64,
17883 lwork: ::core::ffi::c_int,
17884 info: *mut ::core::ffi::c_int,
17885 ) -> cusolverStatus_t,
17886 pub cusolverDnDsyevd_bufferSize: unsafe extern "C" fn(
17887 handle: cusolverDnHandle_t,
17888 jobz: cusolverEigMode_t,
17889 uplo: cublasFillMode_t,
17890 n: ::core::ffi::c_int,
17891 A: *const f64,
17892 lda: ::core::ffi::c_int,
17893 W: *const f64,
17894 lwork: *mut ::core::ffi::c_int,
17895 ) -> cusolverStatus_t,
17896 pub cusolverDnDsyevdx: unsafe extern "C" fn(
17897 handle: cusolverDnHandle_t,
17898 jobz: cusolverEigMode_t,
17899 range: cusolverEigRange_t,
17900 uplo: cublasFillMode_t,
17901 n: ::core::ffi::c_int,
17902 A: *mut f64,
17903 lda: ::core::ffi::c_int,
17904 vl: f64,
17905 vu: f64,
17906 il: ::core::ffi::c_int,
17907 iu: ::core::ffi::c_int,
17908 meig: *mut ::core::ffi::c_int,
17909 W: *mut f64,
17910 work: *mut f64,
17911 lwork: ::core::ffi::c_int,
17912 info: *mut ::core::ffi::c_int,
17913 ) -> cusolverStatus_t,
17914 pub cusolverDnDsyevdx_bufferSize: unsafe extern "C" fn(
17915 handle: cusolverDnHandle_t,
17916 jobz: cusolverEigMode_t,
17917 range: cusolverEigRange_t,
17918 uplo: cublasFillMode_t,
17919 n: ::core::ffi::c_int,
17920 A: *const f64,
17921 lda: ::core::ffi::c_int,
17922 vl: f64,
17923 vu: f64,
17924 il: ::core::ffi::c_int,
17925 iu: ::core::ffi::c_int,
17926 meig: *mut ::core::ffi::c_int,
17927 W: *const f64,
17928 lwork: *mut ::core::ffi::c_int,
17929 ) -> cusolverStatus_t,
17930 pub cusolverDnDsyevj: unsafe extern "C" fn(
17931 handle: cusolverDnHandle_t,
17932 jobz: cusolverEigMode_t,
17933 uplo: cublasFillMode_t,
17934 n: ::core::ffi::c_int,
17935 A: *mut f64,
17936 lda: ::core::ffi::c_int,
17937 W: *mut f64,
17938 work: *mut f64,
17939 lwork: ::core::ffi::c_int,
17940 info: *mut ::core::ffi::c_int,
17941 params: syevjInfo_t,
17942 ) -> cusolverStatus_t,
17943 pub cusolverDnDsyevjBatched: unsafe extern "C" fn(
17944 handle: cusolverDnHandle_t,
17945 jobz: cusolverEigMode_t,
17946 uplo: cublasFillMode_t,
17947 n: ::core::ffi::c_int,
17948 A: *mut f64,
17949 lda: ::core::ffi::c_int,
17950 W: *mut f64,
17951 work: *mut f64,
17952 lwork: ::core::ffi::c_int,
17953 info: *mut ::core::ffi::c_int,
17954 params: syevjInfo_t,
17955 batchSize: ::core::ffi::c_int,
17956 ) -> cusolverStatus_t,
17957 pub cusolverDnDsyevjBatched_bufferSize: unsafe extern "C" fn(
17958 handle: cusolverDnHandle_t,
17959 jobz: cusolverEigMode_t,
17960 uplo: cublasFillMode_t,
17961 n: ::core::ffi::c_int,
17962 A: *const f64,
17963 lda: ::core::ffi::c_int,
17964 W: *const f64,
17965 lwork: *mut ::core::ffi::c_int,
17966 params: syevjInfo_t,
17967 batchSize: ::core::ffi::c_int,
17968 ) -> cusolverStatus_t,
17969 pub cusolverDnDsyevj_bufferSize: unsafe extern "C" fn(
17970 handle: cusolverDnHandle_t,
17971 jobz: cusolverEigMode_t,
17972 uplo: cublasFillMode_t,
17973 n: ::core::ffi::c_int,
17974 A: *const f64,
17975 lda: ::core::ffi::c_int,
17976 W: *const f64,
17977 lwork: *mut ::core::ffi::c_int,
17978 params: syevjInfo_t,
17979 ) -> cusolverStatus_t,
17980 pub cusolverDnDsygvd: unsafe extern "C" fn(
17981 handle: cusolverDnHandle_t,
17982 itype: cusolverEigType_t,
17983 jobz: cusolverEigMode_t,
17984 uplo: cublasFillMode_t,
17985 n: ::core::ffi::c_int,
17986 A: *mut f64,
17987 lda: ::core::ffi::c_int,
17988 B: *mut f64,
17989 ldb: ::core::ffi::c_int,
17990 W: *mut f64,
17991 work: *mut f64,
17992 lwork: ::core::ffi::c_int,
17993 info: *mut ::core::ffi::c_int,
17994 ) -> cusolverStatus_t,
17995 pub cusolverDnDsygvd_bufferSize: unsafe extern "C" fn(
17996 handle: cusolverDnHandle_t,
17997 itype: cusolverEigType_t,
17998 jobz: cusolverEigMode_t,
17999 uplo: cublasFillMode_t,
18000 n: ::core::ffi::c_int,
18001 A: *const f64,
18002 lda: ::core::ffi::c_int,
18003 B: *const f64,
18004 ldb: ::core::ffi::c_int,
18005 W: *const f64,
18006 lwork: *mut ::core::ffi::c_int,
18007 ) -> cusolverStatus_t,
18008 pub cusolverDnDsygvdx: unsafe extern "C" fn(
18009 handle: cusolverDnHandle_t,
18010 itype: cusolverEigType_t,
18011 jobz: cusolverEigMode_t,
18012 range: cusolverEigRange_t,
18013 uplo: cublasFillMode_t,
18014 n: ::core::ffi::c_int,
18015 A: *mut f64,
18016 lda: ::core::ffi::c_int,
18017 B: *mut f64,
18018 ldb: ::core::ffi::c_int,
18019 vl: f64,
18020 vu: f64,
18021 il: ::core::ffi::c_int,
18022 iu: ::core::ffi::c_int,
18023 meig: *mut ::core::ffi::c_int,
18024 W: *mut f64,
18025 work: *mut f64,
18026 lwork: ::core::ffi::c_int,
18027 info: *mut ::core::ffi::c_int,
18028 ) -> cusolverStatus_t,
18029 pub cusolverDnDsygvdx_bufferSize: unsafe extern "C" fn(
18030 handle: cusolverDnHandle_t,
18031 itype: cusolverEigType_t,
18032 jobz: cusolverEigMode_t,
18033 range: cusolverEigRange_t,
18034 uplo: cublasFillMode_t,
18035 n: ::core::ffi::c_int,
18036 A: *const f64,
18037 lda: ::core::ffi::c_int,
18038 B: *const f64,
18039 ldb: ::core::ffi::c_int,
18040 vl: f64,
18041 vu: f64,
18042 il: ::core::ffi::c_int,
18043 iu: ::core::ffi::c_int,
18044 meig: *mut ::core::ffi::c_int,
18045 W: *const f64,
18046 lwork: *mut ::core::ffi::c_int,
18047 ) -> cusolverStatus_t,
18048 pub cusolverDnDsygvj: unsafe extern "C" fn(
18049 handle: cusolverDnHandle_t,
18050 itype: cusolverEigType_t,
18051 jobz: cusolverEigMode_t,
18052 uplo: cublasFillMode_t,
18053 n: ::core::ffi::c_int,
18054 A: *mut f64,
18055 lda: ::core::ffi::c_int,
18056 B: *mut f64,
18057 ldb: ::core::ffi::c_int,
18058 W: *mut f64,
18059 work: *mut f64,
18060 lwork: ::core::ffi::c_int,
18061 info: *mut ::core::ffi::c_int,
18062 params: syevjInfo_t,
18063 ) -> cusolverStatus_t,
18064 pub cusolverDnDsygvj_bufferSize: unsafe extern "C" fn(
18065 handle: cusolverDnHandle_t,
18066 itype: cusolverEigType_t,
18067 jobz: cusolverEigMode_t,
18068 uplo: cublasFillMode_t,
18069 n: ::core::ffi::c_int,
18070 A: *const f64,
18071 lda: ::core::ffi::c_int,
18072 B: *const f64,
18073 ldb: ::core::ffi::c_int,
18074 W: *const f64,
18075 lwork: *mut ::core::ffi::c_int,
18076 params: syevjInfo_t,
18077 ) -> cusolverStatus_t,
18078 pub cusolverDnDsytrd: unsafe extern "C" fn(
18079 handle: cusolverDnHandle_t,
18080 uplo: cublasFillMode_t,
18081 n: ::core::ffi::c_int,
18082 A: *mut f64,
18083 lda: ::core::ffi::c_int,
18084 d: *mut f64,
18085 e: *mut f64,
18086 tau: *mut f64,
18087 work: *mut f64,
18088 lwork: ::core::ffi::c_int,
18089 info: *mut ::core::ffi::c_int,
18090 ) -> cusolverStatus_t,
18091 pub cusolverDnDsytrd_bufferSize: unsafe extern "C" fn(
18092 handle: cusolverDnHandle_t,
18093 uplo: cublasFillMode_t,
18094 n: ::core::ffi::c_int,
18095 A: *const f64,
18096 lda: ::core::ffi::c_int,
18097 d: *const f64,
18098 e: *const f64,
18099 tau: *const f64,
18100 lwork: *mut ::core::ffi::c_int,
18101 ) -> cusolverStatus_t,
18102 pub cusolverDnDsytrf: unsafe extern "C" fn(
18103 handle: cusolverDnHandle_t,
18104 uplo: cublasFillMode_t,
18105 n: ::core::ffi::c_int,
18106 A: *mut f64,
18107 lda: ::core::ffi::c_int,
18108 ipiv: *mut ::core::ffi::c_int,
18109 work: *mut f64,
18110 lwork: ::core::ffi::c_int,
18111 info: *mut ::core::ffi::c_int,
18112 ) -> cusolverStatus_t,
18113 pub cusolverDnDsytrf_bufferSize: unsafe extern "C" fn(
18114 handle: cusolverDnHandle_t,
18115 n: ::core::ffi::c_int,
18116 A: *mut f64,
18117 lda: ::core::ffi::c_int,
18118 lwork: *mut ::core::ffi::c_int,
18119 ) -> cusolverStatus_t,
18120 pub cusolverDnDsytri: unsafe extern "C" fn(
18121 handle: cusolverDnHandle_t,
18122 uplo: cublasFillMode_t,
18123 n: ::core::ffi::c_int,
18124 A: *mut f64,
18125 lda: ::core::ffi::c_int,
18126 ipiv: *const ::core::ffi::c_int,
18127 work: *mut f64,
18128 lwork: ::core::ffi::c_int,
18129 info: *mut ::core::ffi::c_int,
18130 ) -> cusolverStatus_t,
18131 pub cusolverDnDsytri_bufferSize: unsafe extern "C" fn(
18132 handle: cusolverDnHandle_t,
18133 uplo: cublasFillMode_t,
18134 n: ::core::ffi::c_int,
18135 A: *mut f64,
18136 lda: ::core::ffi::c_int,
18137 ipiv: *const ::core::ffi::c_int,
18138 lwork: *mut ::core::ffi::c_int,
18139 ) -> cusolverStatus_t,
18140 #[cfg(any(
18141 feature = "cuda-11040",
18142 feature = "cuda-11050",
18143 feature = "cuda-11060",
18144 feature = "cuda-11070",
18145 feature = "cuda-11080",
18146 feature = "cuda-12000",
18147 feature = "cuda-12010",
18148 feature = "cuda-12020",
18149 feature = "cuda-12030",
18150 feature = "cuda-12040",
18151 feature = "cuda-12050",
18152 feature = "cuda-12060",
18153 feature = "cuda-12080",
18154 feature = "cuda-12090"
18155 ))]
18156 pub cusolverDnGeqrf: unsafe extern "C" fn(
18157 handle: cusolverDnHandle_t,
18158 params: cusolverDnParams_t,
18159 m: i64,
18160 n: i64,
18161 dataTypeA: cudaDataType,
18162 A: *mut ::core::ffi::c_void,
18163 lda: i64,
18164 dataTypeTau: cudaDataType,
18165 tau: *mut ::core::ffi::c_void,
18166 computeType: cudaDataType,
18167 pBuffer: *mut ::core::ffi::c_void,
18168 workspaceInBytes: usize,
18169 info: *mut ::core::ffi::c_int,
18170 ) -> cusolverStatus_t,
18171 #[cfg(any(
18172 feature = "cuda-11040",
18173 feature = "cuda-11050",
18174 feature = "cuda-11060",
18175 feature = "cuda-11070",
18176 feature = "cuda-11080",
18177 feature = "cuda-12000",
18178 feature = "cuda-12010",
18179 feature = "cuda-12020",
18180 feature = "cuda-12030",
18181 feature = "cuda-12040",
18182 feature = "cuda-12050",
18183 feature = "cuda-12060",
18184 feature = "cuda-12080",
18185 feature = "cuda-12090"
18186 ))]
18187 pub cusolverDnGeqrf_bufferSize: unsafe extern "C" fn(
18188 handle: cusolverDnHandle_t,
18189 params: cusolverDnParams_t,
18190 m: i64,
18191 n: i64,
18192 dataTypeA: cudaDataType,
18193 A: *const ::core::ffi::c_void,
18194 lda: i64,
18195 dataTypeTau: cudaDataType,
18196 tau: *const ::core::ffi::c_void,
18197 computeType: cudaDataType,
18198 workspaceInBytes: *mut usize,
18199 ) -> cusolverStatus_t,
18200 #[cfg(any(
18201 feature = "cuda-11040",
18202 feature = "cuda-11050",
18203 feature = "cuda-11060",
18204 feature = "cuda-11070",
18205 feature = "cuda-11080",
18206 feature = "cuda-12000",
18207 feature = "cuda-12010",
18208 feature = "cuda-12020",
18209 feature = "cuda-12030",
18210 feature = "cuda-12040",
18211 feature = "cuda-12050",
18212 feature = "cuda-12060",
18213 feature = "cuda-12080",
18214 feature = "cuda-12090"
18215 ))]
18216 pub cusolverDnGesvd: unsafe extern "C" fn(
18217 handle: cusolverDnHandle_t,
18218 params: cusolverDnParams_t,
18219 jobu: ::core::ffi::c_schar,
18220 jobvt: ::core::ffi::c_schar,
18221 m: i64,
18222 n: i64,
18223 dataTypeA: cudaDataType,
18224 A: *mut ::core::ffi::c_void,
18225 lda: i64,
18226 dataTypeS: cudaDataType,
18227 S: *mut ::core::ffi::c_void,
18228 dataTypeU: cudaDataType,
18229 U: *mut ::core::ffi::c_void,
18230 ldu: i64,
18231 dataTypeVT: cudaDataType,
18232 VT: *mut ::core::ffi::c_void,
18233 ldvt: i64,
18234 computeType: cudaDataType,
18235 pBuffer: *mut ::core::ffi::c_void,
18236 workspaceInBytes: usize,
18237 info: *mut ::core::ffi::c_int,
18238 ) -> cusolverStatus_t,
18239 #[cfg(any(
18240 feature = "cuda-11040",
18241 feature = "cuda-11050",
18242 feature = "cuda-11060",
18243 feature = "cuda-11070",
18244 feature = "cuda-11080",
18245 feature = "cuda-12000",
18246 feature = "cuda-12010",
18247 feature = "cuda-12020",
18248 feature = "cuda-12030",
18249 feature = "cuda-12040",
18250 feature = "cuda-12050",
18251 feature = "cuda-12060",
18252 feature = "cuda-12080",
18253 feature = "cuda-12090"
18254 ))]
18255 pub cusolverDnGesvd_bufferSize: unsafe extern "C" fn(
18256 handle: cusolverDnHandle_t,
18257 params: cusolverDnParams_t,
18258 jobu: ::core::ffi::c_schar,
18259 jobvt: ::core::ffi::c_schar,
18260 m: i64,
18261 n: i64,
18262 dataTypeA: cudaDataType,
18263 A: *const ::core::ffi::c_void,
18264 lda: i64,
18265 dataTypeS: cudaDataType,
18266 S: *const ::core::ffi::c_void,
18267 dataTypeU: cudaDataType,
18268 U: *const ::core::ffi::c_void,
18269 ldu: i64,
18270 dataTypeVT: cudaDataType,
18271 VT: *const ::core::ffi::c_void,
18272 ldvt: i64,
18273 computeType: cudaDataType,
18274 workspaceInBytes: *mut usize,
18275 ) -> cusolverStatus_t,
18276 #[cfg(any(
18277 feature = "cuda-12020",
18278 feature = "cuda-12030",
18279 feature = "cuda-12040",
18280 feature = "cuda-12050",
18281 feature = "cuda-12060",
18282 feature = "cuda-12080",
18283 feature = "cuda-12090",
18284 feature = "cuda-13000",
18285 feature = "cuda-13010"
18286 ))]
18287 pub cusolverDnGetDeterministicMode: unsafe extern "C" fn(
18288 handle: cusolverDnHandle_t,
18289 mode: *mut cusolverDeterministicMode_t,
18290 ) -> cusolverStatus_t,
18291 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
18292 pub cusolverDnGetEmulationStrategy: unsafe extern "C" fn(
18293 handle: cusolverDnHandle_t,
18294 strategy: *mut cudaEmulationStrategy_t,
18295 ) -> cusolverStatus_t,
18296 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
18297 pub cusolverDnGetMathMode: unsafe extern "C" fn(
18298 handle: cusolverDnHandle_t,
18299 mode: *mut cusolverMathMode_t,
18300 ) -> cusolverStatus_t,
18301 pub cusolverDnGetStream: unsafe extern "C" fn(
18302 handle: cusolverDnHandle_t,
18303 streamId: *mut cudaStream_t,
18304 ) -> cusolverStatus_t,
18305 #[cfg(any(
18306 feature = "cuda-11040",
18307 feature = "cuda-11050",
18308 feature = "cuda-11060",
18309 feature = "cuda-11070",
18310 feature = "cuda-11080",
18311 feature = "cuda-12000",
18312 feature = "cuda-12010",
18313 feature = "cuda-12020",
18314 feature = "cuda-12030",
18315 feature = "cuda-12040",
18316 feature = "cuda-12050",
18317 feature = "cuda-12060",
18318 feature = "cuda-12080",
18319 feature = "cuda-12090"
18320 ))]
18321 pub cusolverDnGetrf: unsafe extern "C" fn(
18322 handle: cusolverDnHandle_t,
18323 params: cusolverDnParams_t,
18324 m: i64,
18325 n: i64,
18326 dataTypeA: cudaDataType,
18327 A: *mut ::core::ffi::c_void,
18328 lda: i64,
18329 ipiv: *mut i64,
18330 computeType: cudaDataType,
18331 pBuffer: *mut ::core::ffi::c_void,
18332 workspaceInBytes: usize,
18333 info: *mut ::core::ffi::c_int,
18334 ) -> cusolverStatus_t,
18335 #[cfg(any(
18336 feature = "cuda-11040",
18337 feature = "cuda-11050",
18338 feature = "cuda-11060",
18339 feature = "cuda-11070",
18340 feature = "cuda-11080",
18341 feature = "cuda-12000",
18342 feature = "cuda-12010",
18343 feature = "cuda-12020",
18344 feature = "cuda-12030",
18345 feature = "cuda-12040",
18346 feature = "cuda-12050",
18347 feature = "cuda-12060",
18348 feature = "cuda-12080",
18349 feature = "cuda-12090"
18350 ))]
18351 pub cusolverDnGetrf_bufferSize: unsafe extern "C" fn(
18352 handle: cusolverDnHandle_t,
18353 params: cusolverDnParams_t,
18354 m: i64,
18355 n: i64,
18356 dataTypeA: cudaDataType,
18357 A: *const ::core::ffi::c_void,
18358 lda: i64,
18359 computeType: cudaDataType,
18360 workspaceInBytes: *mut usize,
18361 ) -> cusolverStatus_t,
18362 #[cfg(any(
18363 feature = "cuda-11040",
18364 feature = "cuda-11050",
18365 feature = "cuda-11060",
18366 feature = "cuda-11070",
18367 feature = "cuda-11080",
18368 feature = "cuda-12000",
18369 feature = "cuda-12010",
18370 feature = "cuda-12020",
18371 feature = "cuda-12030",
18372 feature = "cuda-12040",
18373 feature = "cuda-12050",
18374 feature = "cuda-12060",
18375 feature = "cuda-12080",
18376 feature = "cuda-12090"
18377 ))]
18378 pub cusolverDnGetrs: unsafe extern "C" fn(
18379 handle: cusolverDnHandle_t,
18380 params: cusolverDnParams_t,
18381 trans: cublasOperation_t,
18382 n: i64,
18383 nrhs: i64,
18384 dataTypeA: cudaDataType,
18385 A: *const ::core::ffi::c_void,
18386 lda: i64,
18387 ipiv: *const i64,
18388 dataTypeB: cudaDataType,
18389 B: *mut ::core::ffi::c_void,
18390 ldb: i64,
18391 info: *mut ::core::ffi::c_int,
18392 ) -> cusolverStatus_t,
18393 pub cusolverDnIRSInfosCreate:
18394 unsafe extern "C" fn(infos_ptr: *mut cusolverDnIRSInfos_t) -> cusolverStatus_t,
18395 pub cusolverDnIRSInfosDestroy:
18396 unsafe extern "C" fn(infos: cusolverDnIRSInfos_t) -> cusolverStatus_t,
18397 pub cusolverDnIRSInfosGetMaxIters: unsafe extern "C" fn(
18398 infos: cusolverDnIRSInfos_t,
18399 maxiters: *mut cusolver_int_t,
18400 ) -> cusolverStatus_t,
18401 pub cusolverDnIRSInfosGetNiters: unsafe extern "C" fn(
18402 infos: cusolverDnIRSInfos_t,
18403 niters: *mut cusolver_int_t,
18404 ) -> cusolverStatus_t,
18405 pub cusolverDnIRSInfosGetOuterNiters: unsafe extern "C" fn(
18406 infos: cusolverDnIRSInfos_t,
18407 outer_niters: *mut cusolver_int_t,
18408 ) -> cusolverStatus_t,
18409 pub cusolverDnIRSInfosGetResidualHistory: unsafe extern "C" fn(
18410 infos: cusolverDnIRSInfos_t,
18411 residual_history: *mut *mut ::core::ffi::c_void,
18412 ) -> cusolverStatus_t,
18413 pub cusolverDnIRSInfosRequestResidual:
18414 unsafe extern "C" fn(infos: cusolverDnIRSInfos_t) -> cusolverStatus_t,
18415 pub cusolverDnIRSParamsCreate:
18416 unsafe extern "C" fn(params_ptr: *mut cusolverDnIRSParams_t) -> cusolverStatus_t,
18417 pub cusolverDnIRSParamsDestroy:
18418 unsafe extern "C" fn(params: cusolverDnIRSParams_t) -> cusolverStatus_t,
18419 pub cusolverDnIRSParamsDisableFallback:
18420 unsafe extern "C" fn(params: cusolverDnIRSParams_t) -> cusolverStatus_t,
18421 pub cusolverDnIRSParamsEnableFallback:
18422 unsafe extern "C" fn(params: cusolverDnIRSParams_t) -> cusolverStatus_t,
18423 pub cusolverDnIRSParamsGetMaxIters: unsafe extern "C" fn(
18424 params: cusolverDnIRSParams_t,
18425 maxiters: *mut cusolver_int_t,
18426 ) -> cusolverStatus_t,
18427 pub cusolverDnIRSParamsSetMaxIters: unsafe extern "C" fn(
18428 params: cusolverDnIRSParams_t,
18429 maxiters: cusolver_int_t,
18430 ) -> cusolverStatus_t,
18431 pub cusolverDnIRSParamsSetMaxItersInner: unsafe extern "C" fn(
18432 params: cusolverDnIRSParams_t,
18433 maxiters_inner: cusolver_int_t,
18434 ) -> cusolverStatus_t,
18435 pub cusolverDnIRSParamsSetRefinementSolver: unsafe extern "C" fn(
18436 params: cusolverDnIRSParams_t,
18437 refinement_solver: cusolverIRSRefinement_t,
18438 )
18439 -> cusolverStatus_t,
18440 pub cusolverDnIRSParamsSetSolverLowestPrecision: unsafe extern "C" fn(
18441 params: cusolverDnIRSParams_t,
18442 solver_lowest_precision: cusolverPrecType_t,
18443 )
18444 -> cusolverStatus_t,
18445 pub cusolverDnIRSParamsSetSolverMainPrecision: unsafe extern "C" fn(
18446 params: cusolverDnIRSParams_t,
18447 solver_main_precision: cusolverPrecType_t,
18448 )
18449 -> cusolverStatus_t,
18450 pub cusolverDnIRSParamsSetSolverPrecisions: unsafe extern "C" fn(
18451 params: cusolverDnIRSParams_t,
18452 solver_main_precision: cusolverPrecType_t,
18453 solver_lowest_precision: cusolverPrecType_t,
18454 )
18455 -> cusolverStatus_t,
18456 pub cusolverDnIRSParamsSetTol:
18457 unsafe extern "C" fn(params: cusolverDnIRSParams_t, val: f64) -> cusolverStatus_t,
18458 pub cusolverDnIRSParamsSetTolInner:
18459 unsafe extern "C" fn(params: cusolverDnIRSParams_t, val: f64) -> cusolverStatus_t,
18460 pub cusolverDnIRSXgels: unsafe extern "C" fn(
18461 handle: cusolverDnHandle_t,
18462 gels_irs_params: cusolverDnIRSParams_t,
18463 gels_irs_infos: cusolverDnIRSInfos_t,
18464 m: cusolver_int_t,
18465 n: cusolver_int_t,
18466 nrhs: cusolver_int_t,
18467 dA: *mut ::core::ffi::c_void,
18468 ldda: cusolver_int_t,
18469 dB: *mut ::core::ffi::c_void,
18470 lddb: cusolver_int_t,
18471 dX: *mut ::core::ffi::c_void,
18472 lddx: cusolver_int_t,
18473 dWorkspace: *mut ::core::ffi::c_void,
18474 lwork_bytes: usize,
18475 niters: *mut cusolver_int_t,
18476 d_info: *mut cusolver_int_t,
18477 ) -> cusolverStatus_t,
18478 pub cusolverDnIRSXgels_bufferSize: unsafe extern "C" fn(
18479 handle: cusolverDnHandle_t,
18480 params: cusolverDnIRSParams_t,
18481 m: cusolver_int_t,
18482 n: cusolver_int_t,
18483 nrhs: cusolver_int_t,
18484 lwork_bytes: *mut usize,
18485 ) -> cusolverStatus_t,
18486 pub cusolverDnIRSXgesv: unsafe extern "C" fn(
18487 handle: cusolverDnHandle_t,
18488 gesv_irs_params: cusolverDnIRSParams_t,
18489 gesv_irs_infos: cusolverDnIRSInfos_t,
18490 n: cusolver_int_t,
18491 nrhs: cusolver_int_t,
18492 dA: *mut ::core::ffi::c_void,
18493 ldda: cusolver_int_t,
18494 dB: *mut ::core::ffi::c_void,
18495 lddb: cusolver_int_t,
18496 dX: *mut ::core::ffi::c_void,
18497 lddx: cusolver_int_t,
18498 dWorkspace: *mut ::core::ffi::c_void,
18499 lwork_bytes: usize,
18500 niters: *mut cusolver_int_t,
18501 d_info: *mut cusolver_int_t,
18502 ) -> cusolverStatus_t,
18503 pub cusolverDnIRSXgesv_bufferSize: unsafe extern "C" fn(
18504 handle: cusolverDnHandle_t,
18505 params: cusolverDnIRSParams_t,
18506 n: cusolver_int_t,
18507 nrhs: cusolver_int_t,
18508 lwork_bytes: *mut usize,
18509 ) -> cusolverStatus_t,
18510 #[cfg(any(
18511 feature = "cuda-11040",
18512 feature = "cuda-11050",
18513 feature = "cuda-11060",
18514 feature = "cuda-11070",
18515 feature = "cuda-11080",
18516 feature = "cuda-12000",
18517 feature = "cuda-12010",
18518 feature = "cuda-12020",
18519 feature = "cuda-12030",
18520 feature = "cuda-12040",
18521 feature = "cuda-12050",
18522 feature = "cuda-12060",
18523 feature = "cuda-12080",
18524 feature = "cuda-12090"
18525 ))]
18526 pub cusolverDnPotrf: unsafe extern "C" fn(
18527 handle: cusolverDnHandle_t,
18528 params: cusolverDnParams_t,
18529 uplo: cublasFillMode_t,
18530 n: i64,
18531 dataTypeA: cudaDataType,
18532 A: *mut ::core::ffi::c_void,
18533 lda: i64,
18534 computeType: cudaDataType,
18535 pBuffer: *mut ::core::ffi::c_void,
18536 workspaceInBytes: usize,
18537 info: *mut ::core::ffi::c_int,
18538 ) -> cusolverStatus_t,
18539 #[cfg(any(
18540 feature = "cuda-11040",
18541 feature = "cuda-11050",
18542 feature = "cuda-11060",
18543 feature = "cuda-11070",
18544 feature = "cuda-11080",
18545 feature = "cuda-12000",
18546 feature = "cuda-12010",
18547 feature = "cuda-12020",
18548 feature = "cuda-12030",
18549 feature = "cuda-12040",
18550 feature = "cuda-12050",
18551 feature = "cuda-12060",
18552 feature = "cuda-12080",
18553 feature = "cuda-12090"
18554 ))]
18555 pub cusolverDnPotrf_bufferSize: unsafe extern "C" fn(
18556 handle: cusolverDnHandle_t,
18557 params: cusolverDnParams_t,
18558 uplo: cublasFillMode_t,
18559 n: i64,
18560 dataTypeA: cudaDataType,
18561 A: *const ::core::ffi::c_void,
18562 lda: i64,
18563 computeType: cudaDataType,
18564 workspaceInBytes: *mut usize,
18565 ) -> cusolverStatus_t,
18566 #[cfg(any(
18567 feature = "cuda-11040",
18568 feature = "cuda-11050",
18569 feature = "cuda-11060",
18570 feature = "cuda-11070",
18571 feature = "cuda-11080",
18572 feature = "cuda-12000",
18573 feature = "cuda-12010",
18574 feature = "cuda-12020",
18575 feature = "cuda-12030",
18576 feature = "cuda-12040",
18577 feature = "cuda-12050",
18578 feature = "cuda-12060",
18579 feature = "cuda-12080",
18580 feature = "cuda-12090"
18581 ))]
18582 pub cusolverDnPotrs: unsafe extern "C" fn(
18583 handle: cusolverDnHandle_t,
18584 params: cusolverDnParams_t,
18585 uplo: cublasFillMode_t,
18586 n: i64,
18587 nrhs: i64,
18588 dataTypeA: cudaDataType,
18589 A: *const ::core::ffi::c_void,
18590 lda: i64,
18591 dataTypeB: cudaDataType,
18592 B: *mut ::core::ffi::c_void,
18593 ldb: i64,
18594 info: *mut ::core::ffi::c_int,
18595 ) -> cusolverStatus_t,
18596 pub cusolverDnSBgels: unsafe extern "C" fn(
18597 handle: cusolverDnHandle_t,
18598 m: cusolver_int_t,
18599 n: cusolver_int_t,
18600 nrhs: cusolver_int_t,
18601 dA: *mut f32,
18602 ldda: cusolver_int_t,
18603 dB: *mut f32,
18604 lddb: cusolver_int_t,
18605 dX: *mut f32,
18606 lddx: cusolver_int_t,
18607 dWorkspace: *mut ::core::ffi::c_void,
18608 lwork_bytes: usize,
18609 iter: *mut cusolver_int_t,
18610 d_info: *mut cusolver_int_t,
18611 ) -> cusolverStatus_t,
18612 pub cusolverDnSBgels_bufferSize: unsafe extern "C" fn(
18613 handle: cusolverDnHandle_t,
18614 m: cusolver_int_t,
18615 n: cusolver_int_t,
18616 nrhs: cusolver_int_t,
18617 dA: *mut f32,
18618 ldda: cusolver_int_t,
18619 dB: *mut f32,
18620 lddb: cusolver_int_t,
18621 dX: *mut f32,
18622 lddx: cusolver_int_t,
18623 dWorkspace: *mut ::core::ffi::c_void,
18624 lwork_bytes: *mut usize,
18625 ) -> cusolverStatus_t,
18626 pub cusolverDnSBgesv: unsafe extern "C" fn(
18627 handle: cusolverDnHandle_t,
18628 n: cusolver_int_t,
18629 nrhs: cusolver_int_t,
18630 dA: *mut f32,
18631 ldda: cusolver_int_t,
18632 dipiv: *mut cusolver_int_t,
18633 dB: *mut f32,
18634 lddb: cusolver_int_t,
18635 dX: *mut f32,
18636 lddx: cusolver_int_t,
18637 dWorkspace: *mut ::core::ffi::c_void,
18638 lwork_bytes: usize,
18639 iter: *mut cusolver_int_t,
18640 d_info: *mut cusolver_int_t,
18641 ) -> cusolverStatus_t,
18642 pub cusolverDnSBgesv_bufferSize: unsafe extern "C" fn(
18643 handle: cusolverDnHandle_t,
18644 n: cusolver_int_t,
18645 nrhs: cusolver_int_t,
18646 dA: *mut f32,
18647 ldda: cusolver_int_t,
18648 dipiv: *mut cusolver_int_t,
18649 dB: *mut f32,
18650 lddb: cusolver_int_t,
18651 dX: *mut f32,
18652 lddx: cusolver_int_t,
18653 dWorkspace: *mut ::core::ffi::c_void,
18654 lwork_bytes: *mut usize,
18655 ) -> cusolverStatus_t,
18656 pub cusolverDnSHgels: unsafe extern "C" fn(
18657 handle: cusolverDnHandle_t,
18658 m: cusolver_int_t,
18659 n: cusolver_int_t,
18660 nrhs: cusolver_int_t,
18661 dA: *mut f32,
18662 ldda: cusolver_int_t,
18663 dB: *mut f32,
18664 lddb: cusolver_int_t,
18665 dX: *mut f32,
18666 lddx: cusolver_int_t,
18667 dWorkspace: *mut ::core::ffi::c_void,
18668 lwork_bytes: usize,
18669 iter: *mut cusolver_int_t,
18670 d_info: *mut cusolver_int_t,
18671 ) -> cusolverStatus_t,
18672 pub cusolverDnSHgels_bufferSize: unsafe extern "C" fn(
18673 handle: cusolverDnHandle_t,
18674 m: cusolver_int_t,
18675 n: cusolver_int_t,
18676 nrhs: cusolver_int_t,
18677 dA: *mut f32,
18678 ldda: cusolver_int_t,
18679 dB: *mut f32,
18680 lddb: cusolver_int_t,
18681 dX: *mut f32,
18682 lddx: cusolver_int_t,
18683 dWorkspace: *mut ::core::ffi::c_void,
18684 lwork_bytes: *mut usize,
18685 ) -> cusolverStatus_t,
18686 pub cusolverDnSHgesv: unsafe extern "C" fn(
18687 handle: cusolverDnHandle_t,
18688 n: cusolver_int_t,
18689 nrhs: cusolver_int_t,
18690 dA: *mut f32,
18691 ldda: cusolver_int_t,
18692 dipiv: *mut cusolver_int_t,
18693 dB: *mut f32,
18694 lddb: cusolver_int_t,
18695 dX: *mut f32,
18696 lddx: cusolver_int_t,
18697 dWorkspace: *mut ::core::ffi::c_void,
18698 lwork_bytes: usize,
18699 iter: *mut cusolver_int_t,
18700 d_info: *mut cusolver_int_t,
18701 ) -> cusolverStatus_t,
18702 pub cusolverDnSHgesv_bufferSize: unsafe extern "C" fn(
18703 handle: cusolverDnHandle_t,
18704 n: cusolver_int_t,
18705 nrhs: cusolver_int_t,
18706 dA: *mut f32,
18707 ldda: cusolver_int_t,
18708 dipiv: *mut cusolver_int_t,
18709 dB: *mut f32,
18710 lddb: cusolver_int_t,
18711 dX: *mut f32,
18712 lddx: cusolver_int_t,
18713 dWorkspace: *mut ::core::ffi::c_void,
18714 lwork_bytes: *mut usize,
18715 ) -> cusolverStatus_t,
18716 pub cusolverDnSSgels: unsafe extern "C" fn(
18717 handle: cusolverDnHandle_t,
18718 m: cusolver_int_t,
18719 n: cusolver_int_t,
18720 nrhs: cusolver_int_t,
18721 dA: *mut f32,
18722 ldda: cusolver_int_t,
18723 dB: *mut f32,
18724 lddb: cusolver_int_t,
18725 dX: *mut f32,
18726 lddx: cusolver_int_t,
18727 dWorkspace: *mut ::core::ffi::c_void,
18728 lwork_bytes: usize,
18729 iter: *mut cusolver_int_t,
18730 d_info: *mut cusolver_int_t,
18731 ) -> cusolverStatus_t,
18732 pub cusolverDnSSgels_bufferSize: unsafe extern "C" fn(
18733 handle: cusolverDnHandle_t,
18734 m: cusolver_int_t,
18735 n: cusolver_int_t,
18736 nrhs: cusolver_int_t,
18737 dA: *mut f32,
18738 ldda: cusolver_int_t,
18739 dB: *mut f32,
18740 lddb: cusolver_int_t,
18741 dX: *mut f32,
18742 lddx: cusolver_int_t,
18743 dWorkspace: *mut ::core::ffi::c_void,
18744 lwork_bytes: *mut usize,
18745 ) -> cusolverStatus_t,
18746 pub cusolverDnSSgesv: unsafe extern "C" fn(
18747 handle: cusolverDnHandle_t,
18748 n: cusolver_int_t,
18749 nrhs: cusolver_int_t,
18750 dA: *mut f32,
18751 ldda: cusolver_int_t,
18752 dipiv: *mut cusolver_int_t,
18753 dB: *mut f32,
18754 lddb: cusolver_int_t,
18755 dX: *mut f32,
18756 lddx: cusolver_int_t,
18757 dWorkspace: *mut ::core::ffi::c_void,
18758 lwork_bytes: usize,
18759 iter: *mut cusolver_int_t,
18760 d_info: *mut cusolver_int_t,
18761 ) -> cusolverStatus_t,
18762 pub cusolverDnSSgesv_bufferSize: unsafe extern "C" fn(
18763 handle: cusolverDnHandle_t,
18764 n: cusolver_int_t,
18765 nrhs: cusolver_int_t,
18766 dA: *mut f32,
18767 ldda: cusolver_int_t,
18768 dipiv: *mut cusolver_int_t,
18769 dB: *mut f32,
18770 lddb: cusolver_int_t,
18771 dX: *mut f32,
18772 lddx: cusolver_int_t,
18773 dWorkspace: *mut ::core::ffi::c_void,
18774 lwork_bytes: *mut usize,
18775 ) -> cusolverStatus_t,
18776 pub cusolverDnSXgels: unsafe extern "C" fn(
18777 handle: cusolverDnHandle_t,
18778 m: cusolver_int_t,
18779 n: cusolver_int_t,
18780 nrhs: cusolver_int_t,
18781 dA: *mut f32,
18782 ldda: cusolver_int_t,
18783 dB: *mut f32,
18784 lddb: cusolver_int_t,
18785 dX: *mut f32,
18786 lddx: cusolver_int_t,
18787 dWorkspace: *mut ::core::ffi::c_void,
18788 lwork_bytes: usize,
18789 iter: *mut cusolver_int_t,
18790 d_info: *mut cusolver_int_t,
18791 ) -> cusolverStatus_t,
18792 pub cusolverDnSXgels_bufferSize: unsafe extern "C" fn(
18793 handle: cusolverDnHandle_t,
18794 m: cusolver_int_t,
18795 n: cusolver_int_t,
18796 nrhs: cusolver_int_t,
18797 dA: *mut f32,
18798 ldda: cusolver_int_t,
18799 dB: *mut f32,
18800 lddb: cusolver_int_t,
18801 dX: *mut f32,
18802 lddx: cusolver_int_t,
18803 dWorkspace: *mut ::core::ffi::c_void,
18804 lwork_bytes: *mut usize,
18805 ) -> cusolverStatus_t,
18806 pub cusolverDnSXgesv: unsafe extern "C" fn(
18807 handle: cusolverDnHandle_t,
18808 n: cusolver_int_t,
18809 nrhs: cusolver_int_t,
18810 dA: *mut f32,
18811 ldda: cusolver_int_t,
18812 dipiv: *mut cusolver_int_t,
18813 dB: *mut f32,
18814 lddb: cusolver_int_t,
18815 dX: *mut f32,
18816 lddx: cusolver_int_t,
18817 dWorkspace: *mut ::core::ffi::c_void,
18818 lwork_bytes: usize,
18819 iter: *mut cusolver_int_t,
18820 d_info: *mut cusolver_int_t,
18821 ) -> cusolverStatus_t,
18822 pub cusolverDnSXgesv_bufferSize: unsafe extern "C" fn(
18823 handle: cusolverDnHandle_t,
18824 n: cusolver_int_t,
18825 nrhs: cusolver_int_t,
18826 dA: *mut f32,
18827 ldda: cusolver_int_t,
18828 dipiv: *mut cusolver_int_t,
18829 dB: *mut f32,
18830 lddb: cusolver_int_t,
18831 dX: *mut f32,
18832 lddx: cusolver_int_t,
18833 dWorkspace: *mut ::core::ffi::c_void,
18834 lwork_bytes: *mut usize,
18835 ) -> cusolverStatus_t,
18836 pub cusolverDnSetAdvOptions: unsafe extern "C" fn(
18837 params: cusolverDnParams_t,
18838 function: cusolverDnFunction_t,
18839 algo: cusolverAlgMode_t,
18840 ) -> cusolverStatus_t,
18841 #[cfg(any(
18842 feature = "cuda-12020",
18843 feature = "cuda-12030",
18844 feature = "cuda-12040",
18845 feature = "cuda-12050",
18846 feature = "cuda-12060",
18847 feature = "cuda-12080",
18848 feature = "cuda-12090",
18849 feature = "cuda-13000",
18850 feature = "cuda-13010"
18851 ))]
18852 pub cusolverDnSetDeterministicMode: unsafe extern "C" fn(
18853 handle: cusolverDnHandle_t,
18854 mode: cusolverDeterministicMode_t,
18855 ) -> cusolverStatus_t,
18856 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
18857 pub cusolverDnSetEmulationStrategy: unsafe extern "C" fn(
18858 handle: cusolverDnHandle_t,
18859 strategy: cudaEmulationStrategy_t,
18860 ) -> cusolverStatus_t,
18861 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
18862 pub cusolverDnSetMathMode: unsafe extern "C" fn(
18863 handle: cusolverDnHandle_t,
18864 mode: cusolverMathMode_t,
18865 ) -> cusolverStatus_t,
18866 pub cusolverDnSetStream: unsafe extern "C" fn(
18867 handle: cusolverDnHandle_t,
18868 streamId: cudaStream_t,
18869 ) -> cusolverStatus_t,
18870 pub cusolverDnSgebrd: unsafe extern "C" fn(
18871 handle: cusolverDnHandle_t,
18872 m: ::core::ffi::c_int,
18873 n: ::core::ffi::c_int,
18874 A: *mut f32,
18875 lda: ::core::ffi::c_int,
18876 D: *mut f32,
18877 E: *mut f32,
18878 TAUQ: *mut f32,
18879 TAUP: *mut f32,
18880 Work: *mut f32,
18881 Lwork: ::core::ffi::c_int,
18882 devInfo: *mut ::core::ffi::c_int,
18883 ) -> cusolverStatus_t,
18884 pub cusolverDnSgebrd_bufferSize: unsafe extern "C" fn(
18885 handle: cusolverDnHandle_t,
18886 m: ::core::ffi::c_int,
18887 n: ::core::ffi::c_int,
18888 Lwork: *mut ::core::ffi::c_int,
18889 ) -> cusolverStatus_t,
18890 pub cusolverDnSgeqrf: unsafe extern "C" fn(
18891 handle: cusolverDnHandle_t,
18892 m: ::core::ffi::c_int,
18893 n: ::core::ffi::c_int,
18894 A: *mut f32,
18895 lda: ::core::ffi::c_int,
18896 TAU: *mut f32,
18897 Workspace: *mut f32,
18898 Lwork: ::core::ffi::c_int,
18899 devInfo: *mut ::core::ffi::c_int,
18900 ) -> cusolverStatus_t,
18901 pub cusolverDnSgeqrf_bufferSize: unsafe extern "C" fn(
18902 handle: cusolverDnHandle_t,
18903 m: ::core::ffi::c_int,
18904 n: ::core::ffi::c_int,
18905 A: *mut f32,
18906 lda: ::core::ffi::c_int,
18907 lwork: *mut ::core::ffi::c_int,
18908 ) -> cusolverStatus_t,
18909 pub cusolverDnSgesvd: unsafe extern "C" fn(
18910 handle: cusolverDnHandle_t,
18911 jobu: ::core::ffi::c_schar,
18912 jobvt: ::core::ffi::c_schar,
18913 m: ::core::ffi::c_int,
18914 n: ::core::ffi::c_int,
18915 A: *mut f32,
18916 lda: ::core::ffi::c_int,
18917 S: *mut f32,
18918 U: *mut f32,
18919 ldu: ::core::ffi::c_int,
18920 VT: *mut f32,
18921 ldvt: ::core::ffi::c_int,
18922 work: *mut f32,
18923 lwork: ::core::ffi::c_int,
18924 rwork: *mut f32,
18925 info: *mut ::core::ffi::c_int,
18926 ) -> cusolverStatus_t,
18927 pub cusolverDnSgesvd_bufferSize: unsafe extern "C" fn(
18928 handle: cusolverDnHandle_t,
18929 m: ::core::ffi::c_int,
18930 n: ::core::ffi::c_int,
18931 lwork: *mut ::core::ffi::c_int,
18932 ) -> cusolverStatus_t,
18933 pub cusolverDnSgesvdaStridedBatched: unsafe extern "C" fn(
18934 handle: cusolverDnHandle_t,
18935 jobz: cusolverEigMode_t,
18936 rank: ::core::ffi::c_int,
18937 m: ::core::ffi::c_int,
18938 n: ::core::ffi::c_int,
18939 d_A: *const f32,
18940 lda: ::core::ffi::c_int,
18941 strideA: ::core::ffi::c_longlong,
18942 d_S: *mut f32,
18943 strideS: ::core::ffi::c_longlong,
18944 d_U: *mut f32,
18945 ldu: ::core::ffi::c_int,
18946 strideU: ::core::ffi::c_longlong,
18947 d_V: *mut f32,
18948 ldv: ::core::ffi::c_int,
18949 strideV: ::core::ffi::c_longlong,
18950 d_work: *mut f32,
18951 lwork: ::core::ffi::c_int,
18952 d_info: *mut ::core::ffi::c_int,
18953 h_R_nrmF: *mut f64,
18954 batchSize: ::core::ffi::c_int,
18955 ) -> cusolverStatus_t,
18956 pub cusolverDnSgesvdaStridedBatched_bufferSize: unsafe extern "C" fn(
18957 handle: cusolverDnHandle_t,
18958 jobz: cusolverEigMode_t,
18959 rank: ::core::ffi::c_int,
18960 m: ::core::ffi::c_int,
18961 n: ::core::ffi::c_int,
18962 d_A: *const f32,
18963 lda: ::core::ffi::c_int,
18964 strideA: ::core::ffi::c_longlong,
18965 d_S: *const f32,
18966 strideS: ::core::ffi::c_longlong,
18967 d_U: *const f32,
18968 ldu: ::core::ffi::c_int,
18969 strideU: ::core::ffi::c_longlong,
18970 d_V: *const f32,
18971 ldv: ::core::ffi::c_int,
18972 strideV: ::core::ffi::c_longlong,
18973 lwork: *mut ::core::ffi::c_int,
18974 batchSize: ::core::ffi::c_int,
18975 )
18976 -> cusolverStatus_t,
18977 pub cusolverDnSgesvdj: unsafe extern "C" fn(
18978 handle: cusolverDnHandle_t,
18979 jobz: cusolverEigMode_t,
18980 econ: ::core::ffi::c_int,
18981 m: ::core::ffi::c_int,
18982 n: ::core::ffi::c_int,
18983 A: *mut f32,
18984 lda: ::core::ffi::c_int,
18985 S: *mut f32,
18986 U: *mut f32,
18987 ldu: ::core::ffi::c_int,
18988 V: *mut f32,
18989 ldv: ::core::ffi::c_int,
18990 work: *mut f32,
18991 lwork: ::core::ffi::c_int,
18992 info: *mut ::core::ffi::c_int,
18993 params: gesvdjInfo_t,
18994 ) -> cusolverStatus_t,
18995 pub cusolverDnSgesvdjBatched: unsafe extern "C" fn(
18996 handle: cusolverDnHandle_t,
18997 jobz: cusolverEigMode_t,
18998 m: ::core::ffi::c_int,
18999 n: ::core::ffi::c_int,
19000 A: *mut f32,
19001 lda: ::core::ffi::c_int,
19002 S: *mut f32,
19003 U: *mut f32,
19004 ldu: ::core::ffi::c_int,
19005 V: *mut f32,
19006 ldv: ::core::ffi::c_int,
19007 work: *mut f32,
19008 lwork: ::core::ffi::c_int,
19009 info: *mut ::core::ffi::c_int,
19010 params: gesvdjInfo_t,
19011 batchSize: ::core::ffi::c_int,
19012 ) -> cusolverStatus_t,
19013 pub cusolverDnSgesvdjBatched_bufferSize: unsafe extern "C" fn(
19014 handle: cusolverDnHandle_t,
19015 jobz: cusolverEigMode_t,
19016 m: ::core::ffi::c_int,
19017 n: ::core::ffi::c_int,
19018 A: *const f32,
19019 lda: ::core::ffi::c_int,
19020 S: *const f32,
19021 U: *const f32,
19022 ldu: ::core::ffi::c_int,
19023 V: *const f32,
19024 ldv: ::core::ffi::c_int,
19025 lwork: *mut ::core::ffi::c_int,
19026 params: gesvdjInfo_t,
19027 batchSize: ::core::ffi::c_int,
19028 ) -> cusolverStatus_t,
19029 pub cusolverDnSgesvdj_bufferSize: unsafe extern "C" fn(
19030 handle: cusolverDnHandle_t,
19031 jobz: cusolverEigMode_t,
19032 econ: ::core::ffi::c_int,
19033 m: ::core::ffi::c_int,
19034 n: ::core::ffi::c_int,
19035 A: *const f32,
19036 lda: ::core::ffi::c_int,
19037 S: *const f32,
19038 U: *const f32,
19039 ldu: ::core::ffi::c_int,
19040 V: *const f32,
19041 ldv: ::core::ffi::c_int,
19042 lwork: *mut ::core::ffi::c_int,
19043 params: gesvdjInfo_t,
19044 ) -> cusolverStatus_t,
19045 pub cusolverDnSgetrf: unsafe extern "C" fn(
19046 handle: cusolverDnHandle_t,
19047 m: ::core::ffi::c_int,
19048 n: ::core::ffi::c_int,
19049 A: *mut f32,
19050 lda: ::core::ffi::c_int,
19051 Workspace: *mut f32,
19052 devIpiv: *mut ::core::ffi::c_int,
19053 devInfo: *mut ::core::ffi::c_int,
19054 ) -> cusolverStatus_t,
19055 pub cusolverDnSgetrf_bufferSize: unsafe extern "C" fn(
19056 handle: cusolverDnHandle_t,
19057 m: ::core::ffi::c_int,
19058 n: ::core::ffi::c_int,
19059 A: *mut f32,
19060 lda: ::core::ffi::c_int,
19061 Lwork: *mut ::core::ffi::c_int,
19062 ) -> cusolverStatus_t,
19063 pub cusolverDnSgetrs: unsafe extern "C" fn(
19064 handle: cusolverDnHandle_t,
19065 trans: cublasOperation_t,
19066 n: ::core::ffi::c_int,
19067 nrhs: ::core::ffi::c_int,
19068 A: *const f32,
19069 lda: ::core::ffi::c_int,
19070 devIpiv: *const ::core::ffi::c_int,
19071 B: *mut f32,
19072 ldb: ::core::ffi::c_int,
19073 devInfo: *mut ::core::ffi::c_int,
19074 ) -> cusolverStatus_t,
19075 pub cusolverDnSlaswp: unsafe extern "C" fn(
19076 handle: cusolverDnHandle_t,
19077 n: ::core::ffi::c_int,
19078 A: *mut f32,
19079 lda: ::core::ffi::c_int,
19080 k1: ::core::ffi::c_int,
19081 k2: ::core::ffi::c_int,
19082 devIpiv: *const ::core::ffi::c_int,
19083 incx: ::core::ffi::c_int,
19084 ) -> cusolverStatus_t,
19085 pub cusolverDnSlauum: unsafe extern "C" fn(
19086 handle: cusolverDnHandle_t,
19087 uplo: cublasFillMode_t,
19088 n: ::core::ffi::c_int,
19089 A: *mut f32,
19090 lda: ::core::ffi::c_int,
19091 work: *mut f32,
19092 lwork: ::core::ffi::c_int,
19093 devInfo: *mut ::core::ffi::c_int,
19094 ) -> cusolverStatus_t,
19095 pub cusolverDnSlauum_bufferSize: unsafe extern "C" fn(
19096 handle: cusolverDnHandle_t,
19097 uplo: cublasFillMode_t,
19098 n: ::core::ffi::c_int,
19099 A: *mut f32,
19100 lda: ::core::ffi::c_int,
19101 lwork: *mut ::core::ffi::c_int,
19102 ) -> cusolverStatus_t,
19103 pub cusolverDnSorgbr: unsafe extern "C" fn(
19104 handle: cusolverDnHandle_t,
19105 side: cublasSideMode_t,
19106 m: ::core::ffi::c_int,
19107 n: ::core::ffi::c_int,
19108 k: ::core::ffi::c_int,
19109 A: *mut f32,
19110 lda: ::core::ffi::c_int,
19111 tau: *const f32,
19112 work: *mut f32,
19113 lwork: ::core::ffi::c_int,
19114 info: *mut ::core::ffi::c_int,
19115 ) -> cusolverStatus_t,
19116 pub cusolverDnSorgbr_bufferSize: unsafe extern "C" fn(
19117 handle: cusolverDnHandle_t,
19118 side: cublasSideMode_t,
19119 m: ::core::ffi::c_int,
19120 n: ::core::ffi::c_int,
19121 k: ::core::ffi::c_int,
19122 A: *const f32,
19123 lda: ::core::ffi::c_int,
19124 tau: *const f32,
19125 lwork: *mut ::core::ffi::c_int,
19126 ) -> cusolverStatus_t,
19127 pub cusolverDnSorgqr: unsafe extern "C" fn(
19128 handle: cusolverDnHandle_t,
19129 m: ::core::ffi::c_int,
19130 n: ::core::ffi::c_int,
19131 k: ::core::ffi::c_int,
19132 A: *mut f32,
19133 lda: ::core::ffi::c_int,
19134 tau: *const f32,
19135 work: *mut f32,
19136 lwork: ::core::ffi::c_int,
19137 info: *mut ::core::ffi::c_int,
19138 ) -> cusolverStatus_t,
19139 pub cusolverDnSorgqr_bufferSize: unsafe extern "C" fn(
19140 handle: cusolverDnHandle_t,
19141 m: ::core::ffi::c_int,
19142 n: ::core::ffi::c_int,
19143 k: ::core::ffi::c_int,
19144 A: *const f32,
19145 lda: ::core::ffi::c_int,
19146 tau: *const f32,
19147 lwork: *mut ::core::ffi::c_int,
19148 ) -> cusolverStatus_t,
19149 pub cusolverDnSorgtr: unsafe extern "C" fn(
19150 handle: cusolverDnHandle_t,
19151 uplo: cublasFillMode_t,
19152 n: ::core::ffi::c_int,
19153 A: *mut f32,
19154 lda: ::core::ffi::c_int,
19155 tau: *const f32,
19156 work: *mut f32,
19157 lwork: ::core::ffi::c_int,
19158 info: *mut ::core::ffi::c_int,
19159 ) -> cusolverStatus_t,
19160 pub cusolverDnSorgtr_bufferSize: unsafe extern "C" fn(
19161 handle: cusolverDnHandle_t,
19162 uplo: cublasFillMode_t,
19163 n: ::core::ffi::c_int,
19164 A: *const f32,
19165 lda: ::core::ffi::c_int,
19166 tau: *const f32,
19167 lwork: *mut ::core::ffi::c_int,
19168 ) -> cusolverStatus_t,
19169 pub cusolverDnSormqr: unsafe extern "C" fn(
19170 handle: cusolverDnHandle_t,
19171 side: cublasSideMode_t,
19172 trans: cublasOperation_t,
19173 m: ::core::ffi::c_int,
19174 n: ::core::ffi::c_int,
19175 k: ::core::ffi::c_int,
19176 A: *const f32,
19177 lda: ::core::ffi::c_int,
19178 tau: *const f32,
19179 C: *mut f32,
19180 ldc: ::core::ffi::c_int,
19181 work: *mut f32,
19182 lwork: ::core::ffi::c_int,
19183 devInfo: *mut ::core::ffi::c_int,
19184 ) -> cusolverStatus_t,
19185 pub cusolverDnSormqr_bufferSize: unsafe extern "C" fn(
19186 handle: cusolverDnHandle_t,
19187 side: cublasSideMode_t,
19188 trans: cublasOperation_t,
19189 m: ::core::ffi::c_int,
19190 n: ::core::ffi::c_int,
19191 k: ::core::ffi::c_int,
19192 A: *const f32,
19193 lda: ::core::ffi::c_int,
19194 tau: *const f32,
19195 C: *const f32,
19196 ldc: ::core::ffi::c_int,
19197 lwork: *mut ::core::ffi::c_int,
19198 ) -> cusolverStatus_t,
19199 pub cusolverDnSormtr: unsafe extern "C" fn(
19200 handle: cusolverDnHandle_t,
19201 side: cublasSideMode_t,
19202 uplo: cublasFillMode_t,
19203 trans: cublasOperation_t,
19204 m: ::core::ffi::c_int,
19205 n: ::core::ffi::c_int,
19206 A: *mut f32,
19207 lda: ::core::ffi::c_int,
19208 tau: *mut f32,
19209 C: *mut f32,
19210 ldc: ::core::ffi::c_int,
19211 work: *mut f32,
19212 lwork: ::core::ffi::c_int,
19213 info: *mut ::core::ffi::c_int,
19214 ) -> cusolverStatus_t,
19215 pub cusolverDnSormtr_bufferSize: unsafe extern "C" fn(
19216 handle: cusolverDnHandle_t,
19217 side: cublasSideMode_t,
19218 uplo: cublasFillMode_t,
19219 trans: cublasOperation_t,
19220 m: ::core::ffi::c_int,
19221 n: ::core::ffi::c_int,
19222 A: *const f32,
19223 lda: ::core::ffi::c_int,
19224 tau: *const f32,
19225 C: *const f32,
19226 ldc: ::core::ffi::c_int,
19227 lwork: *mut ::core::ffi::c_int,
19228 ) -> cusolverStatus_t,
19229 pub cusolverDnSpotrf: unsafe extern "C" fn(
19230 handle: cusolverDnHandle_t,
19231 uplo: cublasFillMode_t,
19232 n: ::core::ffi::c_int,
19233 A: *mut f32,
19234 lda: ::core::ffi::c_int,
19235 Workspace: *mut f32,
19236 Lwork: ::core::ffi::c_int,
19237 devInfo: *mut ::core::ffi::c_int,
19238 ) -> cusolverStatus_t,
19239 pub cusolverDnSpotrfBatched: unsafe extern "C" fn(
19240 handle: cusolverDnHandle_t,
19241 uplo: cublasFillMode_t,
19242 n: ::core::ffi::c_int,
19243 Aarray: *mut *mut f32,
19244 lda: ::core::ffi::c_int,
19245 infoArray: *mut ::core::ffi::c_int,
19246 batchSize: ::core::ffi::c_int,
19247 ) -> cusolverStatus_t,
19248 pub cusolverDnSpotrf_bufferSize: unsafe extern "C" fn(
19249 handle: cusolverDnHandle_t,
19250 uplo: cublasFillMode_t,
19251 n: ::core::ffi::c_int,
19252 A: *mut f32,
19253 lda: ::core::ffi::c_int,
19254 Lwork: *mut ::core::ffi::c_int,
19255 ) -> cusolverStatus_t,
19256 pub cusolverDnSpotri: unsafe extern "C" fn(
19257 handle: cusolverDnHandle_t,
19258 uplo: cublasFillMode_t,
19259 n: ::core::ffi::c_int,
19260 A: *mut f32,
19261 lda: ::core::ffi::c_int,
19262 work: *mut f32,
19263 lwork: ::core::ffi::c_int,
19264 devInfo: *mut ::core::ffi::c_int,
19265 ) -> cusolverStatus_t,
19266 pub cusolverDnSpotri_bufferSize: unsafe extern "C" fn(
19267 handle: cusolverDnHandle_t,
19268 uplo: cublasFillMode_t,
19269 n: ::core::ffi::c_int,
19270 A: *mut f32,
19271 lda: ::core::ffi::c_int,
19272 lwork: *mut ::core::ffi::c_int,
19273 ) -> cusolverStatus_t,
19274 pub cusolverDnSpotrs: unsafe extern "C" fn(
19275 handle: cusolverDnHandle_t,
19276 uplo: cublasFillMode_t,
19277 n: ::core::ffi::c_int,
19278 nrhs: ::core::ffi::c_int,
19279 A: *const f32,
19280 lda: ::core::ffi::c_int,
19281 B: *mut f32,
19282 ldb: ::core::ffi::c_int,
19283 devInfo: *mut ::core::ffi::c_int,
19284 ) -> cusolverStatus_t,
19285 pub cusolverDnSpotrsBatched: unsafe extern "C" fn(
19286 handle: cusolverDnHandle_t,
19287 uplo: cublasFillMode_t,
19288 n: ::core::ffi::c_int,
19289 nrhs: ::core::ffi::c_int,
19290 A: *mut *mut f32,
19291 lda: ::core::ffi::c_int,
19292 B: *mut *mut f32,
19293 ldb: ::core::ffi::c_int,
19294 d_info: *mut ::core::ffi::c_int,
19295 batchSize: ::core::ffi::c_int,
19296 ) -> cusolverStatus_t,
19297 pub cusolverDnSsyevd: unsafe extern "C" fn(
19298 handle: cusolverDnHandle_t,
19299 jobz: cusolverEigMode_t,
19300 uplo: cublasFillMode_t,
19301 n: ::core::ffi::c_int,
19302 A: *mut f32,
19303 lda: ::core::ffi::c_int,
19304 W: *mut f32,
19305 work: *mut f32,
19306 lwork: ::core::ffi::c_int,
19307 info: *mut ::core::ffi::c_int,
19308 ) -> cusolverStatus_t,
19309 pub cusolverDnSsyevd_bufferSize: unsafe extern "C" fn(
19310 handle: cusolverDnHandle_t,
19311 jobz: cusolverEigMode_t,
19312 uplo: cublasFillMode_t,
19313 n: ::core::ffi::c_int,
19314 A: *const f32,
19315 lda: ::core::ffi::c_int,
19316 W: *const f32,
19317 lwork: *mut ::core::ffi::c_int,
19318 ) -> cusolverStatus_t,
19319 pub cusolverDnSsyevdx: unsafe extern "C" fn(
19320 handle: cusolverDnHandle_t,
19321 jobz: cusolverEigMode_t,
19322 range: cusolverEigRange_t,
19323 uplo: cublasFillMode_t,
19324 n: ::core::ffi::c_int,
19325 A: *mut f32,
19326 lda: ::core::ffi::c_int,
19327 vl: f32,
19328 vu: f32,
19329 il: ::core::ffi::c_int,
19330 iu: ::core::ffi::c_int,
19331 meig: *mut ::core::ffi::c_int,
19332 W: *mut f32,
19333 work: *mut f32,
19334 lwork: ::core::ffi::c_int,
19335 info: *mut ::core::ffi::c_int,
19336 ) -> cusolverStatus_t,
19337 pub cusolverDnSsyevdx_bufferSize: unsafe extern "C" fn(
19338 handle: cusolverDnHandle_t,
19339 jobz: cusolverEigMode_t,
19340 range: cusolverEigRange_t,
19341 uplo: cublasFillMode_t,
19342 n: ::core::ffi::c_int,
19343 A: *const f32,
19344 lda: ::core::ffi::c_int,
19345 vl: f32,
19346 vu: f32,
19347 il: ::core::ffi::c_int,
19348 iu: ::core::ffi::c_int,
19349 meig: *mut ::core::ffi::c_int,
19350 W: *const f32,
19351 lwork: *mut ::core::ffi::c_int,
19352 ) -> cusolverStatus_t,
19353 pub cusolverDnSsyevj: unsafe extern "C" fn(
19354 handle: cusolverDnHandle_t,
19355 jobz: cusolverEigMode_t,
19356 uplo: cublasFillMode_t,
19357 n: ::core::ffi::c_int,
19358 A: *mut f32,
19359 lda: ::core::ffi::c_int,
19360 W: *mut f32,
19361 work: *mut f32,
19362 lwork: ::core::ffi::c_int,
19363 info: *mut ::core::ffi::c_int,
19364 params: syevjInfo_t,
19365 ) -> cusolverStatus_t,
19366 pub cusolverDnSsyevjBatched: unsafe extern "C" fn(
19367 handle: cusolverDnHandle_t,
19368 jobz: cusolverEigMode_t,
19369 uplo: cublasFillMode_t,
19370 n: ::core::ffi::c_int,
19371 A: *mut f32,
19372 lda: ::core::ffi::c_int,
19373 W: *mut f32,
19374 work: *mut f32,
19375 lwork: ::core::ffi::c_int,
19376 info: *mut ::core::ffi::c_int,
19377 params: syevjInfo_t,
19378 batchSize: ::core::ffi::c_int,
19379 ) -> cusolverStatus_t,
19380 pub cusolverDnSsyevjBatched_bufferSize: unsafe extern "C" fn(
19381 handle: cusolverDnHandle_t,
19382 jobz: cusolverEigMode_t,
19383 uplo: cublasFillMode_t,
19384 n: ::core::ffi::c_int,
19385 A: *const f32,
19386 lda: ::core::ffi::c_int,
19387 W: *const f32,
19388 lwork: *mut ::core::ffi::c_int,
19389 params: syevjInfo_t,
19390 batchSize: ::core::ffi::c_int,
19391 ) -> cusolverStatus_t,
19392 pub cusolverDnSsyevj_bufferSize: unsafe extern "C" fn(
19393 handle: cusolverDnHandle_t,
19394 jobz: cusolverEigMode_t,
19395 uplo: cublasFillMode_t,
19396 n: ::core::ffi::c_int,
19397 A: *const f32,
19398 lda: ::core::ffi::c_int,
19399 W: *const f32,
19400 lwork: *mut ::core::ffi::c_int,
19401 params: syevjInfo_t,
19402 ) -> cusolverStatus_t,
19403 pub cusolverDnSsygvd: unsafe extern "C" fn(
19404 handle: cusolverDnHandle_t,
19405 itype: cusolverEigType_t,
19406 jobz: cusolverEigMode_t,
19407 uplo: cublasFillMode_t,
19408 n: ::core::ffi::c_int,
19409 A: *mut f32,
19410 lda: ::core::ffi::c_int,
19411 B: *mut f32,
19412 ldb: ::core::ffi::c_int,
19413 W: *mut f32,
19414 work: *mut f32,
19415 lwork: ::core::ffi::c_int,
19416 info: *mut ::core::ffi::c_int,
19417 ) -> cusolverStatus_t,
19418 pub cusolverDnSsygvd_bufferSize: unsafe extern "C" fn(
19419 handle: cusolverDnHandle_t,
19420 itype: cusolverEigType_t,
19421 jobz: cusolverEigMode_t,
19422 uplo: cublasFillMode_t,
19423 n: ::core::ffi::c_int,
19424 A: *const f32,
19425 lda: ::core::ffi::c_int,
19426 B: *const f32,
19427 ldb: ::core::ffi::c_int,
19428 W: *const f32,
19429 lwork: *mut ::core::ffi::c_int,
19430 ) -> cusolverStatus_t,
19431 pub cusolverDnSsygvdx: unsafe extern "C" fn(
19432 handle: cusolverDnHandle_t,
19433 itype: cusolverEigType_t,
19434 jobz: cusolverEigMode_t,
19435 range: cusolverEigRange_t,
19436 uplo: cublasFillMode_t,
19437 n: ::core::ffi::c_int,
19438 A: *mut f32,
19439 lda: ::core::ffi::c_int,
19440 B: *mut f32,
19441 ldb: ::core::ffi::c_int,
19442 vl: f32,
19443 vu: f32,
19444 il: ::core::ffi::c_int,
19445 iu: ::core::ffi::c_int,
19446 meig: *mut ::core::ffi::c_int,
19447 W: *mut f32,
19448 work: *mut f32,
19449 lwork: ::core::ffi::c_int,
19450 info: *mut ::core::ffi::c_int,
19451 ) -> cusolverStatus_t,
19452 pub cusolverDnSsygvdx_bufferSize: unsafe extern "C" fn(
19453 handle: cusolverDnHandle_t,
19454 itype: cusolverEigType_t,
19455 jobz: cusolverEigMode_t,
19456 range: cusolverEigRange_t,
19457 uplo: cublasFillMode_t,
19458 n: ::core::ffi::c_int,
19459 A: *const f32,
19460 lda: ::core::ffi::c_int,
19461 B: *const f32,
19462 ldb: ::core::ffi::c_int,
19463 vl: f32,
19464 vu: f32,
19465 il: ::core::ffi::c_int,
19466 iu: ::core::ffi::c_int,
19467 meig: *mut ::core::ffi::c_int,
19468 W: *const f32,
19469 lwork: *mut ::core::ffi::c_int,
19470 ) -> cusolverStatus_t,
19471 pub cusolverDnSsygvj: unsafe extern "C" fn(
19472 handle: cusolverDnHandle_t,
19473 itype: cusolverEigType_t,
19474 jobz: cusolverEigMode_t,
19475 uplo: cublasFillMode_t,
19476 n: ::core::ffi::c_int,
19477 A: *mut f32,
19478 lda: ::core::ffi::c_int,
19479 B: *mut f32,
19480 ldb: ::core::ffi::c_int,
19481 W: *mut f32,
19482 work: *mut f32,
19483 lwork: ::core::ffi::c_int,
19484 info: *mut ::core::ffi::c_int,
19485 params: syevjInfo_t,
19486 ) -> cusolverStatus_t,
19487 pub cusolverDnSsygvj_bufferSize: unsafe extern "C" fn(
19488 handle: cusolverDnHandle_t,
19489 itype: cusolverEigType_t,
19490 jobz: cusolverEigMode_t,
19491 uplo: cublasFillMode_t,
19492 n: ::core::ffi::c_int,
19493 A: *const f32,
19494 lda: ::core::ffi::c_int,
19495 B: *const f32,
19496 ldb: ::core::ffi::c_int,
19497 W: *const f32,
19498 lwork: *mut ::core::ffi::c_int,
19499 params: syevjInfo_t,
19500 ) -> cusolverStatus_t,
19501 pub cusolverDnSsytrd: unsafe extern "C" fn(
19502 handle: cusolverDnHandle_t,
19503 uplo: cublasFillMode_t,
19504 n: ::core::ffi::c_int,
19505 A: *mut f32,
19506 lda: ::core::ffi::c_int,
19507 d: *mut f32,
19508 e: *mut f32,
19509 tau: *mut f32,
19510 work: *mut f32,
19511 lwork: ::core::ffi::c_int,
19512 info: *mut ::core::ffi::c_int,
19513 ) -> cusolverStatus_t,
19514 pub cusolverDnSsytrd_bufferSize: unsafe extern "C" fn(
19515 handle: cusolverDnHandle_t,
19516 uplo: cublasFillMode_t,
19517 n: ::core::ffi::c_int,
19518 A: *const f32,
19519 lda: ::core::ffi::c_int,
19520 d: *const f32,
19521 e: *const f32,
19522 tau: *const f32,
19523 lwork: *mut ::core::ffi::c_int,
19524 ) -> cusolverStatus_t,
19525 pub cusolverDnSsytrf: unsafe extern "C" fn(
19526 handle: cusolverDnHandle_t,
19527 uplo: cublasFillMode_t,
19528 n: ::core::ffi::c_int,
19529 A: *mut f32,
19530 lda: ::core::ffi::c_int,
19531 ipiv: *mut ::core::ffi::c_int,
19532 work: *mut f32,
19533 lwork: ::core::ffi::c_int,
19534 info: *mut ::core::ffi::c_int,
19535 ) -> cusolverStatus_t,
19536 pub cusolverDnSsytrf_bufferSize: unsafe extern "C" fn(
19537 handle: cusolverDnHandle_t,
19538 n: ::core::ffi::c_int,
19539 A: *mut f32,
19540 lda: ::core::ffi::c_int,
19541 lwork: *mut ::core::ffi::c_int,
19542 ) -> cusolverStatus_t,
19543 pub cusolverDnSsytri: unsafe extern "C" fn(
19544 handle: cusolverDnHandle_t,
19545 uplo: cublasFillMode_t,
19546 n: ::core::ffi::c_int,
19547 A: *mut f32,
19548 lda: ::core::ffi::c_int,
19549 ipiv: *const ::core::ffi::c_int,
19550 work: *mut f32,
19551 lwork: ::core::ffi::c_int,
19552 info: *mut ::core::ffi::c_int,
19553 ) -> cusolverStatus_t,
19554 pub cusolverDnSsytri_bufferSize: unsafe extern "C" fn(
19555 handle: cusolverDnHandle_t,
19556 uplo: cublasFillMode_t,
19557 n: ::core::ffi::c_int,
19558 A: *mut f32,
19559 lda: ::core::ffi::c_int,
19560 ipiv: *const ::core::ffi::c_int,
19561 lwork: *mut ::core::ffi::c_int,
19562 ) -> cusolverStatus_t,
19563 #[cfg(any(
19564 feature = "cuda-11040",
19565 feature = "cuda-11050",
19566 feature = "cuda-11060",
19567 feature = "cuda-11070",
19568 feature = "cuda-11080",
19569 feature = "cuda-12000",
19570 feature = "cuda-12010",
19571 feature = "cuda-12020",
19572 feature = "cuda-12030",
19573 feature = "cuda-12040",
19574 feature = "cuda-12050",
19575 feature = "cuda-12060",
19576 feature = "cuda-12080",
19577 feature = "cuda-12090"
19578 ))]
19579 pub cusolverDnSyevd: unsafe extern "C" fn(
19580 handle: cusolverDnHandle_t,
19581 params: cusolverDnParams_t,
19582 jobz: cusolverEigMode_t,
19583 uplo: cublasFillMode_t,
19584 n: i64,
19585 dataTypeA: cudaDataType,
19586 A: *mut ::core::ffi::c_void,
19587 lda: i64,
19588 dataTypeW: cudaDataType,
19589 W: *mut ::core::ffi::c_void,
19590 computeType: cudaDataType,
19591 pBuffer: *mut ::core::ffi::c_void,
19592 workspaceInBytes: usize,
19593 info: *mut ::core::ffi::c_int,
19594 ) -> cusolverStatus_t,
19595 #[cfg(any(
19596 feature = "cuda-11040",
19597 feature = "cuda-11050",
19598 feature = "cuda-11060",
19599 feature = "cuda-11070",
19600 feature = "cuda-11080",
19601 feature = "cuda-12000",
19602 feature = "cuda-12010",
19603 feature = "cuda-12020",
19604 feature = "cuda-12030",
19605 feature = "cuda-12040",
19606 feature = "cuda-12050",
19607 feature = "cuda-12060",
19608 feature = "cuda-12080",
19609 feature = "cuda-12090"
19610 ))]
19611 pub cusolverDnSyevd_bufferSize: unsafe extern "C" fn(
19612 handle: cusolverDnHandle_t,
19613 params: cusolverDnParams_t,
19614 jobz: cusolverEigMode_t,
19615 uplo: cublasFillMode_t,
19616 n: i64,
19617 dataTypeA: cudaDataType,
19618 A: *const ::core::ffi::c_void,
19619 lda: i64,
19620 dataTypeW: cudaDataType,
19621 W: *const ::core::ffi::c_void,
19622 computeType: cudaDataType,
19623 workspaceInBytes: *mut usize,
19624 ) -> cusolverStatus_t,
19625 #[cfg(any(
19626 feature = "cuda-11040",
19627 feature = "cuda-11050",
19628 feature = "cuda-11060",
19629 feature = "cuda-11070",
19630 feature = "cuda-11080",
19631 feature = "cuda-12000",
19632 feature = "cuda-12010",
19633 feature = "cuda-12020",
19634 feature = "cuda-12030",
19635 feature = "cuda-12040",
19636 feature = "cuda-12050",
19637 feature = "cuda-12060",
19638 feature = "cuda-12080",
19639 feature = "cuda-12090"
19640 ))]
19641 pub cusolverDnSyevdx: unsafe extern "C" fn(
19642 handle: cusolverDnHandle_t,
19643 params: cusolverDnParams_t,
19644 jobz: cusolverEigMode_t,
19645 range: cusolverEigRange_t,
19646 uplo: cublasFillMode_t,
19647 n: i64,
19648 dataTypeA: cudaDataType,
19649 A: *mut ::core::ffi::c_void,
19650 lda: i64,
19651 vl: *mut ::core::ffi::c_void,
19652 vu: *mut ::core::ffi::c_void,
19653 il: i64,
19654 iu: i64,
19655 meig64: *mut i64,
19656 dataTypeW: cudaDataType,
19657 W: *mut ::core::ffi::c_void,
19658 computeType: cudaDataType,
19659 pBuffer: *mut ::core::ffi::c_void,
19660 workspaceInBytes: usize,
19661 info: *mut ::core::ffi::c_int,
19662 ) -> cusolverStatus_t,
19663 #[cfg(any(
19664 feature = "cuda-11040",
19665 feature = "cuda-11050",
19666 feature = "cuda-11060",
19667 feature = "cuda-11070",
19668 feature = "cuda-11080",
19669 feature = "cuda-12000",
19670 feature = "cuda-12010",
19671 feature = "cuda-12020",
19672 feature = "cuda-12030",
19673 feature = "cuda-12040",
19674 feature = "cuda-12050",
19675 feature = "cuda-12060",
19676 feature = "cuda-12080",
19677 feature = "cuda-12090"
19678 ))]
19679 pub cusolverDnSyevdx_bufferSize: unsafe extern "C" fn(
19680 handle: cusolverDnHandle_t,
19681 params: cusolverDnParams_t,
19682 jobz: cusolverEigMode_t,
19683 range: cusolverEigRange_t,
19684 uplo: cublasFillMode_t,
19685 n: i64,
19686 dataTypeA: cudaDataType,
19687 A: *const ::core::ffi::c_void,
19688 lda: i64,
19689 vl: *mut ::core::ffi::c_void,
19690 vu: *mut ::core::ffi::c_void,
19691 il: i64,
19692 iu: i64,
19693 h_meig: *mut i64,
19694 dataTypeW: cudaDataType,
19695 W: *const ::core::ffi::c_void,
19696 computeType: cudaDataType,
19697 workspaceInBytes: *mut usize,
19698 ) -> cusolverStatus_t,
19699 #[cfg(any(
19700 feature = "cuda-12060",
19701 feature = "cuda-12080",
19702 feature = "cuda-12090",
19703 feature = "cuda-13000",
19704 feature = "cuda-13010"
19705 ))]
19706 pub cusolverDnXgeev: unsafe extern "C" fn(
19707 handle: cusolverDnHandle_t,
19708 params: cusolverDnParams_t,
19709 jobvl: cusolverEigMode_t,
19710 jobvr: cusolverEigMode_t,
19711 n: i64,
19712 dataTypeA: cudaDataType,
19713 A: *mut ::core::ffi::c_void,
19714 lda: i64,
19715 dataTypeW: cudaDataType,
19716 W: *mut ::core::ffi::c_void,
19717 dataTypeVL: cudaDataType,
19718 VL: *mut ::core::ffi::c_void,
19719 ldvl: i64,
19720 dataTypeVR: cudaDataType,
19721 VR: *mut ::core::ffi::c_void,
19722 ldvr: i64,
19723 computeType: cudaDataType,
19724 bufferOnDevice: *mut ::core::ffi::c_void,
19725 workspaceInBytesOnDevice: usize,
19726 bufferOnHost: *mut ::core::ffi::c_void,
19727 workspaceInBytesOnHost: usize,
19728 info: *mut ::core::ffi::c_int,
19729 ) -> cusolverStatus_t,
19730 #[cfg(any(
19731 feature = "cuda-12060",
19732 feature = "cuda-12080",
19733 feature = "cuda-12090",
19734 feature = "cuda-13000",
19735 feature = "cuda-13010"
19736 ))]
19737 pub cusolverDnXgeev_bufferSize: unsafe extern "C" fn(
19738 handle: cusolverDnHandle_t,
19739 params: cusolverDnParams_t,
19740 jobvl: cusolverEigMode_t,
19741 jobvr: cusolverEigMode_t,
19742 n: i64,
19743 dataTypeA: cudaDataType,
19744 A: *const ::core::ffi::c_void,
19745 lda: i64,
19746 dataTypeW: cudaDataType,
19747 W: *const ::core::ffi::c_void,
19748 dataTypeVL: cudaDataType,
19749 VL: *const ::core::ffi::c_void,
19750 ldvl: i64,
19751 dataTypeVR: cudaDataType,
19752 VR: *const ::core::ffi::c_void,
19753 ldvr: i64,
19754 computeType: cudaDataType,
19755 workspaceInBytesOnDevice: *mut usize,
19756 workspaceInBytesOnHost: *mut usize,
19757 ) -> cusolverStatus_t,
19758 pub cusolverDnXgeqrf: unsafe extern "C" fn(
19759 handle: cusolverDnHandle_t,
19760 params: cusolverDnParams_t,
19761 m: i64,
19762 n: i64,
19763 dataTypeA: cudaDataType,
19764 A: *mut ::core::ffi::c_void,
19765 lda: i64,
19766 dataTypeTau: cudaDataType,
19767 tau: *mut ::core::ffi::c_void,
19768 computeType: cudaDataType,
19769 bufferOnDevice: *mut ::core::ffi::c_void,
19770 workspaceInBytesOnDevice: usize,
19771 bufferOnHost: *mut ::core::ffi::c_void,
19772 workspaceInBytesOnHost: usize,
19773 info: *mut ::core::ffi::c_int,
19774 ) -> cusolverStatus_t,
19775 pub cusolverDnXgeqrf_bufferSize: unsafe extern "C" fn(
19776 handle: cusolverDnHandle_t,
19777 params: cusolverDnParams_t,
19778 m: i64,
19779 n: i64,
19780 dataTypeA: cudaDataType,
19781 A: *const ::core::ffi::c_void,
19782 lda: i64,
19783 dataTypeTau: cudaDataType,
19784 tau: *const ::core::ffi::c_void,
19785 computeType: cudaDataType,
19786 workspaceInBytesOnDevice: *mut usize,
19787 workspaceInBytesOnHost: *mut usize,
19788 ) -> cusolverStatus_t,
19789 pub cusolverDnXgesvd: unsafe extern "C" fn(
19790 handle: cusolverDnHandle_t,
19791 params: cusolverDnParams_t,
19792 jobu: ::core::ffi::c_schar,
19793 jobvt: ::core::ffi::c_schar,
19794 m: i64,
19795 n: i64,
19796 dataTypeA: cudaDataType,
19797 A: *mut ::core::ffi::c_void,
19798 lda: i64,
19799 dataTypeS: cudaDataType,
19800 S: *mut ::core::ffi::c_void,
19801 dataTypeU: cudaDataType,
19802 U: *mut ::core::ffi::c_void,
19803 ldu: i64,
19804 dataTypeVT: cudaDataType,
19805 VT: *mut ::core::ffi::c_void,
19806 ldvt: i64,
19807 computeType: cudaDataType,
19808 bufferOnDevice: *mut ::core::ffi::c_void,
19809 workspaceInBytesOnDevice: usize,
19810 bufferOnHost: *mut ::core::ffi::c_void,
19811 workspaceInBytesOnHost: usize,
19812 info: *mut ::core::ffi::c_int,
19813 ) -> cusolverStatus_t,
19814 pub cusolverDnXgesvd_bufferSize: unsafe extern "C" fn(
19815 handle: cusolverDnHandle_t,
19816 params: cusolverDnParams_t,
19817 jobu: ::core::ffi::c_schar,
19818 jobvt: ::core::ffi::c_schar,
19819 m: i64,
19820 n: i64,
19821 dataTypeA: cudaDataType,
19822 A: *const ::core::ffi::c_void,
19823 lda: i64,
19824 dataTypeS: cudaDataType,
19825 S: *const ::core::ffi::c_void,
19826 dataTypeU: cudaDataType,
19827 U: *const ::core::ffi::c_void,
19828 ldu: i64,
19829 dataTypeVT: cudaDataType,
19830 VT: *const ::core::ffi::c_void,
19831 ldvt: i64,
19832 computeType: cudaDataType,
19833 workspaceInBytesOnDevice: *mut usize,
19834 workspaceInBytesOnHost: *mut usize,
19835 ) -> cusolverStatus_t,
19836 pub cusolverDnXgesvdjGetResidual: unsafe extern "C" fn(
19837 handle: cusolverDnHandle_t,
19838 info: gesvdjInfo_t,
19839 residual: *mut f64,
19840 ) -> cusolverStatus_t,
19841 pub cusolverDnXgesvdjGetSweeps: unsafe extern "C" fn(
19842 handle: cusolverDnHandle_t,
19843 info: gesvdjInfo_t,
19844 executed_sweeps: *mut ::core::ffi::c_int,
19845 ) -> cusolverStatus_t,
19846 pub cusolverDnXgesvdjSetMaxSweeps: unsafe extern "C" fn(
19847 info: gesvdjInfo_t,
19848 max_sweeps: ::core::ffi::c_int,
19849 ) -> cusolverStatus_t,
19850 pub cusolverDnXgesvdjSetSortEig: unsafe extern "C" fn(
19851 info: gesvdjInfo_t,
19852 sort_svd: ::core::ffi::c_int,
19853 ) -> cusolverStatus_t,
19854 pub cusolverDnXgesvdjSetTolerance:
19855 unsafe extern "C" fn(info: gesvdjInfo_t, tolerance: f64) -> cusolverStatus_t,
19856 pub cusolverDnXgesvdp: unsafe extern "C" fn(
19857 handle: cusolverDnHandle_t,
19858 params: cusolverDnParams_t,
19859 jobz: cusolverEigMode_t,
19860 econ: ::core::ffi::c_int,
19861 m: i64,
19862 n: i64,
19863 dataTypeA: cudaDataType,
19864 A: *mut ::core::ffi::c_void,
19865 lda: i64,
19866 dataTypeS: cudaDataType,
19867 S: *mut ::core::ffi::c_void,
19868 dataTypeU: cudaDataType,
19869 U: *mut ::core::ffi::c_void,
19870 ldu: i64,
19871 dataTypeV: cudaDataType,
19872 V: *mut ::core::ffi::c_void,
19873 ldv: i64,
19874 computeType: cudaDataType,
19875 bufferOnDevice: *mut ::core::ffi::c_void,
19876 workspaceInBytesOnDevice: usize,
19877 bufferOnHost: *mut ::core::ffi::c_void,
19878 workspaceInBytesOnHost: usize,
19879 d_info: *mut ::core::ffi::c_int,
19880 h_err_sigma: *mut f64,
19881 ) -> cusolverStatus_t,
19882 pub cusolverDnXgesvdp_bufferSize: unsafe extern "C" fn(
19883 handle: cusolverDnHandle_t,
19884 params: cusolverDnParams_t,
19885 jobz: cusolverEigMode_t,
19886 econ: ::core::ffi::c_int,
19887 m: i64,
19888 n: i64,
19889 dataTypeA: cudaDataType,
19890 A: *const ::core::ffi::c_void,
19891 lda: i64,
19892 dataTypeS: cudaDataType,
19893 S: *const ::core::ffi::c_void,
19894 dataTypeU: cudaDataType,
19895 U: *const ::core::ffi::c_void,
19896 ldu: i64,
19897 dataTypeV: cudaDataType,
19898 V: *const ::core::ffi::c_void,
19899 ldv: i64,
19900 computeType: cudaDataType,
19901 workspaceInBytesOnDevice: *mut usize,
19902 workspaceInBytesOnHost: *mut usize,
19903 ) -> cusolverStatus_t,
19904 pub cusolverDnXgesvdr: unsafe extern "C" fn(
19905 handle: cusolverDnHandle_t,
19906 params: cusolverDnParams_t,
19907 jobu: ::core::ffi::c_schar,
19908 jobv: ::core::ffi::c_schar,
19909 m: i64,
19910 n: i64,
19911 k: i64,
19912 p: i64,
19913 niters: i64,
19914 dataTypeA: cudaDataType,
19915 A: *mut ::core::ffi::c_void,
19916 lda: i64,
19917 dataTypeSrand: cudaDataType,
19918 Srand: *mut ::core::ffi::c_void,
19919 dataTypeUrand: cudaDataType,
19920 Urand: *mut ::core::ffi::c_void,
19921 ldUrand: i64,
19922 dataTypeVrand: cudaDataType,
19923 Vrand: *mut ::core::ffi::c_void,
19924 ldVrand: i64,
19925 computeType: cudaDataType,
19926 bufferOnDevice: *mut ::core::ffi::c_void,
19927 workspaceInBytesOnDevice: usize,
19928 bufferOnHost: *mut ::core::ffi::c_void,
19929 workspaceInBytesOnHost: usize,
19930 d_info: *mut ::core::ffi::c_int,
19931 ) -> cusolverStatus_t,
19932 pub cusolverDnXgesvdr_bufferSize: unsafe extern "C" fn(
19933 handle: cusolverDnHandle_t,
19934 params: cusolverDnParams_t,
19935 jobu: ::core::ffi::c_schar,
19936 jobv: ::core::ffi::c_schar,
19937 m: i64,
19938 n: i64,
19939 k: i64,
19940 p: i64,
19941 niters: i64,
19942 dataTypeA: cudaDataType,
19943 A: *const ::core::ffi::c_void,
19944 lda: i64,
19945 dataTypeSrand: cudaDataType,
19946 Srand: *const ::core::ffi::c_void,
19947 dataTypeUrand: cudaDataType,
19948 Urand: *const ::core::ffi::c_void,
19949 ldUrand: i64,
19950 dataTypeVrand: cudaDataType,
19951 Vrand: *const ::core::ffi::c_void,
19952 ldVrand: i64,
19953 computeType: cudaDataType,
19954 workspaceInBytesOnDevice: *mut usize,
19955 workspaceInBytesOnHost: *mut usize,
19956 ) -> cusolverStatus_t,
19957 pub cusolverDnXgetrf: unsafe extern "C" fn(
19958 handle: cusolverDnHandle_t,
19959 params: cusolverDnParams_t,
19960 m: i64,
19961 n: i64,
19962 dataTypeA: cudaDataType,
19963 A: *mut ::core::ffi::c_void,
19964 lda: i64,
19965 ipiv: *mut i64,
19966 computeType: cudaDataType,
19967 bufferOnDevice: *mut ::core::ffi::c_void,
19968 workspaceInBytesOnDevice: usize,
19969 bufferOnHost: *mut ::core::ffi::c_void,
19970 workspaceInBytesOnHost: usize,
19971 info: *mut ::core::ffi::c_int,
19972 ) -> cusolverStatus_t,
19973 pub cusolverDnXgetrf_bufferSize: unsafe extern "C" fn(
19974 handle: cusolverDnHandle_t,
19975 params: cusolverDnParams_t,
19976 m: i64,
19977 n: i64,
19978 dataTypeA: cudaDataType,
19979 A: *const ::core::ffi::c_void,
19980 lda: i64,
19981 computeType: cudaDataType,
19982 workspaceInBytesOnDevice: *mut usize,
19983 workspaceInBytesOnHost: *mut usize,
19984 ) -> cusolverStatus_t,
19985 pub cusolverDnXgetrs: unsafe extern "C" fn(
19986 handle: cusolverDnHandle_t,
19987 params: cusolverDnParams_t,
19988 trans: cublasOperation_t,
19989 n: i64,
19990 nrhs: i64,
19991 dataTypeA: cudaDataType,
19992 A: *const ::core::ffi::c_void,
19993 lda: i64,
19994 ipiv: *const i64,
19995 dataTypeB: cudaDataType,
19996 B: *mut ::core::ffi::c_void,
19997 ldb: i64,
19998 info: *mut ::core::ffi::c_int,
19999 ) -> cusolverStatus_t,
20000 #[cfg(any(feature = "cuda-12040"))]
20001 pub cusolverDnXlarft: unsafe extern "C" fn(
20002 handle: cusolverDnHandle_t,
20003 params: cusolverDnParams_t,
20004 direct: cusolverDirectMode_t,
20005 storev: cusolverStorevMode_t,
20006 N: i64,
20007 K: i64,
20008 dataTypeV: cudaDataType,
20009 d_V: *const ::core::ffi::c_void,
20010 ldv: i64,
20011 dataTypeTau: cudaDataType,
20012 d_tau: *const ::core::ffi::c_void,
20013 dataTypeT: cudaDataType,
20014 d_T: *mut ::core::ffi::c_void,
20015 ldt: i64,
20016 computeType: cudaDataType,
20017 bufferOnDevice: *mut ::core::ffi::c_void,
20018 workspaceInBytesOnDevice: usize,
20019 bufferOnHost: *mut ::core::ffi::c_void,
20020 workspaceInBytesOnHost: usize,
20021 ) -> cusolverStatus_t,
20022 #[cfg(any(
20023 feature = "cuda-12050",
20024 feature = "cuda-12060",
20025 feature = "cuda-12080",
20026 feature = "cuda-12090",
20027 feature = "cuda-13000",
20028 feature = "cuda-13010"
20029 ))]
20030 pub cusolverDnXlarft: unsafe extern "C" fn(
20031 handle: cusolverDnHandle_t,
20032 params: cusolverDnParams_t,
20033 direct: cusolverDirectMode_t,
20034 storev: cusolverStorevMode_t,
20035 n: i64,
20036 k: i64,
20037 dataTypeV: cudaDataType,
20038 V: *const ::core::ffi::c_void,
20039 ldv: i64,
20040 dataTypeTau: cudaDataType,
20041 tau: *const ::core::ffi::c_void,
20042 dataTypeT: cudaDataType,
20043 T: *mut ::core::ffi::c_void,
20044 ldt: i64,
20045 computeType: cudaDataType,
20046 bufferOnDevice: *mut ::core::ffi::c_void,
20047 workspaceInBytesOnDevice: usize,
20048 bufferOnHost: *mut ::core::ffi::c_void,
20049 workspaceInBytesOnHost: usize,
20050 ) -> cusolverStatus_t,
20051 #[cfg(any(feature = "cuda-12040"))]
20052 pub cusolverDnXlarft_bufferSize: unsafe extern "C" fn(
20053 handle: cusolverDnHandle_t,
20054 params: cusolverDnParams_t,
20055 direct: cusolverDirectMode_t,
20056 storev: cusolverStorevMode_t,
20057 N: i64,
20058 K: i64,
20059 dataTypeV: cudaDataType,
20060 d_V: *const ::core::ffi::c_void,
20061 ldv: i64,
20062 dataTypeTau: cudaDataType,
20063 d_tau: *const ::core::ffi::c_void,
20064 dataTypeT: cudaDataType,
20065 d_T: *mut ::core::ffi::c_void,
20066 ldt: i64,
20067 computeType: cudaDataType,
20068 workspaceInBytesOnDevice: *mut usize,
20069 workspaceInBytesOnHost: *mut usize,
20070 ) -> cusolverStatus_t,
20071 #[cfg(any(
20072 feature = "cuda-12050",
20073 feature = "cuda-12060",
20074 feature = "cuda-12080",
20075 feature = "cuda-12090",
20076 feature = "cuda-13000",
20077 feature = "cuda-13010"
20078 ))]
20079 pub cusolverDnXlarft_bufferSize: unsafe extern "C" fn(
20080 handle: cusolverDnHandle_t,
20081 params: cusolverDnParams_t,
20082 direct: cusolverDirectMode_t,
20083 storev: cusolverStorevMode_t,
20084 n: i64,
20085 k: i64,
20086 dataTypeV: cudaDataType,
20087 V: *const ::core::ffi::c_void,
20088 ldv: i64,
20089 dataTypeTau: cudaDataType,
20090 tau: *const ::core::ffi::c_void,
20091 dataTypeT: cudaDataType,
20092 T: *mut ::core::ffi::c_void,
20093 ldt: i64,
20094 computeType: cudaDataType,
20095 workspaceInBytesOnDevice: *mut usize,
20096 workspaceInBytesOnHost: *mut usize,
20097 ) -> cusolverStatus_t,
20098 pub cusolverDnXpotrf: unsafe extern "C" fn(
20099 handle: cusolverDnHandle_t,
20100 params: cusolverDnParams_t,
20101 uplo: cublasFillMode_t,
20102 n: i64,
20103 dataTypeA: cudaDataType,
20104 A: *mut ::core::ffi::c_void,
20105 lda: i64,
20106 computeType: cudaDataType,
20107 bufferOnDevice: *mut ::core::ffi::c_void,
20108 workspaceInBytesOnDevice: usize,
20109 bufferOnHost: *mut ::core::ffi::c_void,
20110 workspaceInBytesOnHost: usize,
20111 info: *mut ::core::ffi::c_int,
20112 ) -> cusolverStatus_t,
20113 pub cusolverDnXpotrf_bufferSize: unsafe extern "C" fn(
20114 handle: cusolverDnHandle_t,
20115 params: cusolverDnParams_t,
20116 uplo: cublasFillMode_t,
20117 n: i64,
20118 dataTypeA: cudaDataType,
20119 A: *const ::core::ffi::c_void,
20120 lda: i64,
20121 computeType: cudaDataType,
20122 workspaceInBytesOnDevice: *mut usize,
20123 workspaceInBytesOnHost: *mut usize,
20124 ) -> cusolverStatus_t,
20125 pub cusolverDnXpotrs: unsafe extern "C" fn(
20126 handle: cusolverDnHandle_t,
20127 params: cusolverDnParams_t,
20128 uplo: cublasFillMode_t,
20129 n: i64,
20130 nrhs: i64,
20131 dataTypeA: cudaDataType,
20132 A: *const ::core::ffi::c_void,
20133 lda: i64,
20134 dataTypeB: cudaDataType,
20135 B: *mut ::core::ffi::c_void,
20136 ldb: i64,
20137 info: *mut ::core::ffi::c_int,
20138 ) -> cusolverStatus_t,
20139 #[cfg(any(
20140 feature = "cuda-12060",
20141 feature = "cuda-12080",
20142 feature = "cuda-12090",
20143 feature = "cuda-13000",
20144 feature = "cuda-13010"
20145 ))]
20146 pub cusolverDnXsyevBatched: unsafe extern "C" fn(
20147 handle: cusolverDnHandle_t,
20148 params: cusolverDnParams_t,
20149 jobz: cusolverEigMode_t,
20150 uplo: cublasFillMode_t,
20151 n: i64,
20152 dataTypeA: cudaDataType,
20153 A: *mut ::core::ffi::c_void,
20154 lda: i64,
20155 dataTypeW: cudaDataType,
20156 W: *mut ::core::ffi::c_void,
20157 computeType: cudaDataType,
20158 bufferOnDevice: *mut ::core::ffi::c_void,
20159 workspaceInBytesOnDevice: usize,
20160 bufferOnHost: *mut ::core::ffi::c_void,
20161 workspaceInBytesOnHost: usize,
20162 info: *mut ::core::ffi::c_int,
20163 batchSize: i64,
20164 ) -> cusolverStatus_t,
20165 #[cfg(any(
20166 feature = "cuda-12060",
20167 feature = "cuda-12080",
20168 feature = "cuda-12090",
20169 feature = "cuda-13000",
20170 feature = "cuda-13010"
20171 ))]
20172 pub cusolverDnXsyevBatched_bufferSize: unsafe extern "C" fn(
20173 handle: cusolverDnHandle_t,
20174 params: cusolverDnParams_t,
20175 jobz: cusolverEigMode_t,
20176 uplo: cublasFillMode_t,
20177 n: i64,
20178 dataTypeA: cudaDataType,
20179 A: *const ::core::ffi::c_void,
20180 lda: i64,
20181 dataTypeW: cudaDataType,
20182 W: *const ::core::ffi::c_void,
20183 computeType: cudaDataType,
20184 workspaceInBytesOnDevice: *mut usize,
20185 workspaceInBytesOnHost: *mut usize,
20186 batchSize: i64,
20187 ) -> cusolverStatus_t,
20188 pub cusolverDnXsyevd: unsafe extern "C" fn(
20189 handle: cusolverDnHandle_t,
20190 params: cusolverDnParams_t,
20191 jobz: cusolverEigMode_t,
20192 uplo: cublasFillMode_t,
20193 n: i64,
20194 dataTypeA: cudaDataType,
20195 A: *mut ::core::ffi::c_void,
20196 lda: i64,
20197 dataTypeW: cudaDataType,
20198 W: *mut ::core::ffi::c_void,
20199 computeType: cudaDataType,
20200 bufferOnDevice: *mut ::core::ffi::c_void,
20201 workspaceInBytesOnDevice: usize,
20202 bufferOnHost: *mut ::core::ffi::c_void,
20203 workspaceInBytesOnHost: usize,
20204 info: *mut ::core::ffi::c_int,
20205 ) -> cusolverStatus_t,
20206 pub cusolverDnXsyevd_bufferSize: unsafe extern "C" fn(
20207 handle: cusolverDnHandle_t,
20208 params: cusolverDnParams_t,
20209 jobz: cusolverEigMode_t,
20210 uplo: cublasFillMode_t,
20211 n: i64,
20212 dataTypeA: cudaDataType,
20213 A: *const ::core::ffi::c_void,
20214 lda: i64,
20215 dataTypeW: cudaDataType,
20216 W: *const ::core::ffi::c_void,
20217 computeType: cudaDataType,
20218 workspaceInBytesOnDevice: *mut usize,
20219 workspaceInBytesOnHost: *mut usize,
20220 ) -> cusolverStatus_t,
20221 pub cusolverDnXsyevdx: unsafe extern "C" fn(
20222 handle: cusolverDnHandle_t,
20223 params: cusolverDnParams_t,
20224 jobz: cusolverEigMode_t,
20225 range: cusolverEigRange_t,
20226 uplo: cublasFillMode_t,
20227 n: i64,
20228 dataTypeA: cudaDataType,
20229 A: *mut ::core::ffi::c_void,
20230 lda: i64,
20231 vl: *mut ::core::ffi::c_void,
20232 vu: *mut ::core::ffi::c_void,
20233 il: i64,
20234 iu: i64,
20235 meig64: *mut i64,
20236 dataTypeW: cudaDataType,
20237 W: *mut ::core::ffi::c_void,
20238 computeType: cudaDataType,
20239 bufferOnDevice: *mut ::core::ffi::c_void,
20240 workspaceInBytesOnDevice: usize,
20241 bufferOnHost: *mut ::core::ffi::c_void,
20242 workspaceInBytesOnHost: usize,
20243 info: *mut ::core::ffi::c_int,
20244 ) -> cusolverStatus_t,
20245 pub cusolverDnXsyevdx_bufferSize: unsafe extern "C" fn(
20246 handle: cusolverDnHandle_t,
20247 params: cusolverDnParams_t,
20248 jobz: cusolverEigMode_t,
20249 range: cusolverEigRange_t,
20250 uplo: cublasFillMode_t,
20251 n: i64,
20252 dataTypeA: cudaDataType,
20253 A: *const ::core::ffi::c_void,
20254 lda: i64,
20255 vl: *mut ::core::ffi::c_void,
20256 vu: *mut ::core::ffi::c_void,
20257 il: i64,
20258 iu: i64,
20259 h_meig: *mut i64,
20260 dataTypeW: cudaDataType,
20261 W: *const ::core::ffi::c_void,
20262 computeType: cudaDataType,
20263 workspaceInBytesOnDevice: *mut usize,
20264 workspaceInBytesOnHost: *mut usize,
20265 ) -> cusolverStatus_t,
20266 pub cusolverDnXsyevjGetResidual: unsafe extern "C" fn(
20267 handle: cusolverDnHandle_t,
20268 info: syevjInfo_t,
20269 residual: *mut f64,
20270 ) -> cusolverStatus_t,
20271 pub cusolverDnXsyevjGetSweeps: unsafe extern "C" fn(
20272 handle: cusolverDnHandle_t,
20273 info: syevjInfo_t,
20274 executed_sweeps: *mut ::core::ffi::c_int,
20275 ) -> cusolverStatus_t,
20276 pub cusolverDnXsyevjSetMaxSweeps: unsafe extern "C" fn(
20277 info: syevjInfo_t,
20278 max_sweeps: ::core::ffi::c_int,
20279 ) -> cusolverStatus_t,
20280 pub cusolverDnXsyevjSetSortEig: unsafe extern "C" fn(
20281 info: syevjInfo_t,
20282 sort_eig: ::core::ffi::c_int,
20283 ) -> cusolverStatus_t,
20284 pub cusolverDnXsyevjSetTolerance:
20285 unsafe extern "C" fn(info: syevjInfo_t, tolerance: f64) -> cusolverStatus_t,
20286 pub cusolverDnXsytrs: unsafe extern "C" fn(
20287 handle: cusolverDnHandle_t,
20288 uplo: cublasFillMode_t,
20289 n: i64,
20290 nrhs: i64,
20291 dataTypeA: cudaDataType,
20292 A: *const ::core::ffi::c_void,
20293 lda: i64,
20294 ipiv: *const i64,
20295 dataTypeB: cudaDataType,
20296 B: *mut ::core::ffi::c_void,
20297 ldb: i64,
20298 bufferOnDevice: *mut ::core::ffi::c_void,
20299 workspaceInBytesOnDevice: usize,
20300 bufferOnHost: *mut ::core::ffi::c_void,
20301 workspaceInBytesOnHost: usize,
20302 info: *mut ::core::ffi::c_int,
20303 ) -> cusolverStatus_t,
20304 pub cusolverDnXsytrs_bufferSize: unsafe extern "C" fn(
20305 handle: cusolverDnHandle_t,
20306 uplo: cublasFillMode_t,
20307 n: i64,
20308 nrhs: i64,
20309 dataTypeA: cudaDataType,
20310 A: *const ::core::ffi::c_void,
20311 lda: i64,
20312 ipiv: *const i64,
20313 dataTypeB: cudaDataType,
20314 B: *mut ::core::ffi::c_void,
20315 ldb: i64,
20316 workspaceInBytesOnDevice: *mut usize,
20317 workspaceInBytesOnHost: *mut usize,
20318 ) -> cusolverStatus_t,
20319 pub cusolverDnXtrtri: unsafe extern "C" fn(
20320 handle: cusolverDnHandle_t,
20321 uplo: cublasFillMode_t,
20322 diag: cublasDiagType_t,
20323 n: i64,
20324 dataTypeA: cudaDataType,
20325 A: *mut ::core::ffi::c_void,
20326 lda: i64,
20327 bufferOnDevice: *mut ::core::ffi::c_void,
20328 workspaceInBytesOnDevice: usize,
20329 bufferOnHost: *mut ::core::ffi::c_void,
20330 workspaceInBytesOnHost: usize,
20331 devInfo: *mut ::core::ffi::c_int,
20332 ) -> cusolverStatus_t,
20333 pub cusolverDnXtrtri_bufferSize: unsafe extern "C" fn(
20334 handle: cusolverDnHandle_t,
20335 uplo: cublasFillMode_t,
20336 diag: cublasDiagType_t,
20337 n: i64,
20338 dataTypeA: cudaDataType,
20339 A: *mut ::core::ffi::c_void,
20340 lda: i64,
20341 workspaceInBytesOnDevice: *mut usize,
20342 workspaceInBytesOnHost: *mut usize,
20343 ) -> cusolverStatus_t,
20344 pub cusolverDnZCgels: unsafe extern "C" fn(
20345 handle: cusolverDnHandle_t,
20346 m: cusolver_int_t,
20347 n: cusolver_int_t,
20348 nrhs: cusolver_int_t,
20349 dA: *mut cuDoubleComplex,
20350 ldda: cusolver_int_t,
20351 dB: *mut cuDoubleComplex,
20352 lddb: cusolver_int_t,
20353 dX: *mut cuDoubleComplex,
20354 lddx: cusolver_int_t,
20355 dWorkspace: *mut ::core::ffi::c_void,
20356 lwork_bytes: usize,
20357 iter: *mut cusolver_int_t,
20358 d_info: *mut cusolver_int_t,
20359 ) -> cusolverStatus_t,
20360 pub cusolverDnZCgels_bufferSize: unsafe extern "C" fn(
20361 handle: cusolverDnHandle_t,
20362 m: cusolver_int_t,
20363 n: cusolver_int_t,
20364 nrhs: cusolver_int_t,
20365 dA: *mut cuDoubleComplex,
20366 ldda: cusolver_int_t,
20367 dB: *mut cuDoubleComplex,
20368 lddb: cusolver_int_t,
20369 dX: *mut cuDoubleComplex,
20370 lddx: cusolver_int_t,
20371 dWorkspace: *mut ::core::ffi::c_void,
20372 lwork_bytes: *mut usize,
20373 ) -> cusolverStatus_t,
20374 pub cusolverDnZCgesv: unsafe extern "C" fn(
20375 handle: cusolverDnHandle_t,
20376 n: cusolver_int_t,
20377 nrhs: cusolver_int_t,
20378 dA: *mut cuDoubleComplex,
20379 ldda: cusolver_int_t,
20380 dipiv: *mut cusolver_int_t,
20381 dB: *mut cuDoubleComplex,
20382 lddb: cusolver_int_t,
20383 dX: *mut cuDoubleComplex,
20384 lddx: cusolver_int_t,
20385 dWorkspace: *mut ::core::ffi::c_void,
20386 lwork_bytes: usize,
20387 iter: *mut cusolver_int_t,
20388 d_info: *mut cusolver_int_t,
20389 ) -> cusolverStatus_t,
20390 pub cusolverDnZCgesv_bufferSize: unsafe extern "C" fn(
20391 handle: cusolverDnHandle_t,
20392 n: cusolver_int_t,
20393 nrhs: cusolver_int_t,
20394 dA: *mut cuDoubleComplex,
20395 ldda: cusolver_int_t,
20396 dipiv: *mut cusolver_int_t,
20397 dB: *mut cuDoubleComplex,
20398 lddb: cusolver_int_t,
20399 dX: *mut cuDoubleComplex,
20400 lddx: cusolver_int_t,
20401 dWorkspace: *mut ::core::ffi::c_void,
20402 lwork_bytes: *mut usize,
20403 ) -> cusolverStatus_t,
20404 pub cusolverDnZEgels: unsafe extern "C" fn(
20405 handle: cusolverDnHandle_t,
20406 m: cusolver_int_t,
20407 n: cusolver_int_t,
20408 nrhs: cusolver_int_t,
20409 dA: *mut cuDoubleComplex,
20410 ldda: cusolver_int_t,
20411 dB: *mut cuDoubleComplex,
20412 lddb: cusolver_int_t,
20413 dX: *mut cuDoubleComplex,
20414 lddx: cusolver_int_t,
20415 dWorkspace: *mut ::core::ffi::c_void,
20416 lwork_bytes: usize,
20417 iter: *mut cusolver_int_t,
20418 d_info: *mut cusolver_int_t,
20419 ) -> cusolverStatus_t,
20420 pub cusolverDnZEgels_bufferSize: unsafe extern "C" fn(
20421 handle: cusolverDnHandle_t,
20422 m: cusolver_int_t,
20423 n: cusolver_int_t,
20424 nrhs: cusolver_int_t,
20425 dA: *mut cuDoubleComplex,
20426 ldda: cusolver_int_t,
20427 dB: *mut cuDoubleComplex,
20428 lddb: cusolver_int_t,
20429 dX: *mut cuDoubleComplex,
20430 lddx: cusolver_int_t,
20431 dWorkspace: *mut ::core::ffi::c_void,
20432 lwork_bytes: *mut usize,
20433 ) -> cusolverStatus_t,
20434 pub cusolverDnZEgesv: unsafe extern "C" fn(
20435 handle: cusolverDnHandle_t,
20436 n: cusolver_int_t,
20437 nrhs: cusolver_int_t,
20438 dA: *mut cuDoubleComplex,
20439 ldda: cusolver_int_t,
20440 dipiv: *mut cusolver_int_t,
20441 dB: *mut cuDoubleComplex,
20442 lddb: cusolver_int_t,
20443 dX: *mut cuDoubleComplex,
20444 lddx: cusolver_int_t,
20445 dWorkspace: *mut ::core::ffi::c_void,
20446 lwork_bytes: usize,
20447 iter: *mut cusolver_int_t,
20448 d_info: *mut cusolver_int_t,
20449 ) -> cusolverStatus_t,
20450 pub cusolverDnZEgesv_bufferSize: unsafe extern "C" fn(
20451 handle: cusolverDnHandle_t,
20452 n: cusolver_int_t,
20453 nrhs: cusolver_int_t,
20454 dA: *mut cuDoubleComplex,
20455 ldda: cusolver_int_t,
20456 dipiv: *mut cusolver_int_t,
20457 dB: *mut cuDoubleComplex,
20458 lddb: cusolver_int_t,
20459 dX: *mut cuDoubleComplex,
20460 lddx: cusolver_int_t,
20461 dWorkspace: *mut ::core::ffi::c_void,
20462 lwork_bytes: *mut usize,
20463 ) -> cusolverStatus_t,
20464 pub cusolverDnZKgels: unsafe extern "C" fn(
20465 handle: cusolverDnHandle_t,
20466 m: cusolver_int_t,
20467 n: cusolver_int_t,
20468 nrhs: cusolver_int_t,
20469 dA: *mut cuDoubleComplex,
20470 ldda: cusolver_int_t,
20471 dB: *mut cuDoubleComplex,
20472 lddb: cusolver_int_t,
20473 dX: *mut cuDoubleComplex,
20474 lddx: cusolver_int_t,
20475 dWorkspace: *mut ::core::ffi::c_void,
20476 lwork_bytes: usize,
20477 iter: *mut cusolver_int_t,
20478 d_info: *mut cusolver_int_t,
20479 ) -> cusolverStatus_t,
20480 pub cusolverDnZKgels_bufferSize: unsafe extern "C" fn(
20481 handle: cusolverDnHandle_t,
20482 m: cusolver_int_t,
20483 n: cusolver_int_t,
20484 nrhs: cusolver_int_t,
20485 dA: *mut cuDoubleComplex,
20486 ldda: cusolver_int_t,
20487 dB: *mut cuDoubleComplex,
20488 lddb: cusolver_int_t,
20489 dX: *mut cuDoubleComplex,
20490 lddx: cusolver_int_t,
20491 dWorkspace: *mut ::core::ffi::c_void,
20492 lwork_bytes: *mut usize,
20493 ) -> cusolverStatus_t,
20494 pub cusolverDnZKgesv: unsafe extern "C" fn(
20495 handle: cusolverDnHandle_t,
20496 n: cusolver_int_t,
20497 nrhs: cusolver_int_t,
20498 dA: *mut cuDoubleComplex,
20499 ldda: cusolver_int_t,
20500 dipiv: *mut cusolver_int_t,
20501 dB: *mut cuDoubleComplex,
20502 lddb: cusolver_int_t,
20503 dX: *mut cuDoubleComplex,
20504 lddx: cusolver_int_t,
20505 dWorkspace: *mut ::core::ffi::c_void,
20506 lwork_bytes: usize,
20507 iter: *mut cusolver_int_t,
20508 d_info: *mut cusolver_int_t,
20509 ) -> cusolverStatus_t,
20510 pub cusolverDnZKgesv_bufferSize: unsafe extern "C" fn(
20511 handle: cusolverDnHandle_t,
20512 n: cusolver_int_t,
20513 nrhs: cusolver_int_t,
20514 dA: *mut cuDoubleComplex,
20515 ldda: cusolver_int_t,
20516 dipiv: *mut cusolver_int_t,
20517 dB: *mut cuDoubleComplex,
20518 lddb: cusolver_int_t,
20519 dX: *mut cuDoubleComplex,
20520 lddx: cusolver_int_t,
20521 dWorkspace: *mut ::core::ffi::c_void,
20522 lwork_bytes: *mut usize,
20523 ) -> cusolverStatus_t,
20524 pub cusolverDnZYgels: unsafe extern "C" fn(
20525 handle: cusolverDnHandle_t,
20526 m: cusolver_int_t,
20527 n: cusolver_int_t,
20528 nrhs: cusolver_int_t,
20529 dA: *mut cuDoubleComplex,
20530 ldda: cusolver_int_t,
20531 dB: *mut cuDoubleComplex,
20532 lddb: cusolver_int_t,
20533 dX: *mut cuDoubleComplex,
20534 lddx: cusolver_int_t,
20535 dWorkspace: *mut ::core::ffi::c_void,
20536 lwork_bytes: usize,
20537 iter: *mut cusolver_int_t,
20538 d_info: *mut cusolver_int_t,
20539 ) -> cusolverStatus_t,
20540 pub cusolverDnZYgels_bufferSize: unsafe extern "C" fn(
20541 handle: cusolverDnHandle_t,
20542 m: cusolver_int_t,
20543 n: cusolver_int_t,
20544 nrhs: cusolver_int_t,
20545 dA: *mut cuDoubleComplex,
20546 ldda: cusolver_int_t,
20547 dB: *mut cuDoubleComplex,
20548 lddb: cusolver_int_t,
20549 dX: *mut cuDoubleComplex,
20550 lddx: cusolver_int_t,
20551 dWorkspace: *mut ::core::ffi::c_void,
20552 lwork_bytes: *mut usize,
20553 ) -> cusolverStatus_t,
20554 pub cusolverDnZYgesv: unsafe extern "C" fn(
20555 handle: cusolverDnHandle_t,
20556 n: cusolver_int_t,
20557 nrhs: cusolver_int_t,
20558 dA: *mut cuDoubleComplex,
20559 ldda: cusolver_int_t,
20560 dipiv: *mut cusolver_int_t,
20561 dB: *mut cuDoubleComplex,
20562 lddb: cusolver_int_t,
20563 dX: *mut cuDoubleComplex,
20564 lddx: cusolver_int_t,
20565 dWorkspace: *mut ::core::ffi::c_void,
20566 lwork_bytes: usize,
20567 iter: *mut cusolver_int_t,
20568 d_info: *mut cusolver_int_t,
20569 ) -> cusolverStatus_t,
20570 pub cusolverDnZYgesv_bufferSize: unsafe extern "C" fn(
20571 handle: cusolverDnHandle_t,
20572 n: cusolver_int_t,
20573 nrhs: cusolver_int_t,
20574 dA: *mut cuDoubleComplex,
20575 ldda: cusolver_int_t,
20576 dipiv: *mut cusolver_int_t,
20577 dB: *mut cuDoubleComplex,
20578 lddb: cusolver_int_t,
20579 dX: *mut cuDoubleComplex,
20580 lddx: cusolver_int_t,
20581 dWorkspace: *mut ::core::ffi::c_void,
20582 lwork_bytes: *mut usize,
20583 ) -> cusolverStatus_t,
20584 pub cusolverDnZZgels: unsafe extern "C" fn(
20585 handle: cusolverDnHandle_t,
20586 m: cusolver_int_t,
20587 n: cusolver_int_t,
20588 nrhs: cusolver_int_t,
20589 dA: *mut cuDoubleComplex,
20590 ldda: cusolver_int_t,
20591 dB: *mut cuDoubleComplex,
20592 lddb: cusolver_int_t,
20593 dX: *mut cuDoubleComplex,
20594 lddx: cusolver_int_t,
20595 dWorkspace: *mut ::core::ffi::c_void,
20596 lwork_bytes: usize,
20597 iter: *mut cusolver_int_t,
20598 d_info: *mut cusolver_int_t,
20599 ) -> cusolverStatus_t,
20600 pub cusolverDnZZgels_bufferSize: unsafe extern "C" fn(
20601 handle: cusolverDnHandle_t,
20602 m: cusolver_int_t,
20603 n: cusolver_int_t,
20604 nrhs: cusolver_int_t,
20605 dA: *mut cuDoubleComplex,
20606 ldda: cusolver_int_t,
20607 dB: *mut cuDoubleComplex,
20608 lddb: cusolver_int_t,
20609 dX: *mut cuDoubleComplex,
20610 lddx: cusolver_int_t,
20611 dWorkspace: *mut ::core::ffi::c_void,
20612 lwork_bytes: *mut usize,
20613 ) -> cusolverStatus_t,
20614 pub cusolverDnZZgesv: unsafe extern "C" fn(
20615 handle: cusolverDnHandle_t,
20616 n: cusolver_int_t,
20617 nrhs: cusolver_int_t,
20618 dA: *mut cuDoubleComplex,
20619 ldda: cusolver_int_t,
20620 dipiv: *mut cusolver_int_t,
20621 dB: *mut cuDoubleComplex,
20622 lddb: cusolver_int_t,
20623 dX: *mut cuDoubleComplex,
20624 lddx: cusolver_int_t,
20625 dWorkspace: *mut ::core::ffi::c_void,
20626 lwork_bytes: usize,
20627 iter: *mut cusolver_int_t,
20628 d_info: *mut cusolver_int_t,
20629 ) -> cusolverStatus_t,
20630 pub cusolverDnZZgesv_bufferSize: unsafe extern "C" fn(
20631 handle: cusolverDnHandle_t,
20632 n: cusolver_int_t,
20633 nrhs: cusolver_int_t,
20634 dA: *mut cuDoubleComplex,
20635 ldda: cusolver_int_t,
20636 dipiv: *mut cusolver_int_t,
20637 dB: *mut cuDoubleComplex,
20638 lddb: cusolver_int_t,
20639 dX: *mut cuDoubleComplex,
20640 lddx: cusolver_int_t,
20641 dWorkspace: *mut ::core::ffi::c_void,
20642 lwork_bytes: *mut usize,
20643 ) -> cusolverStatus_t,
20644 pub cusolverDnZgebrd: unsafe extern "C" fn(
20645 handle: cusolverDnHandle_t,
20646 m: ::core::ffi::c_int,
20647 n: ::core::ffi::c_int,
20648 A: *mut cuDoubleComplex,
20649 lda: ::core::ffi::c_int,
20650 D: *mut f64,
20651 E: *mut f64,
20652 TAUQ: *mut cuDoubleComplex,
20653 TAUP: *mut cuDoubleComplex,
20654 Work: *mut cuDoubleComplex,
20655 Lwork: ::core::ffi::c_int,
20656 devInfo: *mut ::core::ffi::c_int,
20657 ) -> cusolverStatus_t,
20658 pub cusolverDnZgebrd_bufferSize: unsafe extern "C" fn(
20659 handle: cusolverDnHandle_t,
20660 m: ::core::ffi::c_int,
20661 n: ::core::ffi::c_int,
20662 Lwork: *mut ::core::ffi::c_int,
20663 ) -> cusolverStatus_t,
20664 pub cusolverDnZgeqrf: unsafe extern "C" fn(
20665 handle: cusolverDnHandle_t,
20666 m: ::core::ffi::c_int,
20667 n: ::core::ffi::c_int,
20668 A: *mut cuDoubleComplex,
20669 lda: ::core::ffi::c_int,
20670 TAU: *mut cuDoubleComplex,
20671 Workspace: *mut cuDoubleComplex,
20672 Lwork: ::core::ffi::c_int,
20673 devInfo: *mut ::core::ffi::c_int,
20674 ) -> cusolverStatus_t,
20675 pub cusolverDnZgeqrf_bufferSize: unsafe extern "C" fn(
20676 handle: cusolverDnHandle_t,
20677 m: ::core::ffi::c_int,
20678 n: ::core::ffi::c_int,
20679 A: *mut cuDoubleComplex,
20680 lda: ::core::ffi::c_int,
20681 lwork: *mut ::core::ffi::c_int,
20682 ) -> cusolverStatus_t,
20683 pub cusolverDnZgesvd: unsafe extern "C" fn(
20684 handle: cusolverDnHandle_t,
20685 jobu: ::core::ffi::c_schar,
20686 jobvt: ::core::ffi::c_schar,
20687 m: ::core::ffi::c_int,
20688 n: ::core::ffi::c_int,
20689 A: *mut cuDoubleComplex,
20690 lda: ::core::ffi::c_int,
20691 S: *mut f64,
20692 U: *mut cuDoubleComplex,
20693 ldu: ::core::ffi::c_int,
20694 VT: *mut cuDoubleComplex,
20695 ldvt: ::core::ffi::c_int,
20696 work: *mut cuDoubleComplex,
20697 lwork: ::core::ffi::c_int,
20698 rwork: *mut f64,
20699 info: *mut ::core::ffi::c_int,
20700 ) -> cusolverStatus_t,
20701 pub cusolverDnZgesvd_bufferSize: unsafe extern "C" fn(
20702 handle: cusolverDnHandle_t,
20703 m: ::core::ffi::c_int,
20704 n: ::core::ffi::c_int,
20705 lwork: *mut ::core::ffi::c_int,
20706 ) -> cusolverStatus_t,
20707 pub cusolverDnZgesvdaStridedBatched: unsafe extern "C" fn(
20708 handle: cusolverDnHandle_t,
20709 jobz: cusolverEigMode_t,
20710 rank: ::core::ffi::c_int,
20711 m: ::core::ffi::c_int,
20712 n: ::core::ffi::c_int,
20713 d_A: *const cuDoubleComplex,
20714 lda: ::core::ffi::c_int,
20715 strideA: ::core::ffi::c_longlong,
20716 d_S: *mut f64,
20717 strideS: ::core::ffi::c_longlong,
20718 d_U: *mut cuDoubleComplex,
20719 ldu: ::core::ffi::c_int,
20720 strideU: ::core::ffi::c_longlong,
20721 d_V: *mut cuDoubleComplex,
20722 ldv: ::core::ffi::c_int,
20723 strideV: ::core::ffi::c_longlong,
20724 d_work: *mut cuDoubleComplex,
20725 lwork: ::core::ffi::c_int,
20726 d_info: *mut ::core::ffi::c_int,
20727 h_R_nrmF: *mut f64,
20728 batchSize: ::core::ffi::c_int,
20729 ) -> cusolverStatus_t,
20730 pub cusolverDnZgesvdaStridedBatched_bufferSize: unsafe extern "C" fn(
20731 handle: cusolverDnHandle_t,
20732 jobz: cusolverEigMode_t,
20733 rank: ::core::ffi::c_int,
20734 m: ::core::ffi::c_int,
20735 n: ::core::ffi::c_int,
20736 d_A: *const cuDoubleComplex,
20737 lda: ::core::ffi::c_int,
20738 strideA: ::core::ffi::c_longlong,
20739 d_S: *const f64,
20740 strideS: ::core::ffi::c_longlong,
20741 d_U: *const cuDoubleComplex,
20742 ldu: ::core::ffi::c_int,
20743 strideU: ::core::ffi::c_longlong,
20744 d_V: *const cuDoubleComplex,
20745 ldv: ::core::ffi::c_int,
20746 strideV: ::core::ffi::c_longlong,
20747 lwork: *mut ::core::ffi::c_int,
20748 batchSize: ::core::ffi::c_int,
20749 )
20750 -> cusolverStatus_t,
20751 pub cusolverDnZgesvdj: unsafe extern "C" fn(
20752 handle: cusolverDnHandle_t,
20753 jobz: cusolverEigMode_t,
20754 econ: ::core::ffi::c_int,
20755 m: ::core::ffi::c_int,
20756 n: ::core::ffi::c_int,
20757 A: *mut cuDoubleComplex,
20758 lda: ::core::ffi::c_int,
20759 S: *mut f64,
20760 U: *mut cuDoubleComplex,
20761 ldu: ::core::ffi::c_int,
20762 V: *mut cuDoubleComplex,
20763 ldv: ::core::ffi::c_int,
20764 work: *mut cuDoubleComplex,
20765 lwork: ::core::ffi::c_int,
20766 info: *mut ::core::ffi::c_int,
20767 params: gesvdjInfo_t,
20768 ) -> cusolverStatus_t,
20769 pub cusolverDnZgesvdjBatched: unsafe extern "C" fn(
20770 handle: cusolverDnHandle_t,
20771 jobz: cusolverEigMode_t,
20772 m: ::core::ffi::c_int,
20773 n: ::core::ffi::c_int,
20774 A: *mut cuDoubleComplex,
20775 lda: ::core::ffi::c_int,
20776 S: *mut f64,
20777 U: *mut cuDoubleComplex,
20778 ldu: ::core::ffi::c_int,
20779 V: *mut cuDoubleComplex,
20780 ldv: ::core::ffi::c_int,
20781 work: *mut cuDoubleComplex,
20782 lwork: ::core::ffi::c_int,
20783 info: *mut ::core::ffi::c_int,
20784 params: gesvdjInfo_t,
20785 batchSize: ::core::ffi::c_int,
20786 ) -> cusolverStatus_t,
20787 pub cusolverDnZgesvdjBatched_bufferSize: unsafe extern "C" fn(
20788 handle: cusolverDnHandle_t,
20789 jobz: cusolverEigMode_t,
20790 m: ::core::ffi::c_int,
20791 n: ::core::ffi::c_int,
20792 A: *const cuDoubleComplex,
20793 lda: ::core::ffi::c_int,
20794 S: *const f64,
20795 U: *const cuDoubleComplex,
20796 ldu: ::core::ffi::c_int,
20797 V: *const cuDoubleComplex,
20798 ldv: ::core::ffi::c_int,
20799 lwork: *mut ::core::ffi::c_int,
20800 params: gesvdjInfo_t,
20801 batchSize: ::core::ffi::c_int,
20802 ) -> cusolverStatus_t,
20803 pub cusolverDnZgesvdj_bufferSize: unsafe extern "C" fn(
20804 handle: cusolverDnHandle_t,
20805 jobz: cusolverEigMode_t,
20806 econ: ::core::ffi::c_int,
20807 m: ::core::ffi::c_int,
20808 n: ::core::ffi::c_int,
20809 A: *const cuDoubleComplex,
20810 lda: ::core::ffi::c_int,
20811 S: *const f64,
20812 U: *const cuDoubleComplex,
20813 ldu: ::core::ffi::c_int,
20814 V: *const cuDoubleComplex,
20815 ldv: ::core::ffi::c_int,
20816 lwork: *mut ::core::ffi::c_int,
20817 params: gesvdjInfo_t,
20818 ) -> cusolverStatus_t,
20819 pub cusolverDnZgetrf: unsafe extern "C" fn(
20820 handle: cusolverDnHandle_t,
20821 m: ::core::ffi::c_int,
20822 n: ::core::ffi::c_int,
20823 A: *mut cuDoubleComplex,
20824 lda: ::core::ffi::c_int,
20825 Workspace: *mut cuDoubleComplex,
20826 devIpiv: *mut ::core::ffi::c_int,
20827 devInfo: *mut ::core::ffi::c_int,
20828 ) -> cusolverStatus_t,
20829 pub cusolverDnZgetrf_bufferSize: unsafe extern "C" fn(
20830 handle: cusolverDnHandle_t,
20831 m: ::core::ffi::c_int,
20832 n: ::core::ffi::c_int,
20833 A: *mut cuDoubleComplex,
20834 lda: ::core::ffi::c_int,
20835 Lwork: *mut ::core::ffi::c_int,
20836 ) -> cusolverStatus_t,
20837 pub cusolverDnZgetrs: unsafe extern "C" fn(
20838 handle: cusolverDnHandle_t,
20839 trans: cublasOperation_t,
20840 n: ::core::ffi::c_int,
20841 nrhs: ::core::ffi::c_int,
20842 A: *const cuDoubleComplex,
20843 lda: ::core::ffi::c_int,
20844 devIpiv: *const ::core::ffi::c_int,
20845 B: *mut cuDoubleComplex,
20846 ldb: ::core::ffi::c_int,
20847 devInfo: *mut ::core::ffi::c_int,
20848 ) -> cusolverStatus_t,
20849 pub cusolverDnZheevd: unsafe extern "C" fn(
20850 handle: cusolverDnHandle_t,
20851 jobz: cusolverEigMode_t,
20852 uplo: cublasFillMode_t,
20853 n: ::core::ffi::c_int,
20854 A: *mut cuDoubleComplex,
20855 lda: ::core::ffi::c_int,
20856 W: *mut f64,
20857 work: *mut cuDoubleComplex,
20858 lwork: ::core::ffi::c_int,
20859 info: *mut ::core::ffi::c_int,
20860 ) -> cusolverStatus_t,
20861 pub cusolverDnZheevd_bufferSize: unsafe extern "C" fn(
20862 handle: cusolverDnHandle_t,
20863 jobz: cusolverEigMode_t,
20864 uplo: cublasFillMode_t,
20865 n: ::core::ffi::c_int,
20866 A: *const cuDoubleComplex,
20867 lda: ::core::ffi::c_int,
20868 W: *const f64,
20869 lwork: *mut ::core::ffi::c_int,
20870 ) -> cusolverStatus_t,
20871 pub cusolverDnZheevdx: unsafe extern "C" fn(
20872 handle: cusolverDnHandle_t,
20873 jobz: cusolverEigMode_t,
20874 range: cusolverEigRange_t,
20875 uplo: cublasFillMode_t,
20876 n: ::core::ffi::c_int,
20877 A: *mut cuDoubleComplex,
20878 lda: ::core::ffi::c_int,
20879 vl: f64,
20880 vu: f64,
20881 il: ::core::ffi::c_int,
20882 iu: ::core::ffi::c_int,
20883 meig: *mut ::core::ffi::c_int,
20884 W: *mut f64,
20885 work: *mut cuDoubleComplex,
20886 lwork: ::core::ffi::c_int,
20887 info: *mut ::core::ffi::c_int,
20888 ) -> cusolverStatus_t,
20889 pub cusolverDnZheevdx_bufferSize: unsafe extern "C" fn(
20890 handle: cusolverDnHandle_t,
20891 jobz: cusolverEigMode_t,
20892 range: cusolverEigRange_t,
20893 uplo: cublasFillMode_t,
20894 n: ::core::ffi::c_int,
20895 A: *const cuDoubleComplex,
20896 lda: ::core::ffi::c_int,
20897 vl: f64,
20898 vu: f64,
20899 il: ::core::ffi::c_int,
20900 iu: ::core::ffi::c_int,
20901 meig: *mut ::core::ffi::c_int,
20902 W: *const f64,
20903 lwork: *mut ::core::ffi::c_int,
20904 ) -> cusolverStatus_t,
20905 pub cusolverDnZheevj: unsafe extern "C" fn(
20906 handle: cusolverDnHandle_t,
20907 jobz: cusolverEigMode_t,
20908 uplo: cublasFillMode_t,
20909 n: ::core::ffi::c_int,
20910 A: *mut cuDoubleComplex,
20911 lda: ::core::ffi::c_int,
20912 W: *mut f64,
20913 work: *mut cuDoubleComplex,
20914 lwork: ::core::ffi::c_int,
20915 info: *mut ::core::ffi::c_int,
20916 params: syevjInfo_t,
20917 ) -> cusolverStatus_t,
20918 pub cusolverDnZheevjBatched: unsafe extern "C" fn(
20919 handle: cusolverDnHandle_t,
20920 jobz: cusolverEigMode_t,
20921 uplo: cublasFillMode_t,
20922 n: ::core::ffi::c_int,
20923 A: *mut cuDoubleComplex,
20924 lda: ::core::ffi::c_int,
20925 W: *mut f64,
20926 work: *mut cuDoubleComplex,
20927 lwork: ::core::ffi::c_int,
20928 info: *mut ::core::ffi::c_int,
20929 params: syevjInfo_t,
20930 batchSize: ::core::ffi::c_int,
20931 ) -> cusolverStatus_t,
20932 pub cusolverDnZheevjBatched_bufferSize: unsafe extern "C" fn(
20933 handle: cusolverDnHandle_t,
20934 jobz: cusolverEigMode_t,
20935 uplo: cublasFillMode_t,
20936 n: ::core::ffi::c_int,
20937 A: *const cuDoubleComplex,
20938 lda: ::core::ffi::c_int,
20939 W: *const f64,
20940 lwork: *mut ::core::ffi::c_int,
20941 params: syevjInfo_t,
20942 batchSize: ::core::ffi::c_int,
20943 ) -> cusolverStatus_t,
20944 pub cusolverDnZheevj_bufferSize: unsafe extern "C" fn(
20945 handle: cusolverDnHandle_t,
20946 jobz: cusolverEigMode_t,
20947 uplo: cublasFillMode_t,
20948 n: ::core::ffi::c_int,
20949 A: *const cuDoubleComplex,
20950 lda: ::core::ffi::c_int,
20951 W: *const f64,
20952 lwork: *mut ::core::ffi::c_int,
20953 params: syevjInfo_t,
20954 ) -> cusolverStatus_t,
20955 pub cusolverDnZhegvd: unsafe extern "C" fn(
20956 handle: cusolverDnHandle_t,
20957 itype: cusolverEigType_t,
20958 jobz: cusolverEigMode_t,
20959 uplo: cublasFillMode_t,
20960 n: ::core::ffi::c_int,
20961 A: *mut cuDoubleComplex,
20962 lda: ::core::ffi::c_int,
20963 B: *mut cuDoubleComplex,
20964 ldb: ::core::ffi::c_int,
20965 W: *mut f64,
20966 work: *mut cuDoubleComplex,
20967 lwork: ::core::ffi::c_int,
20968 info: *mut ::core::ffi::c_int,
20969 ) -> cusolverStatus_t,
20970 pub cusolverDnZhegvd_bufferSize: unsafe extern "C" fn(
20971 handle: cusolverDnHandle_t,
20972 itype: cusolverEigType_t,
20973 jobz: cusolverEigMode_t,
20974 uplo: cublasFillMode_t,
20975 n: ::core::ffi::c_int,
20976 A: *const cuDoubleComplex,
20977 lda: ::core::ffi::c_int,
20978 B: *const cuDoubleComplex,
20979 ldb: ::core::ffi::c_int,
20980 W: *const f64,
20981 lwork: *mut ::core::ffi::c_int,
20982 ) -> cusolverStatus_t,
20983 pub cusolverDnZhegvdx: unsafe extern "C" fn(
20984 handle: cusolverDnHandle_t,
20985 itype: cusolverEigType_t,
20986 jobz: cusolverEigMode_t,
20987 range: cusolverEigRange_t,
20988 uplo: cublasFillMode_t,
20989 n: ::core::ffi::c_int,
20990 A: *mut cuDoubleComplex,
20991 lda: ::core::ffi::c_int,
20992 B: *mut cuDoubleComplex,
20993 ldb: ::core::ffi::c_int,
20994 vl: f64,
20995 vu: f64,
20996 il: ::core::ffi::c_int,
20997 iu: ::core::ffi::c_int,
20998 meig: *mut ::core::ffi::c_int,
20999 W: *mut f64,
21000 work: *mut cuDoubleComplex,
21001 lwork: ::core::ffi::c_int,
21002 info: *mut ::core::ffi::c_int,
21003 ) -> cusolverStatus_t,
21004 pub cusolverDnZhegvdx_bufferSize: unsafe extern "C" fn(
21005 handle: cusolverDnHandle_t,
21006 itype: cusolverEigType_t,
21007 jobz: cusolverEigMode_t,
21008 range: cusolverEigRange_t,
21009 uplo: cublasFillMode_t,
21010 n: ::core::ffi::c_int,
21011 A: *const cuDoubleComplex,
21012 lda: ::core::ffi::c_int,
21013 B: *const cuDoubleComplex,
21014 ldb: ::core::ffi::c_int,
21015 vl: f64,
21016 vu: f64,
21017 il: ::core::ffi::c_int,
21018 iu: ::core::ffi::c_int,
21019 meig: *mut ::core::ffi::c_int,
21020 W: *const f64,
21021 lwork: *mut ::core::ffi::c_int,
21022 ) -> cusolverStatus_t,
21023 pub cusolverDnZhegvj: unsafe extern "C" fn(
21024 handle: cusolverDnHandle_t,
21025 itype: cusolverEigType_t,
21026 jobz: cusolverEigMode_t,
21027 uplo: cublasFillMode_t,
21028 n: ::core::ffi::c_int,
21029 A: *mut cuDoubleComplex,
21030 lda: ::core::ffi::c_int,
21031 B: *mut cuDoubleComplex,
21032 ldb: ::core::ffi::c_int,
21033 W: *mut f64,
21034 work: *mut cuDoubleComplex,
21035 lwork: ::core::ffi::c_int,
21036 info: *mut ::core::ffi::c_int,
21037 params: syevjInfo_t,
21038 ) -> cusolverStatus_t,
21039 pub cusolverDnZhegvj_bufferSize: unsafe extern "C" fn(
21040 handle: cusolverDnHandle_t,
21041 itype: cusolverEigType_t,
21042 jobz: cusolverEigMode_t,
21043 uplo: cublasFillMode_t,
21044 n: ::core::ffi::c_int,
21045 A: *const cuDoubleComplex,
21046 lda: ::core::ffi::c_int,
21047 B: *const cuDoubleComplex,
21048 ldb: ::core::ffi::c_int,
21049 W: *const f64,
21050 lwork: *mut ::core::ffi::c_int,
21051 params: syevjInfo_t,
21052 ) -> cusolverStatus_t,
21053 pub cusolverDnZhetrd: unsafe extern "C" fn(
21054 handle: cusolverDnHandle_t,
21055 uplo: cublasFillMode_t,
21056 n: ::core::ffi::c_int,
21057 A: *mut cuDoubleComplex,
21058 lda: ::core::ffi::c_int,
21059 d: *mut f64,
21060 e: *mut f64,
21061 tau: *mut cuDoubleComplex,
21062 work: *mut cuDoubleComplex,
21063 lwork: ::core::ffi::c_int,
21064 info: *mut ::core::ffi::c_int,
21065 ) -> cusolverStatus_t,
21066 pub cusolverDnZhetrd_bufferSize: unsafe extern "C" fn(
21067 handle: cusolverDnHandle_t,
21068 uplo: cublasFillMode_t,
21069 n: ::core::ffi::c_int,
21070 A: *const cuDoubleComplex,
21071 lda: ::core::ffi::c_int,
21072 d: *const f64,
21073 e: *const f64,
21074 tau: *const cuDoubleComplex,
21075 lwork: *mut ::core::ffi::c_int,
21076 ) -> cusolverStatus_t,
21077 pub cusolverDnZlaswp: unsafe extern "C" fn(
21078 handle: cusolverDnHandle_t,
21079 n: ::core::ffi::c_int,
21080 A: *mut cuDoubleComplex,
21081 lda: ::core::ffi::c_int,
21082 k1: ::core::ffi::c_int,
21083 k2: ::core::ffi::c_int,
21084 devIpiv: *const ::core::ffi::c_int,
21085 incx: ::core::ffi::c_int,
21086 ) -> cusolverStatus_t,
21087 pub cusolverDnZlauum: unsafe extern "C" fn(
21088 handle: cusolverDnHandle_t,
21089 uplo: cublasFillMode_t,
21090 n: ::core::ffi::c_int,
21091 A: *mut cuDoubleComplex,
21092 lda: ::core::ffi::c_int,
21093 work: *mut cuDoubleComplex,
21094 lwork: ::core::ffi::c_int,
21095 devInfo: *mut ::core::ffi::c_int,
21096 ) -> cusolverStatus_t,
21097 pub cusolverDnZlauum_bufferSize: unsafe extern "C" fn(
21098 handle: cusolverDnHandle_t,
21099 uplo: cublasFillMode_t,
21100 n: ::core::ffi::c_int,
21101 A: *mut cuDoubleComplex,
21102 lda: ::core::ffi::c_int,
21103 lwork: *mut ::core::ffi::c_int,
21104 ) -> cusolverStatus_t,
21105 pub cusolverDnZpotrf: unsafe extern "C" fn(
21106 handle: cusolverDnHandle_t,
21107 uplo: cublasFillMode_t,
21108 n: ::core::ffi::c_int,
21109 A: *mut cuDoubleComplex,
21110 lda: ::core::ffi::c_int,
21111 Workspace: *mut cuDoubleComplex,
21112 Lwork: ::core::ffi::c_int,
21113 devInfo: *mut ::core::ffi::c_int,
21114 ) -> cusolverStatus_t,
21115 pub cusolverDnZpotrfBatched: unsafe extern "C" fn(
21116 handle: cusolverDnHandle_t,
21117 uplo: cublasFillMode_t,
21118 n: ::core::ffi::c_int,
21119 Aarray: *mut *mut cuDoubleComplex,
21120 lda: ::core::ffi::c_int,
21121 infoArray: *mut ::core::ffi::c_int,
21122 batchSize: ::core::ffi::c_int,
21123 ) -> cusolverStatus_t,
21124 pub cusolverDnZpotrf_bufferSize: unsafe extern "C" fn(
21125 handle: cusolverDnHandle_t,
21126 uplo: cublasFillMode_t,
21127 n: ::core::ffi::c_int,
21128 A: *mut cuDoubleComplex,
21129 lda: ::core::ffi::c_int,
21130 Lwork: *mut ::core::ffi::c_int,
21131 ) -> cusolverStatus_t,
21132 pub cusolverDnZpotri: unsafe extern "C" fn(
21133 handle: cusolverDnHandle_t,
21134 uplo: cublasFillMode_t,
21135 n: ::core::ffi::c_int,
21136 A: *mut cuDoubleComplex,
21137 lda: ::core::ffi::c_int,
21138 work: *mut cuDoubleComplex,
21139 lwork: ::core::ffi::c_int,
21140 devInfo: *mut ::core::ffi::c_int,
21141 ) -> cusolverStatus_t,
21142 pub cusolverDnZpotri_bufferSize: unsafe extern "C" fn(
21143 handle: cusolverDnHandle_t,
21144 uplo: cublasFillMode_t,
21145 n: ::core::ffi::c_int,
21146 A: *mut cuDoubleComplex,
21147 lda: ::core::ffi::c_int,
21148 lwork: *mut ::core::ffi::c_int,
21149 ) -> cusolverStatus_t,
21150 pub cusolverDnZpotrs: unsafe extern "C" fn(
21151 handle: cusolverDnHandle_t,
21152 uplo: cublasFillMode_t,
21153 n: ::core::ffi::c_int,
21154 nrhs: ::core::ffi::c_int,
21155 A: *const cuDoubleComplex,
21156 lda: ::core::ffi::c_int,
21157 B: *mut cuDoubleComplex,
21158 ldb: ::core::ffi::c_int,
21159 devInfo: *mut ::core::ffi::c_int,
21160 ) -> cusolverStatus_t,
21161 pub cusolverDnZpotrsBatched: unsafe extern "C" fn(
21162 handle: cusolverDnHandle_t,
21163 uplo: cublasFillMode_t,
21164 n: ::core::ffi::c_int,
21165 nrhs: ::core::ffi::c_int,
21166 A: *mut *mut cuDoubleComplex,
21167 lda: ::core::ffi::c_int,
21168 B: *mut *mut cuDoubleComplex,
21169 ldb: ::core::ffi::c_int,
21170 d_info: *mut ::core::ffi::c_int,
21171 batchSize: ::core::ffi::c_int,
21172 ) -> cusolverStatus_t,
21173 pub cusolverDnZsytrf: unsafe extern "C" fn(
21174 handle: cusolverDnHandle_t,
21175 uplo: cublasFillMode_t,
21176 n: ::core::ffi::c_int,
21177 A: *mut cuDoubleComplex,
21178 lda: ::core::ffi::c_int,
21179 ipiv: *mut ::core::ffi::c_int,
21180 work: *mut cuDoubleComplex,
21181 lwork: ::core::ffi::c_int,
21182 info: *mut ::core::ffi::c_int,
21183 ) -> cusolverStatus_t,
21184 pub cusolverDnZsytrf_bufferSize: unsafe extern "C" fn(
21185 handle: cusolverDnHandle_t,
21186 n: ::core::ffi::c_int,
21187 A: *mut cuDoubleComplex,
21188 lda: ::core::ffi::c_int,
21189 lwork: *mut ::core::ffi::c_int,
21190 ) -> cusolverStatus_t,
21191 pub cusolverDnZsytri: unsafe extern "C" fn(
21192 handle: cusolverDnHandle_t,
21193 uplo: cublasFillMode_t,
21194 n: ::core::ffi::c_int,
21195 A: *mut cuDoubleComplex,
21196 lda: ::core::ffi::c_int,
21197 ipiv: *const ::core::ffi::c_int,
21198 work: *mut cuDoubleComplex,
21199 lwork: ::core::ffi::c_int,
21200 info: *mut ::core::ffi::c_int,
21201 ) -> cusolverStatus_t,
21202 pub cusolverDnZsytri_bufferSize: unsafe extern "C" fn(
21203 handle: cusolverDnHandle_t,
21204 uplo: cublasFillMode_t,
21205 n: ::core::ffi::c_int,
21206 A: *mut cuDoubleComplex,
21207 lda: ::core::ffi::c_int,
21208 ipiv: *const ::core::ffi::c_int,
21209 lwork: *mut ::core::ffi::c_int,
21210 ) -> cusolverStatus_t,
21211 pub cusolverDnZungbr: unsafe extern "C" fn(
21212 handle: cusolverDnHandle_t,
21213 side: cublasSideMode_t,
21214 m: ::core::ffi::c_int,
21215 n: ::core::ffi::c_int,
21216 k: ::core::ffi::c_int,
21217 A: *mut cuDoubleComplex,
21218 lda: ::core::ffi::c_int,
21219 tau: *const cuDoubleComplex,
21220 work: *mut cuDoubleComplex,
21221 lwork: ::core::ffi::c_int,
21222 info: *mut ::core::ffi::c_int,
21223 ) -> cusolverStatus_t,
21224 pub cusolverDnZungbr_bufferSize: unsafe extern "C" fn(
21225 handle: cusolverDnHandle_t,
21226 side: cublasSideMode_t,
21227 m: ::core::ffi::c_int,
21228 n: ::core::ffi::c_int,
21229 k: ::core::ffi::c_int,
21230 A: *const cuDoubleComplex,
21231 lda: ::core::ffi::c_int,
21232 tau: *const cuDoubleComplex,
21233 lwork: *mut ::core::ffi::c_int,
21234 ) -> cusolverStatus_t,
21235 pub cusolverDnZungqr: unsafe extern "C" fn(
21236 handle: cusolverDnHandle_t,
21237 m: ::core::ffi::c_int,
21238 n: ::core::ffi::c_int,
21239 k: ::core::ffi::c_int,
21240 A: *mut cuDoubleComplex,
21241 lda: ::core::ffi::c_int,
21242 tau: *const cuDoubleComplex,
21243 work: *mut cuDoubleComplex,
21244 lwork: ::core::ffi::c_int,
21245 info: *mut ::core::ffi::c_int,
21246 ) -> cusolverStatus_t,
21247 pub cusolverDnZungqr_bufferSize: unsafe extern "C" fn(
21248 handle: cusolverDnHandle_t,
21249 m: ::core::ffi::c_int,
21250 n: ::core::ffi::c_int,
21251 k: ::core::ffi::c_int,
21252 A: *const cuDoubleComplex,
21253 lda: ::core::ffi::c_int,
21254 tau: *const cuDoubleComplex,
21255 lwork: *mut ::core::ffi::c_int,
21256 ) -> cusolverStatus_t,
21257 pub cusolverDnZungtr: unsafe extern "C" fn(
21258 handle: cusolverDnHandle_t,
21259 uplo: cublasFillMode_t,
21260 n: ::core::ffi::c_int,
21261 A: *mut cuDoubleComplex,
21262 lda: ::core::ffi::c_int,
21263 tau: *const cuDoubleComplex,
21264 work: *mut cuDoubleComplex,
21265 lwork: ::core::ffi::c_int,
21266 info: *mut ::core::ffi::c_int,
21267 ) -> cusolverStatus_t,
21268 pub cusolverDnZungtr_bufferSize: unsafe extern "C" fn(
21269 handle: cusolverDnHandle_t,
21270 uplo: cublasFillMode_t,
21271 n: ::core::ffi::c_int,
21272 A: *const cuDoubleComplex,
21273 lda: ::core::ffi::c_int,
21274 tau: *const cuDoubleComplex,
21275 lwork: *mut ::core::ffi::c_int,
21276 ) -> cusolverStatus_t,
21277 pub cusolverDnZunmqr: unsafe extern "C" fn(
21278 handle: cusolverDnHandle_t,
21279 side: cublasSideMode_t,
21280 trans: cublasOperation_t,
21281 m: ::core::ffi::c_int,
21282 n: ::core::ffi::c_int,
21283 k: ::core::ffi::c_int,
21284 A: *const cuDoubleComplex,
21285 lda: ::core::ffi::c_int,
21286 tau: *const cuDoubleComplex,
21287 C: *mut cuDoubleComplex,
21288 ldc: ::core::ffi::c_int,
21289 work: *mut cuDoubleComplex,
21290 lwork: ::core::ffi::c_int,
21291 devInfo: *mut ::core::ffi::c_int,
21292 ) -> cusolverStatus_t,
21293 pub cusolverDnZunmqr_bufferSize: unsafe extern "C" fn(
21294 handle: cusolverDnHandle_t,
21295 side: cublasSideMode_t,
21296 trans: cublasOperation_t,
21297 m: ::core::ffi::c_int,
21298 n: ::core::ffi::c_int,
21299 k: ::core::ffi::c_int,
21300 A: *const cuDoubleComplex,
21301 lda: ::core::ffi::c_int,
21302 tau: *const cuDoubleComplex,
21303 C: *const cuDoubleComplex,
21304 ldc: ::core::ffi::c_int,
21305 lwork: *mut ::core::ffi::c_int,
21306 ) -> cusolverStatus_t,
21307 pub cusolverDnZunmtr: unsafe extern "C" fn(
21308 handle: cusolverDnHandle_t,
21309 side: cublasSideMode_t,
21310 uplo: cublasFillMode_t,
21311 trans: cublasOperation_t,
21312 m: ::core::ffi::c_int,
21313 n: ::core::ffi::c_int,
21314 A: *mut cuDoubleComplex,
21315 lda: ::core::ffi::c_int,
21316 tau: *mut cuDoubleComplex,
21317 C: *mut cuDoubleComplex,
21318 ldc: ::core::ffi::c_int,
21319 work: *mut cuDoubleComplex,
21320 lwork: ::core::ffi::c_int,
21321 info: *mut ::core::ffi::c_int,
21322 ) -> cusolverStatus_t,
21323 pub cusolverDnZunmtr_bufferSize: unsafe extern "C" fn(
21324 handle: cusolverDnHandle_t,
21325 side: cublasSideMode_t,
21326 uplo: cublasFillMode_t,
21327 trans: cublasOperation_t,
21328 m: ::core::ffi::c_int,
21329 n: ::core::ffi::c_int,
21330 A: *const cuDoubleComplex,
21331 lda: ::core::ffi::c_int,
21332 tau: *const cuDoubleComplex,
21333 C: *const cuDoubleComplex,
21334 ldc: ::core::ffi::c_int,
21335 lwork: *mut ::core::ffi::c_int,
21336 ) -> cusolverStatus_t,
21337 pub cusolverGetProperty: unsafe extern "C" fn(
21338 type_: libraryPropertyType,
21339 value: *mut ::core::ffi::c_int,
21340 ) -> cusolverStatus_t,
21341 pub cusolverGetVersion:
21342 unsafe extern "C" fn(version: *mut ::core::ffi::c_int) -> cusolverStatus_t,
21343 pub cusolverRfAccessBundledFactorsDevice: unsafe extern "C" fn(
21344 handle: cusolverRfHandle_t,
21345 nnzM: *mut ::core::ffi::c_int,
21346 Mp: *mut *mut ::core::ffi::c_int,
21347 Mi: *mut *mut ::core::ffi::c_int,
21348 Mx: *mut *mut f64,
21349 ) -> cusolverStatus_t,
21350 pub cusolverRfAnalyze: unsafe extern "C" fn(handle: cusolverRfHandle_t) -> cusolverStatus_t,
21351 pub cusolverRfBatchAnalyze:
21352 unsafe extern "C" fn(handle: cusolverRfHandle_t) -> cusolverStatus_t,
21353 pub cusolverRfBatchRefactor:
21354 unsafe extern "C" fn(handle: cusolverRfHandle_t) -> cusolverStatus_t,
21355 pub cusolverRfBatchResetValues: unsafe extern "C" fn(
21356 batchSize: ::core::ffi::c_int,
21357 n: ::core::ffi::c_int,
21358 nnzA: ::core::ffi::c_int,
21359 csrRowPtrA: *mut ::core::ffi::c_int,
21360 csrColIndA: *mut ::core::ffi::c_int,
21361 csrValA_array: *mut *mut f64,
21362 P: *mut ::core::ffi::c_int,
21363 Q: *mut ::core::ffi::c_int,
21364 handle: cusolverRfHandle_t,
21365 ) -> cusolverStatus_t,
21366 pub cusolverRfBatchSetupHost: unsafe extern "C" fn(
21367 batchSize: ::core::ffi::c_int,
21368 n: ::core::ffi::c_int,
21369 nnzA: ::core::ffi::c_int,
21370 h_csrRowPtrA: *mut ::core::ffi::c_int,
21371 h_csrColIndA: *mut ::core::ffi::c_int,
21372 h_csrValA_array: *mut *mut f64,
21373 nnzL: ::core::ffi::c_int,
21374 h_csrRowPtrL: *mut ::core::ffi::c_int,
21375 h_csrColIndL: *mut ::core::ffi::c_int,
21376 h_csrValL: *mut f64,
21377 nnzU: ::core::ffi::c_int,
21378 h_csrRowPtrU: *mut ::core::ffi::c_int,
21379 h_csrColIndU: *mut ::core::ffi::c_int,
21380 h_csrValU: *mut f64,
21381 h_P: *mut ::core::ffi::c_int,
21382 h_Q: *mut ::core::ffi::c_int,
21383 handle: cusolverRfHandle_t,
21384 ) -> cusolverStatus_t,
21385 pub cusolverRfBatchSolve: unsafe extern "C" fn(
21386 handle: cusolverRfHandle_t,
21387 P: *mut ::core::ffi::c_int,
21388 Q: *mut ::core::ffi::c_int,
21389 nrhs: ::core::ffi::c_int,
21390 Temp: *mut f64,
21391 ldt: ::core::ffi::c_int,
21392 XF_array: *mut *mut f64,
21393 ldxf: ::core::ffi::c_int,
21394 ) -> cusolverStatus_t,
21395 pub cusolverRfBatchZeroPivot: unsafe extern "C" fn(
21396 handle: cusolverRfHandle_t,
21397 position: *mut ::core::ffi::c_int,
21398 ) -> cusolverStatus_t,
21399 pub cusolverRfCreate:
21400 unsafe extern "C" fn(handle: *mut cusolverRfHandle_t) -> cusolverStatus_t,
21401 pub cusolverRfDestroy: unsafe extern "C" fn(handle: cusolverRfHandle_t) -> cusolverStatus_t,
21402 pub cusolverRfExtractBundledFactorsHost: unsafe extern "C" fn(
21403 handle: cusolverRfHandle_t,
21404 h_nnzM: *mut ::core::ffi::c_int,
21405 h_Mp: *mut *mut ::core::ffi::c_int,
21406 h_Mi: *mut *mut ::core::ffi::c_int,
21407 h_Mx: *mut *mut f64,
21408 ) -> cusolverStatus_t,
21409 pub cusolverRfExtractSplitFactorsHost: unsafe extern "C" fn(
21410 handle: cusolverRfHandle_t,
21411 h_nnzL: *mut ::core::ffi::c_int,
21412 h_csrRowPtrL: *mut *mut ::core::ffi::c_int,
21413 h_csrColIndL: *mut *mut ::core::ffi::c_int,
21414 h_csrValL: *mut *mut f64,
21415 h_nnzU: *mut ::core::ffi::c_int,
21416 h_csrRowPtrU: *mut *mut ::core::ffi::c_int,
21417 h_csrColIndU: *mut *mut ::core::ffi::c_int,
21418 h_csrValU: *mut *mut f64,
21419 ) -> cusolverStatus_t,
21420 pub cusolverRfGetAlgs: unsafe extern "C" fn(
21421 handle: cusolverRfHandle_t,
21422 factAlg: *mut cusolverRfFactorization_t,
21423 solveAlg: *mut cusolverRfTriangularSolve_t,
21424 ) -> cusolverStatus_t,
21425 pub cusolverRfGetMatrixFormat: unsafe extern "C" fn(
21426 handle: cusolverRfHandle_t,
21427 format: *mut cusolverRfMatrixFormat_t,
21428 diag: *mut cusolverRfUnitDiagonal_t,
21429 ) -> cusolverStatus_t,
21430 pub cusolverRfGetNumericBoostReport: unsafe extern "C" fn(
21431 handle: cusolverRfHandle_t,
21432 report: *mut cusolverRfNumericBoostReport_t,
21433 ) -> cusolverStatus_t,
21434 pub cusolverRfGetNumericProperties: unsafe extern "C" fn(
21435 handle: cusolverRfHandle_t,
21436 zero: *mut f64,
21437 boost: *mut f64,
21438 ) -> cusolverStatus_t,
21439 pub cusolverRfGetResetValuesFastMode: unsafe extern "C" fn(
21440 handle: cusolverRfHandle_t,
21441 fastMode: *mut cusolverRfResetValuesFastMode_t,
21442 ) -> cusolverStatus_t,
21443 pub cusolverRfRefactor:
21444 unsafe extern "C" fn(handle: cusolverRfHandle_t) -> cusolverStatus_t,
21445 pub cusolverRfResetValues: unsafe extern "C" fn(
21446 n: ::core::ffi::c_int,
21447 nnzA: ::core::ffi::c_int,
21448 csrRowPtrA: *mut ::core::ffi::c_int,
21449 csrColIndA: *mut ::core::ffi::c_int,
21450 csrValA: *mut f64,
21451 P: *mut ::core::ffi::c_int,
21452 Q: *mut ::core::ffi::c_int,
21453 handle: cusolverRfHandle_t,
21454 ) -> cusolverStatus_t,
21455 pub cusolverRfSetAlgs: unsafe extern "C" fn(
21456 handle: cusolverRfHandle_t,
21457 factAlg: cusolverRfFactorization_t,
21458 solveAlg: cusolverRfTriangularSolve_t,
21459 ) -> cusolverStatus_t,
21460 pub cusolverRfSetMatrixFormat: unsafe extern "C" fn(
21461 handle: cusolverRfHandle_t,
21462 format: cusolverRfMatrixFormat_t,
21463 diag: cusolverRfUnitDiagonal_t,
21464 ) -> cusolverStatus_t,
21465 pub cusolverRfSetNumericProperties: unsafe extern "C" fn(
21466 handle: cusolverRfHandle_t,
21467 zero: f64,
21468 boost: f64,
21469 ) -> cusolverStatus_t,
21470 pub cusolverRfSetResetValuesFastMode: unsafe extern "C" fn(
21471 handle: cusolverRfHandle_t,
21472 fastMode: cusolverRfResetValuesFastMode_t,
21473 ) -> cusolverStatus_t,
21474 pub cusolverRfSetupDevice: unsafe extern "C" fn(
21475 n: ::core::ffi::c_int,
21476 nnzA: ::core::ffi::c_int,
21477 csrRowPtrA: *mut ::core::ffi::c_int,
21478 csrColIndA: *mut ::core::ffi::c_int,
21479 csrValA: *mut f64,
21480 nnzL: ::core::ffi::c_int,
21481 csrRowPtrL: *mut ::core::ffi::c_int,
21482 csrColIndL: *mut ::core::ffi::c_int,
21483 csrValL: *mut f64,
21484 nnzU: ::core::ffi::c_int,
21485 csrRowPtrU: *mut ::core::ffi::c_int,
21486 csrColIndU: *mut ::core::ffi::c_int,
21487 csrValU: *mut f64,
21488 P: *mut ::core::ffi::c_int,
21489 Q: *mut ::core::ffi::c_int,
21490 handle: cusolverRfHandle_t,
21491 ) -> cusolverStatus_t,
21492 pub cusolverRfSetupHost: unsafe extern "C" fn(
21493 n: ::core::ffi::c_int,
21494 nnzA: ::core::ffi::c_int,
21495 h_csrRowPtrA: *mut ::core::ffi::c_int,
21496 h_csrColIndA: *mut ::core::ffi::c_int,
21497 h_csrValA: *mut f64,
21498 nnzL: ::core::ffi::c_int,
21499 h_csrRowPtrL: *mut ::core::ffi::c_int,
21500 h_csrColIndL: *mut ::core::ffi::c_int,
21501 h_csrValL: *mut f64,
21502 nnzU: ::core::ffi::c_int,
21503 h_csrRowPtrU: *mut ::core::ffi::c_int,
21504 h_csrColIndU: *mut ::core::ffi::c_int,
21505 h_csrValU: *mut f64,
21506 h_P: *mut ::core::ffi::c_int,
21507 h_Q: *mut ::core::ffi::c_int,
21508 handle: cusolverRfHandle_t,
21509 ) -> cusolverStatus_t,
21510 pub cusolverRfSolve: unsafe extern "C" fn(
21511 handle: cusolverRfHandle_t,
21512 P: *mut ::core::ffi::c_int,
21513 Q: *mut ::core::ffi::c_int,
21514 nrhs: ::core::ffi::c_int,
21515 Temp: *mut f64,
21516 ldt: ::core::ffi::c_int,
21517 XF: *mut f64,
21518 ldxf: ::core::ffi::c_int,
21519 ) -> cusolverStatus_t,
21520 pub cusolverSpCcsreigsHost: unsafe extern "C" fn(
21521 handle: cusolverSpHandle_t,
21522 m: ::core::ffi::c_int,
21523 nnz: ::core::ffi::c_int,
21524 descrA: cusparseMatDescr_t,
21525 csrValA: *const cuComplex,
21526 csrRowPtrA: *const ::core::ffi::c_int,
21527 csrColIndA: *const ::core::ffi::c_int,
21528 left_bottom_corner: cuComplex,
21529 right_upper_corner: cuComplex,
21530 num_eigs: *mut ::core::ffi::c_int,
21531 ) -> cusolverStatus_t,
21532 pub cusolverSpCcsreigvsi: unsafe extern "C" fn(
21533 handle: cusolverSpHandle_t,
21534 m: ::core::ffi::c_int,
21535 nnz: ::core::ffi::c_int,
21536 descrA: cusparseMatDescr_t,
21537 csrValA: *const cuComplex,
21538 csrRowPtrA: *const ::core::ffi::c_int,
21539 csrColIndA: *const ::core::ffi::c_int,
21540 mu0: cuComplex,
21541 x0: *const cuComplex,
21542 maxite: ::core::ffi::c_int,
21543 eps: f32,
21544 mu: *mut cuComplex,
21545 x: *mut cuComplex,
21546 ) -> cusolverStatus_t,
21547 pub cusolverSpCcsreigvsiHost: unsafe extern "C" fn(
21548 handle: cusolverSpHandle_t,
21549 m: ::core::ffi::c_int,
21550 nnz: ::core::ffi::c_int,
21551 descrA: cusparseMatDescr_t,
21552 csrValA: *const cuComplex,
21553 csrRowPtrA: *const ::core::ffi::c_int,
21554 csrColIndA: *const ::core::ffi::c_int,
21555 mu0: cuComplex,
21556 x0: *const cuComplex,
21557 maxite: ::core::ffi::c_int,
21558 tol: f32,
21559 mu: *mut cuComplex,
21560 x: *mut cuComplex,
21561 ) -> cusolverStatus_t,
21562 pub cusolverSpCcsrlsqvqrHost: unsafe extern "C" fn(
21563 handle: cusolverSpHandle_t,
21564 m: ::core::ffi::c_int,
21565 n: ::core::ffi::c_int,
21566 nnz: ::core::ffi::c_int,
21567 descrA: cusparseMatDescr_t,
21568 csrValA: *const cuComplex,
21569 csrRowPtrA: *const ::core::ffi::c_int,
21570 csrColIndA: *const ::core::ffi::c_int,
21571 b: *const cuComplex,
21572 tol: f32,
21573 rankA: *mut ::core::ffi::c_int,
21574 x: *mut cuComplex,
21575 p: *mut ::core::ffi::c_int,
21576 min_norm: *mut f32,
21577 ) -> cusolverStatus_t,
21578 pub cusolverSpCcsrlsvchol: unsafe extern "C" fn(
21579 handle: cusolverSpHandle_t,
21580 m: ::core::ffi::c_int,
21581 nnz: ::core::ffi::c_int,
21582 descrA: cusparseMatDescr_t,
21583 csrVal: *const cuComplex,
21584 csrRowPtr: *const ::core::ffi::c_int,
21585 csrColInd: *const ::core::ffi::c_int,
21586 b: *const cuComplex,
21587 tol: f32,
21588 reorder: ::core::ffi::c_int,
21589 x: *mut cuComplex,
21590 singularity: *mut ::core::ffi::c_int,
21591 ) -> cusolverStatus_t,
21592 pub cusolverSpCcsrlsvcholHost: unsafe extern "C" fn(
21593 handle: cusolverSpHandle_t,
21594 m: ::core::ffi::c_int,
21595 nnz: ::core::ffi::c_int,
21596 descrA: cusparseMatDescr_t,
21597 csrVal: *const cuComplex,
21598 csrRowPtr: *const ::core::ffi::c_int,
21599 csrColInd: *const ::core::ffi::c_int,
21600 b: *const cuComplex,
21601 tol: f32,
21602 reorder: ::core::ffi::c_int,
21603 x: *mut cuComplex,
21604 singularity: *mut ::core::ffi::c_int,
21605 ) -> cusolverStatus_t,
21606 pub cusolverSpCcsrlsvluHost: unsafe extern "C" fn(
21607 handle: cusolverSpHandle_t,
21608 n: ::core::ffi::c_int,
21609 nnzA: ::core::ffi::c_int,
21610 descrA: cusparseMatDescr_t,
21611 csrValA: *const cuComplex,
21612 csrRowPtrA: *const ::core::ffi::c_int,
21613 csrColIndA: *const ::core::ffi::c_int,
21614 b: *const cuComplex,
21615 tol: f32,
21616 reorder: ::core::ffi::c_int,
21617 x: *mut cuComplex,
21618 singularity: *mut ::core::ffi::c_int,
21619 ) -> cusolverStatus_t,
21620 pub cusolverSpCcsrlsvqr: unsafe extern "C" fn(
21621 handle: cusolverSpHandle_t,
21622 m: ::core::ffi::c_int,
21623 nnz: ::core::ffi::c_int,
21624 descrA: cusparseMatDescr_t,
21625 csrVal: *const cuComplex,
21626 csrRowPtr: *const ::core::ffi::c_int,
21627 csrColInd: *const ::core::ffi::c_int,
21628 b: *const cuComplex,
21629 tol: f32,
21630 reorder: ::core::ffi::c_int,
21631 x: *mut cuComplex,
21632 singularity: *mut ::core::ffi::c_int,
21633 ) -> cusolverStatus_t,
21634 pub cusolverSpCcsrlsvqrHost: unsafe extern "C" fn(
21635 handle: cusolverSpHandle_t,
21636 m: ::core::ffi::c_int,
21637 nnz: ::core::ffi::c_int,
21638 descrA: cusparseMatDescr_t,
21639 csrValA: *const cuComplex,
21640 csrRowPtrA: *const ::core::ffi::c_int,
21641 csrColIndA: *const ::core::ffi::c_int,
21642 b: *const cuComplex,
21643 tol: f32,
21644 reorder: ::core::ffi::c_int,
21645 x: *mut cuComplex,
21646 singularity: *mut ::core::ffi::c_int,
21647 ) -> cusolverStatus_t,
21648 pub cusolverSpCcsrqrBufferInfoBatched: unsafe extern "C" fn(
21649 handle: cusolverSpHandle_t,
21650 m: ::core::ffi::c_int,
21651 n: ::core::ffi::c_int,
21652 nnz: ::core::ffi::c_int,
21653 descrA: cusparseMatDescr_t,
21654 csrVal: *const cuComplex,
21655 csrRowPtr: *const ::core::ffi::c_int,
21656 csrColInd: *const ::core::ffi::c_int,
21657 batchSize: ::core::ffi::c_int,
21658 info: csrqrInfo_t,
21659 internalDataInBytes: *mut usize,
21660 workspaceInBytes: *mut usize,
21661 ) -> cusolverStatus_t,
21662 pub cusolverSpCcsrqrsvBatched: unsafe extern "C" fn(
21663 handle: cusolverSpHandle_t,
21664 m: ::core::ffi::c_int,
21665 n: ::core::ffi::c_int,
21666 nnz: ::core::ffi::c_int,
21667 descrA: cusparseMatDescr_t,
21668 csrValA: *const cuComplex,
21669 csrRowPtrA: *const ::core::ffi::c_int,
21670 csrColIndA: *const ::core::ffi::c_int,
21671 b: *const cuComplex,
21672 x: *mut cuComplex,
21673 batchSize: ::core::ffi::c_int,
21674 info: csrqrInfo_t,
21675 pBuffer: *mut ::core::ffi::c_void,
21676 ) -> cusolverStatus_t,
21677 pub cusolverSpCcsrzfdHost: unsafe extern "C" fn(
21678 handle: cusolverSpHandle_t,
21679 n: ::core::ffi::c_int,
21680 nnz: ::core::ffi::c_int,
21681 descrA: cusparseMatDescr_t,
21682 csrValA: *const cuComplex,
21683 csrRowPtrA: *const ::core::ffi::c_int,
21684 csrColIndA: *const ::core::ffi::c_int,
21685 P: *mut ::core::ffi::c_int,
21686 numnz: *mut ::core::ffi::c_int,
21687 ) -> cusolverStatus_t,
21688 pub cusolverSpCreate:
21689 unsafe extern "C" fn(handle: *mut cusolverSpHandle_t) -> cusolverStatus_t,
21690 pub cusolverSpCreateCsrqrInfo:
21691 unsafe extern "C" fn(info: *mut csrqrInfo_t) -> cusolverStatus_t,
21692 pub cusolverSpDcsreigsHost: unsafe extern "C" fn(
21693 handle: cusolverSpHandle_t,
21694 m: ::core::ffi::c_int,
21695 nnz: ::core::ffi::c_int,
21696 descrA: cusparseMatDescr_t,
21697 csrValA: *const f64,
21698 csrRowPtrA: *const ::core::ffi::c_int,
21699 csrColIndA: *const ::core::ffi::c_int,
21700 left_bottom_corner: cuDoubleComplex,
21701 right_upper_corner: cuDoubleComplex,
21702 num_eigs: *mut ::core::ffi::c_int,
21703 ) -> cusolverStatus_t,
21704 pub cusolverSpDcsreigvsi: unsafe extern "C" fn(
21705 handle: cusolverSpHandle_t,
21706 m: ::core::ffi::c_int,
21707 nnz: ::core::ffi::c_int,
21708 descrA: cusparseMatDescr_t,
21709 csrValA: *const f64,
21710 csrRowPtrA: *const ::core::ffi::c_int,
21711 csrColIndA: *const ::core::ffi::c_int,
21712 mu0: f64,
21713 x0: *const f64,
21714 maxite: ::core::ffi::c_int,
21715 eps: f64,
21716 mu: *mut f64,
21717 x: *mut f64,
21718 ) -> cusolverStatus_t,
21719 pub cusolverSpDcsreigvsiHost: unsafe extern "C" fn(
21720 handle: cusolverSpHandle_t,
21721 m: ::core::ffi::c_int,
21722 nnz: ::core::ffi::c_int,
21723 descrA: cusparseMatDescr_t,
21724 csrValA: *const f64,
21725 csrRowPtrA: *const ::core::ffi::c_int,
21726 csrColIndA: *const ::core::ffi::c_int,
21727 mu0: f64,
21728 x0: *const f64,
21729 maxite: ::core::ffi::c_int,
21730 tol: f64,
21731 mu: *mut f64,
21732 x: *mut f64,
21733 ) -> cusolverStatus_t,
21734 pub cusolverSpDcsrlsqvqrHost: unsafe extern "C" fn(
21735 handle: cusolverSpHandle_t,
21736 m: ::core::ffi::c_int,
21737 n: ::core::ffi::c_int,
21738 nnz: ::core::ffi::c_int,
21739 descrA: cusparseMatDescr_t,
21740 csrValA: *const f64,
21741 csrRowPtrA: *const ::core::ffi::c_int,
21742 csrColIndA: *const ::core::ffi::c_int,
21743 b: *const f64,
21744 tol: f64,
21745 rankA: *mut ::core::ffi::c_int,
21746 x: *mut f64,
21747 p: *mut ::core::ffi::c_int,
21748 min_norm: *mut f64,
21749 ) -> cusolverStatus_t,
21750 pub cusolverSpDcsrlsvchol: unsafe extern "C" fn(
21751 handle: cusolverSpHandle_t,
21752 m: ::core::ffi::c_int,
21753 nnz: ::core::ffi::c_int,
21754 descrA: cusparseMatDescr_t,
21755 csrVal: *const f64,
21756 csrRowPtr: *const ::core::ffi::c_int,
21757 csrColInd: *const ::core::ffi::c_int,
21758 b: *const f64,
21759 tol: f64,
21760 reorder: ::core::ffi::c_int,
21761 x: *mut f64,
21762 singularity: *mut ::core::ffi::c_int,
21763 ) -> cusolverStatus_t,
21764 pub cusolverSpDcsrlsvcholHost: unsafe extern "C" fn(
21765 handle: cusolverSpHandle_t,
21766 m: ::core::ffi::c_int,
21767 nnz: ::core::ffi::c_int,
21768 descrA: cusparseMatDescr_t,
21769 csrVal: *const f64,
21770 csrRowPtr: *const ::core::ffi::c_int,
21771 csrColInd: *const ::core::ffi::c_int,
21772 b: *const f64,
21773 tol: f64,
21774 reorder: ::core::ffi::c_int,
21775 x: *mut f64,
21776 singularity: *mut ::core::ffi::c_int,
21777 ) -> cusolverStatus_t,
21778 pub cusolverSpDcsrlsvluHost: unsafe extern "C" fn(
21779 handle: cusolverSpHandle_t,
21780 n: ::core::ffi::c_int,
21781 nnzA: ::core::ffi::c_int,
21782 descrA: cusparseMatDescr_t,
21783 csrValA: *const f64,
21784 csrRowPtrA: *const ::core::ffi::c_int,
21785 csrColIndA: *const ::core::ffi::c_int,
21786 b: *const f64,
21787 tol: f64,
21788 reorder: ::core::ffi::c_int,
21789 x: *mut f64,
21790 singularity: *mut ::core::ffi::c_int,
21791 ) -> cusolverStatus_t,
21792 pub cusolverSpDcsrlsvqr: unsafe extern "C" fn(
21793 handle: cusolverSpHandle_t,
21794 m: ::core::ffi::c_int,
21795 nnz: ::core::ffi::c_int,
21796 descrA: cusparseMatDescr_t,
21797 csrVal: *const f64,
21798 csrRowPtr: *const ::core::ffi::c_int,
21799 csrColInd: *const ::core::ffi::c_int,
21800 b: *const f64,
21801 tol: f64,
21802 reorder: ::core::ffi::c_int,
21803 x: *mut f64,
21804 singularity: *mut ::core::ffi::c_int,
21805 ) -> cusolverStatus_t,
21806 pub cusolverSpDcsrlsvqrHost: unsafe extern "C" fn(
21807 handle: cusolverSpHandle_t,
21808 m: ::core::ffi::c_int,
21809 nnz: ::core::ffi::c_int,
21810 descrA: cusparseMatDescr_t,
21811 csrValA: *const f64,
21812 csrRowPtrA: *const ::core::ffi::c_int,
21813 csrColIndA: *const ::core::ffi::c_int,
21814 b: *const f64,
21815 tol: f64,
21816 reorder: ::core::ffi::c_int,
21817 x: *mut f64,
21818 singularity: *mut ::core::ffi::c_int,
21819 ) -> cusolverStatus_t,
21820 pub cusolverSpDcsrqrBufferInfoBatched: unsafe extern "C" fn(
21821 handle: cusolverSpHandle_t,
21822 m: ::core::ffi::c_int,
21823 n: ::core::ffi::c_int,
21824 nnz: ::core::ffi::c_int,
21825 descrA: cusparseMatDescr_t,
21826 csrVal: *const f64,
21827 csrRowPtr: *const ::core::ffi::c_int,
21828 csrColInd: *const ::core::ffi::c_int,
21829 batchSize: ::core::ffi::c_int,
21830 info: csrqrInfo_t,
21831 internalDataInBytes: *mut usize,
21832 workspaceInBytes: *mut usize,
21833 ) -> cusolverStatus_t,
21834 pub cusolverSpDcsrqrsvBatched: unsafe extern "C" fn(
21835 handle: cusolverSpHandle_t,
21836 m: ::core::ffi::c_int,
21837 n: ::core::ffi::c_int,
21838 nnz: ::core::ffi::c_int,
21839 descrA: cusparseMatDescr_t,
21840 csrValA: *const f64,
21841 csrRowPtrA: *const ::core::ffi::c_int,
21842 csrColIndA: *const ::core::ffi::c_int,
21843 b: *const f64,
21844 x: *mut f64,
21845 batchSize: ::core::ffi::c_int,
21846 info: csrqrInfo_t,
21847 pBuffer: *mut ::core::ffi::c_void,
21848 ) -> cusolverStatus_t,
21849 pub cusolverSpDcsrzfdHost: unsafe extern "C" fn(
21850 handle: cusolverSpHandle_t,
21851 n: ::core::ffi::c_int,
21852 nnz: ::core::ffi::c_int,
21853 descrA: cusparseMatDescr_t,
21854 csrValA: *const f64,
21855 csrRowPtrA: *const ::core::ffi::c_int,
21856 csrColIndA: *const ::core::ffi::c_int,
21857 P: *mut ::core::ffi::c_int,
21858 numnz: *mut ::core::ffi::c_int,
21859 ) -> cusolverStatus_t,
21860 pub cusolverSpDestroy: unsafe extern "C" fn(handle: cusolverSpHandle_t) -> cusolverStatus_t,
21861 pub cusolverSpDestroyCsrqrInfo: unsafe extern "C" fn(info: csrqrInfo_t) -> cusolverStatus_t,
21862 pub cusolverSpGetStream: unsafe extern "C" fn(
21863 handle: cusolverSpHandle_t,
21864 streamId: *mut cudaStream_t,
21865 ) -> cusolverStatus_t,
21866 pub cusolverSpScsreigsHost: unsafe extern "C" fn(
21867 handle: cusolverSpHandle_t,
21868 m: ::core::ffi::c_int,
21869 nnz: ::core::ffi::c_int,
21870 descrA: cusparseMatDescr_t,
21871 csrValA: *const f32,
21872 csrRowPtrA: *const ::core::ffi::c_int,
21873 csrColIndA: *const ::core::ffi::c_int,
21874 left_bottom_corner: cuComplex,
21875 right_upper_corner: cuComplex,
21876 num_eigs: *mut ::core::ffi::c_int,
21877 ) -> cusolverStatus_t,
21878 pub cusolverSpScsreigvsi: unsafe extern "C" fn(
21879 handle: cusolverSpHandle_t,
21880 m: ::core::ffi::c_int,
21881 nnz: ::core::ffi::c_int,
21882 descrA: cusparseMatDescr_t,
21883 csrValA: *const f32,
21884 csrRowPtrA: *const ::core::ffi::c_int,
21885 csrColIndA: *const ::core::ffi::c_int,
21886 mu0: f32,
21887 x0: *const f32,
21888 maxite: ::core::ffi::c_int,
21889 eps: f32,
21890 mu: *mut f32,
21891 x: *mut f32,
21892 ) -> cusolverStatus_t,
21893 pub cusolverSpScsreigvsiHost: unsafe extern "C" fn(
21894 handle: cusolverSpHandle_t,
21895 m: ::core::ffi::c_int,
21896 nnz: ::core::ffi::c_int,
21897 descrA: cusparseMatDescr_t,
21898 csrValA: *const f32,
21899 csrRowPtrA: *const ::core::ffi::c_int,
21900 csrColIndA: *const ::core::ffi::c_int,
21901 mu0: f32,
21902 x0: *const f32,
21903 maxite: ::core::ffi::c_int,
21904 tol: f32,
21905 mu: *mut f32,
21906 x: *mut f32,
21907 ) -> cusolverStatus_t,
21908 pub cusolverSpScsrlsqvqrHost: unsafe extern "C" fn(
21909 handle: cusolverSpHandle_t,
21910 m: ::core::ffi::c_int,
21911 n: ::core::ffi::c_int,
21912 nnz: ::core::ffi::c_int,
21913 descrA: cusparseMatDescr_t,
21914 csrValA: *const f32,
21915 csrRowPtrA: *const ::core::ffi::c_int,
21916 csrColIndA: *const ::core::ffi::c_int,
21917 b: *const f32,
21918 tol: f32,
21919 rankA: *mut ::core::ffi::c_int,
21920 x: *mut f32,
21921 p: *mut ::core::ffi::c_int,
21922 min_norm: *mut f32,
21923 ) -> cusolverStatus_t,
21924 pub cusolverSpScsrlsvchol: unsafe extern "C" fn(
21925 handle: cusolverSpHandle_t,
21926 m: ::core::ffi::c_int,
21927 nnz: ::core::ffi::c_int,
21928 descrA: cusparseMatDescr_t,
21929 csrVal: *const f32,
21930 csrRowPtr: *const ::core::ffi::c_int,
21931 csrColInd: *const ::core::ffi::c_int,
21932 b: *const f32,
21933 tol: f32,
21934 reorder: ::core::ffi::c_int,
21935 x: *mut f32,
21936 singularity: *mut ::core::ffi::c_int,
21937 ) -> cusolverStatus_t,
21938 pub cusolverSpScsrlsvcholHost: unsafe extern "C" fn(
21939 handle: cusolverSpHandle_t,
21940 m: ::core::ffi::c_int,
21941 nnz: ::core::ffi::c_int,
21942 descrA: cusparseMatDescr_t,
21943 csrVal: *const f32,
21944 csrRowPtr: *const ::core::ffi::c_int,
21945 csrColInd: *const ::core::ffi::c_int,
21946 b: *const f32,
21947 tol: f32,
21948 reorder: ::core::ffi::c_int,
21949 x: *mut f32,
21950 singularity: *mut ::core::ffi::c_int,
21951 ) -> cusolverStatus_t,
21952 pub cusolverSpScsrlsvluHost: unsafe extern "C" fn(
21953 handle: cusolverSpHandle_t,
21954 n: ::core::ffi::c_int,
21955 nnzA: ::core::ffi::c_int,
21956 descrA: cusparseMatDescr_t,
21957 csrValA: *const f32,
21958 csrRowPtrA: *const ::core::ffi::c_int,
21959 csrColIndA: *const ::core::ffi::c_int,
21960 b: *const f32,
21961 tol: f32,
21962 reorder: ::core::ffi::c_int,
21963 x: *mut f32,
21964 singularity: *mut ::core::ffi::c_int,
21965 ) -> cusolverStatus_t,
21966 pub cusolverSpScsrlsvqr: unsafe extern "C" fn(
21967 handle: cusolverSpHandle_t,
21968 m: ::core::ffi::c_int,
21969 nnz: ::core::ffi::c_int,
21970 descrA: cusparseMatDescr_t,
21971 csrVal: *const f32,
21972 csrRowPtr: *const ::core::ffi::c_int,
21973 csrColInd: *const ::core::ffi::c_int,
21974 b: *const f32,
21975 tol: f32,
21976 reorder: ::core::ffi::c_int,
21977 x: *mut f32,
21978 singularity: *mut ::core::ffi::c_int,
21979 ) -> cusolverStatus_t,
21980 pub cusolverSpScsrlsvqrHost: unsafe extern "C" fn(
21981 handle: cusolverSpHandle_t,
21982 m: ::core::ffi::c_int,
21983 nnz: ::core::ffi::c_int,
21984 descrA: cusparseMatDescr_t,
21985 csrValA: *const f32,
21986 csrRowPtrA: *const ::core::ffi::c_int,
21987 csrColIndA: *const ::core::ffi::c_int,
21988 b: *const f32,
21989 tol: f32,
21990 reorder: ::core::ffi::c_int,
21991 x: *mut f32,
21992 singularity: *mut ::core::ffi::c_int,
21993 ) -> cusolverStatus_t,
21994 pub cusolverSpScsrqrBufferInfoBatched: unsafe extern "C" fn(
21995 handle: cusolverSpHandle_t,
21996 m: ::core::ffi::c_int,
21997 n: ::core::ffi::c_int,
21998 nnz: ::core::ffi::c_int,
21999 descrA: cusparseMatDescr_t,
22000 csrVal: *const f32,
22001 csrRowPtr: *const ::core::ffi::c_int,
22002 csrColInd: *const ::core::ffi::c_int,
22003 batchSize: ::core::ffi::c_int,
22004 info: csrqrInfo_t,
22005 internalDataInBytes: *mut usize,
22006 workspaceInBytes: *mut usize,
22007 ) -> cusolverStatus_t,
22008 pub cusolverSpScsrqrsvBatched: unsafe extern "C" fn(
22009 handle: cusolverSpHandle_t,
22010 m: ::core::ffi::c_int,
22011 n: ::core::ffi::c_int,
22012 nnz: ::core::ffi::c_int,
22013 descrA: cusparseMatDescr_t,
22014 csrValA: *const f32,
22015 csrRowPtrA: *const ::core::ffi::c_int,
22016 csrColIndA: *const ::core::ffi::c_int,
22017 b: *const f32,
22018 x: *mut f32,
22019 batchSize: ::core::ffi::c_int,
22020 info: csrqrInfo_t,
22021 pBuffer: *mut ::core::ffi::c_void,
22022 ) -> cusolverStatus_t,
22023 pub cusolverSpScsrzfdHost: unsafe extern "C" fn(
22024 handle: cusolverSpHandle_t,
22025 n: ::core::ffi::c_int,
22026 nnz: ::core::ffi::c_int,
22027 descrA: cusparseMatDescr_t,
22028 csrValA: *const f32,
22029 csrRowPtrA: *const ::core::ffi::c_int,
22030 csrColIndA: *const ::core::ffi::c_int,
22031 P: *mut ::core::ffi::c_int,
22032 numnz: *mut ::core::ffi::c_int,
22033 ) -> cusolverStatus_t,
22034 pub cusolverSpSetStream: unsafe extern "C" fn(
22035 handle: cusolverSpHandle_t,
22036 streamId: cudaStream_t,
22037 ) -> cusolverStatus_t,
22038 pub cusolverSpXcsrissymHost: unsafe extern "C" fn(
22039 handle: cusolverSpHandle_t,
22040 m: ::core::ffi::c_int,
22041 nnzA: ::core::ffi::c_int,
22042 descrA: cusparseMatDescr_t,
22043 csrRowPtrA: *const ::core::ffi::c_int,
22044 csrEndPtrA: *const ::core::ffi::c_int,
22045 csrColIndA: *const ::core::ffi::c_int,
22046 issym: *mut ::core::ffi::c_int,
22047 ) -> cusolverStatus_t,
22048 pub cusolverSpXcsrmetisndHost: unsafe extern "C" fn(
22049 handle: cusolverSpHandle_t,
22050 n: ::core::ffi::c_int,
22051 nnzA: ::core::ffi::c_int,
22052 descrA: cusparseMatDescr_t,
22053 csrRowPtrA: *const ::core::ffi::c_int,
22054 csrColIndA: *const ::core::ffi::c_int,
22055 options: *const i64,
22056 p: *mut ::core::ffi::c_int,
22057 ) -> cusolverStatus_t,
22058 pub cusolverSpXcsrpermHost: unsafe extern "C" fn(
22059 handle: cusolverSpHandle_t,
22060 m: ::core::ffi::c_int,
22061 n: ::core::ffi::c_int,
22062 nnzA: ::core::ffi::c_int,
22063 descrA: cusparseMatDescr_t,
22064 csrRowPtrA: *mut ::core::ffi::c_int,
22065 csrColIndA: *mut ::core::ffi::c_int,
22066 p: *const ::core::ffi::c_int,
22067 q: *const ::core::ffi::c_int,
22068 map: *mut ::core::ffi::c_int,
22069 pBuffer: *mut ::core::ffi::c_void,
22070 ) -> cusolverStatus_t,
22071 pub cusolverSpXcsrperm_bufferSizeHost: unsafe extern "C" fn(
22072 handle: cusolverSpHandle_t,
22073 m: ::core::ffi::c_int,
22074 n: ::core::ffi::c_int,
22075 nnzA: ::core::ffi::c_int,
22076 descrA: cusparseMatDescr_t,
22077 csrRowPtrA: *const ::core::ffi::c_int,
22078 csrColIndA: *const ::core::ffi::c_int,
22079 p: *const ::core::ffi::c_int,
22080 q: *const ::core::ffi::c_int,
22081 bufferSizeInBytes: *mut usize,
22082 ) -> cusolverStatus_t,
22083 pub cusolverSpXcsrqrAnalysisBatched: unsafe extern "C" fn(
22084 handle: cusolverSpHandle_t,
22085 m: ::core::ffi::c_int,
22086 n: ::core::ffi::c_int,
22087 nnzA: ::core::ffi::c_int,
22088 descrA: cusparseMatDescr_t,
22089 csrRowPtrA: *const ::core::ffi::c_int,
22090 csrColIndA: *const ::core::ffi::c_int,
22091 info: csrqrInfo_t,
22092 ) -> cusolverStatus_t,
22093 pub cusolverSpXcsrsymamdHost: unsafe extern "C" fn(
22094 handle: cusolverSpHandle_t,
22095 n: ::core::ffi::c_int,
22096 nnzA: ::core::ffi::c_int,
22097 descrA: cusparseMatDescr_t,
22098 csrRowPtrA: *const ::core::ffi::c_int,
22099 csrColIndA: *const ::core::ffi::c_int,
22100 p: *mut ::core::ffi::c_int,
22101 ) -> cusolverStatus_t,
22102 pub cusolverSpXcsrsymmdqHost: unsafe extern "C" fn(
22103 handle: cusolverSpHandle_t,
22104 n: ::core::ffi::c_int,
22105 nnzA: ::core::ffi::c_int,
22106 descrA: cusparseMatDescr_t,
22107 csrRowPtrA: *const ::core::ffi::c_int,
22108 csrColIndA: *const ::core::ffi::c_int,
22109 p: *mut ::core::ffi::c_int,
22110 ) -> cusolverStatus_t,
22111 pub cusolverSpXcsrsymrcmHost: unsafe extern "C" fn(
22112 handle: cusolverSpHandle_t,
22113 n: ::core::ffi::c_int,
22114 nnzA: ::core::ffi::c_int,
22115 descrA: cusparseMatDescr_t,
22116 csrRowPtrA: *const ::core::ffi::c_int,
22117 csrColIndA: *const ::core::ffi::c_int,
22118 p: *mut ::core::ffi::c_int,
22119 ) -> cusolverStatus_t,
22120 pub cusolverSpZcsreigsHost: unsafe extern "C" fn(
22121 handle: cusolverSpHandle_t,
22122 m: ::core::ffi::c_int,
22123 nnz: ::core::ffi::c_int,
22124 descrA: cusparseMatDescr_t,
22125 csrValA: *const cuDoubleComplex,
22126 csrRowPtrA: *const ::core::ffi::c_int,
22127 csrColIndA: *const ::core::ffi::c_int,
22128 left_bottom_corner: cuDoubleComplex,
22129 right_upper_corner: cuDoubleComplex,
22130 num_eigs: *mut ::core::ffi::c_int,
22131 ) -> cusolverStatus_t,
22132 pub cusolverSpZcsreigvsi: unsafe extern "C" fn(
22133 handle: cusolverSpHandle_t,
22134 m: ::core::ffi::c_int,
22135 nnz: ::core::ffi::c_int,
22136 descrA: cusparseMatDescr_t,
22137 csrValA: *const cuDoubleComplex,
22138 csrRowPtrA: *const ::core::ffi::c_int,
22139 csrColIndA: *const ::core::ffi::c_int,
22140 mu0: cuDoubleComplex,
22141 x0: *const cuDoubleComplex,
22142 maxite: ::core::ffi::c_int,
22143 eps: f64,
22144 mu: *mut cuDoubleComplex,
22145 x: *mut cuDoubleComplex,
22146 ) -> cusolverStatus_t,
22147 pub cusolverSpZcsreigvsiHost: unsafe extern "C" fn(
22148 handle: cusolverSpHandle_t,
22149 m: ::core::ffi::c_int,
22150 nnz: ::core::ffi::c_int,
22151 descrA: cusparseMatDescr_t,
22152 csrValA: *const cuDoubleComplex,
22153 csrRowPtrA: *const ::core::ffi::c_int,
22154 csrColIndA: *const ::core::ffi::c_int,
22155 mu0: cuDoubleComplex,
22156 x0: *const cuDoubleComplex,
22157 maxite: ::core::ffi::c_int,
22158 tol: f64,
22159 mu: *mut cuDoubleComplex,
22160 x: *mut cuDoubleComplex,
22161 ) -> cusolverStatus_t,
22162 pub cusolverSpZcsrlsqvqrHost: unsafe extern "C" fn(
22163 handle: cusolverSpHandle_t,
22164 m: ::core::ffi::c_int,
22165 n: ::core::ffi::c_int,
22166 nnz: ::core::ffi::c_int,
22167 descrA: cusparseMatDescr_t,
22168 csrValA: *const cuDoubleComplex,
22169 csrRowPtrA: *const ::core::ffi::c_int,
22170 csrColIndA: *const ::core::ffi::c_int,
22171 b: *const cuDoubleComplex,
22172 tol: f64,
22173 rankA: *mut ::core::ffi::c_int,
22174 x: *mut cuDoubleComplex,
22175 p: *mut ::core::ffi::c_int,
22176 min_norm: *mut f64,
22177 ) -> cusolverStatus_t,
22178 pub cusolverSpZcsrlsvchol: unsafe extern "C" fn(
22179 handle: cusolverSpHandle_t,
22180 m: ::core::ffi::c_int,
22181 nnz: ::core::ffi::c_int,
22182 descrA: cusparseMatDescr_t,
22183 csrVal: *const cuDoubleComplex,
22184 csrRowPtr: *const ::core::ffi::c_int,
22185 csrColInd: *const ::core::ffi::c_int,
22186 b: *const cuDoubleComplex,
22187 tol: f64,
22188 reorder: ::core::ffi::c_int,
22189 x: *mut cuDoubleComplex,
22190 singularity: *mut ::core::ffi::c_int,
22191 ) -> cusolverStatus_t,
22192 pub cusolverSpZcsrlsvcholHost: unsafe extern "C" fn(
22193 handle: cusolverSpHandle_t,
22194 m: ::core::ffi::c_int,
22195 nnz: ::core::ffi::c_int,
22196 descrA: cusparseMatDescr_t,
22197 csrVal: *const cuDoubleComplex,
22198 csrRowPtr: *const ::core::ffi::c_int,
22199 csrColInd: *const ::core::ffi::c_int,
22200 b: *const cuDoubleComplex,
22201 tol: f64,
22202 reorder: ::core::ffi::c_int,
22203 x: *mut cuDoubleComplex,
22204 singularity: *mut ::core::ffi::c_int,
22205 ) -> cusolverStatus_t,
22206 pub cusolverSpZcsrlsvluHost: unsafe extern "C" fn(
22207 handle: cusolverSpHandle_t,
22208 n: ::core::ffi::c_int,
22209 nnzA: ::core::ffi::c_int,
22210 descrA: cusparseMatDescr_t,
22211 csrValA: *const cuDoubleComplex,
22212 csrRowPtrA: *const ::core::ffi::c_int,
22213 csrColIndA: *const ::core::ffi::c_int,
22214 b: *const cuDoubleComplex,
22215 tol: f64,
22216 reorder: ::core::ffi::c_int,
22217 x: *mut cuDoubleComplex,
22218 singularity: *mut ::core::ffi::c_int,
22219 ) -> cusolverStatus_t,
22220 pub cusolverSpZcsrlsvqr: unsafe extern "C" fn(
22221 handle: cusolverSpHandle_t,
22222 m: ::core::ffi::c_int,
22223 nnz: ::core::ffi::c_int,
22224 descrA: cusparseMatDescr_t,
22225 csrVal: *const cuDoubleComplex,
22226 csrRowPtr: *const ::core::ffi::c_int,
22227 csrColInd: *const ::core::ffi::c_int,
22228 b: *const cuDoubleComplex,
22229 tol: f64,
22230 reorder: ::core::ffi::c_int,
22231 x: *mut cuDoubleComplex,
22232 singularity: *mut ::core::ffi::c_int,
22233 ) -> cusolverStatus_t,
22234 pub cusolverSpZcsrlsvqrHost: unsafe extern "C" fn(
22235 handle: cusolverSpHandle_t,
22236 m: ::core::ffi::c_int,
22237 nnz: ::core::ffi::c_int,
22238 descrA: cusparseMatDescr_t,
22239 csrValA: *const cuDoubleComplex,
22240 csrRowPtrA: *const ::core::ffi::c_int,
22241 csrColIndA: *const ::core::ffi::c_int,
22242 b: *const cuDoubleComplex,
22243 tol: f64,
22244 reorder: ::core::ffi::c_int,
22245 x: *mut cuDoubleComplex,
22246 singularity: *mut ::core::ffi::c_int,
22247 ) -> cusolverStatus_t,
22248 pub cusolverSpZcsrqrBufferInfoBatched: unsafe extern "C" fn(
22249 handle: cusolverSpHandle_t,
22250 m: ::core::ffi::c_int,
22251 n: ::core::ffi::c_int,
22252 nnz: ::core::ffi::c_int,
22253 descrA: cusparseMatDescr_t,
22254 csrVal: *const cuDoubleComplex,
22255 csrRowPtr: *const ::core::ffi::c_int,
22256 csrColInd: *const ::core::ffi::c_int,
22257 batchSize: ::core::ffi::c_int,
22258 info: csrqrInfo_t,
22259 internalDataInBytes: *mut usize,
22260 workspaceInBytes: *mut usize,
22261 ) -> cusolverStatus_t,
22262 pub cusolverSpZcsrqrsvBatched: unsafe extern "C" fn(
22263 handle: cusolverSpHandle_t,
22264 m: ::core::ffi::c_int,
22265 n: ::core::ffi::c_int,
22266 nnz: ::core::ffi::c_int,
22267 descrA: cusparseMatDescr_t,
22268 csrValA: *const cuDoubleComplex,
22269 csrRowPtrA: *const ::core::ffi::c_int,
22270 csrColIndA: *const ::core::ffi::c_int,
22271 b: *const cuDoubleComplex,
22272 x: *mut cuDoubleComplex,
22273 batchSize: ::core::ffi::c_int,
22274 info: csrqrInfo_t,
22275 pBuffer: *mut ::core::ffi::c_void,
22276 ) -> cusolverStatus_t,
22277 pub cusolverSpZcsrzfdHost: unsafe extern "C" fn(
22278 handle: cusolverSpHandle_t,
22279 n: ::core::ffi::c_int,
22280 nnz: ::core::ffi::c_int,
22281 descrA: cusparseMatDescr_t,
22282 csrValA: *const cuDoubleComplex,
22283 csrRowPtrA: *const ::core::ffi::c_int,
22284 csrColIndA: *const ::core::ffi::c_int,
22285 P: *mut ::core::ffi::c_int,
22286 numnz: *mut ::core::ffi::c_int,
22287 ) -> cusolverStatus_t,
22288 }
22289 impl Lib {
22290 pub unsafe fn new<P>(path: P) -> Result<Self, ::libloading::Error>
22291 where
22292 P: AsRef<::std::ffi::OsStr>,
22293 {
22294 let library = ::libloading::Library::new(path.as_ref())?;
22295 Self::from_library(library)
22296 }
22297 pub unsafe fn from_library<L>(library: L) -> Result<Self, ::libloading::Error>
22298 where
22299 L: Into<::libloading::Library>,
22300 {
22301 let __library = library.into();
22302 let cusolverDnCCgels = __library
22303 .get(b"cusolverDnCCgels\0")
22304 .map(|sym| *sym)
22305 .expect("Expected symbol in library");
22306 let cusolverDnCCgels_bufferSize = __library
22307 .get(b"cusolverDnCCgels_bufferSize\0")
22308 .map(|sym| *sym)
22309 .expect("Expected symbol in library");
22310 let cusolverDnCCgesv = __library
22311 .get(b"cusolverDnCCgesv\0")
22312 .map(|sym| *sym)
22313 .expect("Expected symbol in library");
22314 let cusolverDnCCgesv_bufferSize = __library
22315 .get(b"cusolverDnCCgesv_bufferSize\0")
22316 .map(|sym| *sym)
22317 .expect("Expected symbol in library");
22318 let cusolverDnCEgels = __library
22319 .get(b"cusolverDnCEgels\0")
22320 .map(|sym| *sym)
22321 .expect("Expected symbol in library");
22322 let cusolverDnCEgels_bufferSize = __library
22323 .get(b"cusolverDnCEgels_bufferSize\0")
22324 .map(|sym| *sym)
22325 .expect("Expected symbol in library");
22326 let cusolverDnCEgesv = __library
22327 .get(b"cusolverDnCEgesv\0")
22328 .map(|sym| *sym)
22329 .expect("Expected symbol in library");
22330 let cusolverDnCEgesv_bufferSize = __library
22331 .get(b"cusolverDnCEgesv_bufferSize\0")
22332 .map(|sym| *sym)
22333 .expect("Expected symbol in library");
22334 let cusolverDnCKgels = __library
22335 .get(b"cusolverDnCKgels\0")
22336 .map(|sym| *sym)
22337 .expect("Expected symbol in library");
22338 let cusolverDnCKgels_bufferSize = __library
22339 .get(b"cusolverDnCKgels_bufferSize\0")
22340 .map(|sym| *sym)
22341 .expect("Expected symbol in library");
22342 let cusolverDnCKgesv = __library
22343 .get(b"cusolverDnCKgesv\0")
22344 .map(|sym| *sym)
22345 .expect("Expected symbol in library");
22346 let cusolverDnCKgesv_bufferSize = __library
22347 .get(b"cusolverDnCKgesv_bufferSize\0")
22348 .map(|sym| *sym)
22349 .expect("Expected symbol in library");
22350 let cusolverDnCYgels = __library
22351 .get(b"cusolverDnCYgels\0")
22352 .map(|sym| *sym)
22353 .expect("Expected symbol in library");
22354 let cusolverDnCYgels_bufferSize = __library
22355 .get(b"cusolverDnCYgels_bufferSize\0")
22356 .map(|sym| *sym)
22357 .expect("Expected symbol in library");
22358 let cusolverDnCYgesv = __library
22359 .get(b"cusolverDnCYgesv\0")
22360 .map(|sym| *sym)
22361 .expect("Expected symbol in library");
22362 let cusolverDnCYgesv_bufferSize = __library
22363 .get(b"cusolverDnCYgesv_bufferSize\0")
22364 .map(|sym| *sym)
22365 .expect("Expected symbol in library");
22366 let cusolverDnCgebrd = __library
22367 .get(b"cusolverDnCgebrd\0")
22368 .map(|sym| *sym)
22369 .expect("Expected symbol in library");
22370 let cusolverDnCgebrd_bufferSize = __library
22371 .get(b"cusolverDnCgebrd_bufferSize\0")
22372 .map(|sym| *sym)
22373 .expect("Expected symbol in library");
22374 let cusolverDnCgeqrf = __library
22375 .get(b"cusolverDnCgeqrf\0")
22376 .map(|sym| *sym)
22377 .expect("Expected symbol in library");
22378 let cusolverDnCgeqrf_bufferSize = __library
22379 .get(b"cusolverDnCgeqrf_bufferSize\0")
22380 .map(|sym| *sym)
22381 .expect("Expected symbol in library");
22382 let cusolverDnCgesvd = __library
22383 .get(b"cusolverDnCgesvd\0")
22384 .map(|sym| *sym)
22385 .expect("Expected symbol in library");
22386 let cusolverDnCgesvd_bufferSize = __library
22387 .get(b"cusolverDnCgesvd_bufferSize\0")
22388 .map(|sym| *sym)
22389 .expect("Expected symbol in library");
22390 let cusolverDnCgesvdaStridedBatched = __library
22391 .get(b"cusolverDnCgesvdaStridedBatched\0")
22392 .map(|sym| *sym)
22393 .expect("Expected symbol in library");
22394 let cusolverDnCgesvdaStridedBatched_bufferSize = __library
22395 .get(b"cusolverDnCgesvdaStridedBatched_bufferSize\0")
22396 .map(|sym| *sym)
22397 .expect("Expected symbol in library");
22398 let cusolverDnCgesvdj = __library
22399 .get(b"cusolverDnCgesvdj\0")
22400 .map(|sym| *sym)
22401 .expect("Expected symbol in library");
22402 let cusolverDnCgesvdjBatched = __library
22403 .get(b"cusolverDnCgesvdjBatched\0")
22404 .map(|sym| *sym)
22405 .expect("Expected symbol in library");
22406 let cusolverDnCgesvdjBatched_bufferSize = __library
22407 .get(b"cusolverDnCgesvdjBatched_bufferSize\0")
22408 .map(|sym| *sym)
22409 .expect("Expected symbol in library");
22410 let cusolverDnCgesvdj_bufferSize = __library
22411 .get(b"cusolverDnCgesvdj_bufferSize\0")
22412 .map(|sym| *sym)
22413 .expect("Expected symbol in library");
22414 let cusolverDnCgetrf = __library
22415 .get(b"cusolverDnCgetrf\0")
22416 .map(|sym| *sym)
22417 .expect("Expected symbol in library");
22418 let cusolverDnCgetrf_bufferSize = __library
22419 .get(b"cusolverDnCgetrf_bufferSize\0")
22420 .map(|sym| *sym)
22421 .expect("Expected symbol in library");
22422 let cusolverDnCgetrs = __library
22423 .get(b"cusolverDnCgetrs\0")
22424 .map(|sym| *sym)
22425 .expect("Expected symbol in library");
22426 let cusolverDnCheevd = __library
22427 .get(b"cusolverDnCheevd\0")
22428 .map(|sym| *sym)
22429 .expect("Expected symbol in library");
22430 let cusolverDnCheevd_bufferSize = __library
22431 .get(b"cusolverDnCheevd_bufferSize\0")
22432 .map(|sym| *sym)
22433 .expect("Expected symbol in library");
22434 let cusolverDnCheevdx = __library
22435 .get(b"cusolverDnCheevdx\0")
22436 .map(|sym| *sym)
22437 .expect("Expected symbol in library");
22438 let cusolverDnCheevdx_bufferSize = __library
22439 .get(b"cusolverDnCheevdx_bufferSize\0")
22440 .map(|sym| *sym)
22441 .expect("Expected symbol in library");
22442 let cusolverDnCheevj = __library
22443 .get(b"cusolverDnCheevj\0")
22444 .map(|sym| *sym)
22445 .expect("Expected symbol in library");
22446 let cusolverDnCheevjBatched = __library
22447 .get(b"cusolverDnCheevjBatched\0")
22448 .map(|sym| *sym)
22449 .expect("Expected symbol in library");
22450 let cusolverDnCheevjBatched_bufferSize = __library
22451 .get(b"cusolverDnCheevjBatched_bufferSize\0")
22452 .map(|sym| *sym)
22453 .expect("Expected symbol in library");
22454 let cusolverDnCheevj_bufferSize = __library
22455 .get(b"cusolverDnCheevj_bufferSize\0")
22456 .map(|sym| *sym)
22457 .expect("Expected symbol in library");
22458 let cusolverDnChegvd = __library
22459 .get(b"cusolverDnChegvd\0")
22460 .map(|sym| *sym)
22461 .expect("Expected symbol in library");
22462 let cusolverDnChegvd_bufferSize = __library
22463 .get(b"cusolverDnChegvd_bufferSize\0")
22464 .map(|sym| *sym)
22465 .expect("Expected symbol in library");
22466 let cusolverDnChegvdx = __library
22467 .get(b"cusolverDnChegvdx\0")
22468 .map(|sym| *sym)
22469 .expect("Expected symbol in library");
22470 let cusolverDnChegvdx_bufferSize = __library
22471 .get(b"cusolverDnChegvdx_bufferSize\0")
22472 .map(|sym| *sym)
22473 .expect("Expected symbol in library");
22474 let cusolverDnChegvj = __library
22475 .get(b"cusolverDnChegvj\0")
22476 .map(|sym| *sym)
22477 .expect("Expected symbol in library");
22478 let cusolverDnChegvj_bufferSize = __library
22479 .get(b"cusolverDnChegvj_bufferSize\0")
22480 .map(|sym| *sym)
22481 .expect("Expected symbol in library");
22482 let cusolverDnChetrd = __library
22483 .get(b"cusolverDnChetrd\0")
22484 .map(|sym| *sym)
22485 .expect("Expected symbol in library");
22486 let cusolverDnChetrd_bufferSize = __library
22487 .get(b"cusolverDnChetrd_bufferSize\0")
22488 .map(|sym| *sym)
22489 .expect("Expected symbol in library");
22490 let cusolverDnClaswp = __library
22491 .get(b"cusolverDnClaswp\0")
22492 .map(|sym| *sym)
22493 .expect("Expected symbol in library");
22494 let cusolverDnClauum = __library
22495 .get(b"cusolverDnClauum\0")
22496 .map(|sym| *sym)
22497 .expect("Expected symbol in library");
22498 let cusolverDnClauum_bufferSize = __library
22499 .get(b"cusolverDnClauum_bufferSize\0")
22500 .map(|sym| *sym)
22501 .expect("Expected symbol in library");
22502 let cusolverDnCpotrf = __library
22503 .get(b"cusolverDnCpotrf\0")
22504 .map(|sym| *sym)
22505 .expect("Expected symbol in library");
22506 let cusolverDnCpotrfBatched = __library
22507 .get(b"cusolverDnCpotrfBatched\0")
22508 .map(|sym| *sym)
22509 .expect("Expected symbol in library");
22510 let cusolverDnCpotrf_bufferSize = __library
22511 .get(b"cusolverDnCpotrf_bufferSize\0")
22512 .map(|sym| *sym)
22513 .expect("Expected symbol in library");
22514 let cusolverDnCpotri = __library
22515 .get(b"cusolverDnCpotri\0")
22516 .map(|sym| *sym)
22517 .expect("Expected symbol in library");
22518 let cusolverDnCpotri_bufferSize = __library
22519 .get(b"cusolverDnCpotri_bufferSize\0")
22520 .map(|sym| *sym)
22521 .expect("Expected symbol in library");
22522 let cusolverDnCpotrs = __library
22523 .get(b"cusolverDnCpotrs\0")
22524 .map(|sym| *sym)
22525 .expect("Expected symbol in library");
22526 let cusolverDnCpotrsBatched = __library
22527 .get(b"cusolverDnCpotrsBatched\0")
22528 .map(|sym| *sym)
22529 .expect("Expected symbol in library");
22530 let cusolverDnCreate = __library
22531 .get(b"cusolverDnCreate\0")
22532 .map(|sym| *sym)
22533 .expect("Expected symbol in library");
22534 let cusolverDnCreateGesvdjInfo = __library
22535 .get(b"cusolverDnCreateGesvdjInfo\0")
22536 .map(|sym| *sym)
22537 .expect("Expected symbol in library");
22538 let cusolverDnCreateParams = __library
22539 .get(b"cusolverDnCreateParams\0")
22540 .map(|sym| *sym)
22541 .expect("Expected symbol in library");
22542 let cusolverDnCreateSyevjInfo = __library
22543 .get(b"cusolverDnCreateSyevjInfo\0")
22544 .map(|sym| *sym)
22545 .expect("Expected symbol in library");
22546 let cusolverDnCsytrf = __library
22547 .get(b"cusolverDnCsytrf\0")
22548 .map(|sym| *sym)
22549 .expect("Expected symbol in library");
22550 let cusolverDnCsytrf_bufferSize = __library
22551 .get(b"cusolverDnCsytrf_bufferSize\0")
22552 .map(|sym| *sym)
22553 .expect("Expected symbol in library");
22554 let cusolverDnCsytri = __library
22555 .get(b"cusolverDnCsytri\0")
22556 .map(|sym| *sym)
22557 .expect("Expected symbol in library");
22558 let cusolverDnCsytri_bufferSize = __library
22559 .get(b"cusolverDnCsytri_bufferSize\0")
22560 .map(|sym| *sym)
22561 .expect("Expected symbol in library");
22562 let cusolverDnCungbr = __library
22563 .get(b"cusolverDnCungbr\0")
22564 .map(|sym| *sym)
22565 .expect("Expected symbol in library");
22566 let cusolverDnCungbr_bufferSize = __library
22567 .get(b"cusolverDnCungbr_bufferSize\0")
22568 .map(|sym| *sym)
22569 .expect("Expected symbol in library");
22570 let cusolverDnCungqr = __library
22571 .get(b"cusolverDnCungqr\0")
22572 .map(|sym| *sym)
22573 .expect("Expected symbol in library");
22574 let cusolverDnCungqr_bufferSize = __library
22575 .get(b"cusolverDnCungqr_bufferSize\0")
22576 .map(|sym| *sym)
22577 .expect("Expected symbol in library");
22578 let cusolverDnCungtr = __library
22579 .get(b"cusolverDnCungtr\0")
22580 .map(|sym| *sym)
22581 .expect("Expected symbol in library");
22582 let cusolverDnCungtr_bufferSize = __library
22583 .get(b"cusolverDnCungtr_bufferSize\0")
22584 .map(|sym| *sym)
22585 .expect("Expected symbol in library");
22586 let cusolverDnCunmqr = __library
22587 .get(b"cusolverDnCunmqr\0")
22588 .map(|sym| *sym)
22589 .expect("Expected symbol in library");
22590 let cusolverDnCunmqr_bufferSize = __library
22591 .get(b"cusolverDnCunmqr_bufferSize\0")
22592 .map(|sym| *sym)
22593 .expect("Expected symbol in library");
22594 let cusolverDnCunmtr = __library
22595 .get(b"cusolverDnCunmtr\0")
22596 .map(|sym| *sym)
22597 .expect("Expected symbol in library");
22598 let cusolverDnCunmtr_bufferSize = __library
22599 .get(b"cusolverDnCunmtr_bufferSize\0")
22600 .map(|sym| *sym)
22601 .expect("Expected symbol in library");
22602 let cusolverDnDBgels = __library
22603 .get(b"cusolverDnDBgels\0")
22604 .map(|sym| *sym)
22605 .expect("Expected symbol in library");
22606 let cusolverDnDBgels_bufferSize = __library
22607 .get(b"cusolverDnDBgels_bufferSize\0")
22608 .map(|sym| *sym)
22609 .expect("Expected symbol in library");
22610 let cusolverDnDBgesv = __library
22611 .get(b"cusolverDnDBgesv\0")
22612 .map(|sym| *sym)
22613 .expect("Expected symbol in library");
22614 let cusolverDnDBgesv_bufferSize = __library
22615 .get(b"cusolverDnDBgesv_bufferSize\0")
22616 .map(|sym| *sym)
22617 .expect("Expected symbol in library");
22618 let cusolverDnDDgels = __library
22619 .get(b"cusolverDnDDgels\0")
22620 .map(|sym| *sym)
22621 .expect("Expected symbol in library");
22622 let cusolverDnDDgels_bufferSize = __library
22623 .get(b"cusolverDnDDgels_bufferSize\0")
22624 .map(|sym| *sym)
22625 .expect("Expected symbol in library");
22626 let cusolverDnDDgesv = __library
22627 .get(b"cusolverDnDDgesv\0")
22628 .map(|sym| *sym)
22629 .expect("Expected symbol in library");
22630 let cusolverDnDDgesv_bufferSize = __library
22631 .get(b"cusolverDnDDgesv_bufferSize\0")
22632 .map(|sym| *sym)
22633 .expect("Expected symbol in library");
22634 let cusolverDnDHgels = __library
22635 .get(b"cusolverDnDHgels\0")
22636 .map(|sym| *sym)
22637 .expect("Expected symbol in library");
22638 let cusolverDnDHgels_bufferSize = __library
22639 .get(b"cusolverDnDHgels_bufferSize\0")
22640 .map(|sym| *sym)
22641 .expect("Expected symbol in library");
22642 let cusolverDnDHgesv = __library
22643 .get(b"cusolverDnDHgesv\0")
22644 .map(|sym| *sym)
22645 .expect("Expected symbol in library");
22646 let cusolverDnDHgesv_bufferSize = __library
22647 .get(b"cusolverDnDHgesv_bufferSize\0")
22648 .map(|sym| *sym)
22649 .expect("Expected symbol in library");
22650 let cusolverDnDSgels = __library
22651 .get(b"cusolverDnDSgels\0")
22652 .map(|sym| *sym)
22653 .expect("Expected symbol in library");
22654 let cusolverDnDSgels_bufferSize = __library
22655 .get(b"cusolverDnDSgels_bufferSize\0")
22656 .map(|sym| *sym)
22657 .expect("Expected symbol in library");
22658 let cusolverDnDSgesv = __library
22659 .get(b"cusolverDnDSgesv\0")
22660 .map(|sym| *sym)
22661 .expect("Expected symbol in library");
22662 let cusolverDnDSgesv_bufferSize = __library
22663 .get(b"cusolverDnDSgesv_bufferSize\0")
22664 .map(|sym| *sym)
22665 .expect("Expected symbol in library");
22666 let cusolverDnDXgels = __library
22667 .get(b"cusolverDnDXgels\0")
22668 .map(|sym| *sym)
22669 .expect("Expected symbol in library");
22670 let cusolverDnDXgels_bufferSize = __library
22671 .get(b"cusolverDnDXgels_bufferSize\0")
22672 .map(|sym| *sym)
22673 .expect("Expected symbol in library");
22674 let cusolverDnDXgesv = __library
22675 .get(b"cusolverDnDXgesv\0")
22676 .map(|sym| *sym)
22677 .expect("Expected symbol in library");
22678 let cusolverDnDXgesv_bufferSize = __library
22679 .get(b"cusolverDnDXgesv_bufferSize\0")
22680 .map(|sym| *sym)
22681 .expect("Expected symbol in library");
22682 let cusolverDnDestroy = __library
22683 .get(b"cusolverDnDestroy\0")
22684 .map(|sym| *sym)
22685 .expect("Expected symbol in library");
22686 let cusolverDnDestroyGesvdjInfo = __library
22687 .get(b"cusolverDnDestroyGesvdjInfo\0")
22688 .map(|sym| *sym)
22689 .expect("Expected symbol in library");
22690 let cusolverDnDestroyParams = __library
22691 .get(b"cusolverDnDestroyParams\0")
22692 .map(|sym| *sym)
22693 .expect("Expected symbol in library");
22694 let cusolverDnDestroySyevjInfo = __library
22695 .get(b"cusolverDnDestroySyevjInfo\0")
22696 .map(|sym| *sym)
22697 .expect("Expected symbol in library");
22698 let cusolverDnDgebrd = __library
22699 .get(b"cusolverDnDgebrd\0")
22700 .map(|sym| *sym)
22701 .expect("Expected symbol in library");
22702 let cusolverDnDgebrd_bufferSize = __library
22703 .get(b"cusolverDnDgebrd_bufferSize\0")
22704 .map(|sym| *sym)
22705 .expect("Expected symbol in library");
22706 let cusolverDnDgeqrf = __library
22707 .get(b"cusolverDnDgeqrf\0")
22708 .map(|sym| *sym)
22709 .expect("Expected symbol in library");
22710 let cusolverDnDgeqrf_bufferSize = __library
22711 .get(b"cusolverDnDgeqrf_bufferSize\0")
22712 .map(|sym| *sym)
22713 .expect("Expected symbol in library");
22714 let cusolverDnDgesvd = __library
22715 .get(b"cusolverDnDgesvd\0")
22716 .map(|sym| *sym)
22717 .expect("Expected symbol in library");
22718 let cusolverDnDgesvd_bufferSize = __library
22719 .get(b"cusolverDnDgesvd_bufferSize\0")
22720 .map(|sym| *sym)
22721 .expect("Expected symbol in library");
22722 let cusolverDnDgesvdaStridedBatched = __library
22723 .get(b"cusolverDnDgesvdaStridedBatched\0")
22724 .map(|sym| *sym)
22725 .expect("Expected symbol in library");
22726 let cusolverDnDgesvdaStridedBatched_bufferSize = __library
22727 .get(b"cusolverDnDgesvdaStridedBatched_bufferSize\0")
22728 .map(|sym| *sym)
22729 .expect("Expected symbol in library");
22730 let cusolverDnDgesvdj = __library
22731 .get(b"cusolverDnDgesvdj\0")
22732 .map(|sym| *sym)
22733 .expect("Expected symbol in library");
22734 let cusolverDnDgesvdjBatched = __library
22735 .get(b"cusolverDnDgesvdjBatched\0")
22736 .map(|sym| *sym)
22737 .expect("Expected symbol in library");
22738 let cusolverDnDgesvdjBatched_bufferSize = __library
22739 .get(b"cusolverDnDgesvdjBatched_bufferSize\0")
22740 .map(|sym| *sym)
22741 .expect("Expected symbol in library");
22742 let cusolverDnDgesvdj_bufferSize = __library
22743 .get(b"cusolverDnDgesvdj_bufferSize\0")
22744 .map(|sym| *sym)
22745 .expect("Expected symbol in library");
22746 let cusolverDnDgetrf = __library
22747 .get(b"cusolverDnDgetrf\0")
22748 .map(|sym| *sym)
22749 .expect("Expected symbol in library");
22750 let cusolverDnDgetrf_bufferSize = __library
22751 .get(b"cusolverDnDgetrf_bufferSize\0")
22752 .map(|sym| *sym)
22753 .expect("Expected symbol in library");
22754 let cusolverDnDgetrs = __library
22755 .get(b"cusolverDnDgetrs\0")
22756 .map(|sym| *sym)
22757 .expect("Expected symbol in library");
22758 let cusolverDnDlaswp = __library
22759 .get(b"cusolverDnDlaswp\0")
22760 .map(|sym| *sym)
22761 .expect("Expected symbol in library");
22762 let cusolverDnDlauum = __library
22763 .get(b"cusolverDnDlauum\0")
22764 .map(|sym| *sym)
22765 .expect("Expected symbol in library");
22766 let cusolverDnDlauum_bufferSize = __library
22767 .get(b"cusolverDnDlauum_bufferSize\0")
22768 .map(|sym| *sym)
22769 .expect("Expected symbol in library");
22770 let cusolverDnDorgbr = __library
22771 .get(b"cusolverDnDorgbr\0")
22772 .map(|sym| *sym)
22773 .expect("Expected symbol in library");
22774 let cusolverDnDorgbr_bufferSize = __library
22775 .get(b"cusolverDnDorgbr_bufferSize\0")
22776 .map(|sym| *sym)
22777 .expect("Expected symbol in library");
22778 let cusolverDnDorgqr = __library
22779 .get(b"cusolverDnDorgqr\0")
22780 .map(|sym| *sym)
22781 .expect("Expected symbol in library");
22782 let cusolverDnDorgqr_bufferSize = __library
22783 .get(b"cusolverDnDorgqr_bufferSize\0")
22784 .map(|sym| *sym)
22785 .expect("Expected symbol in library");
22786 let cusolverDnDorgtr = __library
22787 .get(b"cusolverDnDorgtr\0")
22788 .map(|sym| *sym)
22789 .expect("Expected symbol in library");
22790 let cusolverDnDorgtr_bufferSize = __library
22791 .get(b"cusolverDnDorgtr_bufferSize\0")
22792 .map(|sym| *sym)
22793 .expect("Expected symbol in library");
22794 let cusolverDnDormqr = __library
22795 .get(b"cusolverDnDormqr\0")
22796 .map(|sym| *sym)
22797 .expect("Expected symbol in library");
22798 let cusolverDnDormqr_bufferSize = __library
22799 .get(b"cusolverDnDormqr_bufferSize\0")
22800 .map(|sym| *sym)
22801 .expect("Expected symbol in library");
22802 let cusolverDnDormtr = __library
22803 .get(b"cusolverDnDormtr\0")
22804 .map(|sym| *sym)
22805 .expect("Expected symbol in library");
22806 let cusolverDnDormtr_bufferSize = __library
22807 .get(b"cusolverDnDormtr_bufferSize\0")
22808 .map(|sym| *sym)
22809 .expect("Expected symbol in library");
22810 let cusolverDnDpotrf = __library
22811 .get(b"cusolverDnDpotrf\0")
22812 .map(|sym| *sym)
22813 .expect("Expected symbol in library");
22814 let cusolverDnDpotrfBatched = __library
22815 .get(b"cusolverDnDpotrfBatched\0")
22816 .map(|sym| *sym)
22817 .expect("Expected symbol in library");
22818 let cusolverDnDpotrf_bufferSize = __library
22819 .get(b"cusolverDnDpotrf_bufferSize\0")
22820 .map(|sym| *sym)
22821 .expect("Expected symbol in library");
22822 let cusolverDnDpotri = __library
22823 .get(b"cusolverDnDpotri\0")
22824 .map(|sym| *sym)
22825 .expect("Expected symbol in library");
22826 let cusolverDnDpotri_bufferSize = __library
22827 .get(b"cusolverDnDpotri_bufferSize\0")
22828 .map(|sym| *sym)
22829 .expect("Expected symbol in library");
22830 let cusolverDnDpotrs = __library
22831 .get(b"cusolverDnDpotrs\0")
22832 .map(|sym| *sym)
22833 .expect("Expected symbol in library");
22834 let cusolverDnDpotrsBatched = __library
22835 .get(b"cusolverDnDpotrsBatched\0")
22836 .map(|sym| *sym)
22837 .expect("Expected symbol in library");
22838 let cusolverDnDsyevd = __library
22839 .get(b"cusolverDnDsyevd\0")
22840 .map(|sym| *sym)
22841 .expect("Expected symbol in library");
22842 let cusolverDnDsyevd_bufferSize = __library
22843 .get(b"cusolverDnDsyevd_bufferSize\0")
22844 .map(|sym| *sym)
22845 .expect("Expected symbol in library");
22846 let cusolverDnDsyevdx = __library
22847 .get(b"cusolverDnDsyevdx\0")
22848 .map(|sym| *sym)
22849 .expect("Expected symbol in library");
22850 let cusolverDnDsyevdx_bufferSize = __library
22851 .get(b"cusolverDnDsyevdx_bufferSize\0")
22852 .map(|sym| *sym)
22853 .expect("Expected symbol in library");
22854 let cusolverDnDsyevj = __library
22855 .get(b"cusolverDnDsyevj\0")
22856 .map(|sym| *sym)
22857 .expect("Expected symbol in library");
22858 let cusolverDnDsyevjBatched = __library
22859 .get(b"cusolverDnDsyevjBatched\0")
22860 .map(|sym| *sym)
22861 .expect("Expected symbol in library");
22862 let cusolverDnDsyevjBatched_bufferSize = __library
22863 .get(b"cusolverDnDsyevjBatched_bufferSize\0")
22864 .map(|sym| *sym)
22865 .expect("Expected symbol in library");
22866 let cusolverDnDsyevj_bufferSize = __library
22867 .get(b"cusolverDnDsyevj_bufferSize\0")
22868 .map(|sym| *sym)
22869 .expect("Expected symbol in library");
22870 let cusolverDnDsygvd = __library
22871 .get(b"cusolverDnDsygvd\0")
22872 .map(|sym| *sym)
22873 .expect("Expected symbol in library");
22874 let cusolverDnDsygvd_bufferSize = __library
22875 .get(b"cusolverDnDsygvd_bufferSize\0")
22876 .map(|sym| *sym)
22877 .expect("Expected symbol in library");
22878 let cusolverDnDsygvdx = __library
22879 .get(b"cusolverDnDsygvdx\0")
22880 .map(|sym| *sym)
22881 .expect("Expected symbol in library");
22882 let cusolverDnDsygvdx_bufferSize = __library
22883 .get(b"cusolverDnDsygvdx_bufferSize\0")
22884 .map(|sym| *sym)
22885 .expect("Expected symbol in library");
22886 let cusolverDnDsygvj = __library
22887 .get(b"cusolverDnDsygvj\0")
22888 .map(|sym| *sym)
22889 .expect("Expected symbol in library");
22890 let cusolverDnDsygvj_bufferSize = __library
22891 .get(b"cusolverDnDsygvj_bufferSize\0")
22892 .map(|sym| *sym)
22893 .expect("Expected symbol in library");
22894 let cusolverDnDsytrd = __library
22895 .get(b"cusolverDnDsytrd\0")
22896 .map(|sym| *sym)
22897 .expect("Expected symbol in library");
22898 let cusolverDnDsytrd_bufferSize = __library
22899 .get(b"cusolverDnDsytrd_bufferSize\0")
22900 .map(|sym| *sym)
22901 .expect("Expected symbol in library");
22902 let cusolverDnDsytrf = __library
22903 .get(b"cusolverDnDsytrf\0")
22904 .map(|sym| *sym)
22905 .expect("Expected symbol in library");
22906 let cusolverDnDsytrf_bufferSize = __library
22907 .get(b"cusolverDnDsytrf_bufferSize\0")
22908 .map(|sym| *sym)
22909 .expect("Expected symbol in library");
22910 let cusolverDnDsytri = __library
22911 .get(b"cusolverDnDsytri\0")
22912 .map(|sym| *sym)
22913 .expect("Expected symbol in library");
22914 let cusolverDnDsytri_bufferSize = __library
22915 .get(b"cusolverDnDsytri_bufferSize\0")
22916 .map(|sym| *sym)
22917 .expect("Expected symbol in library");
22918 #[cfg(any(
22919 feature = "cuda-11040",
22920 feature = "cuda-11050",
22921 feature = "cuda-11060",
22922 feature = "cuda-11070",
22923 feature = "cuda-11080",
22924 feature = "cuda-12000",
22925 feature = "cuda-12010",
22926 feature = "cuda-12020",
22927 feature = "cuda-12030",
22928 feature = "cuda-12040",
22929 feature = "cuda-12050",
22930 feature = "cuda-12060",
22931 feature = "cuda-12080",
22932 feature = "cuda-12090"
22933 ))]
22934 let cusolverDnGeqrf = __library
22935 .get(b"cusolverDnGeqrf\0")
22936 .map(|sym| *sym)
22937 .expect("Expected symbol in library");
22938 #[cfg(any(
22939 feature = "cuda-11040",
22940 feature = "cuda-11050",
22941 feature = "cuda-11060",
22942 feature = "cuda-11070",
22943 feature = "cuda-11080",
22944 feature = "cuda-12000",
22945 feature = "cuda-12010",
22946 feature = "cuda-12020",
22947 feature = "cuda-12030",
22948 feature = "cuda-12040",
22949 feature = "cuda-12050",
22950 feature = "cuda-12060",
22951 feature = "cuda-12080",
22952 feature = "cuda-12090"
22953 ))]
22954 let cusolverDnGeqrf_bufferSize = __library
22955 .get(b"cusolverDnGeqrf_bufferSize\0")
22956 .map(|sym| *sym)
22957 .expect("Expected symbol in library");
22958 #[cfg(any(
22959 feature = "cuda-11040",
22960 feature = "cuda-11050",
22961 feature = "cuda-11060",
22962 feature = "cuda-11070",
22963 feature = "cuda-11080",
22964 feature = "cuda-12000",
22965 feature = "cuda-12010",
22966 feature = "cuda-12020",
22967 feature = "cuda-12030",
22968 feature = "cuda-12040",
22969 feature = "cuda-12050",
22970 feature = "cuda-12060",
22971 feature = "cuda-12080",
22972 feature = "cuda-12090"
22973 ))]
22974 let cusolverDnGesvd = __library
22975 .get(b"cusolverDnGesvd\0")
22976 .map(|sym| *sym)
22977 .expect("Expected symbol in library");
22978 #[cfg(any(
22979 feature = "cuda-11040",
22980 feature = "cuda-11050",
22981 feature = "cuda-11060",
22982 feature = "cuda-11070",
22983 feature = "cuda-11080",
22984 feature = "cuda-12000",
22985 feature = "cuda-12010",
22986 feature = "cuda-12020",
22987 feature = "cuda-12030",
22988 feature = "cuda-12040",
22989 feature = "cuda-12050",
22990 feature = "cuda-12060",
22991 feature = "cuda-12080",
22992 feature = "cuda-12090"
22993 ))]
22994 let cusolverDnGesvd_bufferSize = __library
22995 .get(b"cusolverDnGesvd_bufferSize\0")
22996 .map(|sym| *sym)
22997 .expect("Expected symbol in library");
22998 #[cfg(any(
22999 feature = "cuda-12020",
23000 feature = "cuda-12030",
23001 feature = "cuda-12040",
23002 feature = "cuda-12050",
23003 feature = "cuda-12060",
23004 feature = "cuda-12080",
23005 feature = "cuda-12090",
23006 feature = "cuda-13000",
23007 feature = "cuda-13010"
23008 ))]
23009 let cusolverDnGetDeterministicMode = __library
23010 .get(b"cusolverDnGetDeterministicMode\0")
23011 .map(|sym| *sym)
23012 .expect("Expected symbol in library");
23013 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
23014 let cusolverDnGetEmulationStrategy = __library
23015 .get(b"cusolverDnGetEmulationStrategy\0")
23016 .map(|sym| *sym)
23017 .expect("Expected symbol in library");
23018 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
23019 let cusolverDnGetMathMode = __library
23020 .get(b"cusolverDnGetMathMode\0")
23021 .map(|sym| *sym)
23022 .expect("Expected symbol in library");
23023 let cusolverDnGetStream = __library
23024 .get(b"cusolverDnGetStream\0")
23025 .map(|sym| *sym)
23026 .expect("Expected symbol in library");
23027 #[cfg(any(
23028 feature = "cuda-11040",
23029 feature = "cuda-11050",
23030 feature = "cuda-11060",
23031 feature = "cuda-11070",
23032 feature = "cuda-11080",
23033 feature = "cuda-12000",
23034 feature = "cuda-12010",
23035 feature = "cuda-12020",
23036 feature = "cuda-12030",
23037 feature = "cuda-12040",
23038 feature = "cuda-12050",
23039 feature = "cuda-12060",
23040 feature = "cuda-12080",
23041 feature = "cuda-12090"
23042 ))]
23043 let cusolverDnGetrf = __library
23044 .get(b"cusolverDnGetrf\0")
23045 .map(|sym| *sym)
23046 .expect("Expected symbol in library");
23047 #[cfg(any(
23048 feature = "cuda-11040",
23049 feature = "cuda-11050",
23050 feature = "cuda-11060",
23051 feature = "cuda-11070",
23052 feature = "cuda-11080",
23053 feature = "cuda-12000",
23054 feature = "cuda-12010",
23055 feature = "cuda-12020",
23056 feature = "cuda-12030",
23057 feature = "cuda-12040",
23058 feature = "cuda-12050",
23059 feature = "cuda-12060",
23060 feature = "cuda-12080",
23061 feature = "cuda-12090"
23062 ))]
23063 let cusolverDnGetrf_bufferSize = __library
23064 .get(b"cusolverDnGetrf_bufferSize\0")
23065 .map(|sym| *sym)
23066 .expect("Expected symbol in library");
23067 #[cfg(any(
23068 feature = "cuda-11040",
23069 feature = "cuda-11050",
23070 feature = "cuda-11060",
23071 feature = "cuda-11070",
23072 feature = "cuda-11080",
23073 feature = "cuda-12000",
23074 feature = "cuda-12010",
23075 feature = "cuda-12020",
23076 feature = "cuda-12030",
23077 feature = "cuda-12040",
23078 feature = "cuda-12050",
23079 feature = "cuda-12060",
23080 feature = "cuda-12080",
23081 feature = "cuda-12090"
23082 ))]
23083 let cusolverDnGetrs = __library
23084 .get(b"cusolverDnGetrs\0")
23085 .map(|sym| *sym)
23086 .expect("Expected symbol in library");
23087 let cusolverDnIRSInfosCreate = __library
23088 .get(b"cusolverDnIRSInfosCreate\0")
23089 .map(|sym| *sym)
23090 .expect("Expected symbol in library");
23091 let cusolverDnIRSInfosDestroy = __library
23092 .get(b"cusolverDnIRSInfosDestroy\0")
23093 .map(|sym| *sym)
23094 .expect("Expected symbol in library");
23095 let cusolverDnIRSInfosGetMaxIters = __library
23096 .get(b"cusolverDnIRSInfosGetMaxIters\0")
23097 .map(|sym| *sym)
23098 .expect("Expected symbol in library");
23099 let cusolverDnIRSInfosGetNiters = __library
23100 .get(b"cusolverDnIRSInfosGetNiters\0")
23101 .map(|sym| *sym)
23102 .expect("Expected symbol in library");
23103 let cusolverDnIRSInfosGetOuterNiters = __library
23104 .get(b"cusolverDnIRSInfosGetOuterNiters\0")
23105 .map(|sym| *sym)
23106 .expect("Expected symbol in library");
23107 let cusolverDnIRSInfosGetResidualHistory = __library
23108 .get(b"cusolverDnIRSInfosGetResidualHistory\0")
23109 .map(|sym| *sym)
23110 .expect("Expected symbol in library");
23111 let cusolverDnIRSInfosRequestResidual = __library
23112 .get(b"cusolverDnIRSInfosRequestResidual\0")
23113 .map(|sym| *sym)
23114 .expect("Expected symbol in library");
23115 let cusolverDnIRSParamsCreate = __library
23116 .get(b"cusolverDnIRSParamsCreate\0")
23117 .map(|sym| *sym)
23118 .expect("Expected symbol in library");
23119 let cusolverDnIRSParamsDestroy = __library
23120 .get(b"cusolverDnIRSParamsDestroy\0")
23121 .map(|sym| *sym)
23122 .expect("Expected symbol in library");
23123 let cusolverDnIRSParamsDisableFallback = __library
23124 .get(b"cusolverDnIRSParamsDisableFallback\0")
23125 .map(|sym| *sym)
23126 .expect("Expected symbol in library");
23127 let cusolverDnIRSParamsEnableFallback = __library
23128 .get(b"cusolverDnIRSParamsEnableFallback\0")
23129 .map(|sym| *sym)
23130 .expect("Expected symbol in library");
23131 let cusolverDnIRSParamsGetMaxIters = __library
23132 .get(b"cusolverDnIRSParamsGetMaxIters\0")
23133 .map(|sym| *sym)
23134 .expect("Expected symbol in library");
23135 let cusolverDnIRSParamsSetMaxIters = __library
23136 .get(b"cusolverDnIRSParamsSetMaxIters\0")
23137 .map(|sym| *sym)
23138 .expect("Expected symbol in library");
23139 let cusolverDnIRSParamsSetMaxItersInner = __library
23140 .get(b"cusolverDnIRSParamsSetMaxItersInner\0")
23141 .map(|sym| *sym)
23142 .expect("Expected symbol in library");
23143 let cusolverDnIRSParamsSetRefinementSolver = __library
23144 .get(b"cusolverDnIRSParamsSetRefinementSolver\0")
23145 .map(|sym| *sym)
23146 .expect("Expected symbol in library");
23147 let cusolverDnIRSParamsSetSolverLowestPrecision = __library
23148 .get(b"cusolverDnIRSParamsSetSolverLowestPrecision\0")
23149 .map(|sym| *sym)
23150 .expect("Expected symbol in library");
23151 let cusolverDnIRSParamsSetSolverMainPrecision = __library
23152 .get(b"cusolverDnIRSParamsSetSolverMainPrecision\0")
23153 .map(|sym| *sym)
23154 .expect("Expected symbol in library");
23155 let cusolverDnIRSParamsSetSolverPrecisions = __library
23156 .get(b"cusolverDnIRSParamsSetSolverPrecisions\0")
23157 .map(|sym| *sym)
23158 .expect("Expected symbol in library");
23159 let cusolverDnIRSParamsSetTol = __library
23160 .get(b"cusolverDnIRSParamsSetTol\0")
23161 .map(|sym| *sym)
23162 .expect("Expected symbol in library");
23163 let cusolverDnIRSParamsSetTolInner = __library
23164 .get(b"cusolverDnIRSParamsSetTolInner\0")
23165 .map(|sym| *sym)
23166 .expect("Expected symbol in library");
23167 let cusolverDnIRSXgels = __library
23168 .get(b"cusolverDnIRSXgels\0")
23169 .map(|sym| *sym)
23170 .expect("Expected symbol in library");
23171 let cusolverDnIRSXgels_bufferSize = __library
23172 .get(b"cusolverDnIRSXgels_bufferSize\0")
23173 .map(|sym| *sym)
23174 .expect("Expected symbol in library");
23175 let cusolverDnIRSXgesv = __library
23176 .get(b"cusolverDnIRSXgesv\0")
23177 .map(|sym| *sym)
23178 .expect("Expected symbol in library");
23179 let cusolverDnIRSXgesv_bufferSize = __library
23180 .get(b"cusolverDnIRSXgesv_bufferSize\0")
23181 .map(|sym| *sym)
23182 .expect("Expected symbol in library");
23183 #[cfg(any(
23184 feature = "cuda-11040",
23185 feature = "cuda-11050",
23186 feature = "cuda-11060",
23187 feature = "cuda-11070",
23188 feature = "cuda-11080",
23189 feature = "cuda-12000",
23190 feature = "cuda-12010",
23191 feature = "cuda-12020",
23192 feature = "cuda-12030",
23193 feature = "cuda-12040",
23194 feature = "cuda-12050",
23195 feature = "cuda-12060",
23196 feature = "cuda-12080",
23197 feature = "cuda-12090"
23198 ))]
23199 let cusolverDnPotrf = __library
23200 .get(b"cusolverDnPotrf\0")
23201 .map(|sym| *sym)
23202 .expect("Expected symbol in library");
23203 #[cfg(any(
23204 feature = "cuda-11040",
23205 feature = "cuda-11050",
23206 feature = "cuda-11060",
23207 feature = "cuda-11070",
23208 feature = "cuda-11080",
23209 feature = "cuda-12000",
23210 feature = "cuda-12010",
23211 feature = "cuda-12020",
23212 feature = "cuda-12030",
23213 feature = "cuda-12040",
23214 feature = "cuda-12050",
23215 feature = "cuda-12060",
23216 feature = "cuda-12080",
23217 feature = "cuda-12090"
23218 ))]
23219 let cusolverDnPotrf_bufferSize = __library
23220 .get(b"cusolverDnPotrf_bufferSize\0")
23221 .map(|sym| *sym)
23222 .expect("Expected symbol in library");
23223 #[cfg(any(
23224 feature = "cuda-11040",
23225 feature = "cuda-11050",
23226 feature = "cuda-11060",
23227 feature = "cuda-11070",
23228 feature = "cuda-11080",
23229 feature = "cuda-12000",
23230 feature = "cuda-12010",
23231 feature = "cuda-12020",
23232 feature = "cuda-12030",
23233 feature = "cuda-12040",
23234 feature = "cuda-12050",
23235 feature = "cuda-12060",
23236 feature = "cuda-12080",
23237 feature = "cuda-12090"
23238 ))]
23239 let cusolverDnPotrs = __library
23240 .get(b"cusolverDnPotrs\0")
23241 .map(|sym| *sym)
23242 .expect("Expected symbol in library");
23243 let cusolverDnSBgels = __library
23244 .get(b"cusolverDnSBgels\0")
23245 .map(|sym| *sym)
23246 .expect("Expected symbol in library");
23247 let cusolverDnSBgels_bufferSize = __library
23248 .get(b"cusolverDnSBgels_bufferSize\0")
23249 .map(|sym| *sym)
23250 .expect("Expected symbol in library");
23251 let cusolverDnSBgesv = __library
23252 .get(b"cusolverDnSBgesv\0")
23253 .map(|sym| *sym)
23254 .expect("Expected symbol in library");
23255 let cusolverDnSBgesv_bufferSize = __library
23256 .get(b"cusolverDnSBgesv_bufferSize\0")
23257 .map(|sym| *sym)
23258 .expect("Expected symbol in library");
23259 let cusolverDnSHgels = __library
23260 .get(b"cusolverDnSHgels\0")
23261 .map(|sym| *sym)
23262 .expect("Expected symbol in library");
23263 let cusolverDnSHgels_bufferSize = __library
23264 .get(b"cusolverDnSHgels_bufferSize\0")
23265 .map(|sym| *sym)
23266 .expect("Expected symbol in library");
23267 let cusolverDnSHgesv = __library
23268 .get(b"cusolverDnSHgesv\0")
23269 .map(|sym| *sym)
23270 .expect("Expected symbol in library");
23271 let cusolverDnSHgesv_bufferSize = __library
23272 .get(b"cusolverDnSHgesv_bufferSize\0")
23273 .map(|sym| *sym)
23274 .expect("Expected symbol in library");
23275 let cusolverDnSSgels = __library
23276 .get(b"cusolverDnSSgels\0")
23277 .map(|sym| *sym)
23278 .expect("Expected symbol in library");
23279 let cusolverDnSSgels_bufferSize = __library
23280 .get(b"cusolverDnSSgels_bufferSize\0")
23281 .map(|sym| *sym)
23282 .expect("Expected symbol in library");
23283 let cusolverDnSSgesv = __library
23284 .get(b"cusolverDnSSgesv\0")
23285 .map(|sym| *sym)
23286 .expect("Expected symbol in library");
23287 let cusolverDnSSgesv_bufferSize = __library
23288 .get(b"cusolverDnSSgesv_bufferSize\0")
23289 .map(|sym| *sym)
23290 .expect("Expected symbol in library");
23291 let cusolverDnSXgels = __library
23292 .get(b"cusolverDnSXgels\0")
23293 .map(|sym| *sym)
23294 .expect("Expected symbol in library");
23295 let cusolverDnSXgels_bufferSize = __library
23296 .get(b"cusolverDnSXgels_bufferSize\0")
23297 .map(|sym| *sym)
23298 .expect("Expected symbol in library");
23299 let cusolverDnSXgesv = __library
23300 .get(b"cusolverDnSXgesv\0")
23301 .map(|sym| *sym)
23302 .expect("Expected symbol in library");
23303 let cusolverDnSXgesv_bufferSize = __library
23304 .get(b"cusolverDnSXgesv_bufferSize\0")
23305 .map(|sym| *sym)
23306 .expect("Expected symbol in library");
23307 let cusolverDnSetAdvOptions = __library
23308 .get(b"cusolverDnSetAdvOptions\0")
23309 .map(|sym| *sym)
23310 .expect("Expected symbol in library");
23311 #[cfg(any(
23312 feature = "cuda-12020",
23313 feature = "cuda-12030",
23314 feature = "cuda-12040",
23315 feature = "cuda-12050",
23316 feature = "cuda-12060",
23317 feature = "cuda-12080",
23318 feature = "cuda-12090",
23319 feature = "cuda-13000",
23320 feature = "cuda-13010"
23321 ))]
23322 let cusolverDnSetDeterministicMode = __library
23323 .get(b"cusolverDnSetDeterministicMode\0")
23324 .map(|sym| *sym)
23325 .expect("Expected symbol in library");
23326 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
23327 let cusolverDnSetEmulationStrategy = __library
23328 .get(b"cusolverDnSetEmulationStrategy\0")
23329 .map(|sym| *sym)
23330 .expect("Expected symbol in library");
23331 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
23332 let cusolverDnSetMathMode = __library
23333 .get(b"cusolverDnSetMathMode\0")
23334 .map(|sym| *sym)
23335 .expect("Expected symbol in library");
23336 let cusolverDnSetStream = __library
23337 .get(b"cusolverDnSetStream\0")
23338 .map(|sym| *sym)
23339 .expect("Expected symbol in library");
23340 let cusolverDnSgebrd = __library
23341 .get(b"cusolverDnSgebrd\0")
23342 .map(|sym| *sym)
23343 .expect("Expected symbol in library");
23344 let cusolverDnSgebrd_bufferSize = __library
23345 .get(b"cusolverDnSgebrd_bufferSize\0")
23346 .map(|sym| *sym)
23347 .expect("Expected symbol in library");
23348 let cusolverDnSgeqrf = __library
23349 .get(b"cusolverDnSgeqrf\0")
23350 .map(|sym| *sym)
23351 .expect("Expected symbol in library");
23352 let cusolverDnSgeqrf_bufferSize = __library
23353 .get(b"cusolverDnSgeqrf_bufferSize\0")
23354 .map(|sym| *sym)
23355 .expect("Expected symbol in library");
23356 let cusolverDnSgesvd = __library
23357 .get(b"cusolverDnSgesvd\0")
23358 .map(|sym| *sym)
23359 .expect("Expected symbol in library");
23360 let cusolverDnSgesvd_bufferSize = __library
23361 .get(b"cusolverDnSgesvd_bufferSize\0")
23362 .map(|sym| *sym)
23363 .expect("Expected symbol in library");
23364 let cusolverDnSgesvdaStridedBatched = __library
23365 .get(b"cusolverDnSgesvdaStridedBatched\0")
23366 .map(|sym| *sym)
23367 .expect("Expected symbol in library");
23368 let cusolverDnSgesvdaStridedBatched_bufferSize = __library
23369 .get(b"cusolverDnSgesvdaStridedBatched_bufferSize\0")
23370 .map(|sym| *sym)
23371 .expect("Expected symbol in library");
23372 let cusolverDnSgesvdj = __library
23373 .get(b"cusolverDnSgesvdj\0")
23374 .map(|sym| *sym)
23375 .expect("Expected symbol in library");
23376 let cusolverDnSgesvdjBatched = __library
23377 .get(b"cusolverDnSgesvdjBatched\0")
23378 .map(|sym| *sym)
23379 .expect("Expected symbol in library");
23380 let cusolverDnSgesvdjBatched_bufferSize = __library
23381 .get(b"cusolverDnSgesvdjBatched_bufferSize\0")
23382 .map(|sym| *sym)
23383 .expect("Expected symbol in library");
23384 let cusolverDnSgesvdj_bufferSize = __library
23385 .get(b"cusolverDnSgesvdj_bufferSize\0")
23386 .map(|sym| *sym)
23387 .expect("Expected symbol in library");
23388 let cusolverDnSgetrf = __library
23389 .get(b"cusolverDnSgetrf\0")
23390 .map(|sym| *sym)
23391 .expect("Expected symbol in library");
23392 let cusolverDnSgetrf_bufferSize = __library
23393 .get(b"cusolverDnSgetrf_bufferSize\0")
23394 .map(|sym| *sym)
23395 .expect("Expected symbol in library");
23396 let cusolverDnSgetrs = __library
23397 .get(b"cusolverDnSgetrs\0")
23398 .map(|sym| *sym)
23399 .expect("Expected symbol in library");
23400 let cusolverDnSlaswp = __library
23401 .get(b"cusolverDnSlaswp\0")
23402 .map(|sym| *sym)
23403 .expect("Expected symbol in library");
23404 let cusolverDnSlauum = __library
23405 .get(b"cusolverDnSlauum\0")
23406 .map(|sym| *sym)
23407 .expect("Expected symbol in library");
23408 let cusolverDnSlauum_bufferSize = __library
23409 .get(b"cusolverDnSlauum_bufferSize\0")
23410 .map(|sym| *sym)
23411 .expect("Expected symbol in library");
23412 let cusolverDnSorgbr = __library
23413 .get(b"cusolverDnSorgbr\0")
23414 .map(|sym| *sym)
23415 .expect("Expected symbol in library");
23416 let cusolverDnSorgbr_bufferSize = __library
23417 .get(b"cusolverDnSorgbr_bufferSize\0")
23418 .map(|sym| *sym)
23419 .expect("Expected symbol in library");
23420 let cusolverDnSorgqr = __library
23421 .get(b"cusolverDnSorgqr\0")
23422 .map(|sym| *sym)
23423 .expect("Expected symbol in library");
23424 let cusolverDnSorgqr_bufferSize = __library
23425 .get(b"cusolverDnSorgqr_bufferSize\0")
23426 .map(|sym| *sym)
23427 .expect("Expected symbol in library");
23428 let cusolverDnSorgtr = __library
23429 .get(b"cusolverDnSorgtr\0")
23430 .map(|sym| *sym)
23431 .expect("Expected symbol in library");
23432 let cusolverDnSorgtr_bufferSize = __library
23433 .get(b"cusolverDnSorgtr_bufferSize\0")
23434 .map(|sym| *sym)
23435 .expect("Expected symbol in library");
23436 let cusolverDnSormqr = __library
23437 .get(b"cusolverDnSormqr\0")
23438 .map(|sym| *sym)
23439 .expect("Expected symbol in library");
23440 let cusolverDnSormqr_bufferSize = __library
23441 .get(b"cusolverDnSormqr_bufferSize\0")
23442 .map(|sym| *sym)
23443 .expect("Expected symbol in library");
23444 let cusolverDnSormtr = __library
23445 .get(b"cusolverDnSormtr\0")
23446 .map(|sym| *sym)
23447 .expect("Expected symbol in library");
23448 let cusolverDnSormtr_bufferSize = __library
23449 .get(b"cusolverDnSormtr_bufferSize\0")
23450 .map(|sym| *sym)
23451 .expect("Expected symbol in library");
23452 let cusolverDnSpotrf = __library
23453 .get(b"cusolverDnSpotrf\0")
23454 .map(|sym| *sym)
23455 .expect("Expected symbol in library");
23456 let cusolverDnSpotrfBatched = __library
23457 .get(b"cusolverDnSpotrfBatched\0")
23458 .map(|sym| *sym)
23459 .expect("Expected symbol in library");
23460 let cusolverDnSpotrf_bufferSize = __library
23461 .get(b"cusolverDnSpotrf_bufferSize\0")
23462 .map(|sym| *sym)
23463 .expect("Expected symbol in library");
23464 let cusolverDnSpotri = __library
23465 .get(b"cusolverDnSpotri\0")
23466 .map(|sym| *sym)
23467 .expect("Expected symbol in library");
23468 let cusolverDnSpotri_bufferSize = __library
23469 .get(b"cusolverDnSpotri_bufferSize\0")
23470 .map(|sym| *sym)
23471 .expect("Expected symbol in library");
23472 let cusolverDnSpotrs = __library
23473 .get(b"cusolverDnSpotrs\0")
23474 .map(|sym| *sym)
23475 .expect("Expected symbol in library");
23476 let cusolverDnSpotrsBatched = __library
23477 .get(b"cusolverDnSpotrsBatched\0")
23478 .map(|sym| *sym)
23479 .expect("Expected symbol in library");
23480 let cusolverDnSsyevd = __library
23481 .get(b"cusolverDnSsyevd\0")
23482 .map(|sym| *sym)
23483 .expect("Expected symbol in library");
23484 let cusolverDnSsyevd_bufferSize = __library
23485 .get(b"cusolverDnSsyevd_bufferSize\0")
23486 .map(|sym| *sym)
23487 .expect("Expected symbol in library");
23488 let cusolverDnSsyevdx = __library
23489 .get(b"cusolverDnSsyevdx\0")
23490 .map(|sym| *sym)
23491 .expect("Expected symbol in library");
23492 let cusolverDnSsyevdx_bufferSize = __library
23493 .get(b"cusolverDnSsyevdx_bufferSize\0")
23494 .map(|sym| *sym)
23495 .expect("Expected symbol in library");
23496 let cusolverDnSsyevj = __library
23497 .get(b"cusolverDnSsyevj\0")
23498 .map(|sym| *sym)
23499 .expect("Expected symbol in library");
23500 let cusolverDnSsyevjBatched = __library
23501 .get(b"cusolverDnSsyevjBatched\0")
23502 .map(|sym| *sym)
23503 .expect("Expected symbol in library");
23504 let cusolverDnSsyevjBatched_bufferSize = __library
23505 .get(b"cusolverDnSsyevjBatched_bufferSize\0")
23506 .map(|sym| *sym)
23507 .expect("Expected symbol in library");
23508 let cusolverDnSsyevj_bufferSize = __library
23509 .get(b"cusolverDnSsyevj_bufferSize\0")
23510 .map(|sym| *sym)
23511 .expect("Expected symbol in library");
23512 let cusolverDnSsygvd = __library
23513 .get(b"cusolverDnSsygvd\0")
23514 .map(|sym| *sym)
23515 .expect("Expected symbol in library");
23516 let cusolverDnSsygvd_bufferSize = __library
23517 .get(b"cusolverDnSsygvd_bufferSize\0")
23518 .map(|sym| *sym)
23519 .expect("Expected symbol in library");
23520 let cusolverDnSsygvdx = __library
23521 .get(b"cusolverDnSsygvdx\0")
23522 .map(|sym| *sym)
23523 .expect("Expected symbol in library");
23524 let cusolverDnSsygvdx_bufferSize = __library
23525 .get(b"cusolverDnSsygvdx_bufferSize\0")
23526 .map(|sym| *sym)
23527 .expect("Expected symbol in library");
23528 let cusolverDnSsygvj = __library
23529 .get(b"cusolverDnSsygvj\0")
23530 .map(|sym| *sym)
23531 .expect("Expected symbol in library");
23532 let cusolverDnSsygvj_bufferSize = __library
23533 .get(b"cusolverDnSsygvj_bufferSize\0")
23534 .map(|sym| *sym)
23535 .expect("Expected symbol in library");
23536 let cusolverDnSsytrd = __library
23537 .get(b"cusolverDnSsytrd\0")
23538 .map(|sym| *sym)
23539 .expect("Expected symbol in library");
23540 let cusolverDnSsytrd_bufferSize = __library
23541 .get(b"cusolverDnSsytrd_bufferSize\0")
23542 .map(|sym| *sym)
23543 .expect("Expected symbol in library");
23544 let cusolverDnSsytrf = __library
23545 .get(b"cusolverDnSsytrf\0")
23546 .map(|sym| *sym)
23547 .expect("Expected symbol in library");
23548 let cusolverDnSsytrf_bufferSize = __library
23549 .get(b"cusolverDnSsytrf_bufferSize\0")
23550 .map(|sym| *sym)
23551 .expect("Expected symbol in library");
23552 let cusolverDnSsytri = __library
23553 .get(b"cusolverDnSsytri\0")
23554 .map(|sym| *sym)
23555 .expect("Expected symbol in library");
23556 let cusolverDnSsytri_bufferSize = __library
23557 .get(b"cusolverDnSsytri_bufferSize\0")
23558 .map(|sym| *sym)
23559 .expect("Expected symbol in library");
23560 #[cfg(any(
23561 feature = "cuda-11040",
23562 feature = "cuda-11050",
23563 feature = "cuda-11060",
23564 feature = "cuda-11070",
23565 feature = "cuda-11080",
23566 feature = "cuda-12000",
23567 feature = "cuda-12010",
23568 feature = "cuda-12020",
23569 feature = "cuda-12030",
23570 feature = "cuda-12040",
23571 feature = "cuda-12050",
23572 feature = "cuda-12060",
23573 feature = "cuda-12080",
23574 feature = "cuda-12090"
23575 ))]
23576 let cusolverDnSyevd = __library
23577 .get(b"cusolverDnSyevd\0")
23578 .map(|sym| *sym)
23579 .expect("Expected symbol in library");
23580 #[cfg(any(
23581 feature = "cuda-11040",
23582 feature = "cuda-11050",
23583 feature = "cuda-11060",
23584 feature = "cuda-11070",
23585 feature = "cuda-11080",
23586 feature = "cuda-12000",
23587 feature = "cuda-12010",
23588 feature = "cuda-12020",
23589 feature = "cuda-12030",
23590 feature = "cuda-12040",
23591 feature = "cuda-12050",
23592 feature = "cuda-12060",
23593 feature = "cuda-12080",
23594 feature = "cuda-12090"
23595 ))]
23596 let cusolverDnSyevd_bufferSize = __library
23597 .get(b"cusolverDnSyevd_bufferSize\0")
23598 .map(|sym| *sym)
23599 .expect("Expected symbol in library");
23600 #[cfg(any(
23601 feature = "cuda-11040",
23602 feature = "cuda-11050",
23603 feature = "cuda-11060",
23604 feature = "cuda-11070",
23605 feature = "cuda-11080",
23606 feature = "cuda-12000",
23607 feature = "cuda-12010",
23608 feature = "cuda-12020",
23609 feature = "cuda-12030",
23610 feature = "cuda-12040",
23611 feature = "cuda-12050",
23612 feature = "cuda-12060",
23613 feature = "cuda-12080",
23614 feature = "cuda-12090"
23615 ))]
23616 let cusolverDnSyevdx = __library
23617 .get(b"cusolverDnSyevdx\0")
23618 .map(|sym| *sym)
23619 .expect("Expected symbol in library");
23620 #[cfg(any(
23621 feature = "cuda-11040",
23622 feature = "cuda-11050",
23623 feature = "cuda-11060",
23624 feature = "cuda-11070",
23625 feature = "cuda-11080",
23626 feature = "cuda-12000",
23627 feature = "cuda-12010",
23628 feature = "cuda-12020",
23629 feature = "cuda-12030",
23630 feature = "cuda-12040",
23631 feature = "cuda-12050",
23632 feature = "cuda-12060",
23633 feature = "cuda-12080",
23634 feature = "cuda-12090"
23635 ))]
23636 let cusolverDnSyevdx_bufferSize = __library
23637 .get(b"cusolverDnSyevdx_bufferSize\0")
23638 .map(|sym| *sym)
23639 .expect("Expected symbol in library");
23640 #[cfg(any(
23641 feature = "cuda-12060",
23642 feature = "cuda-12080",
23643 feature = "cuda-12090",
23644 feature = "cuda-13000",
23645 feature = "cuda-13010"
23646 ))]
23647 let cusolverDnXgeev = __library
23648 .get(b"cusolverDnXgeev\0")
23649 .map(|sym| *sym)
23650 .expect("Expected symbol in library");
23651 #[cfg(any(
23652 feature = "cuda-12060",
23653 feature = "cuda-12080",
23654 feature = "cuda-12090",
23655 feature = "cuda-13000",
23656 feature = "cuda-13010"
23657 ))]
23658 let cusolverDnXgeev_bufferSize = __library
23659 .get(b"cusolverDnXgeev_bufferSize\0")
23660 .map(|sym| *sym)
23661 .expect("Expected symbol in library");
23662 let cusolverDnXgeqrf = __library
23663 .get(b"cusolverDnXgeqrf\0")
23664 .map(|sym| *sym)
23665 .expect("Expected symbol in library");
23666 let cusolverDnXgeqrf_bufferSize = __library
23667 .get(b"cusolverDnXgeqrf_bufferSize\0")
23668 .map(|sym| *sym)
23669 .expect("Expected symbol in library");
23670 let cusolverDnXgesvd = __library
23671 .get(b"cusolverDnXgesvd\0")
23672 .map(|sym| *sym)
23673 .expect("Expected symbol in library");
23674 let cusolverDnXgesvd_bufferSize = __library
23675 .get(b"cusolverDnXgesvd_bufferSize\0")
23676 .map(|sym| *sym)
23677 .expect("Expected symbol in library");
23678 let cusolverDnXgesvdjGetResidual = __library
23679 .get(b"cusolverDnXgesvdjGetResidual\0")
23680 .map(|sym| *sym)
23681 .expect("Expected symbol in library");
23682 let cusolverDnXgesvdjGetSweeps = __library
23683 .get(b"cusolverDnXgesvdjGetSweeps\0")
23684 .map(|sym| *sym)
23685 .expect("Expected symbol in library");
23686 let cusolverDnXgesvdjSetMaxSweeps = __library
23687 .get(b"cusolverDnXgesvdjSetMaxSweeps\0")
23688 .map(|sym| *sym)
23689 .expect("Expected symbol in library");
23690 let cusolverDnXgesvdjSetSortEig = __library
23691 .get(b"cusolverDnXgesvdjSetSortEig\0")
23692 .map(|sym| *sym)
23693 .expect("Expected symbol in library");
23694 let cusolverDnXgesvdjSetTolerance = __library
23695 .get(b"cusolverDnXgesvdjSetTolerance\0")
23696 .map(|sym| *sym)
23697 .expect("Expected symbol in library");
23698 let cusolverDnXgesvdp = __library
23699 .get(b"cusolverDnXgesvdp\0")
23700 .map(|sym| *sym)
23701 .expect("Expected symbol in library");
23702 let cusolverDnXgesvdp_bufferSize = __library
23703 .get(b"cusolverDnXgesvdp_bufferSize\0")
23704 .map(|sym| *sym)
23705 .expect("Expected symbol in library");
23706 let cusolverDnXgesvdr = __library
23707 .get(b"cusolverDnXgesvdr\0")
23708 .map(|sym| *sym)
23709 .expect("Expected symbol in library");
23710 let cusolverDnXgesvdr_bufferSize = __library
23711 .get(b"cusolverDnXgesvdr_bufferSize\0")
23712 .map(|sym| *sym)
23713 .expect("Expected symbol in library");
23714 let cusolverDnXgetrf = __library
23715 .get(b"cusolverDnXgetrf\0")
23716 .map(|sym| *sym)
23717 .expect("Expected symbol in library");
23718 let cusolverDnXgetrf_bufferSize = __library
23719 .get(b"cusolverDnXgetrf_bufferSize\0")
23720 .map(|sym| *sym)
23721 .expect("Expected symbol in library");
23722 let cusolverDnXgetrs = __library
23723 .get(b"cusolverDnXgetrs\0")
23724 .map(|sym| *sym)
23725 .expect("Expected symbol in library");
23726 #[cfg(any(feature = "cuda-12040"))]
23727 let cusolverDnXlarft = __library
23728 .get(b"cusolverDnXlarft\0")
23729 .map(|sym| *sym)
23730 .expect("Expected symbol in library");
23731 #[cfg(any(
23732 feature = "cuda-12050",
23733 feature = "cuda-12060",
23734 feature = "cuda-12080",
23735 feature = "cuda-12090",
23736 feature = "cuda-13000",
23737 feature = "cuda-13010"
23738 ))]
23739 let cusolverDnXlarft = __library
23740 .get(b"cusolverDnXlarft\0")
23741 .map(|sym| *sym)
23742 .expect("Expected symbol in library");
23743 #[cfg(any(feature = "cuda-12040"))]
23744 let cusolverDnXlarft_bufferSize = __library
23745 .get(b"cusolverDnXlarft_bufferSize\0")
23746 .map(|sym| *sym)
23747 .expect("Expected symbol in library");
23748 #[cfg(any(
23749 feature = "cuda-12050",
23750 feature = "cuda-12060",
23751 feature = "cuda-12080",
23752 feature = "cuda-12090",
23753 feature = "cuda-13000",
23754 feature = "cuda-13010"
23755 ))]
23756 let cusolverDnXlarft_bufferSize = __library
23757 .get(b"cusolverDnXlarft_bufferSize\0")
23758 .map(|sym| *sym)
23759 .expect("Expected symbol in library");
23760 let cusolverDnXpotrf = __library
23761 .get(b"cusolverDnXpotrf\0")
23762 .map(|sym| *sym)
23763 .expect("Expected symbol in library");
23764 let cusolverDnXpotrf_bufferSize = __library
23765 .get(b"cusolverDnXpotrf_bufferSize\0")
23766 .map(|sym| *sym)
23767 .expect("Expected symbol in library");
23768 let cusolverDnXpotrs = __library
23769 .get(b"cusolverDnXpotrs\0")
23770 .map(|sym| *sym)
23771 .expect("Expected symbol in library");
23772 #[cfg(any(
23773 feature = "cuda-12060",
23774 feature = "cuda-12080",
23775 feature = "cuda-12090",
23776 feature = "cuda-13000",
23777 feature = "cuda-13010"
23778 ))]
23779 let cusolverDnXsyevBatched = __library
23780 .get(b"cusolverDnXsyevBatched\0")
23781 .map(|sym| *sym)
23782 .expect("Expected symbol in library");
23783 #[cfg(any(
23784 feature = "cuda-12060",
23785 feature = "cuda-12080",
23786 feature = "cuda-12090",
23787 feature = "cuda-13000",
23788 feature = "cuda-13010"
23789 ))]
23790 let cusolverDnXsyevBatched_bufferSize = __library
23791 .get(b"cusolverDnXsyevBatched_bufferSize\0")
23792 .map(|sym| *sym)
23793 .expect("Expected symbol in library");
23794 let cusolverDnXsyevd = __library
23795 .get(b"cusolverDnXsyevd\0")
23796 .map(|sym| *sym)
23797 .expect("Expected symbol in library");
23798 let cusolverDnXsyevd_bufferSize = __library
23799 .get(b"cusolverDnXsyevd_bufferSize\0")
23800 .map(|sym| *sym)
23801 .expect("Expected symbol in library");
23802 let cusolverDnXsyevdx = __library
23803 .get(b"cusolverDnXsyevdx\0")
23804 .map(|sym| *sym)
23805 .expect("Expected symbol in library");
23806 let cusolverDnXsyevdx_bufferSize = __library
23807 .get(b"cusolverDnXsyevdx_bufferSize\0")
23808 .map(|sym| *sym)
23809 .expect("Expected symbol in library");
23810 let cusolverDnXsyevjGetResidual = __library
23811 .get(b"cusolverDnXsyevjGetResidual\0")
23812 .map(|sym| *sym)
23813 .expect("Expected symbol in library");
23814 let cusolverDnXsyevjGetSweeps = __library
23815 .get(b"cusolverDnXsyevjGetSweeps\0")
23816 .map(|sym| *sym)
23817 .expect("Expected symbol in library");
23818 let cusolverDnXsyevjSetMaxSweeps = __library
23819 .get(b"cusolverDnXsyevjSetMaxSweeps\0")
23820 .map(|sym| *sym)
23821 .expect("Expected symbol in library");
23822 let cusolverDnXsyevjSetSortEig = __library
23823 .get(b"cusolverDnXsyevjSetSortEig\0")
23824 .map(|sym| *sym)
23825 .expect("Expected symbol in library");
23826 let cusolverDnXsyevjSetTolerance = __library
23827 .get(b"cusolverDnXsyevjSetTolerance\0")
23828 .map(|sym| *sym)
23829 .expect("Expected symbol in library");
23830 let cusolverDnXsytrs = __library
23831 .get(b"cusolverDnXsytrs\0")
23832 .map(|sym| *sym)
23833 .expect("Expected symbol in library");
23834 let cusolverDnXsytrs_bufferSize = __library
23835 .get(b"cusolverDnXsytrs_bufferSize\0")
23836 .map(|sym| *sym)
23837 .expect("Expected symbol in library");
23838 let cusolverDnXtrtri = __library
23839 .get(b"cusolverDnXtrtri\0")
23840 .map(|sym| *sym)
23841 .expect("Expected symbol in library");
23842 let cusolverDnXtrtri_bufferSize = __library
23843 .get(b"cusolverDnXtrtri_bufferSize\0")
23844 .map(|sym| *sym)
23845 .expect("Expected symbol in library");
23846 let cusolverDnZCgels = __library
23847 .get(b"cusolverDnZCgels\0")
23848 .map(|sym| *sym)
23849 .expect("Expected symbol in library");
23850 let cusolverDnZCgels_bufferSize = __library
23851 .get(b"cusolverDnZCgels_bufferSize\0")
23852 .map(|sym| *sym)
23853 .expect("Expected symbol in library");
23854 let cusolverDnZCgesv = __library
23855 .get(b"cusolverDnZCgesv\0")
23856 .map(|sym| *sym)
23857 .expect("Expected symbol in library");
23858 let cusolverDnZCgesv_bufferSize = __library
23859 .get(b"cusolverDnZCgesv_bufferSize\0")
23860 .map(|sym| *sym)
23861 .expect("Expected symbol in library");
23862 let cusolverDnZEgels = __library
23863 .get(b"cusolverDnZEgels\0")
23864 .map(|sym| *sym)
23865 .expect("Expected symbol in library");
23866 let cusolverDnZEgels_bufferSize = __library
23867 .get(b"cusolverDnZEgels_bufferSize\0")
23868 .map(|sym| *sym)
23869 .expect("Expected symbol in library");
23870 let cusolverDnZEgesv = __library
23871 .get(b"cusolverDnZEgesv\0")
23872 .map(|sym| *sym)
23873 .expect("Expected symbol in library");
23874 let cusolverDnZEgesv_bufferSize = __library
23875 .get(b"cusolverDnZEgesv_bufferSize\0")
23876 .map(|sym| *sym)
23877 .expect("Expected symbol in library");
23878 let cusolverDnZKgels = __library
23879 .get(b"cusolverDnZKgels\0")
23880 .map(|sym| *sym)
23881 .expect("Expected symbol in library");
23882 let cusolverDnZKgels_bufferSize = __library
23883 .get(b"cusolverDnZKgels_bufferSize\0")
23884 .map(|sym| *sym)
23885 .expect("Expected symbol in library");
23886 let cusolverDnZKgesv = __library
23887 .get(b"cusolverDnZKgesv\0")
23888 .map(|sym| *sym)
23889 .expect("Expected symbol in library");
23890 let cusolverDnZKgesv_bufferSize = __library
23891 .get(b"cusolverDnZKgesv_bufferSize\0")
23892 .map(|sym| *sym)
23893 .expect("Expected symbol in library");
23894 let cusolverDnZYgels = __library
23895 .get(b"cusolverDnZYgels\0")
23896 .map(|sym| *sym)
23897 .expect("Expected symbol in library");
23898 let cusolverDnZYgels_bufferSize = __library
23899 .get(b"cusolverDnZYgels_bufferSize\0")
23900 .map(|sym| *sym)
23901 .expect("Expected symbol in library");
23902 let cusolverDnZYgesv = __library
23903 .get(b"cusolverDnZYgesv\0")
23904 .map(|sym| *sym)
23905 .expect("Expected symbol in library");
23906 let cusolverDnZYgesv_bufferSize = __library
23907 .get(b"cusolverDnZYgesv_bufferSize\0")
23908 .map(|sym| *sym)
23909 .expect("Expected symbol in library");
23910 let cusolverDnZZgels = __library
23911 .get(b"cusolverDnZZgels\0")
23912 .map(|sym| *sym)
23913 .expect("Expected symbol in library");
23914 let cusolverDnZZgels_bufferSize = __library
23915 .get(b"cusolverDnZZgels_bufferSize\0")
23916 .map(|sym| *sym)
23917 .expect("Expected symbol in library");
23918 let cusolverDnZZgesv = __library
23919 .get(b"cusolverDnZZgesv\0")
23920 .map(|sym| *sym)
23921 .expect("Expected symbol in library");
23922 let cusolverDnZZgesv_bufferSize = __library
23923 .get(b"cusolverDnZZgesv_bufferSize\0")
23924 .map(|sym| *sym)
23925 .expect("Expected symbol in library");
23926 let cusolverDnZgebrd = __library
23927 .get(b"cusolverDnZgebrd\0")
23928 .map(|sym| *sym)
23929 .expect("Expected symbol in library");
23930 let cusolverDnZgebrd_bufferSize = __library
23931 .get(b"cusolverDnZgebrd_bufferSize\0")
23932 .map(|sym| *sym)
23933 .expect("Expected symbol in library");
23934 let cusolverDnZgeqrf = __library
23935 .get(b"cusolverDnZgeqrf\0")
23936 .map(|sym| *sym)
23937 .expect("Expected symbol in library");
23938 let cusolverDnZgeqrf_bufferSize = __library
23939 .get(b"cusolverDnZgeqrf_bufferSize\0")
23940 .map(|sym| *sym)
23941 .expect("Expected symbol in library");
23942 let cusolverDnZgesvd = __library
23943 .get(b"cusolverDnZgesvd\0")
23944 .map(|sym| *sym)
23945 .expect("Expected symbol in library");
23946 let cusolverDnZgesvd_bufferSize = __library
23947 .get(b"cusolverDnZgesvd_bufferSize\0")
23948 .map(|sym| *sym)
23949 .expect("Expected symbol in library");
23950 let cusolverDnZgesvdaStridedBatched = __library
23951 .get(b"cusolverDnZgesvdaStridedBatched\0")
23952 .map(|sym| *sym)
23953 .expect("Expected symbol in library");
23954 let cusolverDnZgesvdaStridedBatched_bufferSize = __library
23955 .get(b"cusolverDnZgesvdaStridedBatched_bufferSize\0")
23956 .map(|sym| *sym)
23957 .expect("Expected symbol in library");
23958 let cusolverDnZgesvdj = __library
23959 .get(b"cusolverDnZgesvdj\0")
23960 .map(|sym| *sym)
23961 .expect("Expected symbol in library");
23962 let cusolverDnZgesvdjBatched = __library
23963 .get(b"cusolverDnZgesvdjBatched\0")
23964 .map(|sym| *sym)
23965 .expect("Expected symbol in library");
23966 let cusolverDnZgesvdjBatched_bufferSize = __library
23967 .get(b"cusolverDnZgesvdjBatched_bufferSize\0")
23968 .map(|sym| *sym)
23969 .expect("Expected symbol in library");
23970 let cusolverDnZgesvdj_bufferSize = __library
23971 .get(b"cusolverDnZgesvdj_bufferSize\0")
23972 .map(|sym| *sym)
23973 .expect("Expected symbol in library");
23974 let cusolverDnZgetrf = __library
23975 .get(b"cusolverDnZgetrf\0")
23976 .map(|sym| *sym)
23977 .expect("Expected symbol in library");
23978 let cusolverDnZgetrf_bufferSize = __library
23979 .get(b"cusolverDnZgetrf_bufferSize\0")
23980 .map(|sym| *sym)
23981 .expect("Expected symbol in library");
23982 let cusolverDnZgetrs = __library
23983 .get(b"cusolverDnZgetrs\0")
23984 .map(|sym| *sym)
23985 .expect("Expected symbol in library");
23986 let cusolverDnZheevd = __library
23987 .get(b"cusolverDnZheevd\0")
23988 .map(|sym| *sym)
23989 .expect("Expected symbol in library");
23990 let cusolverDnZheevd_bufferSize = __library
23991 .get(b"cusolverDnZheevd_bufferSize\0")
23992 .map(|sym| *sym)
23993 .expect("Expected symbol in library");
23994 let cusolverDnZheevdx = __library
23995 .get(b"cusolverDnZheevdx\0")
23996 .map(|sym| *sym)
23997 .expect("Expected symbol in library");
23998 let cusolverDnZheevdx_bufferSize = __library
23999 .get(b"cusolverDnZheevdx_bufferSize\0")
24000 .map(|sym| *sym)
24001 .expect("Expected symbol in library");
24002 let cusolverDnZheevj = __library
24003 .get(b"cusolverDnZheevj\0")
24004 .map(|sym| *sym)
24005 .expect("Expected symbol in library");
24006 let cusolverDnZheevjBatched = __library
24007 .get(b"cusolverDnZheevjBatched\0")
24008 .map(|sym| *sym)
24009 .expect("Expected symbol in library");
24010 let cusolverDnZheevjBatched_bufferSize = __library
24011 .get(b"cusolverDnZheevjBatched_bufferSize\0")
24012 .map(|sym| *sym)
24013 .expect("Expected symbol in library");
24014 let cusolverDnZheevj_bufferSize = __library
24015 .get(b"cusolverDnZheevj_bufferSize\0")
24016 .map(|sym| *sym)
24017 .expect("Expected symbol in library");
24018 let cusolverDnZhegvd = __library
24019 .get(b"cusolverDnZhegvd\0")
24020 .map(|sym| *sym)
24021 .expect("Expected symbol in library");
24022 let cusolverDnZhegvd_bufferSize = __library
24023 .get(b"cusolverDnZhegvd_bufferSize\0")
24024 .map(|sym| *sym)
24025 .expect("Expected symbol in library");
24026 let cusolverDnZhegvdx = __library
24027 .get(b"cusolverDnZhegvdx\0")
24028 .map(|sym| *sym)
24029 .expect("Expected symbol in library");
24030 let cusolverDnZhegvdx_bufferSize = __library
24031 .get(b"cusolverDnZhegvdx_bufferSize\0")
24032 .map(|sym| *sym)
24033 .expect("Expected symbol in library");
24034 let cusolverDnZhegvj = __library
24035 .get(b"cusolverDnZhegvj\0")
24036 .map(|sym| *sym)
24037 .expect("Expected symbol in library");
24038 let cusolverDnZhegvj_bufferSize = __library
24039 .get(b"cusolverDnZhegvj_bufferSize\0")
24040 .map(|sym| *sym)
24041 .expect("Expected symbol in library");
24042 let cusolverDnZhetrd = __library
24043 .get(b"cusolverDnZhetrd\0")
24044 .map(|sym| *sym)
24045 .expect("Expected symbol in library");
24046 let cusolverDnZhetrd_bufferSize = __library
24047 .get(b"cusolverDnZhetrd_bufferSize\0")
24048 .map(|sym| *sym)
24049 .expect("Expected symbol in library");
24050 let cusolverDnZlaswp = __library
24051 .get(b"cusolverDnZlaswp\0")
24052 .map(|sym| *sym)
24053 .expect("Expected symbol in library");
24054 let cusolverDnZlauum = __library
24055 .get(b"cusolverDnZlauum\0")
24056 .map(|sym| *sym)
24057 .expect("Expected symbol in library");
24058 let cusolverDnZlauum_bufferSize = __library
24059 .get(b"cusolverDnZlauum_bufferSize\0")
24060 .map(|sym| *sym)
24061 .expect("Expected symbol in library");
24062 let cusolverDnZpotrf = __library
24063 .get(b"cusolverDnZpotrf\0")
24064 .map(|sym| *sym)
24065 .expect("Expected symbol in library");
24066 let cusolverDnZpotrfBatched = __library
24067 .get(b"cusolverDnZpotrfBatched\0")
24068 .map(|sym| *sym)
24069 .expect("Expected symbol in library");
24070 let cusolverDnZpotrf_bufferSize = __library
24071 .get(b"cusolverDnZpotrf_bufferSize\0")
24072 .map(|sym| *sym)
24073 .expect("Expected symbol in library");
24074 let cusolverDnZpotri = __library
24075 .get(b"cusolverDnZpotri\0")
24076 .map(|sym| *sym)
24077 .expect("Expected symbol in library");
24078 let cusolverDnZpotri_bufferSize = __library
24079 .get(b"cusolverDnZpotri_bufferSize\0")
24080 .map(|sym| *sym)
24081 .expect("Expected symbol in library");
24082 let cusolverDnZpotrs = __library
24083 .get(b"cusolverDnZpotrs\0")
24084 .map(|sym| *sym)
24085 .expect("Expected symbol in library");
24086 let cusolverDnZpotrsBatched = __library
24087 .get(b"cusolverDnZpotrsBatched\0")
24088 .map(|sym| *sym)
24089 .expect("Expected symbol in library");
24090 let cusolverDnZsytrf = __library
24091 .get(b"cusolverDnZsytrf\0")
24092 .map(|sym| *sym)
24093 .expect("Expected symbol in library");
24094 let cusolverDnZsytrf_bufferSize = __library
24095 .get(b"cusolverDnZsytrf_bufferSize\0")
24096 .map(|sym| *sym)
24097 .expect("Expected symbol in library");
24098 let cusolverDnZsytri = __library
24099 .get(b"cusolverDnZsytri\0")
24100 .map(|sym| *sym)
24101 .expect("Expected symbol in library");
24102 let cusolverDnZsytri_bufferSize = __library
24103 .get(b"cusolverDnZsytri_bufferSize\0")
24104 .map(|sym| *sym)
24105 .expect("Expected symbol in library");
24106 let cusolverDnZungbr = __library
24107 .get(b"cusolverDnZungbr\0")
24108 .map(|sym| *sym)
24109 .expect("Expected symbol in library");
24110 let cusolverDnZungbr_bufferSize = __library
24111 .get(b"cusolverDnZungbr_bufferSize\0")
24112 .map(|sym| *sym)
24113 .expect("Expected symbol in library");
24114 let cusolverDnZungqr = __library
24115 .get(b"cusolverDnZungqr\0")
24116 .map(|sym| *sym)
24117 .expect("Expected symbol in library");
24118 let cusolverDnZungqr_bufferSize = __library
24119 .get(b"cusolverDnZungqr_bufferSize\0")
24120 .map(|sym| *sym)
24121 .expect("Expected symbol in library");
24122 let cusolverDnZungtr = __library
24123 .get(b"cusolverDnZungtr\0")
24124 .map(|sym| *sym)
24125 .expect("Expected symbol in library");
24126 let cusolverDnZungtr_bufferSize = __library
24127 .get(b"cusolverDnZungtr_bufferSize\0")
24128 .map(|sym| *sym)
24129 .expect("Expected symbol in library");
24130 let cusolverDnZunmqr = __library
24131 .get(b"cusolverDnZunmqr\0")
24132 .map(|sym| *sym)
24133 .expect("Expected symbol in library");
24134 let cusolverDnZunmqr_bufferSize = __library
24135 .get(b"cusolverDnZunmqr_bufferSize\0")
24136 .map(|sym| *sym)
24137 .expect("Expected symbol in library");
24138 let cusolverDnZunmtr = __library
24139 .get(b"cusolverDnZunmtr\0")
24140 .map(|sym| *sym)
24141 .expect("Expected symbol in library");
24142 let cusolverDnZunmtr_bufferSize = __library
24143 .get(b"cusolverDnZunmtr_bufferSize\0")
24144 .map(|sym| *sym)
24145 .expect("Expected symbol in library");
24146 let cusolverGetProperty = __library
24147 .get(b"cusolverGetProperty\0")
24148 .map(|sym| *sym)
24149 .expect("Expected symbol in library");
24150 let cusolverGetVersion = __library
24151 .get(b"cusolverGetVersion\0")
24152 .map(|sym| *sym)
24153 .expect("Expected symbol in library");
24154 let cusolverRfAccessBundledFactorsDevice = __library
24155 .get(b"cusolverRfAccessBundledFactorsDevice\0")
24156 .map(|sym| *sym)
24157 .expect("Expected symbol in library");
24158 let cusolverRfAnalyze = __library
24159 .get(b"cusolverRfAnalyze\0")
24160 .map(|sym| *sym)
24161 .expect("Expected symbol in library");
24162 let cusolverRfBatchAnalyze = __library
24163 .get(b"cusolverRfBatchAnalyze\0")
24164 .map(|sym| *sym)
24165 .expect("Expected symbol in library");
24166 let cusolverRfBatchRefactor = __library
24167 .get(b"cusolverRfBatchRefactor\0")
24168 .map(|sym| *sym)
24169 .expect("Expected symbol in library");
24170 let cusolverRfBatchResetValues = __library
24171 .get(b"cusolverRfBatchResetValues\0")
24172 .map(|sym| *sym)
24173 .expect("Expected symbol in library");
24174 let cusolverRfBatchSetupHost = __library
24175 .get(b"cusolverRfBatchSetupHost\0")
24176 .map(|sym| *sym)
24177 .expect("Expected symbol in library");
24178 let cusolverRfBatchSolve = __library
24179 .get(b"cusolverRfBatchSolve\0")
24180 .map(|sym| *sym)
24181 .expect("Expected symbol in library");
24182 let cusolverRfBatchZeroPivot = __library
24183 .get(b"cusolverRfBatchZeroPivot\0")
24184 .map(|sym| *sym)
24185 .expect("Expected symbol in library");
24186 let cusolverRfCreate = __library
24187 .get(b"cusolverRfCreate\0")
24188 .map(|sym| *sym)
24189 .expect("Expected symbol in library");
24190 let cusolverRfDestroy = __library
24191 .get(b"cusolverRfDestroy\0")
24192 .map(|sym| *sym)
24193 .expect("Expected symbol in library");
24194 let cusolverRfExtractBundledFactorsHost = __library
24195 .get(b"cusolverRfExtractBundledFactorsHost\0")
24196 .map(|sym| *sym)
24197 .expect("Expected symbol in library");
24198 let cusolverRfExtractSplitFactorsHost = __library
24199 .get(b"cusolverRfExtractSplitFactorsHost\0")
24200 .map(|sym| *sym)
24201 .expect("Expected symbol in library");
24202 let cusolverRfGetAlgs = __library
24203 .get(b"cusolverRfGetAlgs\0")
24204 .map(|sym| *sym)
24205 .expect("Expected symbol in library");
24206 let cusolverRfGetMatrixFormat = __library
24207 .get(b"cusolverRfGetMatrixFormat\0")
24208 .map(|sym| *sym)
24209 .expect("Expected symbol in library");
24210 let cusolverRfGetNumericBoostReport = __library
24211 .get(b"cusolverRfGetNumericBoostReport\0")
24212 .map(|sym| *sym)
24213 .expect("Expected symbol in library");
24214 let cusolverRfGetNumericProperties = __library
24215 .get(b"cusolverRfGetNumericProperties\0")
24216 .map(|sym| *sym)
24217 .expect("Expected symbol in library");
24218 let cusolverRfGetResetValuesFastMode = __library
24219 .get(b"cusolverRfGetResetValuesFastMode\0")
24220 .map(|sym| *sym)
24221 .expect("Expected symbol in library");
24222 let cusolverRfRefactor = __library
24223 .get(b"cusolverRfRefactor\0")
24224 .map(|sym| *sym)
24225 .expect("Expected symbol in library");
24226 let cusolverRfResetValues = __library
24227 .get(b"cusolverRfResetValues\0")
24228 .map(|sym| *sym)
24229 .expect("Expected symbol in library");
24230 let cusolverRfSetAlgs = __library
24231 .get(b"cusolverRfSetAlgs\0")
24232 .map(|sym| *sym)
24233 .expect("Expected symbol in library");
24234 let cusolverRfSetMatrixFormat = __library
24235 .get(b"cusolverRfSetMatrixFormat\0")
24236 .map(|sym| *sym)
24237 .expect("Expected symbol in library");
24238 let cusolverRfSetNumericProperties = __library
24239 .get(b"cusolverRfSetNumericProperties\0")
24240 .map(|sym| *sym)
24241 .expect("Expected symbol in library");
24242 let cusolverRfSetResetValuesFastMode = __library
24243 .get(b"cusolverRfSetResetValuesFastMode\0")
24244 .map(|sym| *sym)
24245 .expect("Expected symbol in library");
24246 let cusolverRfSetupDevice = __library
24247 .get(b"cusolverRfSetupDevice\0")
24248 .map(|sym| *sym)
24249 .expect("Expected symbol in library");
24250 let cusolverRfSetupHost = __library
24251 .get(b"cusolverRfSetupHost\0")
24252 .map(|sym| *sym)
24253 .expect("Expected symbol in library");
24254 let cusolverRfSolve = __library
24255 .get(b"cusolverRfSolve\0")
24256 .map(|sym| *sym)
24257 .expect("Expected symbol in library");
24258 let cusolverSpCcsreigsHost = __library
24259 .get(b"cusolverSpCcsreigsHost\0")
24260 .map(|sym| *sym)
24261 .expect("Expected symbol in library");
24262 let cusolverSpCcsreigvsi = __library
24263 .get(b"cusolverSpCcsreigvsi\0")
24264 .map(|sym| *sym)
24265 .expect("Expected symbol in library");
24266 let cusolverSpCcsreigvsiHost = __library
24267 .get(b"cusolverSpCcsreigvsiHost\0")
24268 .map(|sym| *sym)
24269 .expect("Expected symbol in library");
24270 let cusolverSpCcsrlsqvqrHost = __library
24271 .get(b"cusolverSpCcsrlsqvqrHost\0")
24272 .map(|sym| *sym)
24273 .expect("Expected symbol in library");
24274 let cusolverSpCcsrlsvchol = __library
24275 .get(b"cusolverSpCcsrlsvchol\0")
24276 .map(|sym| *sym)
24277 .expect("Expected symbol in library");
24278 let cusolverSpCcsrlsvcholHost = __library
24279 .get(b"cusolverSpCcsrlsvcholHost\0")
24280 .map(|sym| *sym)
24281 .expect("Expected symbol in library");
24282 let cusolverSpCcsrlsvluHost = __library
24283 .get(b"cusolverSpCcsrlsvluHost\0")
24284 .map(|sym| *sym)
24285 .expect("Expected symbol in library");
24286 let cusolverSpCcsrlsvqr = __library
24287 .get(b"cusolverSpCcsrlsvqr\0")
24288 .map(|sym| *sym)
24289 .expect("Expected symbol in library");
24290 let cusolverSpCcsrlsvqrHost = __library
24291 .get(b"cusolverSpCcsrlsvqrHost\0")
24292 .map(|sym| *sym)
24293 .expect("Expected symbol in library");
24294 let cusolverSpCcsrqrBufferInfoBatched = __library
24295 .get(b"cusolverSpCcsrqrBufferInfoBatched\0")
24296 .map(|sym| *sym)
24297 .expect("Expected symbol in library");
24298 let cusolverSpCcsrqrsvBatched = __library
24299 .get(b"cusolverSpCcsrqrsvBatched\0")
24300 .map(|sym| *sym)
24301 .expect("Expected symbol in library");
24302 let cusolverSpCcsrzfdHost = __library
24303 .get(b"cusolverSpCcsrzfdHost\0")
24304 .map(|sym| *sym)
24305 .expect("Expected symbol in library");
24306 let cusolverSpCreate = __library
24307 .get(b"cusolverSpCreate\0")
24308 .map(|sym| *sym)
24309 .expect("Expected symbol in library");
24310 let cusolverSpCreateCsrqrInfo = __library
24311 .get(b"cusolverSpCreateCsrqrInfo\0")
24312 .map(|sym| *sym)
24313 .expect("Expected symbol in library");
24314 let cusolverSpDcsreigsHost = __library
24315 .get(b"cusolverSpDcsreigsHost\0")
24316 .map(|sym| *sym)
24317 .expect("Expected symbol in library");
24318 let cusolverSpDcsreigvsi = __library
24319 .get(b"cusolverSpDcsreigvsi\0")
24320 .map(|sym| *sym)
24321 .expect("Expected symbol in library");
24322 let cusolverSpDcsreigvsiHost = __library
24323 .get(b"cusolverSpDcsreigvsiHost\0")
24324 .map(|sym| *sym)
24325 .expect("Expected symbol in library");
24326 let cusolverSpDcsrlsqvqrHost = __library
24327 .get(b"cusolverSpDcsrlsqvqrHost\0")
24328 .map(|sym| *sym)
24329 .expect("Expected symbol in library");
24330 let cusolverSpDcsrlsvchol = __library
24331 .get(b"cusolverSpDcsrlsvchol\0")
24332 .map(|sym| *sym)
24333 .expect("Expected symbol in library");
24334 let cusolverSpDcsrlsvcholHost = __library
24335 .get(b"cusolverSpDcsrlsvcholHost\0")
24336 .map(|sym| *sym)
24337 .expect("Expected symbol in library");
24338 let cusolverSpDcsrlsvluHost = __library
24339 .get(b"cusolverSpDcsrlsvluHost\0")
24340 .map(|sym| *sym)
24341 .expect("Expected symbol in library");
24342 let cusolverSpDcsrlsvqr = __library
24343 .get(b"cusolverSpDcsrlsvqr\0")
24344 .map(|sym| *sym)
24345 .expect("Expected symbol in library");
24346 let cusolverSpDcsrlsvqrHost = __library
24347 .get(b"cusolverSpDcsrlsvqrHost\0")
24348 .map(|sym| *sym)
24349 .expect("Expected symbol in library");
24350 let cusolverSpDcsrqrBufferInfoBatched = __library
24351 .get(b"cusolverSpDcsrqrBufferInfoBatched\0")
24352 .map(|sym| *sym)
24353 .expect("Expected symbol in library");
24354 let cusolverSpDcsrqrsvBatched = __library
24355 .get(b"cusolverSpDcsrqrsvBatched\0")
24356 .map(|sym| *sym)
24357 .expect("Expected symbol in library");
24358 let cusolverSpDcsrzfdHost = __library
24359 .get(b"cusolverSpDcsrzfdHost\0")
24360 .map(|sym| *sym)
24361 .expect("Expected symbol in library");
24362 let cusolverSpDestroy = __library
24363 .get(b"cusolverSpDestroy\0")
24364 .map(|sym| *sym)
24365 .expect("Expected symbol in library");
24366 let cusolverSpDestroyCsrqrInfo = __library
24367 .get(b"cusolverSpDestroyCsrqrInfo\0")
24368 .map(|sym| *sym)
24369 .expect("Expected symbol in library");
24370 let cusolverSpGetStream = __library
24371 .get(b"cusolverSpGetStream\0")
24372 .map(|sym| *sym)
24373 .expect("Expected symbol in library");
24374 let cusolverSpScsreigsHost = __library
24375 .get(b"cusolverSpScsreigsHost\0")
24376 .map(|sym| *sym)
24377 .expect("Expected symbol in library");
24378 let cusolverSpScsreigvsi = __library
24379 .get(b"cusolverSpScsreigvsi\0")
24380 .map(|sym| *sym)
24381 .expect("Expected symbol in library");
24382 let cusolverSpScsreigvsiHost = __library
24383 .get(b"cusolverSpScsreigvsiHost\0")
24384 .map(|sym| *sym)
24385 .expect("Expected symbol in library");
24386 let cusolverSpScsrlsqvqrHost = __library
24387 .get(b"cusolverSpScsrlsqvqrHost\0")
24388 .map(|sym| *sym)
24389 .expect("Expected symbol in library");
24390 let cusolverSpScsrlsvchol = __library
24391 .get(b"cusolverSpScsrlsvchol\0")
24392 .map(|sym| *sym)
24393 .expect("Expected symbol in library");
24394 let cusolverSpScsrlsvcholHost = __library
24395 .get(b"cusolverSpScsrlsvcholHost\0")
24396 .map(|sym| *sym)
24397 .expect("Expected symbol in library");
24398 let cusolverSpScsrlsvluHost = __library
24399 .get(b"cusolverSpScsrlsvluHost\0")
24400 .map(|sym| *sym)
24401 .expect("Expected symbol in library");
24402 let cusolverSpScsrlsvqr = __library
24403 .get(b"cusolverSpScsrlsvqr\0")
24404 .map(|sym| *sym)
24405 .expect("Expected symbol in library");
24406 let cusolverSpScsrlsvqrHost = __library
24407 .get(b"cusolverSpScsrlsvqrHost\0")
24408 .map(|sym| *sym)
24409 .expect("Expected symbol in library");
24410 let cusolverSpScsrqrBufferInfoBatched = __library
24411 .get(b"cusolverSpScsrqrBufferInfoBatched\0")
24412 .map(|sym| *sym)
24413 .expect("Expected symbol in library");
24414 let cusolverSpScsrqrsvBatched = __library
24415 .get(b"cusolverSpScsrqrsvBatched\0")
24416 .map(|sym| *sym)
24417 .expect("Expected symbol in library");
24418 let cusolverSpScsrzfdHost = __library
24419 .get(b"cusolverSpScsrzfdHost\0")
24420 .map(|sym| *sym)
24421 .expect("Expected symbol in library");
24422 let cusolverSpSetStream = __library
24423 .get(b"cusolverSpSetStream\0")
24424 .map(|sym| *sym)
24425 .expect("Expected symbol in library");
24426 let cusolverSpXcsrissymHost = __library
24427 .get(b"cusolverSpXcsrissymHost\0")
24428 .map(|sym| *sym)
24429 .expect("Expected symbol in library");
24430 let cusolverSpXcsrmetisndHost = __library
24431 .get(b"cusolverSpXcsrmetisndHost\0")
24432 .map(|sym| *sym)
24433 .expect("Expected symbol in library");
24434 let cusolverSpXcsrpermHost = __library
24435 .get(b"cusolverSpXcsrpermHost\0")
24436 .map(|sym| *sym)
24437 .expect("Expected symbol in library");
24438 let cusolverSpXcsrperm_bufferSizeHost = __library
24439 .get(b"cusolverSpXcsrperm_bufferSizeHost\0")
24440 .map(|sym| *sym)
24441 .expect("Expected symbol in library");
24442 let cusolverSpXcsrqrAnalysisBatched = __library
24443 .get(b"cusolverSpXcsrqrAnalysisBatched\0")
24444 .map(|sym| *sym)
24445 .expect("Expected symbol in library");
24446 let cusolverSpXcsrsymamdHost = __library
24447 .get(b"cusolverSpXcsrsymamdHost\0")
24448 .map(|sym| *sym)
24449 .expect("Expected symbol in library");
24450 let cusolverSpXcsrsymmdqHost = __library
24451 .get(b"cusolverSpXcsrsymmdqHost\0")
24452 .map(|sym| *sym)
24453 .expect("Expected symbol in library");
24454 let cusolverSpXcsrsymrcmHost = __library
24455 .get(b"cusolverSpXcsrsymrcmHost\0")
24456 .map(|sym| *sym)
24457 .expect("Expected symbol in library");
24458 let cusolverSpZcsreigsHost = __library
24459 .get(b"cusolverSpZcsreigsHost\0")
24460 .map(|sym| *sym)
24461 .expect("Expected symbol in library");
24462 let cusolverSpZcsreigvsi = __library
24463 .get(b"cusolverSpZcsreigvsi\0")
24464 .map(|sym| *sym)
24465 .expect("Expected symbol in library");
24466 let cusolverSpZcsreigvsiHost = __library
24467 .get(b"cusolverSpZcsreigvsiHost\0")
24468 .map(|sym| *sym)
24469 .expect("Expected symbol in library");
24470 let cusolverSpZcsrlsqvqrHost = __library
24471 .get(b"cusolverSpZcsrlsqvqrHost\0")
24472 .map(|sym| *sym)
24473 .expect("Expected symbol in library");
24474 let cusolverSpZcsrlsvchol = __library
24475 .get(b"cusolverSpZcsrlsvchol\0")
24476 .map(|sym| *sym)
24477 .expect("Expected symbol in library");
24478 let cusolverSpZcsrlsvcholHost = __library
24479 .get(b"cusolverSpZcsrlsvcholHost\0")
24480 .map(|sym| *sym)
24481 .expect("Expected symbol in library");
24482 let cusolverSpZcsrlsvluHost = __library
24483 .get(b"cusolverSpZcsrlsvluHost\0")
24484 .map(|sym| *sym)
24485 .expect("Expected symbol in library");
24486 let cusolverSpZcsrlsvqr = __library
24487 .get(b"cusolverSpZcsrlsvqr\0")
24488 .map(|sym| *sym)
24489 .expect("Expected symbol in library");
24490 let cusolverSpZcsrlsvqrHost = __library
24491 .get(b"cusolverSpZcsrlsvqrHost\0")
24492 .map(|sym| *sym)
24493 .expect("Expected symbol in library");
24494 let cusolverSpZcsrqrBufferInfoBatched = __library
24495 .get(b"cusolverSpZcsrqrBufferInfoBatched\0")
24496 .map(|sym| *sym)
24497 .expect("Expected symbol in library");
24498 let cusolverSpZcsrqrsvBatched = __library
24499 .get(b"cusolverSpZcsrqrsvBatched\0")
24500 .map(|sym| *sym)
24501 .expect("Expected symbol in library");
24502 let cusolverSpZcsrzfdHost = __library
24503 .get(b"cusolverSpZcsrzfdHost\0")
24504 .map(|sym| *sym)
24505 .expect("Expected symbol in library");
24506 Ok(Self {
24507 __library,
24508 cusolverDnCCgels,
24509 cusolverDnCCgels_bufferSize,
24510 cusolverDnCCgesv,
24511 cusolverDnCCgesv_bufferSize,
24512 cusolverDnCEgels,
24513 cusolverDnCEgels_bufferSize,
24514 cusolverDnCEgesv,
24515 cusolverDnCEgesv_bufferSize,
24516 cusolverDnCKgels,
24517 cusolverDnCKgels_bufferSize,
24518 cusolverDnCKgesv,
24519 cusolverDnCKgesv_bufferSize,
24520 cusolverDnCYgels,
24521 cusolverDnCYgels_bufferSize,
24522 cusolverDnCYgesv,
24523 cusolverDnCYgesv_bufferSize,
24524 cusolverDnCgebrd,
24525 cusolverDnCgebrd_bufferSize,
24526 cusolverDnCgeqrf,
24527 cusolverDnCgeqrf_bufferSize,
24528 cusolverDnCgesvd,
24529 cusolverDnCgesvd_bufferSize,
24530 cusolverDnCgesvdaStridedBatched,
24531 cusolverDnCgesvdaStridedBatched_bufferSize,
24532 cusolverDnCgesvdj,
24533 cusolverDnCgesvdjBatched,
24534 cusolverDnCgesvdjBatched_bufferSize,
24535 cusolverDnCgesvdj_bufferSize,
24536 cusolverDnCgetrf,
24537 cusolverDnCgetrf_bufferSize,
24538 cusolverDnCgetrs,
24539 cusolverDnCheevd,
24540 cusolverDnCheevd_bufferSize,
24541 cusolverDnCheevdx,
24542 cusolverDnCheevdx_bufferSize,
24543 cusolverDnCheevj,
24544 cusolverDnCheevjBatched,
24545 cusolverDnCheevjBatched_bufferSize,
24546 cusolverDnCheevj_bufferSize,
24547 cusolverDnChegvd,
24548 cusolverDnChegvd_bufferSize,
24549 cusolverDnChegvdx,
24550 cusolverDnChegvdx_bufferSize,
24551 cusolverDnChegvj,
24552 cusolverDnChegvj_bufferSize,
24553 cusolverDnChetrd,
24554 cusolverDnChetrd_bufferSize,
24555 cusolverDnClaswp,
24556 cusolverDnClauum,
24557 cusolverDnClauum_bufferSize,
24558 cusolverDnCpotrf,
24559 cusolverDnCpotrfBatched,
24560 cusolverDnCpotrf_bufferSize,
24561 cusolverDnCpotri,
24562 cusolverDnCpotri_bufferSize,
24563 cusolverDnCpotrs,
24564 cusolverDnCpotrsBatched,
24565 cusolverDnCreate,
24566 cusolverDnCreateGesvdjInfo,
24567 cusolverDnCreateParams,
24568 cusolverDnCreateSyevjInfo,
24569 cusolverDnCsytrf,
24570 cusolverDnCsytrf_bufferSize,
24571 cusolverDnCsytri,
24572 cusolverDnCsytri_bufferSize,
24573 cusolverDnCungbr,
24574 cusolverDnCungbr_bufferSize,
24575 cusolverDnCungqr,
24576 cusolverDnCungqr_bufferSize,
24577 cusolverDnCungtr,
24578 cusolverDnCungtr_bufferSize,
24579 cusolverDnCunmqr,
24580 cusolverDnCunmqr_bufferSize,
24581 cusolverDnCunmtr,
24582 cusolverDnCunmtr_bufferSize,
24583 cusolverDnDBgels,
24584 cusolverDnDBgels_bufferSize,
24585 cusolverDnDBgesv,
24586 cusolverDnDBgesv_bufferSize,
24587 cusolverDnDDgels,
24588 cusolverDnDDgels_bufferSize,
24589 cusolverDnDDgesv,
24590 cusolverDnDDgesv_bufferSize,
24591 cusolverDnDHgels,
24592 cusolverDnDHgels_bufferSize,
24593 cusolverDnDHgesv,
24594 cusolverDnDHgesv_bufferSize,
24595 cusolverDnDSgels,
24596 cusolverDnDSgels_bufferSize,
24597 cusolverDnDSgesv,
24598 cusolverDnDSgesv_bufferSize,
24599 cusolverDnDXgels,
24600 cusolverDnDXgels_bufferSize,
24601 cusolverDnDXgesv,
24602 cusolverDnDXgesv_bufferSize,
24603 cusolverDnDestroy,
24604 cusolverDnDestroyGesvdjInfo,
24605 cusolverDnDestroyParams,
24606 cusolverDnDestroySyevjInfo,
24607 cusolverDnDgebrd,
24608 cusolverDnDgebrd_bufferSize,
24609 cusolverDnDgeqrf,
24610 cusolverDnDgeqrf_bufferSize,
24611 cusolverDnDgesvd,
24612 cusolverDnDgesvd_bufferSize,
24613 cusolverDnDgesvdaStridedBatched,
24614 cusolverDnDgesvdaStridedBatched_bufferSize,
24615 cusolverDnDgesvdj,
24616 cusolverDnDgesvdjBatched,
24617 cusolverDnDgesvdjBatched_bufferSize,
24618 cusolverDnDgesvdj_bufferSize,
24619 cusolverDnDgetrf,
24620 cusolverDnDgetrf_bufferSize,
24621 cusolverDnDgetrs,
24622 cusolverDnDlaswp,
24623 cusolverDnDlauum,
24624 cusolverDnDlauum_bufferSize,
24625 cusolverDnDorgbr,
24626 cusolverDnDorgbr_bufferSize,
24627 cusolverDnDorgqr,
24628 cusolverDnDorgqr_bufferSize,
24629 cusolverDnDorgtr,
24630 cusolverDnDorgtr_bufferSize,
24631 cusolverDnDormqr,
24632 cusolverDnDormqr_bufferSize,
24633 cusolverDnDormtr,
24634 cusolverDnDormtr_bufferSize,
24635 cusolverDnDpotrf,
24636 cusolverDnDpotrfBatched,
24637 cusolverDnDpotrf_bufferSize,
24638 cusolverDnDpotri,
24639 cusolverDnDpotri_bufferSize,
24640 cusolverDnDpotrs,
24641 cusolverDnDpotrsBatched,
24642 cusolverDnDsyevd,
24643 cusolverDnDsyevd_bufferSize,
24644 cusolverDnDsyevdx,
24645 cusolverDnDsyevdx_bufferSize,
24646 cusolverDnDsyevj,
24647 cusolverDnDsyevjBatched,
24648 cusolverDnDsyevjBatched_bufferSize,
24649 cusolverDnDsyevj_bufferSize,
24650 cusolverDnDsygvd,
24651 cusolverDnDsygvd_bufferSize,
24652 cusolverDnDsygvdx,
24653 cusolverDnDsygvdx_bufferSize,
24654 cusolverDnDsygvj,
24655 cusolverDnDsygvj_bufferSize,
24656 cusolverDnDsytrd,
24657 cusolverDnDsytrd_bufferSize,
24658 cusolverDnDsytrf,
24659 cusolverDnDsytrf_bufferSize,
24660 cusolverDnDsytri,
24661 cusolverDnDsytri_bufferSize,
24662 #[cfg(any(
24663 feature = "cuda-11040",
24664 feature = "cuda-11050",
24665 feature = "cuda-11060",
24666 feature = "cuda-11070",
24667 feature = "cuda-11080",
24668 feature = "cuda-12000",
24669 feature = "cuda-12010",
24670 feature = "cuda-12020",
24671 feature = "cuda-12030",
24672 feature = "cuda-12040",
24673 feature = "cuda-12050",
24674 feature = "cuda-12060",
24675 feature = "cuda-12080",
24676 feature = "cuda-12090"
24677 ))]
24678 cusolverDnGeqrf,
24679 #[cfg(any(
24680 feature = "cuda-11040",
24681 feature = "cuda-11050",
24682 feature = "cuda-11060",
24683 feature = "cuda-11070",
24684 feature = "cuda-11080",
24685 feature = "cuda-12000",
24686 feature = "cuda-12010",
24687 feature = "cuda-12020",
24688 feature = "cuda-12030",
24689 feature = "cuda-12040",
24690 feature = "cuda-12050",
24691 feature = "cuda-12060",
24692 feature = "cuda-12080",
24693 feature = "cuda-12090"
24694 ))]
24695 cusolverDnGeqrf_bufferSize,
24696 #[cfg(any(
24697 feature = "cuda-11040",
24698 feature = "cuda-11050",
24699 feature = "cuda-11060",
24700 feature = "cuda-11070",
24701 feature = "cuda-11080",
24702 feature = "cuda-12000",
24703 feature = "cuda-12010",
24704 feature = "cuda-12020",
24705 feature = "cuda-12030",
24706 feature = "cuda-12040",
24707 feature = "cuda-12050",
24708 feature = "cuda-12060",
24709 feature = "cuda-12080",
24710 feature = "cuda-12090"
24711 ))]
24712 cusolverDnGesvd,
24713 #[cfg(any(
24714 feature = "cuda-11040",
24715 feature = "cuda-11050",
24716 feature = "cuda-11060",
24717 feature = "cuda-11070",
24718 feature = "cuda-11080",
24719 feature = "cuda-12000",
24720 feature = "cuda-12010",
24721 feature = "cuda-12020",
24722 feature = "cuda-12030",
24723 feature = "cuda-12040",
24724 feature = "cuda-12050",
24725 feature = "cuda-12060",
24726 feature = "cuda-12080",
24727 feature = "cuda-12090"
24728 ))]
24729 cusolverDnGesvd_bufferSize,
24730 #[cfg(any(
24731 feature = "cuda-12020",
24732 feature = "cuda-12030",
24733 feature = "cuda-12040",
24734 feature = "cuda-12050",
24735 feature = "cuda-12060",
24736 feature = "cuda-12080",
24737 feature = "cuda-12090",
24738 feature = "cuda-13000",
24739 feature = "cuda-13010"
24740 ))]
24741 cusolverDnGetDeterministicMode,
24742 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
24743 cusolverDnGetEmulationStrategy,
24744 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
24745 cusolverDnGetMathMode,
24746 cusolverDnGetStream,
24747 #[cfg(any(
24748 feature = "cuda-11040",
24749 feature = "cuda-11050",
24750 feature = "cuda-11060",
24751 feature = "cuda-11070",
24752 feature = "cuda-11080",
24753 feature = "cuda-12000",
24754 feature = "cuda-12010",
24755 feature = "cuda-12020",
24756 feature = "cuda-12030",
24757 feature = "cuda-12040",
24758 feature = "cuda-12050",
24759 feature = "cuda-12060",
24760 feature = "cuda-12080",
24761 feature = "cuda-12090"
24762 ))]
24763 cusolverDnGetrf,
24764 #[cfg(any(
24765 feature = "cuda-11040",
24766 feature = "cuda-11050",
24767 feature = "cuda-11060",
24768 feature = "cuda-11070",
24769 feature = "cuda-11080",
24770 feature = "cuda-12000",
24771 feature = "cuda-12010",
24772 feature = "cuda-12020",
24773 feature = "cuda-12030",
24774 feature = "cuda-12040",
24775 feature = "cuda-12050",
24776 feature = "cuda-12060",
24777 feature = "cuda-12080",
24778 feature = "cuda-12090"
24779 ))]
24780 cusolverDnGetrf_bufferSize,
24781 #[cfg(any(
24782 feature = "cuda-11040",
24783 feature = "cuda-11050",
24784 feature = "cuda-11060",
24785 feature = "cuda-11070",
24786 feature = "cuda-11080",
24787 feature = "cuda-12000",
24788 feature = "cuda-12010",
24789 feature = "cuda-12020",
24790 feature = "cuda-12030",
24791 feature = "cuda-12040",
24792 feature = "cuda-12050",
24793 feature = "cuda-12060",
24794 feature = "cuda-12080",
24795 feature = "cuda-12090"
24796 ))]
24797 cusolverDnGetrs,
24798 cusolverDnIRSInfosCreate,
24799 cusolverDnIRSInfosDestroy,
24800 cusolverDnIRSInfosGetMaxIters,
24801 cusolverDnIRSInfosGetNiters,
24802 cusolverDnIRSInfosGetOuterNiters,
24803 cusolverDnIRSInfosGetResidualHistory,
24804 cusolverDnIRSInfosRequestResidual,
24805 cusolverDnIRSParamsCreate,
24806 cusolverDnIRSParamsDestroy,
24807 cusolverDnIRSParamsDisableFallback,
24808 cusolverDnIRSParamsEnableFallback,
24809 cusolverDnIRSParamsGetMaxIters,
24810 cusolverDnIRSParamsSetMaxIters,
24811 cusolverDnIRSParamsSetMaxItersInner,
24812 cusolverDnIRSParamsSetRefinementSolver,
24813 cusolverDnIRSParamsSetSolverLowestPrecision,
24814 cusolverDnIRSParamsSetSolverMainPrecision,
24815 cusolverDnIRSParamsSetSolverPrecisions,
24816 cusolverDnIRSParamsSetTol,
24817 cusolverDnIRSParamsSetTolInner,
24818 cusolverDnIRSXgels,
24819 cusolverDnIRSXgels_bufferSize,
24820 cusolverDnIRSXgesv,
24821 cusolverDnIRSXgesv_bufferSize,
24822 #[cfg(any(
24823 feature = "cuda-11040",
24824 feature = "cuda-11050",
24825 feature = "cuda-11060",
24826 feature = "cuda-11070",
24827 feature = "cuda-11080",
24828 feature = "cuda-12000",
24829 feature = "cuda-12010",
24830 feature = "cuda-12020",
24831 feature = "cuda-12030",
24832 feature = "cuda-12040",
24833 feature = "cuda-12050",
24834 feature = "cuda-12060",
24835 feature = "cuda-12080",
24836 feature = "cuda-12090"
24837 ))]
24838 cusolverDnPotrf,
24839 #[cfg(any(
24840 feature = "cuda-11040",
24841 feature = "cuda-11050",
24842 feature = "cuda-11060",
24843 feature = "cuda-11070",
24844 feature = "cuda-11080",
24845 feature = "cuda-12000",
24846 feature = "cuda-12010",
24847 feature = "cuda-12020",
24848 feature = "cuda-12030",
24849 feature = "cuda-12040",
24850 feature = "cuda-12050",
24851 feature = "cuda-12060",
24852 feature = "cuda-12080",
24853 feature = "cuda-12090"
24854 ))]
24855 cusolverDnPotrf_bufferSize,
24856 #[cfg(any(
24857 feature = "cuda-11040",
24858 feature = "cuda-11050",
24859 feature = "cuda-11060",
24860 feature = "cuda-11070",
24861 feature = "cuda-11080",
24862 feature = "cuda-12000",
24863 feature = "cuda-12010",
24864 feature = "cuda-12020",
24865 feature = "cuda-12030",
24866 feature = "cuda-12040",
24867 feature = "cuda-12050",
24868 feature = "cuda-12060",
24869 feature = "cuda-12080",
24870 feature = "cuda-12090"
24871 ))]
24872 cusolverDnPotrs,
24873 cusolverDnSBgels,
24874 cusolverDnSBgels_bufferSize,
24875 cusolverDnSBgesv,
24876 cusolverDnSBgesv_bufferSize,
24877 cusolverDnSHgels,
24878 cusolverDnSHgels_bufferSize,
24879 cusolverDnSHgesv,
24880 cusolverDnSHgesv_bufferSize,
24881 cusolverDnSSgels,
24882 cusolverDnSSgels_bufferSize,
24883 cusolverDnSSgesv,
24884 cusolverDnSSgesv_bufferSize,
24885 cusolverDnSXgels,
24886 cusolverDnSXgels_bufferSize,
24887 cusolverDnSXgesv,
24888 cusolverDnSXgesv_bufferSize,
24889 cusolverDnSetAdvOptions,
24890 #[cfg(any(
24891 feature = "cuda-12020",
24892 feature = "cuda-12030",
24893 feature = "cuda-12040",
24894 feature = "cuda-12050",
24895 feature = "cuda-12060",
24896 feature = "cuda-12080",
24897 feature = "cuda-12090",
24898 feature = "cuda-13000",
24899 feature = "cuda-13010"
24900 ))]
24901 cusolverDnSetDeterministicMode,
24902 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
24903 cusolverDnSetEmulationStrategy,
24904 #[cfg(any(feature = "cuda-13000", feature = "cuda-13010"))]
24905 cusolverDnSetMathMode,
24906 cusolverDnSetStream,
24907 cusolverDnSgebrd,
24908 cusolverDnSgebrd_bufferSize,
24909 cusolverDnSgeqrf,
24910 cusolverDnSgeqrf_bufferSize,
24911 cusolverDnSgesvd,
24912 cusolverDnSgesvd_bufferSize,
24913 cusolverDnSgesvdaStridedBatched,
24914 cusolverDnSgesvdaStridedBatched_bufferSize,
24915 cusolverDnSgesvdj,
24916 cusolverDnSgesvdjBatched,
24917 cusolverDnSgesvdjBatched_bufferSize,
24918 cusolverDnSgesvdj_bufferSize,
24919 cusolverDnSgetrf,
24920 cusolverDnSgetrf_bufferSize,
24921 cusolverDnSgetrs,
24922 cusolverDnSlaswp,
24923 cusolverDnSlauum,
24924 cusolverDnSlauum_bufferSize,
24925 cusolverDnSorgbr,
24926 cusolverDnSorgbr_bufferSize,
24927 cusolverDnSorgqr,
24928 cusolverDnSorgqr_bufferSize,
24929 cusolverDnSorgtr,
24930 cusolverDnSorgtr_bufferSize,
24931 cusolverDnSormqr,
24932 cusolverDnSormqr_bufferSize,
24933 cusolverDnSormtr,
24934 cusolverDnSormtr_bufferSize,
24935 cusolverDnSpotrf,
24936 cusolverDnSpotrfBatched,
24937 cusolverDnSpotrf_bufferSize,
24938 cusolverDnSpotri,
24939 cusolverDnSpotri_bufferSize,
24940 cusolverDnSpotrs,
24941 cusolverDnSpotrsBatched,
24942 cusolverDnSsyevd,
24943 cusolverDnSsyevd_bufferSize,
24944 cusolverDnSsyevdx,
24945 cusolverDnSsyevdx_bufferSize,
24946 cusolverDnSsyevj,
24947 cusolverDnSsyevjBatched,
24948 cusolverDnSsyevjBatched_bufferSize,
24949 cusolverDnSsyevj_bufferSize,
24950 cusolverDnSsygvd,
24951 cusolverDnSsygvd_bufferSize,
24952 cusolverDnSsygvdx,
24953 cusolverDnSsygvdx_bufferSize,
24954 cusolverDnSsygvj,
24955 cusolverDnSsygvj_bufferSize,
24956 cusolverDnSsytrd,
24957 cusolverDnSsytrd_bufferSize,
24958 cusolverDnSsytrf,
24959 cusolverDnSsytrf_bufferSize,
24960 cusolverDnSsytri,
24961 cusolverDnSsytri_bufferSize,
24962 #[cfg(any(
24963 feature = "cuda-11040",
24964 feature = "cuda-11050",
24965 feature = "cuda-11060",
24966 feature = "cuda-11070",
24967 feature = "cuda-11080",
24968 feature = "cuda-12000",
24969 feature = "cuda-12010",
24970 feature = "cuda-12020",
24971 feature = "cuda-12030",
24972 feature = "cuda-12040",
24973 feature = "cuda-12050",
24974 feature = "cuda-12060",
24975 feature = "cuda-12080",
24976 feature = "cuda-12090"
24977 ))]
24978 cusolverDnSyevd,
24979 #[cfg(any(
24980 feature = "cuda-11040",
24981 feature = "cuda-11050",
24982 feature = "cuda-11060",
24983 feature = "cuda-11070",
24984 feature = "cuda-11080",
24985 feature = "cuda-12000",
24986 feature = "cuda-12010",
24987 feature = "cuda-12020",
24988 feature = "cuda-12030",
24989 feature = "cuda-12040",
24990 feature = "cuda-12050",
24991 feature = "cuda-12060",
24992 feature = "cuda-12080",
24993 feature = "cuda-12090"
24994 ))]
24995 cusolverDnSyevd_bufferSize,
24996 #[cfg(any(
24997 feature = "cuda-11040",
24998 feature = "cuda-11050",
24999 feature = "cuda-11060",
25000 feature = "cuda-11070",
25001 feature = "cuda-11080",
25002 feature = "cuda-12000",
25003 feature = "cuda-12010",
25004 feature = "cuda-12020",
25005 feature = "cuda-12030",
25006 feature = "cuda-12040",
25007 feature = "cuda-12050",
25008 feature = "cuda-12060",
25009 feature = "cuda-12080",
25010 feature = "cuda-12090"
25011 ))]
25012 cusolverDnSyevdx,
25013 #[cfg(any(
25014 feature = "cuda-11040",
25015 feature = "cuda-11050",
25016 feature = "cuda-11060",
25017 feature = "cuda-11070",
25018 feature = "cuda-11080",
25019 feature = "cuda-12000",
25020 feature = "cuda-12010",
25021 feature = "cuda-12020",
25022 feature = "cuda-12030",
25023 feature = "cuda-12040",
25024 feature = "cuda-12050",
25025 feature = "cuda-12060",
25026 feature = "cuda-12080",
25027 feature = "cuda-12090"
25028 ))]
25029 cusolverDnSyevdx_bufferSize,
25030 #[cfg(any(
25031 feature = "cuda-12060",
25032 feature = "cuda-12080",
25033 feature = "cuda-12090",
25034 feature = "cuda-13000",
25035 feature = "cuda-13010"
25036 ))]
25037 cusolverDnXgeev,
25038 #[cfg(any(
25039 feature = "cuda-12060",
25040 feature = "cuda-12080",
25041 feature = "cuda-12090",
25042 feature = "cuda-13000",
25043 feature = "cuda-13010"
25044 ))]
25045 cusolverDnXgeev_bufferSize,
25046 cusolverDnXgeqrf,
25047 cusolverDnXgeqrf_bufferSize,
25048 cusolverDnXgesvd,
25049 cusolverDnXgesvd_bufferSize,
25050 cusolverDnXgesvdjGetResidual,
25051 cusolverDnXgesvdjGetSweeps,
25052 cusolverDnXgesvdjSetMaxSweeps,
25053 cusolverDnXgesvdjSetSortEig,
25054 cusolverDnXgesvdjSetTolerance,
25055 cusolverDnXgesvdp,
25056 cusolverDnXgesvdp_bufferSize,
25057 cusolverDnXgesvdr,
25058 cusolverDnXgesvdr_bufferSize,
25059 cusolverDnXgetrf,
25060 cusolverDnXgetrf_bufferSize,
25061 cusolverDnXgetrs,
25062 #[cfg(any(feature = "cuda-12040"))]
25063 cusolverDnXlarft,
25064 #[cfg(any(
25065 feature = "cuda-12050",
25066 feature = "cuda-12060",
25067 feature = "cuda-12080",
25068 feature = "cuda-12090",
25069 feature = "cuda-13000",
25070 feature = "cuda-13010"
25071 ))]
25072 cusolverDnXlarft,
25073 #[cfg(any(feature = "cuda-12040"))]
25074 cusolverDnXlarft_bufferSize,
25075 #[cfg(any(
25076 feature = "cuda-12050",
25077 feature = "cuda-12060",
25078 feature = "cuda-12080",
25079 feature = "cuda-12090",
25080 feature = "cuda-13000",
25081 feature = "cuda-13010"
25082 ))]
25083 cusolverDnXlarft_bufferSize,
25084 cusolverDnXpotrf,
25085 cusolverDnXpotrf_bufferSize,
25086 cusolverDnXpotrs,
25087 #[cfg(any(
25088 feature = "cuda-12060",
25089 feature = "cuda-12080",
25090 feature = "cuda-12090",
25091 feature = "cuda-13000",
25092 feature = "cuda-13010"
25093 ))]
25094 cusolverDnXsyevBatched,
25095 #[cfg(any(
25096 feature = "cuda-12060",
25097 feature = "cuda-12080",
25098 feature = "cuda-12090",
25099 feature = "cuda-13000",
25100 feature = "cuda-13010"
25101 ))]
25102 cusolverDnXsyevBatched_bufferSize,
25103 cusolverDnXsyevd,
25104 cusolverDnXsyevd_bufferSize,
25105 cusolverDnXsyevdx,
25106 cusolverDnXsyevdx_bufferSize,
25107 cusolverDnXsyevjGetResidual,
25108 cusolverDnXsyevjGetSweeps,
25109 cusolverDnXsyevjSetMaxSweeps,
25110 cusolverDnXsyevjSetSortEig,
25111 cusolverDnXsyevjSetTolerance,
25112 cusolverDnXsytrs,
25113 cusolverDnXsytrs_bufferSize,
25114 cusolverDnXtrtri,
25115 cusolverDnXtrtri_bufferSize,
25116 cusolverDnZCgels,
25117 cusolverDnZCgels_bufferSize,
25118 cusolverDnZCgesv,
25119 cusolverDnZCgesv_bufferSize,
25120 cusolverDnZEgels,
25121 cusolverDnZEgels_bufferSize,
25122 cusolverDnZEgesv,
25123 cusolverDnZEgesv_bufferSize,
25124 cusolverDnZKgels,
25125 cusolverDnZKgels_bufferSize,
25126 cusolverDnZKgesv,
25127 cusolverDnZKgesv_bufferSize,
25128 cusolverDnZYgels,
25129 cusolverDnZYgels_bufferSize,
25130 cusolverDnZYgesv,
25131 cusolverDnZYgesv_bufferSize,
25132 cusolverDnZZgels,
25133 cusolverDnZZgels_bufferSize,
25134 cusolverDnZZgesv,
25135 cusolverDnZZgesv_bufferSize,
25136 cusolverDnZgebrd,
25137 cusolverDnZgebrd_bufferSize,
25138 cusolverDnZgeqrf,
25139 cusolverDnZgeqrf_bufferSize,
25140 cusolverDnZgesvd,
25141 cusolverDnZgesvd_bufferSize,
25142 cusolverDnZgesvdaStridedBatched,
25143 cusolverDnZgesvdaStridedBatched_bufferSize,
25144 cusolverDnZgesvdj,
25145 cusolverDnZgesvdjBatched,
25146 cusolverDnZgesvdjBatched_bufferSize,
25147 cusolverDnZgesvdj_bufferSize,
25148 cusolverDnZgetrf,
25149 cusolverDnZgetrf_bufferSize,
25150 cusolverDnZgetrs,
25151 cusolverDnZheevd,
25152 cusolverDnZheevd_bufferSize,
25153 cusolverDnZheevdx,
25154 cusolverDnZheevdx_bufferSize,
25155 cusolverDnZheevj,
25156 cusolverDnZheevjBatched,
25157 cusolverDnZheevjBatched_bufferSize,
25158 cusolverDnZheevj_bufferSize,
25159 cusolverDnZhegvd,
25160 cusolverDnZhegvd_bufferSize,
25161 cusolverDnZhegvdx,
25162 cusolverDnZhegvdx_bufferSize,
25163 cusolverDnZhegvj,
25164 cusolverDnZhegvj_bufferSize,
25165 cusolverDnZhetrd,
25166 cusolverDnZhetrd_bufferSize,
25167 cusolverDnZlaswp,
25168 cusolverDnZlauum,
25169 cusolverDnZlauum_bufferSize,
25170 cusolverDnZpotrf,
25171 cusolverDnZpotrfBatched,
25172 cusolverDnZpotrf_bufferSize,
25173 cusolverDnZpotri,
25174 cusolverDnZpotri_bufferSize,
25175 cusolverDnZpotrs,
25176 cusolverDnZpotrsBatched,
25177 cusolverDnZsytrf,
25178 cusolverDnZsytrf_bufferSize,
25179 cusolverDnZsytri,
25180 cusolverDnZsytri_bufferSize,
25181 cusolverDnZungbr,
25182 cusolverDnZungbr_bufferSize,
25183 cusolverDnZungqr,
25184 cusolverDnZungqr_bufferSize,
25185 cusolverDnZungtr,
25186 cusolverDnZungtr_bufferSize,
25187 cusolverDnZunmqr,
25188 cusolverDnZunmqr_bufferSize,
25189 cusolverDnZunmtr,
25190 cusolverDnZunmtr_bufferSize,
25191 cusolverGetProperty,
25192 cusolverGetVersion,
25193 cusolverRfAccessBundledFactorsDevice,
25194 cusolverRfAnalyze,
25195 cusolverRfBatchAnalyze,
25196 cusolverRfBatchRefactor,
25197 cusolverRfBatchResetValues,
25198 cusolverRfBatchSetupHost,
25199 cusolverRfBatchSolve,
25200 cusolverRfBatchZeroPivot,
25201 cusolverRfCreate,
25202 cusolverRfDestroy,
25203 cusolverRfExtractBundledFactorsHost,
25204 cusolverRfExtractSplitFactorsHost,
25205 cusolverRfGetAlgs,
25206 cusolverRfGetMatrixFormat,
25207 cusolverRfGetNumericBoostReport,
25208 cusolverRfGetNumericProperties,
25209 cusolverRfGetResetValuesFastMode,
25210 cusolverRfRefactor,
25211 cusolverRfResetValues,
25212 cusolverRfSetAlgs,
25213 cusolverRfSetMatrixFormat,
25214 cusolverRfSetNumericProperties,
25215 cusolverRfSetResetValuesFastMode,
25216 cusolverRfSetupDevice,
25217 cusolverRfSetupHost,
25218 cusolverRfSolve,
25219 cusolverSpCcsreigsHost,
25220 cusolverSpCcsreigvsi,
25221 cusolverSpCcsreigvsiHost,
25222 cusolverSpCcsrlsqvqrHost,
25223 cusolverSpCcsrlsvchol,
25224 cusolverSpCcsrlsvcholHost,
25225 cusolverSpCcsrlsvluHost,
25226 cusolverSpCcsrlsvqr,
25227 cusolverSpCcsrlsvqrHost,
25228 cusolverSpCcsrqrBufferInfoBatched,
25229 cusolverSpCcsrqrsvBatched,
25230 cusolverSpCcsrzfdHost,
25231 cusolverSpCreate,
25232 cusolverSpCreateCsrqrInfo,
25233 cusolverSpDcsreigsHost,
25234 cusolverSpDcsreigvsi,
25235 cusolverSpDcsreigvsiHost,
25236 cusolverSpDcsrlsqvqrHost,
25237 cusolverSpDcsrlsvchol,
25238 cusolverSpDcsrlsvcholHost,
25239 cusolverSpDcsrlsvluHost,
25240 cusolverSpDcsrlsvqr,
25241 cusolverSpDcsrlsvqrHost,
25242 cusolverSpDcsrqrBufferInfoBatched,
25243 cusolverSpDcsrqrsvBatched,
25244 cusolverSpDcsrzfdHost,
25245 cusolverSpDestroy,
25246 cusolverSpDestroyCsrqrInfo,
25247 cusolverSpGetStream,
25248 cusolverSpScsreigsHost,
25249 cusolverSpScsreigvsi,
25250 cusolverSpScsreigvsiHost,
25251 cusolverSpScsrlsqvqrHost,
25252 cusolverSpScsrlsvchol,
25253 cusolverSpScsrlsvcholHost,
25254 cusolverSpScsrlsvluHost,
25255 cusolverSpScsrlsvqr,
25256 cusolverSpScsrlsvqrHost,
25257 cusolverSpScsrqrBufferInfoBatched,
25258 cusolverSpScsrqrsvBatched,
25259 cusolverSpScsrzfdHost,
25260 cusolverSpSetStream,
25261 cusolverSpXcsrissymHost,
25262 cusolverSpXcsrmetisndHost,
25263 cusolverSpXcsrpermHost,
25264 cusolverSpXcsrperm_bufferSizeHost,
25265 cusolverSpXcsrqrAnalysisBatched,
25266 cusolverSpXcsrsymamdHost,
25267 cusolverSpXcsrsymmdqHost,
25268 cusolverSpXcsrsymrcmHost,
25269 cusolverSpZcsreigsHost,
25270 cusolverSpZcsreigvsi,
25271 cusolverSpZcsreigvsiHost,
25272 cusolverSpZcsrlsqvqrHost,
25273 cusolverSpZcsrlsvchol,
25274 cusolverSpZcsrlsvcholHost,
25275 cusolverSpZcsrlsvluHost,
25276 cusolverSpZcsrlsvqr,
25277 cusolverSpZcsrlsvqrHost,
25278 cusolverSpZcsrqrBufferInfoBatched,
25279 cusolverSpZcsrqrsvBatched,
25280 cusolverSpZcsrzfdHost,
25281 })
25282 }
25283 }
25284 pub unsafe fn is_culib_present() -> bool {
25285 let lib_names = ["cusolver"];
25286 let choices = lib_names
25287 .iter()
25288 .map(|l| crate::get_lib_name_candidates(l))
25289 .flatten();
25290 for choice in choices {
25291 if Lib::new(choice).is_ok() {
25292 return true;
25293 }
25294 }
25295 false
25296 }
25297 pub unsafe fn culib() -> &'static Lib {
25298 static LIB: std::sync::OnceLock<Lib> = std::sync::OnceLock::new();
25299 LIB.get_or_init(|| {
25300 let lib_names = std::vec!["cusolver"];
25301 let choices: std::vec::Vec<_> = lib_names
25302 .iter()
25303 .map(|l| crate::get_lib_name_candidates(l))
25304 .flatten()
25305 .collect();
25306 for choice in choices.iter() {
25307 if let Ok(lib) = Lib::new(choice) {
25308 return lib;
25309 }
25310 }
25311 crate::panic_no_lib_found(lib_names[0], &choices);
25312 })
25313 }
25314}
25315#[cfg(feature = "dynamic-loading")]
25316pub use loaded::*;