22#
33# SPDX-License-Identifier: Apache-2.0
44
5+ import warnings
6+
57from cuda .core .experimental ._device import Device
68from cuda .core .experimental ._utils .cuda_utils import driver , handle_return , runtime
79
@@ -23,8 +25,7 @@ def __init__(self):
2325 return
2426 self ._initialized = True
2527
26- @property
27- def driver_version (self ) -> tuple [int , int ]:
28+ def get_driver_version (self ) -> tuple [int , int ]:
2829 """
2930 Query the CUDA driver version.
3031
@@ -39,7 +40,27 @@ def driver_version(self) -> tuple[int, int]:
3940 return (major , minor )
4041
4142 @property
42- def num_devices (self ) -> int :
43+ def driver_version (self ) -> tuple [int , int ]:
44+ """
45+ Query the CUDA driver version.
46+
47+ Returns
48+ -------
49+ tuple of int
50+ A 2-tuple of (major, minor) version numbers.
51+
52+ .. deprecated:: 0.5.0
53+ `cuda.core.system.driver_version` will be removed in 0.6.0.
54+ Use `cuda.core.system.get_driver_version()` instead.
55+ """
56+ warnings .warn (
57+ "cuda.core.system.driver_version is deprecated. Use cuda.core.system.get_driver_version() instead." ,
58+ DeprecationWarning ,
59+ stacklevel = 1 ,
60+ )
61+ return self .get_driver_version ()
62+
63+ def get_num_devices (self ) -> int :
4364 """
4465 Query the number of available GPUs.
4566
@@ -50,6 +71,27 @@ def num_devices(self) -> int:
5071 """
5172 return handle_return (runtime .cudaGetDeviceCount ())
5273
74+ @property
75+ def num_devices (self ) -> int :
76+ """
77+ Query the number of available GPUs.
78+
79+ Returns
80+ -------
81+ int
82+ The number of available GPU devices.
83+
84+ .. deprecated:: 0.5.0
85+ `cuda.core.system.num_devices` will be removed in 0.6.0.
86+ Use `cuda.core.system.get_num_devices()` instead.
87+ """
88+ warnings .warn (
89+ "cuda.core.system.num_devices is deprecated. Use cuda.core.system.get_num_devices() instead." ,
90+ DeprecationWarning ,
91+ stacklevel = 1 ,
92+ )
93+ return self .get_num_devices ()
94+
5395 @property
5496 def devices (self ) -> tuple :
5597 """
@@ -59,6 +101,14 @@ def devices(self) -> tuple:
59101 -------
60102 tuple of Device
61103 A tuple containing instances of available devices.
104+
105+ .. deprecated:: 0.5.0
106+ `cuda.core.system.devices` will be removed in 0.6.0.
107+ Use `cuda.core.Device.get_all_devices()` instead.
62108 """
63- total = self .num_devices
64- return tuple (Device (device_id ) for device_id in range (total ))
109+ warnings .warn (
110+ "cuda.core.system.devices is deprecated. Use cuda.core.Device.get_all_devices() instead." ,
111+ DeprecationWarning ,
112+ stacklevel = 1 ,
113+ )
114+ return Device .get_all_devices ()
0 commit comments