pythoncudaanacondanumba-pro

numba-pro unable to load CUDA device


I'm trying to se if GPU computation will dramatically speed up my code. I have installed numba-pro through the conda package manager.

However, the module does not seem to able to detect the CUDA device:

 In [1]: import numbapro ; numbapro.check_cude()
Vendor:  Continuum Analytics, Inc.
Package: numbapro
Message: trial mode expires in 30 days
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-1-0448b95a9b9c> in <module>()
----> 1 import numbapro ; numbapro.check_cude()

AttributeError: 'module' object has no attribute 'check_cude'

In [2]: import numbapro ; numbapro.check_cuda()
---------------------------------------------------------------------------
CudaSupportError                          Traceback (most recent call last)
<ipython-input-2-f7c0deebb46f> in <module>()
----> 1 import numbapro ; numbapro.check_cuda()

/home/phys/users/jonathan.kadmon/anaconda/envs/adam/lib/python2.7/site-packages/numbapro/__init__.pyc in check_cuda()

/home/phys/users/jonathan.kadmon/anaconda/envs/adam/lib/python2.7/site-packages/numba/cuda/device_init.pyc in is_available()
     19     This will initialize the driver if it hasn't been initialized.
     20     """
---> 21     return driver.driver.is_available and nvvm.is_available()
     22
     23

/home/phys/users/jonathan.kadmon/anaconda/envs/adam/lib/python2.7/site-packages/numba/cuda/cudadrv/driver.pyc in is_available(self)
    187     def is_available(self):
    188         if not self.is_initialized:
--> 189             self.initialize()
    190         return self.initialization_error is None
    191

/home/phys/users/jonathan.kadmon/anaconda/envs/adam/lib/python2.7/site-packages/numba/cuda/cudadrv/driver.pyc in initialize(self)
    182         except CudaAPIError as e:
    183             self.initialization_error = e
--> 184             raise CudaSupportError("Error at driver init: \n%s:" % e)
    185
    186     @property

CudaSupportError: Error at driver init:
Call to cuInit results in CUDA_ERROR_NO_DEVICE:

Some background:

  1. The anaconda was installed as a user on a linux machine. I don't have superuser.
  2. the filesystem is part of a NAS that holds all the home folders in my institution.
  3. the anaconda was originally installed on the NAS through a different machine with same architecture but probably without a GPU.
  4. On the computer with the GPU I have created a new environment and installed numbapro, which installed also all the dependencies, including cudatoolkit

    1. I am ssh'ing into the machine from a remote laptop (maybe the driver is not initialised when I use ssh
    2. I don't have lspci installed so i can't check the the GPU however I can see the device through:

      cat /proc/driver/nvidia/version

      NVRM version: NVIDIA UNIX x86_64 Kernel Module 355.11 Wed Aug 26 16:35:41 PDT 2015 GCC version: gcc version 4.8.5 (Gentoo 4.8.5 p1.3, pie-0.6.2)

Any help would be highly appreciated. Is that an ssh issue (I will not have access to the machine itself for a few days)? Is that a problem with the build and link of the packages?


Solution

  • Indeed it was a problem with ssh. The problem was solved by the IT adding my username that initialises the GPU on each logon.