Skip to content

Commit 3cd78f6

Browse files
author
chengduo
authored
add cuda_is_available (#18357)
* add cuda_is_available test=release/1.5
1 parent 2240f7f commit 3cd78f6

File tree

2 files changed

+20
-3
lines changed

2 files changed

+20
-3
lines changed

paddle/fluid/API.spec

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,10 @@ paddle.fluid.default_main_program (ArgSpec(args=[], varargs=None, keywords=None,
1111
paddle.fluid.program_guard (ArgSpec(args=['main_program', 'startup_program'], varargs=None, keywords=None, defaults=(None,)), ('document', '78fb5c7f70ef76bcf4a1862c3f6b8191'))
1212
paddle.fluid.name_scope (ArgSpec(args=['prefix'], varargs=None, keywords=None, defaults=(None,)), ('document', '61660461e1f44e0480ca22fa8a482c41'))
1313
paddle.fluid.cuda_places (ArgSpec(args=['device_ids'], varargs=None, keywords=None, defaults=(None,)), ('document', '7f3068b82fc427bfa04b1af953610992'))
14-
paddle.fluid.cpu_places (ArgSpec(args=['device_count'], varargs=None, keywords=None, defaults=(None,)), ('document', '8b674e9a7ac7944c27fd853b675c2cb2'))
14+
paddle.fluid.cpu_places (ArgSpec(args=['device_count'], varargs=None, keywords=None, defaults=(None,)), ('document', 'dad57e8624794766d770cea905dec1c2'))
1515
paddle.fluid.cuda_pinned_places (ArgSpec(args=['device_count'], varargs=None, keywords=None, defaults=(None,)), ('document', 'cc83b6c5ba8be38ff3ee87e9cec9de5f'))
1616
paddle.fluid.in_dygraph_mode (ArgSpec(args=[], varargs=None, keywords=None, defaults=None), ('document', 'eddb7a1f0083dcc70e9f6c71ee003cb9'))
17+
paddle.fluid.is_compiled_with_cuda (ArgSpec(args=[], varargs=None, keywords=None, defaults=None), ('document', '60c7f107a5050aeb58bb74eb175672b5'))
1718
paddle.fluid.Executor.__init__ (ArgSpec(args=['self', 'place'], varargs=None, keywords=None, defaults=None), ('document', '6adf97f83acf6453d4a6a4b1070f3754'))
1819
paddle.fluid.Executor.close (ArgSpec(args=['self'], varargs=None, keywords=None, defaults=None), ('document', '3a584496aa1343f36eebf3c46b323a74'))
1920
paddle.fluid.Executor.infer_from_dataset (ArgSpec(args=['self', 'program', 'dataset', 'scope', 'thread', 'debug', 'fetch_list', 'fetch_info', 'print_period'], varargs=None, keywords=None, defaults=(None, None, None, 0, False, None, None, 100)), ('document', 'bedc29ad01c1b911e99032ee1e19ac59'))

python/paddle/fluid/framework.py

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
'cpu_places',
4545
'cuda_pinned_places',
4646
'in_dygraph_mode',
47+
'is_compiled_with_cuda',
4748
]
4849

4950
EMPTY_VAR_NAME = core.kEmptyVarName()
@@ -102,6 +103,21 @@ def _cuda_ids():
102103
return device_ids
103104

104105

106+
def is_compiled_with_cuda():
107+
"""
108+
Whether this whl package can be used to run the model on GPU.
109+
110+
Returns (bool): support gpu or not.
111+
112+
Examples:
113+
.. code-block:: python
114+
115+
import paddle.fluid as fluid
116+
support_gpu = fluid.is_compiled_with_cuda()
117+
"""
118+
return core.is_compiled_with_cuda()
119+
120+
105121
def cuda_places(device_ids=None):
106122
"""
107123
Create a list of :code:`fluid.CUDAPlace` objects.
@@ -145,8 +161,8 @@ def cpu_places(device_count=None):
145161
146162
If :code:`device_count` is None, the device count would
147163
be determined by environment variable :code:`CPU_NUM`.
148-
If :code:`CPU_NUM` is not set, the device count would
149-
be determined by :code:`multiprocessing.cpu_count()`.
164+
If :code:`CPU_NUM` is not set, the default value is 1,
165+
i.e. CPU_NUM=1.
150166
151167
Args:
152168
device_count (None|int): device number.

0 commit comments

Comments
 (0)