Coverage for cuda/pathfinder/__init__.py: 100.00%
31 statements
« prev ^ index » next coverage.py v7.16.0, created at 2026-09-03 02:41 +0000
« prev ^ index » next coverage.py v7.16.0, created at 2026-09-03 02:41 +0000
1# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2# SPDX-License-Identifier: Apache-2.0
4"""cuda.pathfinder public APIs"""
6# NOTE: When adding or removing public APIs from this file, remember to update
7# cuda_pathfinder/docs/source/api.rst
8# to keep the documentation in sync.
10from cuda.pathfinder._binaries.find_nvidia_binary_utility import (
11 find_nvidia_binary_utility as find_nvidia_binary_utility,
12)
13from cuda.pathfinder._binaries.supported_nvidia_binaries import SUPPORTED_BINARIES as _SUPPORTED_BINARIES
14from cuda.pathfinder._dynamic_libs.load_dl_common import (
15 DynamicLibNotAvailableError as DynamicLibNotAvailableError,
16)
17from cuda.pathfinder._dynamic_libs.load_dl_common import DynamicLibNotFoundError as DynamicLibNotFoundError
18from cuda.pathfinder._dynamic_libs.load_dl_common import (
19 DynamicLibUnknownError as DynamicLibUnknownError,
20)
21from cuda.pathfinder._dynamic_libs.load_dl_common import LoadedDL as LoadedDL
22from cuda.pathfinder._dynamic_libs.load_nvidia_dynamic_lib import load_nvidia_dynamic_lib as load_nvidia_dynamic_lib
23from cuda.pathfinder._dynamic_libs.supported_nvidia_libs import SUPPORTED_LIBNAMES as _SUPPORTED_NVIDIA_LIBNAMES
24from cuda.pathfinder._headers.find_nvidia_headers import LocatedHeaderDir as LocatedHeaderDir
25from cuda.pathfinder._headers.find_nvidia_headers import find_nvidia_header_directory as find_nvidia_header_directory
26from cuda.pathfinder._headers.find_nvidia_headers import (
27 locate_nvidia_header_directory as locate_nvidia_header_directory,
28)
29from cuda.pathfinder._headers.supported_nvidia_headers import SUPPORTED_HEADERS_CTK as _SUPPORTED_HEADERS_CTK
30from cuda.pathfinder._static_libs.find_bitcode_lib import (
31 SUPPORTED_BITCODE_LIBS as _SUPPORTED_BITCODE_LIBS,
32)
33from cuda.pathfinder._static_libs.find_bitcode_lib import (
34 BitcodeLibNotFoundError as BitcodeLibNotFoundError,
35)
36from cuda.pathfinder._static_libs.find_bitcode_lib import (
37 LocatedBitcodeLib as LocatedBitcodeLib,
38)
39from cuda.pathfinder._static_libs.find_bitcode_lib import (
40 find_bitcode_lib as find_bitcode_lib,
41)
42from cuda.pathfinder._static_libs.find_bitcode_lib import (
43 locate_bitcode_lib as locate_bitcode_lib,
44)
45from cuda.pathfinder._static_libs.find_static_lib import (
46 SUPPORTED_STATIC_LIBS as _SUPPORTED_STATIC_LIBS,
47)
48from cuda.pathfinder._static_libs.find_static_lib import (
49 LocatedStaticLib as LocatedStaticLib,
50)
51from cuda.pathfinder._static_libs.find_static_lib import (
52 StaticLibNotFoundError as StaticLibNotFoundError,
53)
54from cuda.pathfinder._static_libs.find_static_lib import (
55 find_static_lib as find_static_lib,
56)
57from cuda.pathfinder._static_libs.find_static_lib import (
58 locate_static_lib as locate_static_lib,
59)
60from cuda.pathfinder._utils.env_vars import get_cuda_path_or_home as get_cuda_path_or_home
61from cuda.pathfinder._utils.windows_arch import UnsupportedArchError as UnsupportedArchError
63from cuda.pathfinder._version import __version__ # isort: skip
65# Indirections to help Sphinx find the docstrings.
66#: Mapping from short CUDA Toolkit (CTK) library names to their canonical
67#: header basenames (used to validate a discovered include directory).
68#: Example: ``"cublas" → "cublas.h"``. The key set is platform-aware
69#: (e.g., ``"cufile"`` may be Linux-only).
70SUPPORTED_HEADERS_CTK = _SUPPORTED_HEADERS_CTK
72#: Tuple of supported CUDA binary utility names that can be located
73#: via ``find_nvidia_binary_utility()``. Platform-aware (e.g., some
74#: utilities may be available only on Linux or Windows).
75#: Example utilities: ``"nvdisasm"``, ``"cuobjdump"``, ``"nvcc"``.
76SUPPORTED_BINARY_UTILITIES = _SUPPORTED_BINARIES
78#: Tuple of CUDA Toolkit dynamic library names supported by
79#: :func:`load_nvidia_dynamic_lib` for the current operating system and
80#: interpreter architecture.
81SUPPORTED_NVIDIA_LIBNAMES = _SUPPORTED_NVIDIA_LIBNAMES
83#: Tuple of supported bitcode library names that can be resolved
84#: via ``locate_bitcode_lib()`` and ``find_bitcode_lib()``.
85#: Example value: ``"device"``.
86SUPPORTED_BITCODE_LIBS = _SUPPORTED_BITCODE_LIBS
88#: Tuple of supported static library names that can be resolved
89#: via ``locate_static_lib()`` and ``find_static_lib()``.
90#: Example value: ``"cudadevrt"``.
91SUPPORTED_STATIC_LIBS = _SUPPORTED_STATIC_LIBS
93# Backward compatibility: _find_nvidia_header_directory was added in release 1.2.2.
94# It will be removed in release 1.2.4.
95_find_nvidia_header_directory = find_nvidia_header_directory