Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gpuRcuda doesn't compile on mac os x 10.12.5/ R 3.4.0 / CUDA 8.0 #3

Open
andrewrech opened this issue Jun 29, 2017 · 2 comments
Open

Comments

@andrewrech
Copy link

@cdeterman I saw your note about development here vs. gpuR, but wanted to leave this compilation failure if it is helpful, as I am using the currently recommended versions for CUDA on macOS. Thank you!

/usr/local/lib/R/3.4/site-library/Rcpp/include/Rcpp/vector/proxy.h(99)
Darwin xxx 16.6.0 Darwin Kernel Version 16.6.0: Fri Apr 14 16:21:16 PDT 2017; root:xnu-3789.60.24~6/RELEASE_X86_64 x86_64 i386 MacBookPro11,5 Darwin

ProductName:    Mac OS X
ProductVersion: 10.12.5
BuildVersion:   16F73

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:46_CST_2017
Cuda compilation tools, release 8.0, V8.0.61

R version 3.4.0 (2017-04-21) -- "You Stupid Darkness"
Copyright (C) 2017 The R Foundation for Statistical Computing
Platform: x86_64-apple-darwin16.5.0 (64-bit)

Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin16.6.0
Thread model: posix
InstalledDir: /Applications/Xcode_8_2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

* installing *source* package ‘gpuRcuda’ ...
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
Checking for C++ Compiler
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking "Checking environment variable CUDA_HOME"... "using CUDA_HOME=/usr/local/cuda"
checking for /usr/local/cuda/bin/nvcc... yes
"NVCC found"
checking "whether this is the 64 bit linux version of CUDA"... checking for /usr/local/cuda/lib64/libcudart.so... no
"no -- using /usr/local/cuda/lib for CUDA libs"
checking for Rscript... yes
checking "building the nvcc command line"... configure: Building Makevars
configure: creating ./config.status
config.status: creating src/Makevars
** libs
/usr/local/cuda/bin/nvcc -arch=sm_30 -Xcompiler -fPIC -Xcudafe --diag_suppress=boolean_controlling_expr_is_constant -I/usr/local/Cellar/r/3.4.0_1/R.framework/Resources/include -I/usr/local/lib/R/3.4/site-library/Rcpp/include -I"/usr/local/lib/R/3.4/site-library/RcppEigen/include" -I/usr/local/lib/R/3.4/site-library/RViennaCL/include vcl_scolSums.cu -c
/usr/local/lib/R/3.4/site-library/RcppEigen/include/Eigen/src/Core/MathFunctions.h(1078): warning: calling a __host__ function from a __host__ __device__ function is not allowed

/usr/local/lib/R/3.4/site-library/RcppEigen/include/Eigen/src/Core/MathFunctions.h(1078): warning: calling a __host__ function from a __host__ __device__ function is not allowed

/usr/local/lib/R/3.4/site-library/RcppEigen/include/Eigen/src/Core/MathFunctions.h(1083): warning: calling a __host__ function from a __host__ __device__ function is not allowed

/usr/local/lib/R/3.4/site-library/RcppEigen/include/Eigen/src/Core/MathFunctions.h(1083): warning: calling a __host__ function from a __host__ __device__ function is not allowed

/usr/local/lib/R/3.4/site-library/Rcpp/include/Rcpp/vector/proxy.h(99): error: the object has type qualifiers that are not compatible with the member function "Rcpp::internal::string_name_proxy<RTYPE>::get"
            object type is: const Rcpp::internal::string_name_proxy<RTYPE>

1 error detected in the compilation of "/var/folders/cv/b7g24y7d3vb167gvnh_p694w0000gn/T//tmpxft_00015fb4_00000000-5_vcl_scolSums.cpp4.ii".
make: *** [Makevars:30: vcl_scolSums.o] Error 2
ERROR: compilation failed for package ‘gpuRcuda’
* removing ‘/usr/local/lib/R/3.4/site-library/gpuRcuda’
@cdeterman
Copy link
Member

@andrewrech thanks for reporting the issue. Yes, this is an issue with the nvcc compiler not playing nicely with the Rcpp package. I have an idea for a workaround but it will require a lot of code changes. As you saw I continue to be busy keeping up with gpuR at the moment (I am balancing a new job as well). I really do want to work on this, I just simply don't have the time :(

@andrewrech
Copy link
Author

@cdeterman No worries and thanks for the message

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants