为 caffe 构建 GPU docker 映像时出错:不支持的 gpu 架构“compute_60”
Posted
技术标签:
【中文标题】为 caffe 构建 GPU docker 映像时出错:不支持的 gpu 架构“compute_60”【英文标题】:Error when Building GPU docker image for caffe: Unsupported gpu architecture 'compute_60' 【发布时间】:2017-05-03 22:08:25 【问题描述】:尝试构建基于 gpu 的 caffe
docker 映像不成功。命令运行:
docker build -t caffe:gpu standalone/gpu
它运行了大约 20 分钟,包括通过 cython
将许多 numpy/scikit 脚本编译为 c 代码。然而,构建最终在 nvidia nvcc
步骤中失败:
[ 1%] [ 1%] Building NVCC (Device) object src/caffe/CMakeFiles/cuda_compile.dir/layers/./cuda_compile_generated_cudnn_pooling_layer.cu.o
Building NVCC (Device) object src/caffe/CMakeFiles/cuda_compile.dir/util/./cuda_compile_generated_im2col.cu.o
nvcc fatal : Unsupported gpu architecture 'compute_60'
CMake Error at cuda_compile_generated_cudnn_pooling_layer.cu.o.cmake:206 (message):
Error generating
/opt/caffe/build/src/caffe/CMakeFiles/cuda_compile.dir/layers/./cuda_compile_generated_cudnn_pooling_layer.cu.o
make[2]: *** [src/caffe/CMakeFiles/cuda_compile.dir/layers/./cuda_compile_generated_cudnn_pooling_layer.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
nvcc fatal : Unsupported gpu architecture 'compute_60'
CMake Error at cuda_compile_generated_im2col.cu.o.cmake:206 (message):
Error generating
/opt/caffe/build/src/caffe/CMakeFiles/cuda_compile.dir/util/./cuda_compile_generated_im2col.cu.o
make[2]: *** [src/caffe/CMakeFiles/cuda_compile.dir/util/./cuda_compile_generated_im2col.cu.o] Error 1
make[1]: *** [src/caffe/CMakeFiles/caffe.dir/all] Error 2
make: *** [all] Error 2
我在 El Capitan
上运行,并在 2013 年末的 MBPro 上运行,该 MBPro 具有 GT750m
nvidia 芯片组。
注意:基于 cpu 的 caffe
docker 镜像来自他们的 github 存储库:https://github.com/BVLC/caffe docker
在我的 mac 上的 caffe/docker
目录中成功构建:
docker build -t caffe:cpu standalone/cpu
.. 大约十分钟后..
Successfully built bf71c19501e5
提到了一个不同的项目arrayfire
遇到类似的错误https://github.com/arrayfire/arrayfire/issues/1535。但是,我缺乏对 BVLC/caffe/docker
命令进行故障排除的具体知识,无法尝试复制看似 cuda7.5
与 cuda8.0
的版本控制问题。
有没有人在 mac 的 docker 容器上成功构建了 gpu 版本的 Caffe?
【问题讨论】:
在 linux x86_64 服务器上遇到同样的问题 在 Ubuntu 14.04 nvidia-docker x86_64 服务器上出现同样的问题。 在 Ubuntu 14.04 nvidia-docker x86_64 服务器上出现同样的问题 【参考方案1】:在 Makefile.example 中,尝试注释掉 *_60 和 *_61 行(为了与 CUDA
CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \
-gencode arch=compute_20,code=sm_21 \
-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_60,code=sm_60 \
#-gencode arch=compute_61,code=sm_61 \
#-gencode arch=compute_61,code=compute_61
【讨论】:
以上是关于为 caffe 构建 GPU docker 映像时出错:不支持的 gpu 架构“compute_60”的主要内容,如果未能解决你的问题,请参考以下文章
为 Spring Boot 应用程序基于“openjdk:8-jdk-alpine”构建 docker 映像时无法运行“./mvnw clean install”
带有 Docker 的 Spring Boot 2.3。当我在同一个存储库中有多个 Spring Boot 应用程序时,我想为特定应用程序构建映像