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.
- nvmath/__init__.pxd +0 -0
- nvmath/__init__.py +45 -0
- nvmath/_internal/__init__.py +0 -0
- nvmath/_internal/attribute_ifc_factory.py +330 -0
- nvmath/_internal/layout.py +70 -0
- nvmath/_internal/templates.py +130 -0
- nvmath/_internal/threadsafe.py +106 -0
- nvmath/_internal/utils.py +43 -0
- nvmath/_internal/workspace.py +490 -0
- nvmath/_utils.py +147 -0
- nvmath/bindings/__init__.py +60 -0
- nvmath/bindings/_internal/__init__.pxd +0 -0
- nvmath/bindings/_internal/__init__.py +0 -0
- nvmath/bindings/_internal/common_types.pxd +31 -0
- nvmath/bindings/_internal/cublas.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cublas.pxd +530 -0
- nvmath/bindings/_internal/cublasLt.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cublasLt.pxd +59 -0
- nvmath/bindings/_internal/cublasMp.pxd +52 -0
- nvmath/bindings/_internal/cudss.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cudss.pxd +54 -0
- nvmath/bindings/_internal/cufft.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cufft.pxd +70 -0
- nvmath/bindings/_internal/cufftMp.pxd +77 -0
- nvmath/bindings/_internal/curand.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/curand.pxd +42 -0
- nvmath/bindings/_internal/cusolver.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cusolver.pxd +15 -0
- nvmath/bindings/_internal/cusolverDn.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cusolverDn.pxd +406 -0
- nvmath/bindings/_internal/cusolverMp.pxd +71 -0
- nvmath/bindings/_internal/cusolverSp.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cusolverSp.pxd +75 -0
- nvmath/bindings/_internal/cusparse.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cusparse.pxd +471 -0
- nvmath/bindings/_internal/cusparseLt.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cusparseLt.pxd +48 -0
- nvmath/bindings/_internal/cutensor.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/cutensor.pxd +58 -0
- nvmath/bindings/_internal/mathdx.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/mathdx.pxd +116 -0
- nvmath/bindings/_internal/nvshmem.pxd +29 -0
- nvmath/bindings/_internal/utils.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/_internal/utils.pxd +174 -0
- nvmath/bindings/_internal/utils.pyi +10 -0
- nvmath/bindings/cublas.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cublas.pxd +558 -0
- nvmath/bindings/cublas.pyi +812 -0
- nvmath/bindings/cublasLt.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cublasLt.pxd +109 -0
- nvmath/bindings/cublasLt.pyi +1461 -0
- nvmath/bindings/cublasMp.pxd +85 -0
- nvmath/bindings/cublasMp.pyi +267 -0
- nvmath/bindings/cudss.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cudss.pxd +98 -0
- nvmath/bindings/cudss.pyi +443 -0
- nvmath/bindings/cufft.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cufft.pxd +118 -0
- nvmath/bindings/cufft.pyi +301 -0
- nvmath/bindings/cufftMp.pxd +124 -0
- nvmath/bindings/cufftMp.pyi +326 -0
- nvmath/bindings/curand.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/curand.pxd +71 -0
- nvmath/bindings/curand.pyi +189 -0
- nvmath/bindings/cusolver.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cusolver.pxd +62 -0
- nvmath/bindings/cusolver.pyi +320 -0
- nvmath/bindings/cusolverDn.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cusolverDn.pxd +430 -0
- nvmath/bindings/cusolverDn.pyi +422 -0
- nvmath/bindings/cusolverMp.pxd +98 -0
- nvmath/bindings/cusolverMp.pyi +114 -0
- nvmath/bindings/cusolverSp.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cusolverSp.pxd +95 -0
- nvmath/bindings/cusolverSp.pyi +70 -0
- nvmath/bindings/cusparse.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cusparse.pxd +546 -0
- nvmath/bindings/cusparse.pyi +1017 -0
- nvmath/bindings/cusparseLt.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cusparseLt.pxd +99 -0
- nvmath/bindings/cusparseLt.pyi +252 -0
- nvmath/bindings/cutensor.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cutensor.pxd +98 -0
- nvmath/bindings/cutensor.pyi +324 -0
- nvmath/bindings/cycublas.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycublas.pxd +664 -0
- nvmath/bindings/cycublasLt.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycublasLt.pxd +1045 -0
- nvmath/bindings/cycublasMp.pxd +171 -0
- nvmath/bindings/cycudss.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycudss.pxd +277 -0
- nvmath/bindings/cycufft.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycufft.pxd +333 -0
- nvmath/bindings/cycufftMp.pxd +342 -0
- nvmath/bindings/cycurand.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycurand.pxd +141 -0
- nvmath/bindings/cycusolver.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycusolver.pxd +137 -0
- nvmath/bindings/cycusolverDn.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycusolverDn.pxd +443 -0
- nvmath/bindings/cycusolverMp.pxd +107 -0
- nvmath/bindings/cycusolverSp.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycusolverSp.pxd +93 -0
- nvmath/bindings/cycusparse.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycusparse.pxd +679 -0
- nvmath/bindings/cycusparseLt.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycusparseLt.pxd +135 -0
- nvmath/bindings/cycutensor.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cycutensor.pxd +189 -0
- nvmath/bindings/cymathdx.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/cymathdx.pxd +552 -0
- nvmath/bindings/cynvshmem.pxd +118 -0
- nvmath/bindings/mathdx.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/mathdx.pxd +182 -0
- nvmath/bindings/mathdx.pyi +1562 -0
- nvmath/bindings/nvpl/__init__.pxd +0 -0
- nvmath/bindings/nvpl/__init__.py +13 -0
- nvmath/bindings/nvpl/_internal/__init__.pxd +0 -0
- nvmath/bindings/nvpl/_internal/__init__.py +0 -0
- nvmath/bindings/nvpl/_internal/blas.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/nvpl/_internal/blas.pxd +237 -0
- nvmath/bindings/nvpl/_internal/fft.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/nvpl/_internal/fft.pxd +36 -0
- nvmath/bindings/nvpl/blas.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/nvpl/blas.pxd +131 -0
- nvmath/bindings/nvpl/blas.pyi +168 -0
- nvmath/bindings/nvpl/cyblas.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/nvpl/cyblas.pxd +280 -0
- nvmath/bindings/nvpl/cyfft.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/nvpl/cyfft.pxd +93 -0
- nvmath/bindings/nvpl/fft.cp314t-win_amd64.pyd +0 -0
- nvmath/bindings/nvpl/fft.pxd +100 -0
- nvmath/bindings/nvpl/fft.pyi +168 -0
- nvmath/bindings/nvshmem.pxd +54 -0
- nvmath/bindings/nvshmem.pyi +191 -0
- nvmath/device/__init__.py +38 -0
- nvmath/device/_deprecated.py +33 -0
- nvmath/device/common.py +315 -0
- nvmath/device/common_backend.py +131 -0
- nvmath/device/common_cuda.py +201 -0
- nvmath/device/common_numba.py +300 -0
- nvmath/device/common_numba_cuda_mlir.py +202 -0
- nvmath/device/common_opaque_tensor.py +201 -0
- nvmath/device/cublasdx.py +1606 -0
- nvmath/device/cublasdx_backend.py +860 -0
- nvmath/device/cublasdx_numba.py +1534 -0
- nvmath/device/cublasdx_numba_cuda_mlir.py +208 -0
- nvmath/device/cufftdx.py +373 -0
- nvmath/device/cufftdx_backend.py +220 -0
- nvmath/device/cufftdx_numba.py +140 -0
- nvmath/device/cufftdx_numba_cuda_mlir.py +79 -0
- nvmath/device/curand_kernel.py +9147 -0
- nvmath/device/cusolverdx.py +2708 -0
- nvmath/device/cusolverdx_backend.py +440 -0
- nvmath/device/cusolverdx_numba.py +567 -0
- nvmath/device/cusolverdx_numba_cuda_mlir.py +604 -0
- nvmath/device/cusolverdx_overload_backend.py +1029 -0
- nvmath/device/llvm_array.py +29 -0
- nvmath/device/random.py +441 -0
- nvmath/device/random_helpers.py +23 -0
- nvmath/device/random_states.py +187 -0
- nvmath/device/types.py +138 -0
- nvmath/device/vector_types_numba.py +259 -0
- nvmath/distributed/__init__.py +200 -0
- nvmath/distributed/_internal/__init__.py +0 -0
- nvmath/distributed/_internal/nccl.py +86 -0
- nvmath/distributed/_internal/nvshmem.py +307 -0
- nvmath/distributed/_internal/symmetric_memory.py +35 -0
- nvmath/distributed/_internal/tensor_ifc.py +70 -0
- nvmath/distributed/_internal/tensor_ifc_cupy.py +68 -0
- nvmath/distributed/_internal/tensor_ifc_host_device.py +172 -0
- nvmath/distributed/_internal/tensor_ifc_numpy.py +46 -0
- nvmath/distributed/_internal/tensor_ifc_torch.py +162 -0
- nvmath/distributed/_internal/tensor_wrapper.py +81 -0
- nvmath/distributed/_utils.py +167 -0
- nvmath/distributed/distribution/__init__.py +30 -0
- nvmath/distributed/distribution/_configuration.py +39 -0
- nvmath/distributed/distribution/distributions.py +1024 -0
- nvmath/distributed/distribution/redistribute.py +1284 -0
- nvmath/distributed/fft/__init__.py +7 -0
- nvmath/distributed/fft/_configuration.py +82 -0
- nvmath/distributed/fft/fft.py +2742 -0
- nvmath/distributed/linalg/__init__.py +22 -0
- nvmath/distributed/linalg/_internal/__init__.py +3 -0
- nvmath/distributed/linalg/_internal/epilog_protocol.py +586 -0
- nvmath/distributed/linalg/_internal/matmul_desc_ifc.py +28 -0
- nvmath/distributed/linalg/advanced/__init__.py +8 -0
- nvmath/distributed/linalg/advanced/_configuration.py +171 -0
- nvmath/distributed/linalg/advanced/matmulmod.py +3573 -0
- nvmath/distributed/linalg/generic/__init__.py +8 -0
- nvmath/distributed/linalg/generic/_caching.py +66 -0
- nvmath/distributed/linalg/generic/_configuration.py +61 -0
- nvmath/distributed/linalg/generic/_factorization.py +172 -0
- nvmath/distributed/linalg/generic/_initialization.py +966 -0
- nvmath/distributed/linalg/generic/_problem_spec.py +511 -0
- nvmath/distributed/linalg/generic/solvermod.py +1368 -0
- nvmath/distributed/process_group.py +408 -0
- nvmath/fft/__init__.py +7 -0
- nvmath/fft/_configuration.py +189 -0
- nvmath/fft/_exec_utils.py +82 -0
- nvmath/fft/_helpers.py +237 -0
- nvmath/fft/fft.py +3122 -0
- nvmath/internal/__init__.pxd +3 -0
- nvmath/internal/__init__.py +10 -0
- nvmath/internal/_bindings.cp314t-win_amd64.pyd +0 -0
- nvmath/internal/_bindings.pxd +18 -0
- nvmath/internal/_device_utils.py +45 -0
- nvmath/internal/_layout/__init__.pxd +3 -0
- nvmath/internal/_layout/__init__.py +7 -0
- nvmath/internal/_layout/_layout.cp314t-win_amd64.pyd +0 -0
- nvmath/internal/_layout/_layout.pxd +1303 -0
- nvmath/internal/_layout/_layout.pyi +1145 -0
- nvmath/internal/enum_utils.py +142 -0
- nvmath/internal/formatters.py +87 -0
- nvmath/internal/mem_limit.py +51 -0
- nvmath/internal/memory.cp314t-win_amd64.pyd +0 -0
- nvmath/internal/memory.pxd +13 -0
- nvmath/internal/memory.pyi +50 -0
- nvmath/internal/ndbuffer/__init__.pxd +3 -0
- nvmath/internal/ndbuffer/__init__.py +9 -0
- nvmath/internal/ndbuffer/_copy_kernel.cp314t-win_amd64.pyd +0 -0
- nvmath/internal/ndbuffer/_copy_kernel.pxd +10 -0
- nvmath/internal/ndbuffer/_jit.cp314t-win_amd64.pyd +0 -0
- nvmath/internal/ndbuffer/_jit.pxd +7 -0
- nvmath/internal/ndbuffer/_ndbuffer.cp314t-win_amd64.pyd +0 -0
- nvmath/internal/ndbuffer/_ndbuffer.pxd +40 -0
- nvmath/internal/ndbuffer/_ndbuffer.pyi +463 -0
- nvmath/internal/ndbuffer/copy_kernel/args.h +34 -0
- nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/array_view.h +52 -0
- nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/elementwise.h +68 -0
- nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/grid_indexer.h +69 -0
- nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/transposed.h +242 -0
- nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/type_utils.h +39 -0
- nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/utils.h +132 -0
- nvmath/internal/ndbuffer/copy_kernel/copy_kernel_impl/vec.h +159 -0
- nvmath/internal/ndbuffer/copy_kernel/elementwise.h +53 -0
- nvmath/internal/ndbuffer/copy_kernel/transposed.h +58 -0
- nvmath/internal/package_ifc.py +168 -0
- nvmath/internal/package_ifc_cuda.py +57 -0
- nvmath/internal/package_ifc_cupy.py +67 -0
- nvmath/internal/package_ifc_torch.py +69 -0
- nvmath/internal/package_wrapper.py +14 -0
- nvmath/internal/tensor_ifc.py +179 -0
- nvmath/internal/tensor_ifc_cupy.py +234 -0
- nvmath/internal/tensor_ifc_ndbuffer.py +147 -0
- nvmath/internal/tensor_ifc_numpy.py +184 -0
- nvmath/internal/tensor_ifc_torch.py +178 -0
- nvmath/internal/tensor_wrapper.py +160 -0
- nvmath/internal/typemaps.py +113 -0
- nvmath/internal/utils.py +805 -0
- nvmath/linalg/__init__.py +56 -0
- nvmath/linalg/_internal/__init__.py +3 -0
- nvmath/linalg/_internal/algo_cap_ifc.py +82 -0
- nvmath/linalg/_internal/algo_config_ifc.py +43 -0
- nvmath/linalg/_internal/batch.py +234 -0
- nvmath/linalg/_internal/enum_to_tuples.py +64 -0
- nvmath/linalg/_internal/epilog_protocol.py +766 -0
- nvmath/linalg/_internal/layout.py +624 -0
- nvmath/linalg/_internal/matmul_desc_ifc.py +28 -0
- nvmath/linalg/_internal/matmul_pref_ifc.py +27 -0
- nvmath/linalg/_internal/matrix_layout_ifc.py +26 -0
- nvmath/linalg/_internal/solver_utils.py +432 -0
- nvmath/linalg/_internal/typemaps.py +144 -0
- nvmath/linalg/_internal/utils.py +157 -0
- nvmath/linalg/advanced/__init__.py +8 -0
- nvmath/linalg/advanced/_algorithmmod.py +170 -0
- nvmath/linalg/advanced/_configuration.py +351 -0
- nvmath/linalg/advanced/helpers/__init__.py +5 -0
- nvmath/linalg/advanced/helpers/matmul.py +1316 -0
- nvmath/linalg/advanced/matmulmod.py +3734 -0
- nvmath/linalg/generic/__init__.py +53 -0
- nvmath/linalg/generic/_configuration/__init__.py +39 -0
- nvmath/linalg/generic/_configuration/layout.py +263 -0
- nvmath/linalg/generic/_configuration/match.py +734 -0
- nvmath/linalg/generic/_configuration/qualifiers.py +493 -0
- nvmath/linalg/generic/_configuration/solver_configuration.py +59 -0
- nvmath/linalg/generic/_configuration/wrap.py +217 -0
- nvmath/linalg/generic/_dtype.py +15 -0
- nvmath/linalg/generic/matmulmod.py +2094 -0
- nvmath/linalg/generic/solvermod.py +1301 -0
- nvmath/memory.py +279 -0
- nvmath/sparse/__init__.py +38 -0
- nvmath/sparse/_internal/__init__.py +21 -0
- nvmath/sparse/_internal/common_utils.py +147 -0
- nvmath/sparse/_internal/cudss_config_ifc.py +702 -0
- nvmath/sparse/_internal/cudss_data_ifc.py +399 -0
- nvmath/sparse/_internal/cudss_utils.py +506 -0
- nvmath/sparse/_internal/cusparse_utils.py +382 -0
- nvmath/sparse/_internal/sparse_bsc_ifc.py +303 -0
- nvmath/sparse/_internal/sparse_bsr_ifc.py +305 -0
- nvmath/sparse/_internal/sparse_coo_ifc.py +256 -0
- nvmath/sparse/_internal/sparse_csc_ifc.py +268 -0
- nvmath/sparse/_internal/sparse_csr_ifc.py +288 -0
- nvmath/sparse/_internal/sparse_dia_ifc.py +242 -0
- nvmath/sparse/_internal/sparse_format_helpers.py +601 -0
- nvmath/sparse/_internal/sparse_tensor_ifc.py +133 -0
- nvmath/sparse/_internal/sparse_ust_ifc.py +141 -0
- nvmath/sparse/_internal/utils.py +56 -0
- nvmath/sparse/advanced/__init__.py +7 -0
- nvmath/sparse/advanced/_configuration.py +227 -0
- nvmath/sparse/advanced/direct_solver.py +2069 -0
- nvmath/sparse/generic/__init__.py +7 -0
- nvmath/sparse/generic/_configuration.py +129 -0
- nvmath/sparse/generic/_helpers.py +137 -0
- nvmath/sparse/generic/_thunks.py +21 -0
- nvmath/sparse/generic/matmulmod.py +2353 -0
- nvmath/sparse/ust/__init__.py +7 -0
- nvmath/sparse/ust/_converters.py +422 -0
- nvmath/sparse/ust/_cpp.py +28 -0
- nvmath/sparse/ust/_drawer.py +565 -0
- nvmath/sparse/ust/_emitter.py +1033 -0
- nvmath/sparse/ust/_jit.py +188 -0
- nvmath/sparse/ust/_kernel.py +282 -0
- nvmath/sparse/ust/_utils.py +149 -0
- nvmath/sparse/ust/interfaces/__init__.py +0 -0
- nvmath/sparse/ust/interfaces/torch_interface.py +476 -0
- nvmath/sparse/ust/tensor.py +1016 -0
- nvmath/sparse/ust/tensor_format.py +957 -0
- nvmath/tensor/__init__.py +6 -0
- nvmath/tensor/_configuration.py +120 -0
- nvmath/tensor/_internal/__init__.py +3 -0
- nvmath/tensor/_internal/cutensor_config_ifc.py +279 -0
- nvmath/tensor/_internal/cutensor_utils.py +230 -0
- nvmath/tensor/_internal/data.py +43 -0
- nvmath/tensor/_internal/einsum_parser.py +444 -0
- nvmath/tensor/_internal/typemaps.py +96 -0
- nvmath/tensor/contract.py +1900 -0
- nvmath_python-1.0.0.dist-info/METADATA +134 -0
- nvmath_python-1.0.0.dist-info/RECORD +332 -0
- nvmath_python-1.0.0.dist-info/WHEEL +5 -0
- nvmath_python-1.0.0.dist-info/licenses/LICENSE +177 -0
- nvmath_python-1.0.0.dist-info/top_level.txt +2 -0
|
@@ -0,0 +1,100 @@
|
|
|
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 with version 25.5, generator version 0.3.1.dev1471+g7122059e9. Do not modify it directly.
|
|
6
|
+
|
|
7
|
+
from libc.stdint cimport intptr_t
|
|
8
|
+
|
|
9
|
+
from .cyfft cimport *
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
###############################################################################
|
|
13
|
+
# Types
|
|
14
|
+
###############################################################################
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
cdef class Plan:
|
|
20
|
+
cdef intptr_t forward_handle
|
|
21
|
+
cdef intptr_t inverse_handle
|
|
22
|
+
cdef int precision
|
|
23
|
+
cdef int kind
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
###############################################################################
|
|
27
|
+
# Enum
|
|
28
|
+
###############################################################################
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
# The `UNSPECIFIED` value is not valid sign in NVPL's header,
|
|
32
|
+
# but is used here to allow for planning C2C that can handle
|
|
33
|
+
# both directions
|
|
34
|
+
cpdef enum Sign:
|
|
35
|
+
UNSPECIFIED = 0
|
|
36
|
+
FORWARD = FFTW_FORWARD
|
|
37
|
+
INVERSE = FFTW_INVERSE
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
cpdef enum PlannerFlags:
|
|
41
|
+
ESTIMATE = FFTW_ESTIMATE
|
|
42
|
+
MEASURE = FFTW_MEASURE
|
|
43
|
+
PATIENT = FFTW_PATIENT
|
|
44
|
+
EXHAUSTIVE = FFTW_EXHAUSTIVE
|
|
45
|
+
WISDOM_ONLY = FFTW_WISDOM_ONLY
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
cpdef enum Precision:
|
|
49
|
+
FLOAT = 32
|
|
50
|
+
DOUBLE = 64
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
cpdef enum Kind:
|
|
54
|
+
C2C = 1
|
|
55
|
+
C2R = 2
|
|
56
|
+
R2C = 3
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
###############################################################################
|
|
63
|
+
# Convenience wrappers/adapters
|
|
64
|
+
###############################################################################
|
|
65
|
+
|
|
66
|
+
cpdef int plan_with_nthreads(int precision, int num_threads) except -1
|
|
67
|
+
cpdef int planner_nthreads(int precision) except? -1
|
|
68
|
+
cpdef int init_threads(int precision) except -1
|
|
69
|
+
cpdef int cleanup_threads(int precision) except -1
|
|
70
|
+
cpdef Plan plan_many(int precision, int kind, int sign, int rank, n, int batch, intptr_t in_, inembed, int istride, int idist, intptr_t out, onembed, int ostride, int odist, unsigned flags)
|
|
71
|
+
cpdef int destroy(Plan plan) except -1
|
|
72
|
+
cpdef int execute(Plan plan, intptr_t idata, intptr_t odata, int sign) except -1
|
|
73
|
+
|
|
74
|
+
###############################################################################
|
|
75
|
+
# Functions
|
|
76
|
+
###############################################################################
|
|
77
|
+
|
|
78
|
+
cpdef int get_version() except? -1
|
|
79
|
+
cpdef intptr_t plan_many_c2c_double(int rank, n, int batch, intptr_t in_, inembed, int istride, int idist, intptr_t out, onembed, int ostride, int odist, int sign, unsigned flags) except? 0
|
|
80
|
+
cpdef intptr_t plan_many_r2c_double(int rank, n, int batch, intptr_t in_, inembed, int istride, int idist, intptr_t out, onembed, int ostride, int odist, unsigned flags) except? 0
|
|
81
|
+
cpdef intptr_t plan_many_c2r_double(int rank, n, int batch, intptr_t in_, inembed, int istride, int idist, intptr_t out, onembed, int ostride, int odist, unsigned flags) except? 0
|
|
82
|
+
cpdef void execute_c2c_double(intptr_t plan, intptr_t idata, intptr_t odata) except*
|
|
83
|
+
cpdef void execute_r2c_double(intptr_t plan, intptr_t idata, intptr_t odata) except*
|
|
84
|
+
cpdef void execute_c2r_double(intptr_t plan, intptr_t idata, intptr_t odata) except*
|
|
85
|
+
cpdef intptr_t plan_many_c2c_float(int rank, n, int batch, intptr_t in_, inembed, int istride, int idist, intptr_t out, onembed, int ostride, int odist, int sign, unsigned flags) except? 0
|
|
86
|
+
cpdef intptr_t plan_many_r2c_float(int rank, n, int batch, intptr_t in_, inembed, int istride, int idist, intptr_t out, onembed, int ostride, int odist, unsigned flags) except? 0
|
|
87
|
+
cpdef intptr_t plan_many_c2r_float(int rank, n, int batch, intptr_t in_, inembed, int istride, int idist, intptr_t out, onembed, int ostride, int odist, unsigned flags) except? 0
|
|
88
|
+
cpdef void execute_c2c_float(intptr_t plan, intptr_t idata, intptr_t odata) except*
|
|
89
|
+
cpdef void execute_r2c_float(intptr_t plan, intptr_t idata, intptr_t odata) except*
|
|
90
|
+
cpdef void execute_c2r_float(intptr_t plan, intptr_t idata, intptr_t odata) except*
|
|
91
|
+
cpdef int init_threads_double() except 0
|
|
92
|
+
cpdef int init_threads_float() except 0
|
|
93
|
+
cpdef void plan_with_nthreads_double(int nthreads) except*
|
|
94
|
+
cpdef void plan_with_nthreads_float(int nthreads) except*
|
|
95
|
+
cpdef int planner_nthreads_double() except? 0
|
|
96
|
+
cpdef int planner_nthreads_float() except? 0
|
|
97
|
+
cpdef void cleanup_threads_double() except*
|
|
98
|
+
cpdef void cleanup_threads_float() except*
|
|
99
|
+
cpdef void destroy_plan_double(intptr_t plan) except*
|
|
100
|
+
cpdef void destroy_plan_float(intptr_t plan) except*
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
# Copyright (c) 2026, NVIDIA CORPORATION & AFFILIATES. ALL RIGHTS RESERVED.
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
import _cython_3_2_5
|
|
6
|
+
import enum
|
|
7
|
+
from typing import Any, Callable, ClassVar
|
|
8
|
+
|
|
9
|
+
__pyx_capi__: dict
|
|
10
|
+
__test__: dict
|
|
11
|
+
cleanup_threads: _cython_3_2_5.cython_function_or_method
|
|
12
|
+
cleanup_threads_double: _cython_3_2_5.cython_function_or_method
|
|
13
|
+
cleanup_threads_float: _cython_3_2_5.cython_function_or_method
|
|
14
|
+
destroy: _cython_3_2_5.cython_function_or_method
|
|
15
|
+
destroy_plan_double: _cython_3_2_5.cython_function_or_method
|
|
16
|
+
destroy_plan_float: _cython_3_2_5.cython_function_or_method
|
|
17
|
+
execute: _cython_3_2_5.cython_function_or_method
|
|
18
|
+
execute_c2c_double: _cython_3_2_5.cython_function_or_method
|
|
19
|
+
execute_c2c_float: _cython_3_2_5.cython_function_or_method
|
|
20
|
+
execute_c2r_double: _cython_3_2_5.cython_function_or_method
|
|
21
|
+
execute_c2r_float: _cython_3_2_5.cython_function_or_method
|
|
22
|
+
execute_r2c_double: _cython_3_2_5.cython_function_or_method
|
|
23
|
+
execute_r2c_float: _cython_3_2_5.cython_function_or_method
|
|
24
|
+
get_version: _cython_3_2_5.cython_function_or_method
|
|
25
|
+
init_threads: _cython_3_2_5.cython_function_or_method
|
|
26
|
+
init_threads_double: _cython_3_2_5.cython_function_or_method
|
|
27
|
+
init_threads_float: _cython_3_2_5.cython_function_or_method
|
|
28
|
+
plan_many: _cython_3_2_5.cython_function_or_method
|
|
29
|
+
plan_many_c2c_double: _cython_3_2_5.cython_function_or_method
|
|
30
|
+
plan_many_c2c_float: _cython_3_2_5.cython_function_or_method
|
|
31
|
+
plan_many_c2r_double: _cython_3_2_5.cython_function_or_method
|
|
32
|
+
plan_many_c2r_float: _cython_3_2_5.cython_function_or_method
|
|
33
|
+
plan_many_r2c_double: _cython_3_2_5.cython_function_or_method
|
|
34
|
+
plan_many_r2c_float: _cython_3_2_5.cython_function_or_method
|
|
35
|
+
plan_with_nthreads: _cython_3_2_5.cython_function_or_method
|
|
36
|
+
plan_with_nthreads_double: _cython_3_2_5.cython_function_or_method
|
|
37
|
+
plan_with_nthreads_float: _cython_3_2_5.cython_function_or_method
|
|
38
|
+
planner_nthreads: _cython_3_2_5.cython_function_or_method
|
|
39
|
+
planner_nthreads_double: _cython_3_2_5.cython_function_or_method
|
|
40
|
+
planner_nthreads_float: _cython_3_2_5.cython_function_or_method
|
|
41
|
+
|
|
42
|
+
class FFTWError(Exception): ...
|
|
43
|
+
|
|
44
|
+
class FFTWUnaligned(FFTWError): ...
|
|
45
|
+
|
|
46
|
+
class Kind(enum.IntFlag):
|
|
47
|
+
__new__: ClassVar[Callable] = ...
|
|
48
|
+
C2C: ClassVar[Kind] = ...
|
|
49
|
+
C2R: ClassVar[Kind] = ...
|
|
50
|
+
R2C: ClassVar[Kind] = ...
|
|
51
|
+
_all_bits_: ClassVar[int] = ...
|
|
52
|
+
_boundary_: ClassVar[enum.FlagBoundary] = ...
|
|
53
|
+
_flag_mask_: ClassVar[int] = ...
|
|
54
|
+
_generate_next_value_: ClassVar[Callable] = ...
|
|
55
|
+
_hashable_values_: ClassVar[list] = ...
|
|
56
|
+
_inverted_: ClassVar[None] = ...
|
|
57
|
+
_member_map_: ClassVar[dict] = ...
|
|
58
|
+
_member_names_: ClassVar[list] = ...
|
|
59
|
+
_member_type_: ClassVar[type[int]] = ...
|
|
60
|
+
_singles_mask_: ClassVar[int] = ...
|
|
61
|
+
_unhashable_values_: ClassVar[list] = ...
|
|
62
|
+
_unhashable_values_map_: ClassVar[dict] = ...
|
|
63
|
+
_use_args_: ClassVar[bool] = ...
|
|
64
|
+
_value2member_map_: ClassVar[dict] = ...
|
|
65
|
+
__and__: ClassVar[Callable] = ...
|
|
66
|
+
__invert__: ClassVar[Callable] = ...
|
|
67
|
+
__or__: ClassVar[Callable] = ...
|
|
68
|
+
__rand__: ClassVar[Callable] = ...
|
|
69
|
+
__ror__: ClassVar[Callable] = ...
|
|
70
|
+
__rxor__: ClassVar[Callable] = ...
|
|
71
|
+
__xor__: ClassVar[Callable] = ...
|
|
72
|
+
def __format__(self, *args, **kwargs) -> str:
|
|
73
|
+
"""Convert to a string according to format_spec."""
|
|
74
|
+
|
|
75
|
+
class Plan:
|
|
76
|
+
@classmethod
|
|
77
|
+
def __init__(cls, *args, **kwargs) -> None:
|
|
78
|
+
"""Create and return a new object. See help(type) for accurate signature."""
|
|
79
|
+
def __reduce__(self) -> Any:
|
|
80
|
+
"""Plan.__reduce__(self)"""
|
|
81
|
+
|
|
82
|
+
class PlannerFlags(enum.IntFlag):
|
|
83
|
+
__new__: ClassVar[Callable] = ...
|
|
84
|
+
ESTIMATE: ClassVar[PlannerFlags] = ...
|
|
85
|
+
EXHAUSTIVE: ClassVar[PlannerFlags] = ...
|
|
86
|
+
MEASURE: ClassVar[PlannerFlags] = ...
|
|
87
|
+
PATIENT: ClassVar[PlannerFlags] = ...
|
|
88
|
+
WISDOM_ONLY: ClassVar[PlannerFlags] = ...
|
|
89
|
+
_all_bits_: ClassVar[int] = ...
|
|
90
|
+
_boundary_: ClassVar[enum.FlagBoundary] = ...
|
|
91
|
+
_flag_mask_: ClassVar[int] = ...
|
|
92
|
+
_generate_next_value_: ClassVar[Callable] = ...
|
|
93
|
+
_hashable_values_: ClassVar[list] = ...
|
|
94
|
+
_inverted_: ClassVar[None] = ...
|
|
95
|
+
_member_map_: ClassVar[dict] = ...
|
|
96
|
+
_member_names_: ClassVar[list] = ...
|
|
97
|
+
_member_type_: ClassVar[type[int]] = ...
|
|
98
|
+
_singles_mask_: ClassVar[int] = ...
|
|
99
|
+
_unhashable_values_: ClassVar[list] = ...
|
|
100
|
+
_unhashable_values_map_: ClassVar[dict] = ...
|
|
101
|
+
_use_args_: ClassVar[bool] = ...
|
|
102
|
+
_value2member_map_: ClassVar[dict] = ...
|
|
103
|
+
__and__: ClassVar[Callable] = ...
|
|
104
|
+
__invert__: ClassVar[Callable] = ...
|
|
105
|
+
__or__: ClassVar[Callable] = ...
|
|
106
|
+
__rand__: ClassVar[Callable] = ...
|
|
107
|
+
__ror__: ClassVar[Callable] = ...
|
|
108
|
+
__rxor__: ClassVar[Callable] = ...
|
|
109
|
+
__xor__: ClassVar[Callable] = ...
|
|
110
|
+
def __format__(self, *args, **kwargs) -> str:
|
|
111
|
+
"""Convert to a string according to format_spec."""
|
|
112
|
+
|
|
113
|
+
class Precision(enum.IntFlag):
|
|
114
|
+
__new__: ClassVar[Callable] = ...
|
|
115
|
+
DOUBLE: ClassVar[Precision] = ...
|
|
116
|
+
FLOAT: ClassVar[Precision] = ...
|
|
117
|
+
_all_bits_: ClassVar[int] = ...
|
|
118
|
+
_boundary_: ClassVar[enum.FlagBoundary] = ...
|
|
119
|
+
_flag_mask_: ClassVar[int] = ...
|
|
120
|
+
_generate_next_value_: ClassVar[Callable] = ...
|
|
121
|
+
_hashable_values_: ClassVar[list] = ...
|
|
122
|
+
_inverted_: ClassVar[None] = ...
|
|
123
|
+
_member_map_: ClassVar[dict] = ...
|
|
124
|
+
_member_names_: ClassVar[list] = ...
|
|
125
|
+
_member_type_: ClassVar[type[int]] = ...
|
|
126
|
+
_singles_mask_: ClassVar[int] = ...
|
|
127
|
+
_unhashable_values_: ClassVar[list] = ...
|
|
128
|
+
_unhashable_values_map_: ClassVar[dict] = ...
|
|
129
|
+
_use_args_: ClassVar[bool] = ...
|
|
130
|
+
_value2member_map_: ClassVar[dict] = ...
|
|
131
|
+
__and__: ClassVar[Callable] = ...
|
|
132
|
+
__invert__: ClassVar[Callable] = ...
|
|
133
|
+
__or__: ClassVar[Callable] = ...
|
|
134
|
+
__rand__: ClassVar[Callable] = ...
|
|
135
|
+
__ror__: ClassVar[Callable] = ...
|
|
136
|
+
__rxor__: ClassVar[Callable] = ...
|
|
137
|
+
__xor__: ClassVar[Callable] = ...
|
|
138
|
+
def __format__(self, *args, **kwargs) -> str:
|
|
139
|
+
"""Convert to a string according to format_spec."""
|
|
140
|
+
|
|
141
|
+
class Sign(enum.IntFlag):
|
|
142
|
+
__new__: ClassVar[Callable] = ...
|
|
143
|
+
FORWARD: ClassVar[Sign] = ...
|
|
144
|
+
INVERSE: ClassVar[Sign] = ...
|
|
145
|
+
UNSPECIFIED: ClassVar[Sign] = ...
|
|
146
|
+
_all_bits_: ClassVar[int] = ...
|
|
147
|
+
_boundary_: ClassVar[enum.FlagBoundary] = ...
|
|
148
|
+
_flag_mask_: ClassVar[int] = ...
|
|
149
|
+
_generate_next_value_: ClassVar[Callable] = ...
|
|
150
|
+
_hashable_values_: ClassVar[list] = ...
|
|
151
|
+
_inverted_: ClassVar[None] = ...
|
|
152
|
+
_member_map_: ClassVar[dict] = ...
|
|
153
|
+
_member_names_: ClassVar[list] = ...
|
|
154
|
+
_member_type_: ClassVar[type[int]] = ...
|
|
155
|
+
_singles_mask_: ClassVar[int] = ...
|
|
156
|
+
_unhashable_values_: ClassVar[list] = ...
|
|
157
|
+
_unhashable_values_map_: ClassVar[dict] = ...
|
|
158
|
+
_use_args_: ClassVar[bool] = ...
|
|
159
|
+
_value2member_map_: ClassVar[dict] = ...
|
|
160
|
+
__and__: ClassVar[Callable] = ...
|
|
161
|
+
__invert__: ClassVar[Callable] = ...
|
|
162
|
+
__or__: ClassVar[Callable] = ...
|
|
163
|
+
__rand__: ClassVar[Callable] = ...
|
|
164
|
+
__ror__: ClassVar[Callable] = ...
|
|
165
|
+
__rxor__: ClassVar[Callable] = ...
|
|
166
|
+
__xor__: ClassVar[Callable] = ...
|
|
167
|
+
def __format__(self, *args, **kwargs) -> str:
|
|
168
|
+
"""Convert to a string according to format_spec."""
|
|
@@ -0,0 +1,54 @@
|
|
|
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 with version 3.1.7. Do not modify it directly.
|
|
6
|
+
|
|
7
|
+
from libc.stdint cimport intptr_t
|
|
8
|
+
|
|
9
|
+
from .cynvshmem cimport *
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
###############################################################################
|
|
13
|
+
# Types
|
|
14
|
+
###############################################################################
|
|
15
|
+
|
|
16
|
+
ctypedef nvshmem_team_config_v1 team_config
|
|
17
|
+
ctypedef nvshmemx_uniqueid_args_v1 uniqueid_args
|
|
18
|
+
ctypedef nvshmemx_init_args_v1 init_args
|
|
19
|
+
ctypedef nvshmemx_init_attr_v1 init_attr
|
|
20
|
+
|
|
21
|
+
ctypedef cudaStream_t Stream
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
###############################################################################
|
|
25
|
+
# Enum
|
|
26
|
+
###############################################################################
|
|
27
|
+
|
|
28
|
+
ctypedef _anon_enum0 __anon_enum0
|
|
29
|
+
ctypedef _anon_enum1 __anon_enum1
|
|
30
|
+
ctypedef _anon_enum2 __anon_enum2
|
|
31
|
+
ctypedef nvshmemx_status _Status
|
|
32
|
+
ctypedef flags _Flags
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
###############################################################################
|
|
36
|
+
# Functions
|
|
37
|
+
###############################################################################
|
|
38
|
+
|
|
39
|
+
cpdef int init_status() except? -1
|
|
40
|
+
cpdef int my_pe() except? -1
|
|
41
|
+
cpdef int n_pes() except? -1
|
|
42
|
+
cpdef intptr_t malloc(size_t size) except? 0
|
|
43
|
+
cpdef intptr_t calloc(size_t count, size_t size) except? 0
|
|
44
|
+
cpdef intptr_t align(size_t alignment, size_t size) except? 0
|
|
45
|
+
cpdef void free(intptr_t ptr) except*
|
|
46
|
+
cpdef intptr_t ptr(intptr_t dest, int pe) except? 0
|
|
47
|
+
cpdef void int_p(intptr_t dest, int value, int pe) except*
|
|
48
|
+
cpdef int team_my_pe(int32_t team) except? -1
|
|
49
|
+
cpdef void barrier_all_on_stream(intptr_t stream) except*
|
|
50
|
+
cpdef void sync_all_on_stream(intptr_t stream) except*
|
|
51
|
+
cpdef hostlib_init_attr(unsigned int flags, intptr_t attr)
|
|
52
|
+
cpdef void hostlib_finalize() except*
|
|
53
|
+
cpdef set_attr_uniqueid_args(int myrank, int nranks, intptr_t uniqueid, intptr_t attr)
|
|
54
|
+
cpdef get_uniqueid(intptr_t uniqueid)
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
# Copyright (c) 2026, NVIDIA CORPORATION & AFFILIATES. ALL RIGHTS RESERVED.
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
import _cython_3_2_5
|
|
6
|
+
import enum
|
|
7
|
+
import numpy.dtypes
|
|
8
|
+
from _typeshed import Incomplete
|
|
9
|
+
from typing import Any, Callable, ClassVar
|
|
10
|
+
|
|
11
|
+
STATUS_FULL_MPG: int
|
|
12
|
+
STATUS_INVALID: int
|
|
13
|
+
STATUS_IS_BOOTSTRAPPED: int
|
|
14
|
+
STATUS_IS_INITIALIZED: int
|
|
15
|
+
STATUS_LIMITED_MPG: int
|
|
16
|
+
STATUS_NOT_INITIALIZED: int
|
|
17
|
+
TEAMS_MIN: int
|
|
18
|
+
TEAM_GPU_LEADERS: int
|
|
19
|
+
TEAM_GPU_LEADERS_INDEX: int
|
|
20
|
+
TEAM_INDEX_MAX: int
|
|
21
|
+
TEAM_INVALID: int
|
|
22
|
+
TEAM_NODE: int
|
|
23
|
+
TEAM_NODE_INDEX: int
|
|
24
|
+
TEAM_SAME_GPU: int
|
|
25
|
+
TEAM_SAME_GPU_INDEX: int
|
|
26
|
+
TEAM_SAME_MYPE_NODE: int
|
|
27
|
+
TEAM_SAME_MYPE_NODE_INDEX: int
|
|
28
|
+
TEAM_SHARED: int
|
|
29
|
+
TEAM_SHARED_INDEX: int
|
|
30
|
+
TEAM_WORLD: int
|
|
31
|
+
TEAM_WORLD_INDEX: int
|
|
32
|
+
__pyx_capi__: dict
|
|
33
|
+
__test__: dict
|
|
34
|
+
align: _cython_3_2_5.cython_function_or_method
|
|
35
|
+
barrier_all_on_stream: _cython_3_2_5.cython_function_or_method
|
|
36
|
+
calloc: _cython_3_2_5.cython_function_or_method
|
|
37
|
+
check_status: _cython_3_2_5.cython_function_or_method
|
|
38
|
+
free: _cython_3_2_5.cython_function_or_method
|
|
39
|
+
get_uniqueid: _cython_3_2_5.cython_function_or_method
|
|
40
|
+
hostlib_finalize: _cython_3_2_5.cython_function_or_method
|
|
41
|
+
hostlib_init_attr: _cython_3_2_5.cython_function_or_method
|
|
42
|
+
init_attr_dtype: numpy.dtypes.VoidDType
|
|
43
|
+
init_status: _cython_3_2_5.cython_function_or_method
|
|
44
|
+
int_p: _cython_3_2_5.cython_function_or_method
|
|
45
|
+
malloc: _cython_3_2_5.cython_function_or_method
|
|
46
|
+
my_pe: _cython_3_2_5.cython_function_or_method
|
|
47
|
+
n_pes: _cython_3_2_5.cython_function_or_method
|
|
48
|
+
ptr: _cython_3_2_5.cython_function_or_method
|
|
49
|
+
set_attr_uniqueid_args: _cython_3_2_5.cython_function_or_method
|
|
50
|
+
sync_all_on_stream: _cython_3_2_5.cython_function_or_method
|
|
51
|
+
team_my_pe: _cython_3_2_5.cython_function_or_method
|
|
52
|
+
uniqueid_dtype: numpy.dtypes.VoidDType
|
|
53
|
+
|
|
54
|
+
class Flags(enum.IntEnum):
|
|
55
|
+
"""See `flags`."""
|
|
56
|
+
__new__: ClassVar[Callable] = ...
|
|
57
|
+
INIT_MAX: ClassVar[Flags] = ...
|
|
58
|
+
INIT_THREAD_PES: ClassVar[Flags] = ...
|
|
59
|
+
INIT_WITH_MPI_COMM: ClassVar[Flags] = ...
|
|
60
|
+
INIT_WITH_SHMEM: ClassVar[Flags] = ...
|
|
61
|
+
INIT_WITH_UNIQUEID: ClassVar[Flags] = ...
|
|
62
|
+
_generate_next_value_: ClassVar[Callable] = ...
|
|
63
|
+
_hashable_values_: ClassVar[list] = ...
|
|
64
|
+
_member_map_: ClassVar[dict] = ...
|
|
65
|
+
_member_names_: ClassVar[list] = ...
|
|
66
|
+
_member_type_: ClassVar[type[int]] = ...
|
|
67
|
+
_unhashable_values_: ClassVar[list] = ...
|
|
68
|
+
_unhashable_values_map_: ClassVar[dict] = ...
|
|
69
|
+
_use_args_: ClassVar[bool] = ...
|
|
70
|
+
_value2member_map_: ClassVar[dict] = ...
|
|
71
|
+
def __format__(self, *args, **kwargs) -> str:
|
|
72
|
+
"""Convert to a string according to format_spec."""
|
|
73
|
+
|
|
74
|
+
class InitAttr:
|
|
75
|
+
"""InitAttr()"""
|
|
76
|
+
mpi_comm: Incomplete
|
|
77
|
+
ptr: Incomplete
|
|
78
|
+
version: Incomplete
|
|
79
|
+
def __init__(self) -> Any:
|
|
80
|
+
"""Initialize self. See help(type(self)) for accurate signature."""
|
|
81
|
+
def __reduce__(self):
|
|
82
|
+
"""InitAttr.__reduce_cython__(self)"""
|
|
83
|
+
def __reduce_cython__(self) -> Any:
|
|
84
|
+
"""InitAttr.__reduce_cython__(self)"""
|
|
85
|
+
def __setstate_cython__(self, __pyx_state) -> Any:
|
|
86
|
+
"""InitAttr.__setstate_cython__(self, __pyx_state)"""
|
|
87
|
+
|
|
88
|
+
class NvshmemError(Exception):
|
|
89
|
+
def __init__(self, status) -> Any:
|
|
90
|
+
"""NvshmemError.__init__(self, status)"""
|
|
91
|
+
def __reduce__(self) -> Any:
|
|
92
|
+
"""NvshmemError.__reduce__(self)"""
|
|
93
|
+
|
|
94
|
+
class Status(enum.IntEnum):
|
|
95
|
+
"""See `nvshmemx_status`."""
|
|
96
|
+
__new__: ClassVar[Callable] = ...
|
|
97
|
+
ERROR_COLLECTIVE_LAUNCH_FAILED: ClassVar[Status] = ...
|
|
98
|
+
ERROR_GPU_NOT_SELECTED: ClassVar[Status] = ...
|
|
99
|
+
ERROR_INTERNAL: ClassVar[Status] = ...
|
|
100
|
+
ERROR_INVALID_VALUE: ClassVar[Status] = ...
|
|
101
|
+
ERROR_NOT_SUPPORTED: ClassVar[Status] = ...
|
|
102
|
+
ERROR_OUT_OF_MEMORY: ClassVar[Status] = ...
|
|
103
|
+
ERROR_SENTINEL: ClassVar[Status] = ...
|
|
104
|
+
ERROR_SYMMETRY: ClassVar[Status] = ...
|
|
105
|
+
SUCCESS: ClassVar[Status] = ...
|
|
106
|
+
_generate_next_value_: ClassVar[Callable] = ...
|
|
107
|
+
_hashable_values_: ClassVar[list] = ...
|
|
108
|
+
_member_map_: ClassVar[dict] = ...
|
|
109
|
+
_member_names_: ClassVar[list] = ...
|
|
110
|
+
_member_type_: ClassVar[type[int]] = ...
|
|
111
|
+
_unhashable_values_: ClassVar[list] = ...
|
|
112
|
+
_unhashable_values_map_: ClassVar[dict] = ...
|
|
113
|
+
_use_args_: ClassVar[bool] = ...
|
|
114
|
+
_value2member_map_: ClassVar[dict] = ...
|
|
115
|
+
def __format__(self, *args, **kwargs) -> str:
|
|
116
|
+
"""Convert to a string according to format_spec."""
|
|
117
|
+
|
|
118
|
+
class UniqueId(uniqueid):
|
|
119
|
+
@classmethod
|
|
120
|
+
def __init__(cls, *args, **kwargs) -> None:
|
|
121
|
+
"""Create and return a new object. See help(type) for accurate signature."""
|
|
122
|
+
def __reduce__(self):
|
|
123
|
+
"""UniqueId.__reduce_cython__(self)"""
|
|
124
|
+
def __reduce_cython__(self) -> Any:
|
|
125
|
+
"""UniqueId.__reduce_cython__(self)"""
|
|
126
|
+
def __setstate_cython__(self, __pyx_state) -> Any:
|
|
127
|
+
"""UniqueId.__setstate_cython__(self, __pyx_state)"""
|
|
128
|
+
|
|
129
|
+
class uniqueid:
|
|
130
|
+
"""uniqueid(size=1)
|
|
131
|
+
|
|
132
|
+
Empty-initialize an array of `nvshmemx_uniqueid_v1`.
|
|
133
|
+
|
|
134
|
+
The resulting object is of length `size` and of dtype `uniqueid_dtype`.
|
|
135
|
+
If default-constructed, the instance represents a single struct.
|
|
136
|
+
|
|
137
|
+
Args:
|
|
138
|
+
size (int): number of structs, default=1.
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
.. seealso:: `nvshmemx_uniqueid_v1`"""
|
|
142
|
+
ptr: Incomplete
|
|
143
|
+
version: Incomplete
|
|
144
|
+
def __init__(self, size=...) -> Any:
|
|
145
|
+
"""Initialize self. See help(type(self)) for accurate signature."""
|
|
146
|
+
@staticmethod
|
|
147
|
+
def from_data(data) -> Any:
|
|
148
|
+
"""uniqueid.from_data(data)
|
|
149
|
+
|
|
150
|
+
Create an uniqueid instance wrapping the given NumPy array.
|
|
151
|
+
|
|
152
|
+
Args:
|
|
153
|
+
data (_numpy.ndarray): a 1D array of dtype `uniqueid_dtype` holding the data."""
|
|
154
|
+
@staticmethod
|
|
155
|
+
def from_ptr(intptr_tptr, size_tsize=..., boolreadonly=...) -> Any:
|
|
156
|
+
"""uniqueid.from_ptr(intptr_t ptr, size_t size=1, bool readonly=False)
|
|
157
|
+
|
|
158
|
+
Create an uniqueid instance wrapping the given pointer.
|
|
159
|
+
|
|
160
|
+
Args:
|
|
161
|
+
ptr (intptr_t): pointer address as Python :class:`int` to the data.
|
|
162
|
+
size (int): number of structs, default=1.
|
|
163
|
+
readonly (bool): whether the data is read-only (to the user). default is `False`."""
|
|
164
|
+
def __delitem__(self, other) -> None:
|
|
165
|
+
"""Delete self[key]."""
|
|
166
|
+
def __eq__(self, other: object) -> bool:
|
|
167
|
+
"""Return self==value."""
|
|
168
|
+
def __ge__(self, other: object) -> bool:
|
|
169
|
+
"""Return self>=value."""
|
|
170
|
+
def __getitem__(self, index):
|
|
171
|
+
"""Return self[key]."""
|
|
172
|
+
def __gt__(self, other: object) -> bool:
|
|
173
|
+
"""Return self>value."""
|
|
174
|
+
def __int__(self) -> int:
|
|
175
|
+
"""int(self)"""
|
|
176
|
+
def __le__(self, other: object) -> bool:
|
|
177
|
+
"""Return self<=value."""
|
|
178
|
+
def __len__(self) -> int:
|
|
179
|
+
"""Return len(self)."""
|
|
180
|
+
def __lt__(self, other: object) -> bool:
|
|
181
|
+
"""Return self<value."""
|
|
182
|
+
def __ne__(self, other: object) -> bool:
|
|
183
|
+
"""Return self!=value."""
|
|
184
|
+
def __reduce__(self):
|
|
185
|
+
"""uniqueid.__reduce_cython__(self)"""
|
|
186
|
+
def __reduce_cython__(self) -> Any:
|
|
187
|
+
"""uniqueid.__reduce_cython__(self)"""
|
|
188
|
+
def __setitem__(self, index, object) -> None:
|
|
189
|
+
"""Set self[key] to value."""
|
|
190
|
+
def __setstate_cython__(self, __pyx_state) -> Any:
|
|
191
|
+
"""uniqueid.__setstate_cython__(self, __pyx_state)"""
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Copyright (c) 2024-2026, NVIDIA CORPORATION & AFFILIATES. ALL RIGHTS RESERVED.
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
from .common import * # noqa: F403
|
|
6
|
+
from .common_cuda import * # noqa: F403
|
|
7
|
+
from .cublasdx import * # noqa: F403
|
|
8
|
+
from .cublasdx_backend import * # noqa: F403
|
|
9
|
+
from .cufftdx import * # noqa: F403
|
|
10
|
+
from .cusolverdx import * # noqa: F403
|
|
11
|
+
from .types import * # noqa: F403
|
|
12
|
+
|
|
13
|
+
# isort: split
|
|
14
|
+
|
|
15
|
+
# register models in compilers; must occur after imports above
|
|
16
|
+
from .common import _HAS_NUMBA, _HAS_NUMBA_CUDA_MLIR
|
|
17
|
+
|
|
18
|
+
if _HAS_NUMBA:
|
|
19
|
+
from . import (
|
|
20
|
+
cublasdx_numba, # noqa: F401
|
|
21
|
+
cufftdx_numba, # noqa: F401
|
|
22
|
+
cusolverdx_numba, # noqa: F401
|
|
23
|
+
)
|
|
24
|
+
from .vector_types_numba import * # noqa: F403
|
|
25
|
+
|
|
26
|
+
if _HAS_NUMBA_CUDA_MLIR:
|
|
27
|
+
from numba_cuda_mlir.extending import refresh_registries
|
|
28
|
+
|
|
29
|
+
from . import (
|
|
30
|
+
common_numba_cuda_mlir, # noqa: F401
|
|
31
|
+
cublasdx_numba_cuda_mlir, # noqa: F401
|
|
32
|
+
cufftdx_numba_cuda_mlir, # noqa: F401
|
|
33
|
+
cusolverdx_numba_cuda_mlir, # noqa: F401
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
# Required for scenario when we compile some kernel
|
|
37
|
+
# and afterwards we import the device APIs
|
|
38
|
+
refresh_registries(include_uninitialized_cuda=False)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Copyright (c) 2024-2026, NVIDIA CORPORATION & AFFILIATES. ALL RIGHTS RESERVED.
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
|
|
5
|
+
import functools
|
|
6
|
+
import sys
|
|
7
|
+
from warnings import warn
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def _deprecated(
|
|
11
|
+
msg,
|
|
12
|
+
category: type[Warning] | None = DeprecationWarning,
|
|
13
|
+
stacklevel: int = 1,
|
|
14
|
+
):
|
|
15
|
+
"""Drop-in replacement for @warnings.deprecated(...)"""
|
|
16
|
+
|
|
17
|
+
def decorator(func):
|
|
18
|
+
@functools.wraps(func)
|
|
19
|
+
def wrapper(*args, **kwargs):
|
|
20
|
+
warn(msg, category=category, stacklevel=stacklevel + 1)
|
|
21
|
+
return func(*args, **kwargs)
|
|
22
|
+
|
|
23
|
+
return wrapper
|
|
24
|
+
|
|
25
|
+
return decorator
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
deprecated = _deprecated
|
|
29
|
+
|
|
30
|
+
if (sys.version_info.major, sys.version_info.minor) >= (3, 13):
|
|
31
|
+
from warnings import deprecated as _warnings_deprecated # type: ignore
|
|
32
|
+
|
|
33
|
+
deprecated = _warnings_deprecated
|