Reputation: 673
What is the correct anaconda accelerate function to check cuda?
With numba-pro you could use:
>>> from numbapro import check_cuda
numbapro:1: ImportWarning: The numbapro package is deprecated in favour of the accelerate package. Please update your code to use equivalent functions from accelerate.
>>> check_cuda()
CUDA is not available...
or
>>> numbapro.check_cuda()
------------------------------libraries detection-------------------------------
Finding cublas
located at /home/usr/miniconda3/envs/cuda/lib/libcublas.so.7.0.28
trying to open library... ok
Finding cusparse
located at /home/usr/miniconda3/envs/cuda/lib/libcusparse.so.7.0.28
trying to open library... ok
Finding cufft
located at /home/usr/miniconda3/envs/cuda/lib/libcufft.so.7.0.35
trying to open library... ok
Finding curand
located at /home/usr/miniconda3/envs/cuda/lib/libcurand.so.7.0.28
trying to open library... ok
Finding nvvm
located at /home/usr/miniconda3/envs/cuda/lib/libnvvm.so.3.0.0
trying to open library... ok
finding libdevice for compute_20... ok
finding libdevice for compute_30... ok
finding libdevice for compute_35... ok
-------------------------------hardware detection-------------------------------
Found 2 CUDA devices
id 0 b'GeForce GTX TITAN X' [SUPPORTED]
compute capability: 5.2
pci device id: 0
pci bus id: 1
id 1 b'GeForce GTX TITAN X' [SUPPORTED]
compute capability: 5.2
pci device id: 0
pci bus id: 4
Summary:
2/2 devices are supported
PASSED
True
numbapro now gives a deprecation warning, and I have not been able to locate the equivalent check_conda()
method under the anaconda accelerate module.
Upvotes: 2
Views: 2053
Reputation: 106
I didn't see a direct analog, but the underlying routines still seem to be present, now in numba:
First part is from numba.cuda.cudadrv.libs.test()
which generates searches for CUDA libraries. The second is numba.cuda.api.detect()
which searches for devices. (In accelerate proper, you might try the less detailed accelerate.cuda.cuda_compatible()
, which just returns true or false)
E.g.,
import numba.cuda.api,numba.cuda.cudadrv.libs
numba.cuda.cudadrv.libs.test()
numba.cuda.api.detect()
Finding cublas
located at S:\programs\x64\Anaconda3\DLLs\cublas64_75.dll
trying to open library... ok
Finding cusparse
located at S:\programs\x64\Anaconda3\DLLs\cusparse64_75.dll
trying to open library... ok
Finding cufft
located at S:\programs\x64\Anaconda3\DLLs\cufft64_75.dll
trying to open library... ok
Finding curand
located at S:\programs\x64\Anaconda3\DLLs\curand64_75.dll
trying to open library... ok
Finding nvvm
located at S:\programs\x64\Anaconda3\DLLs\nvvm64_30_0.dll
trying to open library... ok
finding libdevice for compute_20... ok
finding libdevice for compute_30... ok
finding libdevice for compute_35... ok
Found 1 CUDA devices
id 0 b'GeForce GTX 960' [SUPPORTED]
compute capability: 5.2
pci device id: 0
pci bus id: 4
Summary:
1/1 devices are supported
True
Upvotes: 6