Coverage for cuda / core / __init__.py: 83.87%

31 statements  

« prev     ^ index     » next       coverage.py v7.13.4, created at 2026-03-08 01:07 +0000

1# SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 

2# 

3# SPDX-License-Identifier: Apache-2.0 

4 

5from cuda.core._version import __version__ 

6 

7try: 

8 from cuda import bindings 

9except ImportError: 

10 raise ImportError("cuda.bindings 12.x or 13.x must be installed") from None 

11else: 

12 cuda_major, cuda_minor = bindings.__version__.split(".")[:2] 

13 if cuda_major not in ("12", "13"): 

14 raise ImportError("cuda.bindings 12.x or 13.x must be installed") 

15 

16import importlib 

17 

18subdir = f"cu{cuda_major}" 

19try: 

20 versioned_mod = importlib.import_module(f".{subdir}", __package__) 

21 # Import all symbols from the module 

22 globals().update(versioned_mod.__dict__) 

23except ImportError: 

24 # This is not a wheel build, but a conda or local build, do nothing 

25 pass 

26else: 

27 del versioned_mod 

28finally: 

29 del bindings, importlib, subdir, cuda_major, cuda_minor 

30 

31from cuda.core import system, utils 

32from cuda.core._device import Device 

33from cuda.core._event import Event, EventOptions 

34from cuda.core._graph import ( 

35 Graph, 

36 GraphBuilder, 

37 GraphCompleteOptions, 

38 GraphDebugPrintOptions, 

39) 

40from cuda.core._graphics import GraphicsResource 

41from cuda.core._launch_config import LaunchConfig 

42from cuda.core._launcher import launch 

43from cuda.core._layout import _StridedLayout 

44from cuda.core._linker import Linker, LinkerOptions 

45from cuda.core._memory import ( 

46 Buffer, 

47 DeviceMemoryResource, 

48 DeviceMemoryResourceOptions, 

49 GraphMemoryResource, 

50 LegacyPinnedMemoryResource, 

51 ManagedMemoryResource, 

52 ManagedMemoryResourceOptions, 

53 MemoryResource, 

54 PinnedMemoryResource, 

55 PinnedMemoryResourceOptions, 

56 VirtualMemoryResource, 

57 VirtualMemoryResourceOptions, 

58) 

59from cuda.core._memoryview import ( 

60 StridedMemoryView, 

61 args_viewable_as_strided_memory, 

62) 

63from cuda.core._module import Kernel, ObjectCode 

64from cuda.core._program import Program, ProgramOptions 

65from cuda.core._stream import ( 

66 LEGACY_DEFAULT_STREAM, 

67 PER_THREAD_DEFAULT_STREAM, 

68 Stream, 

69 StreamOptions, 

70)