nvmath-python 1.0.0__cp314-cp314t-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. nvmath/__init__.pxd +0 -0
  2. nvmath/__init__.py +45 -0
  3. nvmath/_internal/__init__.py +0 -0
  4. nvmath/_internal/attribute_ifc_factory.py +330 -0
  5. nvmath/_internal/layout.py +70 -0
  6. nvmath/_internal/templates.py +130 -0
  7. nvmath/_internal/threadsafe.py +106 -0
  8. nvmath/_internal/utils.py +43 -0
  9. nvmath/_internal/workspace.py +490 -0
  10. nvmath/_utils.py +147 -0
  11. nvmath/bindings/__init__.py +60 -0
  12. nvmath/bindings/_internal/__init__.pxd +0 -0
  13. nvmath/bindings/_internal/__init__.py +0 -0
  14. nvmath/bindings/_internal/common_types.pxd +31 -0
  15. nvmath/bindings/_internal/cublas.cp314t-win_amd64.pyd +0 -0
  16. nvmath/bindings/_internal/cublas.pxd +530 -0
  17. nvmath/bindings/_internal/cublasLt.cp314t-win_amd64.pyd +0 -0
  18. nvmath/bindings/_internal/cublasLt.pxd +59 -0
  19. nvmath/bindings/_internal/cublasMp.pxd +52 -0
  20. nvmath/bindings/_internal/cudss.cp314t-win_amd64.pyd +0 -0
  21. nvmath/bindings/_internal/cudss.pxd +54 -0
  22. nvmath/bindings/_internal/cufft.cp314t-win_amd64.pyd +0 -0
  23. nvmath/bindings/_internal/cufft.pxd +70 -0
  24. nvmath/bindings/_internal/cufftMp.pxd +77 -0
  25. nvmath/bindings/_internal/curand.cp314t-win_amd64.pyd +0 -0
  26. nvmath/bindings/_internal/curand.pxd +42 -0
  27. nvmath/bindings/_internal/cusolver.cp314t-win_amd64.pyd +0 -0
  28. nvmath/bindings/_internal/cusolver.pxd +15 -0
  29. nvmath/bindings/_internal/cusolverDn.cp314t-win_amd64.pyd +0 -0
  30. nvmath/bindings/_internal/cusolverDn.pxd +406 -0
  31. nvmath/bindings/_internal/cusolverMp.pxd +71 -0
  32. nvmath/bindings/_internal/cusolverSp.cp314t-win_amd64.pyd +0 -0
  33. nvmath/bindings/_internal/cusolverSp.pxd +75 -0
  34. nvmath/bindings/_internal/cusparse.cp314t-win_amd64.pyd +0 -0
  35. nvmath/bindings/_internal/cusparse.pxd +471 -0
  36. nvmath/bindings/_internal/cusparseLt.cp314t-win_amd64.pyd +0 -0
  37. nvmath/bindings/_internal/cusparseLt.pxd +48 -0
  38. nvmath/bindings/_internal/cutensor.cp314t-win_amd64.pyd +0 -0
  39. nvmath/bindings/_internal/cutensor.pxd +58 -0
  40. nvmath/bindings/_internal/mathdx.cp314t-win_amd64.pyd +0 -0
  41. nvmath/bindings/_internal/mathdx.pxd +116 -0
  42. nvmath/bindings/_internal/nvshmem.pxd +29 -0
  43. nvmath/bindings/_internal/utils.cp314t-win_amd64.pyd +0 -0
  44. nvmath/bindings/_internal/utils.pxd +174 -0
  45. nvmath/bindings/_internal/utils.pyi +10 -0
  46. nvmath/bindings/cublas.cp314t-win_amd64.pyd +0 -0
  47. nvmath/bindings/cublas.pxd +558 -0
  48. nvmath/bindings/cublas.pyi +812 -0
  49. nvmath/bindings/cublasLt.cp314t-win_amd64.pyd +0 -0
  50. nvmath/bindings/cublasLt.pxd +109 -0
  51. nvmath/bindings/cublasLt.pyi +1461 -0
  52. nvmath/bindings/cublasMp.pxd +85 -0
  53. nvmath/bindings/cublasMp.pyi +267 -0
  54. nvmath/bindings/cudss.cp314t-win_amd64.pyd +0 -0
  55. nvmath/bindings/cudss.pxd +98 -0
  56. nvmath/bindings/cudss.pyi +443 -0
  57. nvmath/bindings/cufft.cp314t-win_amd64.pyd +0 -0
  58. nvmath/bindings/cufft.pxd +118 -0
  59. nvmath/bindings/cufft.pyi +301 -0
  60. nvmath/bindings/cufftMp.pxd +124 -0
  61. nvmath/bindings/cufftMp.pyi +326 -0
  62. nvmath/bindings/curand.cp314t-win_amd64.pyd +0 -0
  63. nvmath/bindings/curand.pxd +71 -0
  64. nvmath/bindings/curand.pyi +189 -0
  65. nvmath/bindings/cusolver.cp314t-win_amd64.pyd +0 -0
  66. nvmath/bindings/cusolver.pxd +62 -0
  67. nvmath/bindings/cusolver.pyi +320 -0
  68. nvmath/bindings/cusolverDn.cp314t-win_amd64.pyd +0 -0
  69. nvmath/bindings/cusolverDn.pxd +430 -0
  70. nvmath/bindings/cusolverDn.pyi +422 -0
  71. nvmath/bindings/cusolverMp.pxd +98 -0
  72. nvmath/bindings/cusolverMp.pyi +114 -0
  73. nvmath/bindings/cusolverSp.cp314t-win_amd64.pyd +0 -0
  74. nvmath/bindings/cusolverSp.pxd +95 -0
  75. nvmath/bindings/cusolverSp.pyi +70 -0
  76. nvmath/bindings/cusparse.cp314t-win_amd64.pyd +0 -0
  77. nvmath/bindings/cusparse.pxd +546 -0
  78. nvmath/bindings/cusparse.pyi +1017 -0
  79. nvmath/bindings/cusparseLt.cp314t-win_amd64.pyd +0 -0
  80. nvmath/bindings/cusparseLt.pxd +99 -0
  81. nvmath/bindings/cusparseLt.pyi +252 -0
  82. nvmath/bindings/cutensor.cp314t-win_amd64.pyd +0 -0
  83. nvmath/bindings/cutensor.pxd +98 -0
  84. nvmath/bindings/cutensor.pyi +324 -0
  85. nvmath/bindings/cycublas.cp314t-win_amd64.pyd +0 -0
  86. nvmath/bindings/cycublas.pxd +664 -0
  87. nvmath/bindings/cycublasLt.cp314t-win_amd64.pyd +0 -0
  88. nvmath/bindings/cycublasLt.pxd +1045 -0
  89. nvmath/bindings/cycublasMp.pxd +171 -0
  90. nvmath/bindings/cycudss.cp314t-win_amd64.pyd +0 -0
  91. nvmath/bindings/cycudss.pxd +277 -0
  92. nvmath/bindings/cycufft.cp314t-win_amd64.pyd +0 -0
  93. nvmath/bindings/cycufft.pxd +333 -0
  94. nvmath/bindings/cycufftMp.pxd +342 -0
  95. nvmath/bindings/cycurand.cp314t-win_amd64.pyd +0 -0
  96. nvmath/bindings/cycurand.pxd +141 -0
  97. nvmath/bindings/cycusolver.cp314t-win_amd64.pyd +0 -0
  98. nvmath/bindings/cycusolver.pxd +137 -0
  99. nvmath/bindings/cycusolverDn.cp314t-win_amd64.pyd +0 -0
  100. nvmath/bindings/cycusolverDn.pxd +443 -0
  101. nvmath/bindings/cycusolverMp.pxd +107 -0
  102. nvmath/bindings/cycusolverSp.cp314t-win_amd64.pyd +0 -0
  103. nvmath/bindings/cycusolverSp.pxd +93 -0
  104. nvmath/bindings/cycusparse.cp314t-win_amd64.pyd +0 -0
  105. nvmath/bindings/cycusparse.pxd +679 -0
  106. nvmath/bindings/cycusparseLt.cp314t-win_amd64.pyd +0 -0
  107. nvmath/bindings/cycusparseLt.pxd +135 -0
  108. nvmath/bindings/cycutensor.cp314t-win_amd64.pyd +0 -0
  109. nvmath/bindings/cycutensor.pxd +189 -0
  110. nvmath/bindings/cymathdx.cp314t-win_amd64.pyd +0 -0
  111. nvmath/bindings/cymathdx.pxd +552 -0
  112. nvmath/bindings/cynvshmem.pxd +118 -0
  113. nvmath/bindings/mathdx.cp314t-win_amd64.pyd +0 -0
  114. nvmath/bindings/mathdx.pxd +182 -0
  115. nvmath/bindings/mathdx.pyi +1562 -0
  116. nvmath/bindings/nvpl/__init__.pxd +0 -0
  117. nvmath/bindings/nvpl/__init__.py +13 -0
  118. nvmath/bindings/nvpl/_internal/__init__.pxd +0 -0
  119. nvmath/bindings/nvpl/_internal/__init__.py +0 -0
  120. nvmath/bindings/nvpl/_internal/blas.cp314t-win_amd64.pyd +0 -0
  121. nvmath/bindings/nvpl/_internal/blas.pxd +237 -0
  122. nvmath/bindings/nvpl/_internal/fft.cp314t-win_amd64.pyd +0 -0
  123. nvmath/bindings/nvpl/_internal/fft.pxd +36 -0
  124. nvmath/bindings/nvpl/blas.cp314t-win_amd64.pyd +0 -0
  125. nvmath/bindings/nvpl/blas.pxd +131 -0
  126. nvmath/bindings/nvpl/blas.pyi +168 -0
  127. nvmath/bindings/nvpl/cyblas.cp314t-win_amd64.pyd +0 -0
  128. nvmath/bindings/nvpl/cyblas.pxd +280 -0
  129. nvmath/bindings/nvpl/cyfft.cp314t-win_amd64.pyd +0 -0
  130. nvmath/bindings/nvpl/cyfft.pxd +93 -0
  131. nvmath/bindings/nvpl/fft.cp314t-win_amd64.pyd +0 -0
  132. nvmath/bindings/nvpl/fft.pxd +100 -0
  133. nvmath/bindings/nvpl/fft.pyi +168 -0
  134. nvmath/bindings/nvshmem.pxd +54 -0
  135. nvmath/bindings/nvshmem.pyi +191 -0
  136. nvmath/device/__init__.py +38 -0
  137. nvmath/device/_deprecated.py +33 -0
  138. nvmath/device/common.py +315 -0
  139. nvmath/device/common_backend.py +131 -0
  140. nvmath/device/common_cuda.py +201 -0
  141. nvmath/device/common_numba.py +300 -0
  142. nvmath/device/common_numba_cuda_mlir.py +202 -0
  143. nvmath/device/common_opaque_tensor.py +201 -0
  144. nvmath/device/cublasdx.py +1606 -0
  145. nvmath/device/cublasdx_backend.py +860 -0
  146. nvmath/device/cublasdx_numba.py +1534 -0
  147. nvmath/device/cublasdx_numba_cuda_mlir.py +208 -0
  148. nvmath/device/cufftdx.py +373 -0
  149. nvmath/device/cufftdx_backend.py +220 -0
  150. nvmath/device/cufftdx_numba.py +140 -0
  151. nvmath/device/cufftdx_numba_cuda_mlir.py +79 -0
  152. nvmath/device/curand_kernel.py +9147 -0
  153. nvmath/device/cusolverdx.py +2708 -0
  154. nvmath/device/cusolverdx_backend.py +440 -0
  155. nvmath/device/cusolverdx_numba.py +567 -0
  156. nvmath/device/cusolverdx_numba_cuda_mlir.py +604 -0
  157. nvmath/device/cusolverdx_overload_backend.py +1029 -0
  158. nvmath/device/llvm_array.py +29 -0
  159. nvmath/device/random.py +441 -0
  160. nvmath/device/random_helpers.py +23 -0
  161. nvmath/device/random_states.py +187 -0
  162. nvmath/device/types.py +138 -0
  163. nvmath/device/vector_types_numba.py +259 -0
  164. nvmath/distributed/__init__.py +200 -0
  165. nvmath/distributed/_internal/__init__.py +0 -0
  166. nvmath/distributed/_internal/nccl.py +86 -0
  167. nvmath/distributed/_internal/nvshmem.py +307 -0
  168. nvmath/distributed/_internal/symmetric_memory.py +35 -0
  169. nvmath/distributed/_internal/tensor_ifc.py +70 -0
  170. nvmath/distributed/_internal/tensor_ifc_cupy.py +68 -0
  171. nvmath/distributed/_internal/tensor_ifc_host_device.py +172 -0
  172. nvmath/distributed/_internal/tensor_ifc_numpy.py +46 -0
  173. nvmath/distributed/_internal/tensor_ifc_torch.py +162 -0
  174. nvmath/distributed/_internal/tensor_wrapper.py +81 -0
  175. nvmath/distributed/_utils.py +167 -0
  176. nvmath/distributed/distribution/__init__.py +30 -0
  177. nvmath/distributed/distribution/_configuration.py +39 -0
  178. nvmath/distributed/distribution/distributions.py +1024 -0
  179. nvmath/distributed/distribution/redistribute.py +1284 -0
  180. nvmath/distributed/fft/__init__.py +7 -0
  181. nvmath/distributed/fft/_configuration.py +82 -0
  182. nvmath/distributed/fft/fft.py +2742 -0
  183. nvmath/distributed/linalg/__init__.py +22 -0
  184. nvmath/distributed/linalg/_internal/__init__.py +3 -0
  185. nvmath/distributed/linalg/_internal/epilog_protocol.py +586 -0
  186. nvmath/distributed/linalg/_internal/matmul_desc_ifc.py +28 -0
  187. nvmath/distributed/linalg/advanced/__init__.py +8 -0
  188. nvmath/distributed/linalg/advanced/_configuration.py +171 -0
  189. nvmath/distributed/linalg/advanced/matmulmod.py +3573 -0
  190. nvmath/distributed/linalg/generic/__init__.py +8 -0
  191. nvmath/distributed/linalg/generic/_caching.py +66 -0
  192. nvmath/distributed/linalg/generic/_configuration.py +61 -0
  193. nvmath/distributed/linalg/generic/_factorization.py +172 -0
  194. nvmath/distributed/linalg/generic/_initialization.py +966 -0
  195. nvmath/distributed/linalg/generic/_problem_spec.py +511 -0
  196. nvmath/distributed/linalg/generic/solvermod.py +1368 -0
  197. nvmath/distributed/process_group.py +408 -0
  198. nvmath/fft/__init__.py +7 -0
  199. nvmath/fft/_configuration.py +189 -0
  200. nvmath/fft/_exec_utils.py +82 -0
  201. nvmath/fft/_helpers.py +237 -0
  202. nvmath/fft/fft.py +3122 -0
  203. nvmath/internal/__init__.pxd +3 -0
  204. nvmath/internal/__init__.py +10 -0
  205. nvmath/internal/_bindings.cp314t-win_amd64.pyd +0 -0
  206. nvmath/internal/_bindings.pxd +18 -0
  207. nvmath/internal/_device_utils.py +45 -0
  208. nvmath/internal/_layout/__init__.pxd +3 -0
  209. nvmath/internal/_layout/__init__.py +7 -0
  210. nvmath/internal/_layout/_layout.cp314t-win_amd64.pyd +0 -0
  211. nvmath/internal/_layout/_layout.pxd +1303 -0
  212. nvmath/internal/_layout/_layout.pyi +1145 -0
  213. nvmath/internal/enum_utils.py +142 -0
  214. nvmath/internal/formatters.py +87 -0
  215. nvmath/internal/mem_limit.py +51 -0
  216. nvmath/internal/memory.cp314t-win_amd64.pyd +0 -0
  217. nvmath/internal/memory.pxd +13 -0
  218. nvmath/internal/memory.pyi +50 -0
  219. nvmath/internal/ndbuffer/__init__.pxd +3 -0
  220. nvmath/internal/ndbuffer/__init__.py +9 -0
  221. nvmath/internal/ndbuffer/_copy_kernel.cp314t-win_amd64.pyd +0 -0
  222. nvmath/internal/ndbuffer/_copy_kernel.pxd +10 -0
  223. nvmath/internal/ndbuffer/_jit.cp314t-win_amd64.pyd +0 -0
  224. nvmath/internal/ndbuffer/_jit.pxd +7 -0
  225. nvmath/internal/ndbuffer/_ndbuffer.cp314t-win_amd64.pyd +0 -0
  226. nvmath/internal/ndbuffer/_ndbuffer.pxd +40 -0
  227. nvmath/internal/ndbuffer/_ndbuffer.pyi +463 -0
  228. nvmath/internal/ndbuffer/copy_kernel/args.h +34 -0
  229. nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/array_view.h +52 -0
  230. nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/elementwise.h +68 -0
  231. nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/grid_indexer.h +69 -0
  232. nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/transposed.h +242 -0
  233. nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/type_utils.h +39 -0
  234. nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/utils.h +132 -0
  235. nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/vec.h +159 -0
  236. nvmath/internal/ndbuffer/copy_kernel/elementwise.h +53 -0
  237. nvmath/internal/ndbuffer/copy_kernel/transposed.h +58 -0
  238. nvmath/internal/package_ifc.py +168 -0
  239. nvmath/internal/package_ifc_cuda.py +57 -0
  240. nvmath/internal/package_ifc_cupy.py +67 -0
  241. nvmath/internal/package_ifc_torch.py +69 -0
  242. nvmath/internal/package_wrapper.py +14 -0
  243. nvmath/internal/tensor_ifc.py +179 -0
  244. nvmath/internal/tensor_ifc_cupy.py +234 -0
  245. nvmath/internal/tensor_ifc_ndbuffer.py +147 -0
  246. nvmath/internal/tensor_ifc_numpy.py +184 -0
  247. nvmath/internal/tensor_ifc_torch.py +178 -0
  248. nvmath/internal/tensor_wrapper.py +160 -0
  249. nvmath/internal/typemaps.py +113 -0
  250. nvmath/internal/utils.py +805 -0
  251. nvmath/linalg/__init__.py +56 -0
  252. nvmath/linalg/_internal/__init__.py +3 -0
  253. nvmath/linalg/_internal/algo_cap_ifc.py +82 -0
  254. nvmath/linalg/_internal/algo_config_ifc.py +43 -0
  255. nvmath/linalg/_internal/batch.py +234 -0
  256. nvmath/linalg/_internal/enum_to_tuples.py +64 -0
  257. nvmath/linalg/_internal/epilog_protocol.py +766 -0
  258. nvmath/linalg/_internal/layout.py +624 -0
  259. nvmath/linalg/_internal/matmul_desc_ifc.py +28 -0
  260. nvmath/linalg/_internal/matmul_pref_ifc.py +27 -0
  261. nvmath/linalg/_internal/matrix_layout_ifc.py +26 -0
  262. nvmath/linalg/_internal/solver_utils.py +432 -0
  263. nvmath/linalg/_internal/typemaps.py +144 -0
  264. nvmath/linalg/_internal/utils.py +157 -0
  265. nvmath/linalg/advanced/__init__.py +8 -0
  266. nvmath/linalg/advanced/_algorithmmod.py +170 -0
  267. nvmath/linalg/advanced/_configuration.py +351 -0
  268. nvmath/linalg/advanced/helpers/__init__.py +5 -0
  269. nvmath/linalg/advanced/helpers/matmul.py +1316 -0
  270. nvmath/linalg/advanced/matmulmod.py +3734 -0
  271. nvmath/linalg/generic/__init__.py +53 -0
  272. nvmath/linalg/generic/_configuration/__init__.py +39 -0
  273. nvmath/linalg/generic/_configuration/layout.py +263 -0
  274. nvmath/linalg/generic/_configuration/match.py +734 -0
  275. nvmath/linalg/generic/_configuration/qualifiers.py +493 -0
  276. nvmath/linalg/generic/_configuration/solver_configuration.py +59 -0
  277. nvmath/linalg/generic/_configuration/wrap.py +217 -0
  278. nvmath/linalg/generic/_dtype.py +15 -0
  279. nvmath/linalg/generic/matmulmod.py +2094 -0
  280. nvmath/linalg/generic/solvermod.py +1301 -0
  281. nvmath/memory.py +279 -0
  282. nvmath/sparse/__init__.py +38 -0
  283. nvmath/sparse/_internal/__init__.py +21 -0
  284. nvmath/sparse/_internal/common_utils.py +147 -0
  285. nvmath/sparse/_internal/cudss_config_ifc.py +702 -0
  286. nvmath/sparse/_internal/cudss_data_ifc.py +399 -0
  287. nvmath/sparse/_internal/cudss_utils.py +506 -0
  288. nvmath/sparse/_internal/cusparse_utils.py +382 -0
  289. nvmath/sparse/_internal/sparse_bsc_ifc.py +303 -0
  290. nvmath/sparse/_internal/sparse_bsr_ifc.py +305 -0
  291. nvmath/sparse/_internal/sparse_coo_ifc.py +256 -0
  292. nvmath/sparse/_internal/sparse_csc_ifc.py +268 -0
  293. nvmath/sparse/_internal/sparse_csr_ifc.py +288 -0
  294. nvmath/sparse/_internal/sparse_dia_ifc.py +242 -0
  295. nvmath/sparse/_internal/sparse_format_helpers.py +601 -0
  296. nvmath/sparse/_internal/sparse_tensor_ifc.py +133 -0
  297. nvmath/sparse/_internal/sparse_ust_ifc.py +141 -0
  298. nvmath/sparse/_internal/utils.py +56 -0
  299. nvmath/sparse/advanced/__init__.py +7 -0
  300. nvmath/sparse/advanced/_configuration.py +227 -0
  301. nvmath/sparse/advanced/direct_solver.py +2069 -0
  302. nvmath/sparse/generic/__init__.py +7 -0
  303. nvmath/sparse/generic/_configuration.py +129 -0
  304. nvmath/sparse/generic/_helpers.py +137 -0
  305. nvmath/sparse/generic/_thunks.py +21 -0
  306. nvmath/sparse/generic/matmulmod.py +2353 -0
  307. nvmath/sparse/ust/__init__.py +7 -0
  308. nvmath/sparse/ust/_converters.py +422 -0
  309. nvmath/sparse/ust/_cpp.py +28 -0
  310. nvmath/sparse/ust/_drawer.py +565 -0
  311. nvmath/sparse/ust/_emitter.py +1033 -0
  312. nvmath/sparse/ust/_jit.py +188 -0
  313. nvmath/sparse/ust/_kernel.py +282 -0
  314. nvmath/sparse/ust/_utils.py +149 -0
  315. nvmath/sparse/ust/interfaces/__init__.py +0 -0
  316. nvmath/sparse/ust/interfaces/torch_interface.py +476 -0
  317. nvmath/sparse/ust/tensor.py +1016 -0
  318. nvmath/sparse/ust/tensor_format.py +957 -0
  319. nvmath/tensor/__init__.py +6 -0
  320. nvmath/tensor/_configuration.py +120 -0
  321. nvmath/tensor/_internal/__init__.py +3 -0
  322. nvmath/tensor/_internal/cutensor_config_ifc.py +279 -0
  323. nvmath/tensor/_internal/cutensor_utils.py +230 -0
  324. nvmath/tensor/_internal/data.py +43 -0
  325. nvmath/tensor/_internal/einsum_parser.py +444 -0
  326. nvmath/tensor/_internal/typemaps.py +96 -0
  327. nvmath/tensor/contract.py +1900 -0
  328. nvmath_python-1.0.0.dist-info/METADATA +134 -0
  329. nvmath_python-1.0.0.dist-info/RECORD +332 -0
  330. nvmath_python-1.0.0.dist-info/WHEEL +5 -0
  331. nvmath_python-1.0.0.dist-info/licenses/LICENSE +177 -0
  332. nvmath_python-1.0.0.dist-info/top_level.txt +2 -0
