-
Notifications
You must be signed in to change notification settings - Fork 26
Build Instructions for Windows
khvorov45 edited this page Mar 1, 2019
·
9 revisions
There are a few dependencies that are required:
- An OpenCL SDK specific to your GPU vender (AMD, NVIDIA, Intel, etc.)
- OpenCL headers (likely part of your SDK in #1 but can be found at Khronos.org)
- Rtools (for compiling the C++ code)
- The environmental variables
OPENCL_INCandOPENCL_LIB32/OPENCL_LIB64pointing towards your opencl headers and opencl library (OpenCL.dll) respectively.
- AMD - The latest AMD SDK on their website
- NVIDIA - The latest CUDA SDK at NVIDIA
- Intel - The latest Intel OpenCL runtimes on their website
You should be able to download and install your required SDK by following the installation instructions.
If you haven't set your OPENCL_INC and OPENCL_LIB environmental variables globally on your machine you can easily set them within R with respect to your specific architecture.
Sys.setenv(OPENCL_INC = "/path/to/opencl/headers/")
Sys.setenv(OPENCL_LIB32 = "/path/to/opencl/library/x86")
Sys.setenv(OPENCL_LIB64 = "/path/to/opencl/library/x86_64")PLEASE NOTE that you don't want to pass the CL path directory. You want the directory just above it so the configure script can work appropriately.
Sys.setenv(OPENCL_INC = "C:\\Intel\\OpenCL\\sdk\\include\\CL")
Sys.setenv(OPENCL_LIB32 = "C:\\Intel\\OpenCL\\sdk\\lib\\x86")
Sys.setenv(OPENCL_LIB64 = "C:\\Intel\\OpenCL\\sdk\\lib\\x64")Then you should be able to install gpuR normally:
install.packages('gpuR')library('gpuR')
current <- currentDevice()
gpus <- detectGPUs()
has.double <- deviceHasDouble()
message(paste("gpu device", current[1], "gpus", gpus, "has double", has.double, sep = "\n"))Please submit additional issues on the issues tab.