Search code examples
rcudamicrosoft-r

CUDA Support with MicrosoftML in R


I want to execute the rxNeuralNet function from the MicrosoftML Package for R with the option acceleration = "gpu". However, R fails to enable the GPU accelaration as it prints the following message:

Beginning processing data.
Failed to initialize CUDA runtime. Possible reasons:
1. The machine does not have CUDA-capable card. Supported devices have compute capability 2.0 and higher.
2. Outdated graphics drivers. Please install the latest drivers from http://www.nvidia.com/Drivers.
3. CUDA runtime DLLs are missing, please see the GPU acceleration help for the installation instructions.

I do have a Nvidia GPU with the latest drivers including CUDA 8.0 installed. I also copied the required dll files into the proper as stated in the help document. The target directory for the dlls is:

C:/Program Files/Microsoft/R Client/R_SERVER/library/MicrosoftML/mxLibs/x64

The dlls that I copied into this directory were:

cublas80_65.dll cudart80_65.dll cusparse80_65.dll cudnn80_65.dll

Did I miss something? Unfortunately CUDA is still not working for rxNeuralNet. My OS:Win7_64Bit and GPU: Nvidia 950ti


Solution

  • MicrosoftML only supports CUDA 6.5 right now. This is noted in ?rxNeuralNet, if somewhat obscurely. Make sure you download the correct versions from https://developer.nvidia.com/cuda-toolkit-65 and https://developer.nvidia.com/rdp/cudnn-archive.