我很难在我的计算机上安装r
包gputools
。我已经安装了CUDA并正确设置了对应的PATH文件here。
编译包时,我最初得到了错误
/usr/local/cuda/bin/nvcc -gencode arch=compute_10,code=sm_10 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -c -I. -I"/usr/local/cuda/include" -I"/usr/local/Cellar/r/3.1.0/R.framework/Resources/include" -m64 -Xcompiler -fPIC rinterface.cu -o rinterface.o
nvcc fatal : Unsupported gpu architecture 'compute_10'
我通过从-gencode arch=compute_10,code=sm_10
makefile中删除gputools
来解决了这个问题(找到了这个简单的解决方案here)。
现在它编译了一些东西大约30秒,然后以下面的错误结束:
/usr/local/cuda/bin/nvcc -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -shared -m64 -Xlinker '-rpath /usr/local/cuda/lib -F/usr/local/Cellar/r/3.1.0/R.framework/Resources/.. -framework R' -L"/usr/local/Cellar/r/3.1.0/R.framework/Resources/lib" -L"/usr/local/cuda/lib" -lcublas -framework Accelerate rinterface.o mi.o sort.o granger.o qrdecomp.o correlation.o hcluster.o distance.o matmult.o lsfit.o kendall.o cuseful.o -o gputools.so
nvcc fatal : Unknown option 'framework'
make: *** [gputools.so] Error 1
ERROR: compilation failed for package ‘gputools’
* removing ‘/usr/local/Cellar/r/3.1.0/R.framework/Versions/3.1/Resources/library/gputools’
可以找到完整的控制台输出here。我在这个问题上丢失了,-framework
文件中config.mk
只出现了R_FRAMEWORK := -F$(R_HOME)/.. -framework R
,-framework R
甚至删除R CMD build gputools && R CMD INSTALL gputools_0.28.tar.gz
都没有差。
注意:我使用{{1}}将其从仓库编译为recommended here
有人知道我可以尝试什么吗?
答案 0 :(得分:2)
似乎gputools 1.0解决了我的问题。我已经能够使用{'Content-Type': 'application/json', 'Authorization': 'Basic RmlhdE1hcmtldGluZ1xGMzIwMDJCOkFjY2V'}
毫无问题地安装它。
R 3.2.2
答案 1 :(得分:1)
对不起。我发布这个作为解决方案,但我没有足够的声誉来评论。保罗,你的解决方案对我有用。我的设备是具有3.0 CUDA功能的GeForce GT 750M。
我下载了最后一个源gputools_0.28.tar.gz并解压缩了它。然后我修改了src / Makefile中的第19行:
NVCC := $(CUDA_HOME)/bin/nvcc -gencode arch=compute_10,code=sm_10 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30
看起来像这样:
NVCC := $(CUDA_HOME)/bin/nvcc -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30
最后,安装
R CMD INSTALL gputools
其中gputools是解压缩源后创建的文件夹。
我的R版本是
platform x86_64-apple-darwin13.4.0
arch x86_64
os darwin13.4.0
system x86_64, darwin13.4.0
status
major 3
minor 2.2
year 2015
month 08
day 14
svn rev 69053
language R
version.string R version 3.2.2 (2015-08-14)
nickname Fire Safety
答案 2 :(得分:0)
我也遇到了相同的“框架”错误,最终能够解决问题。请允许我从头开始。如果您收到有关Unsupported gpu architecture
的编译错误,可以通过首先解压缩包
tar -xzvf gputools_0.28.tar.gz
然后编辑Makefile
vi gputools/src/Makefile
到新的nvidia编译器的最新架构标志
-gencode arch=compute_20,code=sm_20
-gencode arch=compute_30,code=sm_30
-gencode arch=compute_35,code=sm_35
-gencode arch=compute_50,code=sm_50
-gencode arch=compute_52,code=sm_52
-gencode arch=compute_52,code=compute_52
您可以在NVidia's website上找到有关此内容的更多详情。删除任何继续给出编译错误。
然后将tar.gz放回原处并尝试安装
tar -czvf my_gputools_0.28.tar.gz gputools
R CMD build gputools && R CMD INSTALL gputools_0.28.tar.gz
中讨论的环境变量
export CUDA_HOME=/usr/local/cuda/5.0
export LD_LIBRARY_PATH=/usr/local/cuda/5.0/lib64:$LD_LIBRARY_PATH`
此时,如果出现Unknown option 'framework'
异常,则nvcc命令行参数似乎略有改变。再次查看makefile并查找${shell R CMD config BLAS_LIBS}
。这是为我插入-framework <value>
参数的部分。您只需运行命令R CMD config BLAS_LIBS
即可测试您的配置。包含框架的新命令是
-Xlinker -framework,<value>
有更多信息