@@ -0,0 +1,342 @@
1
+ # Copyright (c) 2025-2026, NVIDIA CORPORATION & AFFILIATES. ALL RIGHTS RESERVED.
2
+ #
3
+ # SPDX-License-Identifier: Apache-2.0
4
+ #
5
+ # This code was automatically generated across versions from 11.2.6 to 11.4.0, generator version 0.3.1.dev1471+g7122059e9. Do not modify it directly.
6
+ # This layer exposes the C header to Cython as-is.
7
+ from ._internal.common_types cimport cudaDataType, cudaDataType_t, cudaStream_t, libraryPropertyType, libraryPropertyType_t, cuComplex, cuDoubleComplex
8
+
9
+
10
+ ###############################################################################
11
+ # Types (structs, enums, ...)
12
+ ###############################################################################
13
+
14
+ # enums
15
+ ctypedef enum libFormat_t "libFormat_t":
16
+ LIB_FORMAT_CUFFT "LIB_FORMAT_CUFFT" = 0x0
17
+ LIB_FORMAT_UNDEFINED "LIB_FORMAT_UNDEFINED" = 0x1
18
+
19
+ ctypedef enum cufftResult "cufftResult":
20
+ CUFFT_SUCCESS "CUFFT_SUCCESS" = 0x0
21
+ CUFFT_INVALID_PLAN "CUFFT_INVALID_PLAN" = 0x1
22
+ CUFFT_ALLOC_FAILED "CUFFT_ALLOC_FAILED" = 0x2
23
+ CUFFT_INVALID_TYPE "CUFFT_INVALID_TYPE" = 0x3
24
+ CUFFT_INVALID_VALUE "CUFFT_INVALID_VALUE" = 0x4
25
+ CUFFT_INTERNAL_ERROR "CUFFT_INTERNAL_ERROR" = 0x5
26
+ CUFFT_EXEC_FAILED "CUFFT_EXEC_FAILED" = 0x6
27
+ CUFFT_SETUP_FAILED "CUFFT_SETUP_FAILED" = 0x7
28
+ CUFFT_INVALID_SIZE "CUFFT_INVALID_SIZE" = 0x8
29
+ CUFFT_UNALIGNED_DATA "CUFFT_UNALIGNED_DATA" = 0x9
30
+ CUFFT_INCOMPLETE_PARAMETER_LIST "CUFFT_INCOMPLETE_PARAMETER_LIST" = 0xA
31
+ CUFFT_INVALID_DEVICE "CUFFT_INVALID_DEVICE" = 0xB
32
+ CUFFT_PARSE_ERROR "CUFFT_PARSE_ERROR" = 0xC
33
+ CUFFT_NO_WORKSPACE "CUFFT_NO_WORKSPACE" = 0xD
34
+ CUFFT_NOT_IMPLEMENTED "CUFFT_NOT_IMPLEMENTED" = 0xE
35
+ CUFFT_LICENSE_ERROR "CUFFT_LICENSE_ERROR" = 0x0F
36
+ CUFFT_NOT_SUPPORTED "CUFFT_NOT_SUPPORTED" = 0x10
37
+ _CUFFTRESULT_INTERNAL_LOADING_ERROR "_CUFFTRESULT_INTERNAL_LOADING_ERROR" = -42
38
+
39
+ ctypedef enum cufftType "cufftType":
40
+ CUFFT_R2C "CUFFT_R2C" = 0x2a
41
+ CUFFT_C2R "CUFFT_C2R" = 0x2c
42
+ CUFFT_C2C "CUFFT_C2C" = 0x29
43
+ CUFFT_D2Z "CUFFT_D2Z" = 0x6a
44
+ CUFFT_Z2D "CUFFT_Z2D" = 0x6c
45
+ CUFFT_Z2Z "CUFFT_Z2Z" = 0x69
46
+
47
+ ctypedef enum cufftCompatibility "cufftCompatibility":
48
+ CUFFT_COMPATIBILITY_FFTW_PADDING "CUFFT_COMPATIBILITY_FFTW_PADDING" = 0x01
49
+
50
+ ctypedef enum cufftProperty "cufftProperty":
51
+ NVFFT_PLAN_PROPERTY_INT64_PATIENT_JIT "NVFFT_PLAN_PROPERTY_INT64_PATIENT_JIT" = 0x1
52
+ NVFFT_PLAN_PROPERTY_INT64_MAX_NUM_HOST_THREADS "NVFFT_PLAN_PROPERTY_INT64_MAX_NUM_HOST_THREADS" = 0x2
53
+
54
+ ctypedef enum cufftXtSubFormat "cufftXtSubFormat":
55
+ CUFFT_XT_FORMAT_INPUT "CUFFT_XT_FORMAT_INPUT" = 0x00
56
+ CUFFT_XT_FORMAT_OUTPUT "CUFFT_XT_FORMAT_OUTPUT" = 0x01
57
+ CUFFT_XT_FORMAT_INPLACE "CUFFT_XT_FORMAT_INPLACE" = 0x02
58
+ CUFFT_XT_FORMAT_INPLACE_SHUFFLED "CUFFT_XT_FORMAT_INPLACE_SHUFFLED" = 0x03
59
+ CUFFT_XT_FORMAT_1D_INPUT_SHUFFLED "CUFFT_XT_FORMAT_1D_INPUT_SHUFFLED" = 0x04
60
+ CUFFT_XT_FORMAT_DISTRIBUTED_INPUT "CUFFT_XT_FORMAT_DISTRIBUTED_INPUT" = 0x05
61
+ CUFFT_XT_FORMAT_DISTRIBUTED_OUTPUT "CUFFT_XT_FORMAT_DISTRIBUTED_OUTPUT" = 0x06
62
+ CUFFT_FORMAT_UNDEFINED "CUFFT_FORMAT_UNDEFINED" = 0x07
63
+
64
+ ctypedef enum cufftXtCopyType "cufftXtCopyType":
65
+ CUFFT_COPY_HOST_TO_DEVICE "CUFFT_COPY_HOST_TO_DEVICE" = 0x00
66
+ CUFFT_COPY_DEVICE_TO_HOST "CUFFT_COPY_DEVICE_TO_HOST" = 0x01
67
+ CUFFT_COPY_DEVICE_TO_DEVICE "CUFFT_COPY_DEVICE_TO_DEVICE" = 0x02
68
+ CUFFT_COPY_UNDEFINED "CUFFT_COPY_UNDEFINED" = 0x03
69
+
70
+ ctypedef enum cufftXtQueryType "cufftXtQueryType":
71
+ CUFFT_QUERY_1D_FACTORS "CUFFT_QUERY_1D_FACTORS" = 0x00
72
+ CUFFT_QUERY_UNDEFINED "CUFFT_QUERY_UNDEFINED" = 0x01
73
+
74
+ ctypedef enum cufftXtWorkAreaPolicy "cufftXtWorkAreaPolicy":
75
+ CUFFT_WORKAREA_MINIMAL "CUFFT_WORKAREA_MINIMAL" = 0
76
+ CUFFT_WORKAREA_USER "CUFFT_WORKAREA_USER" = 1
77
+ CUFFT_WORKAREA_PERFORMANCE "CUFFT_WORKAREA_PERFORMANCE" = 2
78
+
79
+ ctypedef enum cufftXtCallbackType "cufftXtCallbackType":
80
+ CUFFT_CB_LD_COMPLEX "CUFFT_CB_LD_COMPLEX" = 0x0
81
+ CUFFT_CB_LD_COMPLEX_DOUBLE "CUFFT_CB_LD_COMPLEX_DOUBLE" = 0x1
82
+ CUFFT_CB_LD_REAL "CUFFT_CB_LD_REAL" = 0x2
83
+ CUFFT_CB_LD_REAL_DOUBLE "CUFFT_CB_LD_REAL_DOUBLE" = 0x3
84
+ CUFFT_CB_ST_COMPLEX "CUFFT_CB_ST_COMPLEX" = 0x4
85
+ CUFFT_CB_ST_COMPLEX_DOUBLE "CUFFT_CB_ST_COMPLEX_DOUBLE" = 0x5
86
+ CUFFT_CB_ST_REAL "CUFFT_CB_ST_REAL" = 0x6
87
+ CUFFT_CB_ST_REAL_DOUBLE "CUFFT_CB_ST_REAL_DOUBLE" = 0x7
88
+ CUFFT_CB_UNDEFINED "CUFFT_CB_UNDEFINED" = 0x8
89
+
90
+ ctypedef enum cufftMpCommType "cufftMpCommType":
91
+ CUFFT_COMM_MPI "CUFFT_COMM_MPI" = 0x00
92
+ CUFFT_COMM_NONE "CUFFT_COMM_NONE" = 0x01
93
+
94
+
95
+ # types
96
+ cdef extern from *:
97
+ """
98
+ #define MAX_CUDA_DESCRIPTOR_GPUS 64
99
+ #define CUFFT_FORWARD -1
100
+ #define CUFFT_INVERSE 1
101
+ """
102
+ cdef const int MAX_CUDA_DESCRIPTOR_GPUS
103
+ cdef const int CUFFT_FORWARD
104
+ cdef const int CUFFT_INVERSE
105
+
106
+
107
+ ctypedef float cufftReal 'cufftReal'
108
+
109
+ ctypedef double cufftDoubleReal 'cufftDoubleReal'
110
+
111
+ ctypedef cuComplex cufftComplex 'cufftComplex'
112
+
113
+ ctypedef cuDoubleComplex cufftDoubleComplex 'cufftDoubleComplex'
114
+
115
+ ctypedef int cufftHandle 'cufftHandle'
116
+
117
+ ctypedef void* cufftReshapeHandle 'cufftReshapeHandle'
118
+
119
+ ctypedef struct cufftXt1dFactors 'cufftXt1dFactors':
120
+ long long int size
121
+ long long int stringCount
122
+ long long int stringLength
123
+ long long int substringLength
124
+ long long int factor1
125
+ long long int factor2
126
+ long long int stringMask
127
+ long long int substringMask
128
+ long long int factor1Mask
129
+ long long int factor2Mask
130
+ int stringShift
131
+ int substringShift
132
+ int factor1Shift
133
+ int factor2Shift
134
+
135
+ ctypedef cufftComplex (*cufftCallbackLoadC 'cufftCallbackLoadC')(
136
+ void* dataIn,
137
+ size_t offset,
138
+ void* callerInfo,
139
+ void* sharedPointer
140
+ )
141
+
142
+ ctypedef cufftDoubleComplex (*cufftCallbackLoadZ 'cufftCallbackLoadZ')(
143
+ void* dataIn,
144
+ size_t offset,
145
+ void* callerInfo,
146
+ void* sharedPointer
147
+ )
148
+
149
+ ctypedef cufftReal (*cufftCallbackLoadR 'cufftCallbackLoadR')(
150
+ void* dataIn,
151
+ size_t offset,
152
+ void* callerInfo,
153
+ void* sharedPointer
154
+ )
155
+
156
+ ctypedef cufftDoubleReal (*cufftCallbackLoadD 'cufftCallbackLoadD')(
157
+ void* dataIn,
158
+ size_t offset,
159
+ void* callerInfo,
160
+ void* sharedPointer
161
+ )
162
+
163
+ ctypedef cufftComplex (*cufftJITCallbackLoadC 'cufftJITCallbackLoadC')(
164
+ void* dataIn,
165
+ unsigned long long offset,
166
+ void* callerInfo,
167
+ void* sharedPointer
168
+ )
169
+
170
+ ctypedef cufftDoubleComplex (*cufftJITCallbackLoadZ 'cufftJITCallbackLoadZ')(
171
+ void* dataIn,
172
+ unsigned long long offset,
173
+ void* callerInfo,
174
+ void* sharedPointer
175
+ )
176
+
177
+ ctypedef cufftReal (*cufftJITCallbackLoadR 'cufftJITCallbackLoadR')(
178
+ void* dataIn,
179
+ unsigned long long offset,
180
+ void* callerInfo,
181
+ void* sharedPointer
182
+ )
183
+
184
+ ctypedef cufftDoubleReal (*cufftJITCallbackLoadD 'cufftJITCallbackLoadD')(
185
+ void* dataIn,
186
+ unsigned long long offset,
187
+ void* callerInfo,
188
+ void* sharedPointer
189
+ )
190
+
191
+ ctypedef void (*cufftCallbackStoreR 'cufftCallbackStoreR')(
192
+ void* dataOut,
193
+ size_t offset,
194
+ cufftReal element,
195
+ void* callerInfo,
196
+ void* sharedPointer
197
+ )
198
+
199
+ ctypedef void (*cufftJITCallbackStoreR 'cufftJITCallbackStoreR')(
200
+ void* dataOut,
201
+ unsigned long long offset,
202
+ cufftReal element,
203
+ void* callerInfo,
204
+ void* sharedPointer
205
+ )
206
+
207
+ ctypedef void (*cufftCallbackStoreD 'cufftCallbackStoreD')(
208
+ void* dataOut,
209
+ size_t offset,
210
+ cufftDoubleReal element,
211
+ void* callerInfo,
212
+ void* sharedPointer
213
+ )
214
+
215
+ ctypedef void (*cufftJITCallbackStoreD 'cufftJITCallbackStoreD')(
216
+ void* dataOut,
217
+ unsigned long long offset,
218
+ cufftDoubleReal element,
219
+ void* callerInfo,
220
+ void* sharedPointer
221
+ )
222
+
223
+ ctypedef void (*cufftCallbackStoreC 'cufftCallbackStoreC')(
224
+ void* dataOut,
225
+ size_t offset,
226
+ cufftComplex element,
227
+ void* callerInfo,
228
+ void* sharedPointer
229
+ )
230
+
231
+ ctypedef void (*cufftJITCallbackStoreC 'cufftJITCallbackStoreC')(
232
+ void* dataOut,
233
+ unsigned long long offset,
234
+ cufftComplex element,
235
+ void* callerInfo,
236
+ void* sharedPointer
237
+ )
238
+
239
+ ctypedef void (*cufftCallbackStoreZ 'cufftCallbackStoreZ')(
240
+ void* dataOut,
241
+ size_t offset,
242
+ cufftDoubleComplex element,
243
+ void* callerInfo,
244
+ void* sharedPointer
245
+ )
246
+
247
+ ctypedef void (*cufftJITCallbackStoreZ 'cufftJITCallbackStoreZ')(
248
+ void* dataOut,
249
+ unsigned long long offset,
250
+ cufftDoubleComplex element,
251
+ void* callerInfo,
252
+ void* sharedPointer
253
+ )
254
+
255
+ ctypedef struct cudaXtDesc_t 'cudaXtDesc_t':
256
+ int version "version"
257
+ int nGPUs "nGPUs"
258
+ int GPUs "GPUs" [MAX_CUDA_DESCRIPTOR_GPUS]
259
+ void* data "data" [MAX_CUDA_DESCRIPTOR_GPUS]
260
+ size_t size "size" [MAX_CUDA_DESCRIPTOR_GPUS]
261
+ void* cudaXtState "cudaXtState"
262
+
263
+ ctypedef cudaXtDesc_t cudaXtDesc 'cudaXtDesc'
264
+
265
+ ctypedef struct cudaLibXtDesc_t 'cudaLibXtDesc_t':
266
+ int version "version"
267
+ cudaXtDesc* descriptor "descriptor"
268
+ libFormat_t library "library"
269
+ int subFormat "subFormat"
270
+ void* libDescriptor "libDescriptor"
271
+
272
+ ctypedef cudaLibXtDesc_t cudaLibXtDesc 'cudaLibXtDesc'
273
+
274
+
275
+ ###############################################################################
276
+ # Functions
277
+ ###############################################################################
278
+
279
+ cdef cufftResult cufftPlan1d(cufftHandle* plan, int nx, cufftType type, int batch) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
280
+ cdef cufftResult cufftPlan2d(cufftHandle* plan, int nx, int ny, cufftType type) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
281
+ cdef cufftResult cufftPlan3d(cufftHandle* plan, int nx, int ny, int nz, cufftType type) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
282
+ cdef cufftResult cufftPlanMany(cufftHandle* plan, int rank, int* n, int* inembed, int istride, int idist, int* onembed, int ostride, int odist, cufftType type, int batch) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
283
+ cdef cufftResult cufftMakePlan1d(cufftHandle plan, int nx, cufftType type, int batch, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
284
+ cdef cufftResult cufftMakePlan2d(cufftHandle plan, int nx, int ny, cufftType type, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
285
+ cdef cufftResult cufftMakePlan3d(cufftHandle plan, int nx, int ny, int nz, cufftType type, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
286
+ cdef cufftResult cufftMakePlanMany(cufftHandle plan, int rank, int* n, int* inembed, int istride, int idist, int* onembed, int ostride, int odist, cufftType type, int batch, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
287
+ cdef cufftResult cufftMakePlanMany64(cufftHandle plan, int rank, long long int* n, long long int* inembed, long long int istride, long long int idist, long long int* onembed, long long int ostride, long long int odist, cufftType type, long long int batch, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
288
+ cdef cufftResult cufftGetSizeMany64(cufftHandle plan, int rank, long long int* n, long long int* inembed, long long int istride, long long int idist, long long int* onembed, long long int ostride, long long int odist, cufftType type, long long int batch, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
289
+ cdef cufftResult cufftEstimate1d(int nx, cufftType type, int batch, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
290
+ cdef cufftResult cufftEstimate2d(int nx, int ny, cufftType type, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
291
+ cdef cufftResult cufftEstimate3d(int nx, int ny, int nz, cufftType type, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
292
+ cdef cufftResult cufftEstimateMany(int rank, int* n, int* inembed, int istride, int idist, int* onembed, int ostride, int odist, cufftType type, int batch, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
293
+ cdef cufftResult cufftCreate(cufftHandle* handle) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
294
+ cdef cufftResult cufftGetSize1d(cufftHandle handle, int nx, cufftType type, int batch, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
295
+ cdef cufftResult cufftGetSize2d(cufftHandle handle, int nx, int ny, cufftType type, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
296
+ cdef cufftResult cufftGetSize3d(cufftHandle handle, int nx, int ny, int nz, cufftType type, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
297
+ cdef cufftResult cufftGetSizeMany(cufftHandle handle, int rank, int* n, int* inembed, int istride, int idist, int* onembed, int ostride, int odist, cufftType type, int batch, size_t* workArea) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
298
+ cdef cufftResult cufftGetSize(cufftHandle handle, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
299
+ cdef cufftResult cufftSetWorkArea(cufftHandle plan, void* workArea) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
300
+ cdef cufftResult cufftSetAutoAllocation(cufftHandle plan, int autoAllocate) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
301
+ cdef cufftResult cufftExecC2C(cufftHandle plan, cufftComplex* idata, cufftComplex* odata, int direction) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
302
+ cdef cufftResult cufftExecR2C(cufftHandle plan, cufftReal* idata, cufftComplex* odata) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
303
+ cdef cufftResult cufftExecC2R(cufftHandle plan, cufftComplex* idata, cufftReal* odata) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
304
+ cdef cufftResult cufftExecZ2Z(cufftHandle plan, cufftDoubleComplex* idata, cufftDoubleComplex* odata, int direction) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
305
+ cdef cufftResult cufftExecD2Z(cufftHandle plan, cufftDoubleReal* idata, cufftDoubleComplex* odata) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
306
+ cdef cufftResult cufftExecZ2D(cufftHandle plan, cufftDoubleComplex* idata, cufftDoubleReal* odata) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
307
+ cdef cufftResult cufftSetStream(cufftHandle plan, cudaStream_t stream) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
308
+ cdef cufftResult cufftDestroy(cufftHandle plan) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
309
+ cdef cufftResult cufftGetVersion(int* version) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
310
+ cdef cufftResult cufftGetProperty(libraryPropertyType type, int* value) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
311
+ cdef cufftResult cufftSetPlanPropertyInt64(cufftHandle plan, cufftProperty property, const long long int inputValueInt) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
312
+ cdef cufftResult cufftGetPlanPropertyInt64(cufftHandle plan, cufftProperty property, long long int* returnPtrValue) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
313
+ cdef cufftResult cufftResetPlanProperty(cufftHandle plan, cufftProperty property) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
314
+ cdef cufftResult cufftXtSetGPUs(cufftHandle handle, int nGPUs, int* whichGPUs) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
315
+ cdef cufftResult cufftXtMalloc(cufftHandle plan, cudaLibXtDesc** descriptor, cufftXtSubFormat format) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
316
+ cdef cufftResult cufftXtMemcpy(cufftHandle plan, void* dstPointer, void* srcPointer, cufftXtCopyType type) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
317
+ cdef cufftResult cufftXtFree(cudaLibXtDesc* descriptor) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
318
+ cdef cufftResult cufftXtSetWorkArea(cufftHandle plan, void** workArea) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
319
+ cdef cufftResult cufftXtExecDescriptorC2C(cufftHandle plan, cudaLibXtDesc* input, cudaLibXtDesc* output, int direction) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
320
+ cdef cufftResult cufftXtExecDescriptorR2C(cufftHandle plan, cudaLibXtDesc* input, cudaLibXtDesc* output) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
321
+ cdef cufftResult cufftXtExecDescriptorC2R(cufftHandle plan, cudaLibXtDesc* input, cudaLibXtDesc* output) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
322
+ cdef cufftResult cufftXtExecDescriptorZ2Z(cufftHandle plan, cudaLibXtDesc* input, cudaLibXtDesc* output, int direction) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
323
+ cdef cufftResult cufftXtExecDescriptorD2Z(cufftHandle plan, cudaLibXtDesc* input, cudaLibXtDesc* output) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
324
+ cdef cufftResult cufftXtExecDescriptorZ2D(cufftHandle plan, cudaLibXtDesc* input, cudaLibXtDesc* output) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
325
+ cdef cufftResult cufftXtQueryPlan(cufftHandle plan, void* queryStruct, cufftXtQueryType queryType) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
326
+ cdef cufftResult cufftXtClearCallback(cufftHandle plan, cufftXtCallbackType cbType) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
327
+ cdef cufftResult cufftXtSetCallbackSharedSize(cufftHandle plan, cufftXtCallbackType cbType, size_t sharedSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
328
+ cdef cufftResult cufftXtMakePlanMany(cufftHandle plan, int rank, long long int* n, long long int* inembed, long long int istride, long long int idist, cudaDataType inputtype, long long int* onembed, long long int ostride, long long int odist, cudaDataType outputtype, long long int batch, size_t* workSize, cudaDataType executiontype) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
329
+ cdef cufftResult cufftXtGetSizeMany(cufftHandle plan, int rank, long long int* n, long long int* inembed, long long int istride, long long int idist, cudaDataType inputtype, long long int* onembed, long long int ostride, long long int odist, cudaDataType outputtype, long long int batch, size_t* workSize, cudaDataType executiontype) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
330
+ cdef cufftResult cufftXtExec(cufftHandle plan, void* input, void* output, int direction) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
331
+ cdef cufftResult cufftXtExecDescriptor(cufftHandle plan, cudaLibXtDesc* input, cudaLibXtDesc* output, int direction) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
332
+ cdef cufftResult cufftXtSetWorkAreaPolicy(cufftHandle plan, cufftXtWorkAreaPolicy policy, size_t* workSize) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
333
+ cdef cufftResult cufftMpAttachComm(cufftHandle plan, cufftMpCommType comm_type, void* comm_handle) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
334
+ cdef cufftResult cufftXtSetDistribution(cufftHandle plan, int rank, const long long int* lower_input, const long long int* upper_input, const long long int* lower_output, const long long int* upper_output, const long long int* strides_input, const long long int* strides_output) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
335
+ cdef cufftResult cufftXtSetSubformatDefault(cufftHandle plan, cufftXtSubFormat subformat_forward, cufftXtSubFormat subformat_inverse) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
336
+ cdef cufftResult cufftMpCreateReshape(cufftReshapeHandle* handle) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
337
+ cdef cufftResult cufftMpAttachReshapeComm(cufftReshapeHandle handle, cufftMpCommType comm_type, void* comm_handle) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
338
+ cdef cufftResult cufftMpGetReshapeSize(cufftReshapeHandle handle, size_t* workspace_size) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
339
+ cdef cufftResult __cufftMpMakeReshape_11_2(cufftReshapeHandle handle, size_t element_size, int rank, const long long int* lower_input, const long long int* upper_input, const long long int* lower_output, const long long int* upper_output, const long long int* strides_input, const long long int* strides_output) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
340
+ cdef cufftResult cufftMpExecReshapeAsync(cufftReshapeHandle handle, void* data_out, const void* data_in, void* workspace, cudaStream_t stream) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
341
+ cdef cufftResult cufftMpDestroyReshape(cufftReshapeHandle handle) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
342
+ cdef cufftResult __cufftMpMakeReshape_11_4(cufftReshapeHandle handle, size_t element_size, int rank, const long long int* lower_input, const long long int* upper_input, const long long int* strides_input, const long long int* lower_output, const long long int* upper_output, const long long int* strides_output, void* comm_handle, cufftMpCommType comm_type) except?_CUFFTRESULT_INTERNAL_LOADING_ERROR nogil
@@ -0,0 +1,141 @@
1
+ # Copyright (c) 2024-2026, NVIDIA CORPORATION & AFFILIATES. ALL RIGHTS RESERVED.
2
+ #
3
+ # SPDX-License-Identifier: Apache-2.0
4
+ #
5
+ # This code was automatically generated across versions from 12.0.1 to 13.2.0, generator version 0.3.1.dev1471+g7122059e9. Do not modify it directly.
6
+ # This layer exposes the C header to Cython as-is.
7
+
8
+ from libc.stdint cimport int64_t
9
+ from libc.stdio cimport FILE
10
+ from ._internal.common_types cimport cudaDataType, cudaDataType_t, cudaStream_t, libraryPropertyType, libraryPropertyType_t
11
+
12
+
13
+ ###############################################################################
14
+ # Types (structs, enums, ...)
15
+ ###############################################################################
16
+
17
+ # enums
18
+ ctypedef enum curandStatus "curandStatus":
19
+ CURAND_STATUS_SUCCESS "CURAND_STATUS_SUCCESS" = 0
20
+ CURAND_STATUS_VERSION_MISMATCH "CURAND_STATUS_VERSION_MISMATCH" = 100
21
+ CURAND_STATUS_NOT_INITIALIZED "CURAND_STATUS_NOT_INITIALIZED" = 101
22
+ CURAND_STATUS_ALLOCATION_FAILED "CURAND_STATUS_ALLOCATION_FAILED" = 102
23
+ CURAND_STATUS_TYPE_ERROR "CURAND_STATUS_TYPE_ERROR" = 103
24
+ CURAND_STATUS_OUT_OF_RANGE "CURAND_STATUS_OUT_OF_RANGE" = 104
25
+ CURAND_STATUS_LENGTH_NOT_MULTIPLE "CURAND_STATUS_LENGTH_NOT_MULTIPLE" = 105
26
+ CURAND_STATUS_DOUBLE_PRECISION_REQUIRED "CURAND_STATUS_DOUBLE_PRECISION_REQUIRED" = 106
27
+ CURAND_STATUS_LAUNCH_FAILURE "CURAND_STATUS_LAUNCH_FAILURE" = 201
28
+ CURAND_STATUS_PREEXISTING_FAILURE "CURAND_STATUS_PREEXISTING_FAILURE" = 202
29
+ CURAND_STATUS_INITIALIZATION_FAILED "CURAND_STATUS_INITIALIZATION_FAILED" = 203
30
+ CURAND_STATUS_ARCH_MISMATCH "CURAND_STATUS_ARCH_MISMATCH" = 204
31
+ CURAND_STATUS_INTERNAL_ERROR "CURAND_STATUS_INTERNAL_ERROR" = 999
32
+ _CURANDSTATUS_T_INTERNAL_LOADING_ERROR "_CURANDSTATUS_T_INTERNAL_LOADING_ERROR" = -42
33
+
34
+ ctypedef curandStatus curandStatus_t "curandStatus_t"
35
+
36
+ ctypedef enum curandRngType "curandRngType":
37
+ CURAND_RNG_TEST "CURAND_RNG_TEST" = 0
38
+ CURAND_RNG_PSEUDO_DEFAULT "CURAND_RNG_PSEUDO_DEFAULT" = 100
39
+ CURAND_RNG_PSEUDO_XORWOW "CURAND_RNG_PSEUDO_XORWOW" = 101
40
+ CURAND_RNG_PSEUDO_MRG32K3A "CURAND_RNG_PSEUDO_MRG32K3A" = 121
41
+ CURAND_RNG_PSEUDO_MTGP32 "CURAND_RNG_PSEUDO_MTGP32" = 141
42
+ CURAND_RNG_PSEUDO_MT19937 "CURAND_RNG_PSEUDO_MT19937" = 142
43
+ CURAND_RNG_PSEUDO_PHILOX4_32_10 "CURAND_RNG_PSEUDO_PHILOX4_32_10" = 161
44
+ CURAND_RNG_QUASI_DEFAULT "CURAND_RNG_QUASI_DEFAULT" = 200
45
+ CURAND_RNG_QUASI_SOBOL32 "CURAND_RNG_QUASI_SOBOL32" = 201
46
+ CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 "CURAND_RNG_QUASI_SCRAMBLED_SOBOL32" = 202
47
+ CURAND_RNG_QUASI_SOBOL64 "CURAND_RNG_QUASI_SOBOL64" = 203
48
+ CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 "CURAND_RNG_QUASI_SCRAMBLED_SOBOL64" = 204
49
+
50
+ ctypedef curandRngType curandRngType_t "curandRngType_t"
51
+
52
+ ctypedef enum curandOrdering "curandOrdering":
53
+ CURAND_ORDERING_PSEUDO_BEST "CURAND_ORDERING_PSEUDO_BEST" = 100
54
+ CURAND_ORDERING_PSEUDO_DEFAULT "CURAND_ORDERING_PSEUDO_DEFAULT" = 101
55
+ CURAND_ORDERING_PSEUDO_SEEDED "CURAND_ORDERING_PSEUDO_SEEDED" = 102
56
+ CURAND_ORDERING_PSEUDO_LEGACY "CURAND_ORDERING_PSEUDO_LEGACY" = 103
57
+ CURAND_ORDERING_PSEUDO_DYNAMIC "CURAND_ORDERING_PSEUDO_DYNAMIC" = 104
58
+ CURAND_ORDERING_QUASI_DEFAULT "CURAND_ORDERING_QUASI_DEFAULT" = 201
59
+
60
+ ctypedef curandOrdering curandOrdering_t "curandOrdering_t"
61
+
62
+ ctypedef enum curandDirectionVectorSet "curandDirectionVectorSet":
63
+ CURAND_DIRECTION_VECTORS_32_JOEKUO6 "CURAND_DIRECTION_VECTORS_32_JOEKUO6" = 101
64
+ CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 "CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6" = 102
65
+ CURAND_DIRECTION_VECTORS_64_JOEKUO6 "CURAND_DIRECTION_VECTORS_64_JOEKUO6" = 103
66
+ CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 "CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6" = 104
67
+
68
+ ctypedef curandDirectionVectorSet curandDirectionVectorSet_t "curandDirectionVectorSet_t"
69
+
70
+ ctypedef enum curandMethod "curandMethod":
71
+ CURAND_CHOOSE_BEST "CURAND_CHOOSE_BEST" = 0
72
+ CURAND_ITR "CURAND_ITR" = 1
73
+ CURAND_KNUTH "CURAND_KNUTH" = 2
74
+ CURAND_HITR "CURAND_HITR" = 3
75
+ CURAND_M1 "CURAND_M1" = 4
76
+ CURAND_M2 "CURAND_M2" = 5
77
+ CURAND_BINARY_SEARCH "CURAND_BINARY_SEARCH" = 6
78
+ CURAND_DISCRETE_GAUSS "CURAND_DISCRETE_GAUSS" = 7
79
+ CURAND_REJECTION "CURAND_REJECTION" = 8
80
+ CURAND_DEVICE_API "CURAND_DEVICE_API" = 9
81
+ CURAND_FAST_REJECTION "CURAND_FAST_REJECTION" = 10
82
+ CURAND_3RD "CURAND_3RD" = 11
83
+ CURAND_DEFINITION "CURAND_DEFINITION" = 12
84
+ CURAND_POISSON "CURAND_POISSON" = 13
85
+
86
+ ctypedef curandMethod curandMethod_t "curandMethod_t"
87
+
88
+
89
+ # types
90
+ ctypedef void* curandGenerator_t 'curandGenerator_t'
91
+
92
+ ctypedef void* curandDistribution_t 'curandDistribution_t'
93
+
94
+ ctypedef void* curandDistributionShift_t 'curandDistributionShift_t'
95
+
96
+ ctypedef void* curandDistributionM2Shift_t 'curandDistributionM2Shift_t'
97
+
98
+ ctypedef void* curandHistogramM2_t 'curandHistogramM2_t'
99
+
100
+ ctypedef void* curandHistogramM2K_t 'curandHistogramM2K_t'
101
+
102
+ ctypedef void* curandHistogramM2V_t 'curandHistogramM2V_t'
103
+
104
+ ctypedef void* curandDiscreteDistribution_t 'curandDiscreteDistribution_t'
105
+ ctypedef unsigned int curandDirectionVectors32_t[32]
106
+ ctypedef unsigned long long curandDirectionVectors64_t[64]
107
+
108
+
109
+ ###############################################################################
110
+ # Functions
111
+ ###############################################################################
112
+
113
+ cdef curandStatus_t curandCreateGenerator(curandGenerator_t* generator, curandRngType_t rng_type) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
114
+ cdef curandStatus_t curandCreateGeneratorHost(curandGenerator_t* generator, curandRngType_t rng_type) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
115
+ cdef curandStatus_t curandDestroyGenerator(curandGenerator_t generator) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
116
+ cdef curandStatus_t curandGetVersion(int* version) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
117
+ cdef curandStatus_t curandGetProperty(libraryPropertyType type, int* value) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
118
+ cdef curandStatus_t curandSetStream(curandGenerator_t generator, cudaStream_t stream) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
119
+ cdef curandStatus_t curandSetPseudoRandomGeneratorSeed(curandGenerator_t generator, unsigned long long seed) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
120
+ cdef curandStatus_t curandSetGeneratorOffset(curandGenerator_t generator, unsigned long long offset) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
121
+ cdef curandStatus_t curandSetGeneratorOrdering(curandGenerator_t generator, curandOrdering_t order) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
122
+ cdef curandStatus_t curandSetQuasiRandomGeneratorDimensions(curandGenerator_t generator, unsigned int num_dimensions) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
123
+ cdef curandStatus_t curandGenerate(curandGenerator_t generator, unsigned int* outputPtr, size_t num) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
124
+ cdef curandStatus_t curandGenerateLongLong(curandGenerator_t generator, unsigned long long* outputPtr, size_t num) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
125
+ cdef curandStatus_t curandGenerateUniform(curandGenerator_t generator, float* outputPtr, size_t num) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
126
+ cdef curandStatus_t curandGenerateUniformDouble(curandGenerator_t generator, double* outputPtr, size_t num) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
127
+ cdef curandStatus_t curandGenerateNormal(curandGenerator_t generator, float* outputPtr, size_t n, float mean, float stddev) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
128
+ cdef curandStatus_t curandGenerateNormalDouble(curandGenerator_t generator, double* outputPtr, size_t n, double mean, double stddev) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
129
+ cdef curandStatus_t curandGenerateLogNormal(curandGenerator_t generator, float* outputPtr, size_t n, float mean, float stddev) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
130
+ cdef curandStatus_t curandGenerateLogNormalDouble(curandGenerator_t generator, double* outputPtr, size_t n, double mean, double stddev) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
131
+ cdef curandStatus_t curandCreatePoissonDistribution(double lambda_, curandDiscreteDistribution_t* discrete_distribution) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
132
+ cdef curandStatus_t curandDestroyDistribution(curandDiscreteDistribution_t discrete_distribution) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
133
+ cdef curandStatus_t curandGeneratePoisson(curandGenerator_t generator, unsigned int* outputPtr, size_t n, double lambda_) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
134
+ cdef curandStatus_t curandGeneratePoissonMethod(curandGenerator_t generator, unsigned int* outputPtr, size_t n, double lambda_, curandMethod_t method) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
135
+ cdef curandStatus_t curandGenerateBinomial(curandGenerator_t generator, unsigned int* outputPtr, size_t num, unsigned int n, double p) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
136
+ cdef curandStatus_t curandGenerateBinomialMethod(curandGenerator_t generator, unsigned int* outputPtr, size_t num, unsigned int n, double p, curandMethod_t method) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
137
+ cdef curandStatus_t curandGenerateSeeds(curandGenerator_t generator) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
138
+ cdef curandStatus_t curandGetDirectionVectors32(curandDirectionVectors32_t* vectors[], curandDirectionVectorSet_t set) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
139
+ cdef curandStatus_t curandGetScrambleConstants32(unsigned int** constants) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
140
+ cdef curandStatus_t curandGetDirectionVectors64(curandDirectionVectors64_t* vectors[], curandDirectionVectorSet_t set) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
141
+ cdef curandStatus_t curandGetScrambleConstants64(unsigned long long** constants) except?_CURANDSTATUS_T_INTERNAL_LOADING_ERROR nogil
@@ -0,0 +1,137 @@
1
+ # Copyright (c) 2024-2026, NVIDIA CORPORATION & AFFILIATES. ALL RIGHTS RESERVED.
2
+ #
3
+ # SPDX-License-Identifier: Apache-2.0
4
+ #
5
+ # This code was automatically generated across versions from 12.0.1 to 13.2.1, generator version 0.3.1.dev1471+g7122059e9. Do not modify it directly.
6
+ # This layer exposes the C header to Cython as-is.
7
+
8
+ from libc.stdint cimport int64_t
9
+
10
+ from ._internal.common_types cimport cudaDataType, cudaDataType_t, cudaStream_t, libraryPropertyType, libraryPropertyType_t, cuComplex, cuDoubleComplex
11
+ from .cycublas cimport (cublasFillMode_t, cublasSideMode_t, cublasOperation_t,
12
+ cublasDiagType_t,)
13
+
14
+
15
+ ###############################################################################
16
+ # Types (structs, enums, ...)
17
+ ###############################################################################
18
+
19
+ # enums
20
+ ctypedef enum cusolverStatus_t "cusolverStatus_t":
21
+ CUSOLVER_STATUS_SUCCESS "CUSOLVER_STATUS_SUCCESS" = 0
22
+ CUSOLVER_STATUS_NOT_INITIALIZED "CUSOLVER_STATUS_NOT_INITIALIZED" = 1
23
+ CUSOLVER_STATUS_ALLOC_FAILED "CUSOLVER_STATUS_ALLOC_FAILED" = 2
24
+ CUSOLVER_STATUS_INVALID_VALUE "CUSOLVER_STATUS_INVALID_VALUE" = 3
25
+ CUSOLVER_STATUS_ARCH_MISMATCH "CUSOLVER_STATUS_ARCH_MISMATCH" = 4
26
+ CUSOLVER_STATUS_MAPPING_ERROR "CUSOLVER_STATUS_MAPPING_ERROR" = 5
27
+ CUSOLVER_STATUS_EXECUTION_FAILED "CUSOLVER_STATUS_EXECUTION_FAILED" = 6
28
+ CUSOLVER_STATUS_INTERNAL_ERROR "CUSOLVER_STATUS_INTERNAL_ERROR" = 7
29
+ CUSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED "CUSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED" = 8
30
+ CUSOLVER_STATUS_NOT_SUPPORTED "CUSOLVER_STATUS_NOT_SUPPORTED" = 9
31
+ CUSOLVER_STATUS_ZERO_PIVOT "CUSOLVER_STATUS_ZERO_PIVOT" = 10
32
+ CUSOLVER_STATUS_INVALID_LICENSE "CUSOLVER_STATUS_INVALID_LICENSE" = 11
33
+ CUSOLVER_STATUS_IRS_PARAMS_NOT_INITIALIZED "CUSOLVER_STATUS_IRS_PARAMS_NOT_INITIALIZED" = 12
34
+ CUSOLVER_STATUS_IRS_PARAMS_INVALID "CUSOLVER_STATUS_IRS_PARAMS_INVALID" = 13
35
+ CUSOLVER_STATUS_IRS_PARAMS_INVALID_PREC "CUSOLVER_STATUS_IRS_PARAMS_INVALID_PREC" = 14
36
+ CUSOLVER_STATUS_IRS_PARAMS_INVALID_REFINE "CUSOLVER_STATUS_IRS_PARAMS_INVALID_REFINE" = 15
37
+ CUSOLVER_STATUS_IRS_PARAMS_INVALID_MAXITER "CUSOLVER_STATUS_IRS_PARAMS_INVALID_MAXITER" = 16
38
+ CUSOLVER_STATUS_IRS_INTERNAL_ERROR "CUSOLVER_STATUS_IRS_INTERNAL_ERROR" = 20
39
+ CUSOLVER_STATUS_IRS_NOT_SUPPORTED "CUSOLVER_STATUS_IRS_NOT_SUPPORTED" = 21
40
+ CUSOLVER_STATUS_IRS_OUT_OF_RANGE "CUSOLVER_STATUS_IRS_OUT_OF_RANGE" = 22
41
+ CUSOLVER_STATUS_IRS_NRHS_NOT_SUPPORTED_FOR_REFINE_GMRES "CUSOLVER_STATUS_IRS_NRHS_NOT_SUPPORTED_FOR_REFINE_GMRES" = 23
42
+ CUSOLVER_STATUS_IRS_INFOS_NOT_INITIALIZED "CUSOLVER_STATUS_IRS_INFOS_NOT_INITIALIZED" = 25
43
+ CUSOLVER_STATUS_IRS_INFOS_NOT_DESTROYED "CUSOLVER_STATUS_IRS_INFOS_NOT_DESTROYED" = 26
44
+ CUSOLVER_STATUS_IRS_MATRIX_SINGULAR "CUSOLVER_STATUS_IRS_MATRIX_SINGULAR" = 30
45
+ CUSOLVER_STATUS_INVALID_WORKSPACE "CUSOLVER_STATUS_INVALID_WORKSPACE" = 31
46
+ _CUSOLVERSTATUS_T_INTERNAL_LOADING_ERROR "_CUSOLVERSTATUS_T_INTERNAL_LOADING_ERROR" = -42
47
+
48
+ ctypedef enum cusolverEigType_t "cusolverEigType_t":
49
+ CUSOLVER_EIG_TYPE_1 "CUSOLVER_EIG_TYPE_1" = 1
50
+ CUSOLVER_EIG_TYPE_2 "CUSOLVER_EIG_TYPE_2" = 2
51
+ CUSOLVER_EIG_TYPE_3 "CUSOLVER_EIG_TYPE_3" = 3
52
+
53
+ ctypedef enum cusolverEigMode_t "cusolverEigMode_t":
54
+ CUSOLVER_EIG_MODE_NOVECTOR "CUSOLVER_EIG_MODE_NOVECTOR" = 0
55
+ CUSOLVER_EIG_MODE_VECTOR "CUSOLVER_EIG_MODE_VECTOR" = 1
56
+
57
+ ctypedef enum cusolverEigRange_t "cusolverEigRange_t":
58
+ CUSOLVER_EIG_RANGE_ALL "CUSOLVER_EIG_RANGE_ALL" = 1001
59
+ CUSOLVER_EIG_RANGE_I "CUSOLVER_EIG_RANGE_I" = 1002
60
+ CUSOLVER_EIG_RANGE_V "CUSOLVER_EIG_RANGE_V" = 1003
61
+
62
+ ctypedef enum cusolverNorm_t "cusolverNorm_t":
63
+ CUSOLVER_INF_NORM "CUSOLVER_INF_NORM" = 104
64
+ CUSOLVER_MAX_NORM "CUSOLVER_MAX_NORM" = 105
65
+ CUSOLVER_ONE_NORM "CUSOLVER_ONE_NORM" = 106
66
+ CUSOLVER_FRO_NORM "CUSOLVER_FRO_NORM" = 107
67
+
68
+ ctypedef enum cusolverIRSRefinement_t "cusolverIRSRefinement_t":
69
+ CUSOLVER_IRS_REFINE_NOT_SET "CUSOLVER_IRS_REFINE_NOT_SET" = 1100
70
+ CUSOLVER_IRS_REFINE_NONE "CUSOLVER_IRS_REFINE_NONE" = 1101
71
+ CUSOLVER_IRS_REFINE_CLASSICAL "CUSOLVER_IRS_REFINE_CLASSICAL" = 1102
72
+ CUSOLVER_IRS_REFINE_CLASSICAL_GMRES "CUSOLVER_IRS_REFINE_CLASSICAL_GMRES" = 1103
73
+ CUSOLVER_IRS_REFINE_GMRES "CUSOLVER_IRS_REFINE_GMRES" = 1104
74
+ CUSOLVER_IRS_REFINE_GMRES_GMRES "CUSOLVER_IRS_REFINE_GMRES_GMRES" = 1105
75
+ CUSOLVER_IRS_REFINE_GMRES_NOPCOND "CUSOLVER_IRS_REFINE_GMRES_NOPCOND" = 1106
76
+ CUSOLVER_PREC_DD "CUSOLVER_PREC_DD" = 1150
77
+ CUSOLVER_PREC_SS "CUSOLVER_PREC_SS" = 1151
78
+ CUSOLVER_PREC_SHT "CUSOLVER_PREC_SHT" = 1152
79
+
80
+ ctypedef enum cusolverPrecType_t "cusolverPrecType_t":
81
+ CUSOLVER_R_8I "CUSOLVER_R_8I" = 1201
82
+ CUSOLVER_R_8U "CUSOLVER_R_8U" = 1202
83
+ CUSOLVER_R_64F "CUSOLVER_R_64F" = 1203
84
+ CUSOLVER_R_32F "CUSOLVER_R_32F" = 1204
85
+ CUSOLVER_R_16F "CUSOLVER_R_16F" = 1205
86
+ CUSOLVER_R_16BF "CUSOLVER_R_16BF" = 1206
87
+ CUSOLVER_R_TF32 "CUSOLVER_R_TF32" = 1207
88
+ CUSOLVER_R_AP "CUSOLVER_R_AP" = 1208
89
+ CUSOLVER_C_8I "CUSOLVER_C_8I" = 1211
90
+ CUSOLVER_C_8U "CUSOLVER_C_8U" = 1212
91
+ CUSOLVER_C_64F "CUSOLVER_C_64F" = 1213
92
+ CUSOLVER_C_32F "CUSOLVER_C_32F" = 1214
93
+ CUSOLVER_C_16F "CUSOLVER_C_16F" = 1215
94
+ CUSOLVER_C_16BF "CUSOLVER_C_16BF" = 1216
95
+ CUSOLVER_C_TF32 "CUSOLVER_C_TF32" = 1217
96
+ CUSOLVER_C_AP "CUSOLVER_C_AP" = 1218
97
+
98
+ ctypedef enum cusolverAlgMode_t "cusolverAlgMode_t":
99
+ CUSOLVER_ALG_0 "CUSOLVER_ALG_0" = 0
100
+ CUSOLVER_ALG_1 "CUSOLVER_ALG_1" = 1
101
+ CUSOLVER_ALG_2 "CUSOLVER_ALG_2" = 2
102
+
103
+ ctypedef enum cusolverStorevMode_t "cusolverStorevMode_t":
104
+ CUBLAS_STOREV_COLUMNWISE "CUBLAS_STOREV_COLUMNWISE" = 0
105
+ CUBLAS_STOREV_ROWWISE "CUBLAS_STOREV_ROWWISE" = 1
106
+
107
+ ctypedef enum cusolverDirectMode_t "cusolverDirectMode_t":
108
+ CUBLAS_DIRECT_FORWARD "CUBLAS_DIRECT_FORWARD" = 0
109
+ CUBLAS_DIRECT_BACKWARD "CUBLAS_DIRECT_BACKWARD" = 1
110
+
111
+ ctypedef enum cusolverDeterministicMode_t "cusolverDeterministicMode_t":
112
+ CUSOLVER_DETERMINISTIC_RESULTS "CUSOLVER_DETERMINISTIC_RESULTS" = 1
113
+ CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS "CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS" = 2
114
+
115
+ ctypedef enum cusolverMathMode_t "cusolverMathMode_t":
116
+ CUSOLVER_DEFAULT_MATH "CUSOLVER_DEFAULT_MATH" = 1
117
+ CUSOLVER_FP32_EMULATED_BF16X9_MATH "CUSOLVER_FP32_EMULATED_BF16X9_MATH" = 2
118
+ CUSOLVER_FP64_EMULATED_FIXEDPOINT_MATH "CUSOLVER_FP64_EMULATED_FIXEDPOINT_MATH" = 4
119
+ CUSOLVER_FP32_FP64_EMULATED_MATH "CUSOLVER_FP32_FP64_EMULATED_MATH" = 6
120
+
121
+ ctypedef enum cusolverEigComp_t "cusolverEigComp_t":
122
+ CUSOLVER_EIG_COMP_N "CUSOLVER_EIG_COMP_N" = 10
123
+ CUSOLVER_EIG_COMP_I "CUSOLVER_EIG_COMP_I" = 11
124
+ CUSOLVER_EIG_COMP_V "CUSOLVER_EIG_COMP_V" = 12
125
+
126
+
127
+ # types
128
+
129
+ ctypedef int cusolver_int_t 'cusolver_int_t'
130
+
131
+
132
+ ###############################################################################
133
+ # Functions
134
+ ###############################################################################
135
+
136
+ cdef cusolverStatus_t cusolverGetProperty(libraryPropertyType type, int* value) except?_CUSOLVERSTATUS_T_INTERNAL_LOADING_ERROR nogil
137
+ cdef cusolverStatus_t cusolverGetVersion(int* version) except?_CUSOLVERSTATUS_T_INTERNAL_LOADING_ERROR nogil