2

检查 cuda 的正确 anaconda 加速功能是什么?

使用 numba-pro 你可以使用:

>>> 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...

或者

>>> 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 现在给出了弃用警告,我一直无法check_conda()在 anaconda 加速模块下找到等效方法。

4

1 回答 1

6

我没有看到直接的模拟,但底层的例程似乎仍然存在,现在在 numba 中:第一部分是从中numba.cuda.cudadrv.libs.test()生成对 CUDA 库的搜索。第二个是numba.cuda.api.detect()搜索设备。(在适当的加速中,您可以尝试不太详细accelerate.cuda.cuda_compatible()的,它只返回真或假)例如,

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
于 2016-07-07T14:59:09.097 回答