amazon-web-services - Openpose 在 AWS 深度学习实例上失败。那么哪个实例可以100%运行呢?
问题描述
我尝试使用 AWS Deep Learning AMI https://aws.amazon.com/marketplace/pp/B077GCH38C?qid=1530671113739&sr=0-2&ref_=srh_res_product_title在 AWS p3.2xlarge 实例上构建 Openpose C++ 源
操作系统是 Ubuntu 16.04,几乎预装了所有先决条件(CUDA、cuDNN、OpenCV、Caffe)。我按照官方说明进行操作。 https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/installation.md#operating-systems
这是我尝试使用 cmake 构建它时收到的主要错误消息。是不是说GPU架构太新,openpose无法编译?任何人都可以解释我得到的错误吗?
nvcc 致命:不支持的 gpu 架构“compute_70”
在构建之前的步骤中是否有任何错误的可能性?
最后想知道什么样的环境真正可以运行openpose,尤其是AWS。任何报告表示赞赏。
顺便说一句,整个错误消息在这里。
src/openpose/CMakeFiles/openpose.dir/build.make:63:目标“src/openpose/CMakeFiles/openpose.dir/hand/openpose_generated_renderHand.cu.o”的配方失败 make[2]:* [src/openpose/ CMakeFiles/openpose.dir/hand/openpose_generated_renderHand.cu.o] 错误 1 make[2]: * Waiting for unfinished jobs.... nvcc fatal : Unsupported gpu architecture 'compute_70' CMake Error at openpose_generated_bodyPartConnectorBase.cu.o.cmake: 207(消息):错误生成/home/ubuntu/openpose/build/src/openpose/CMakeFiles/openpose.dir/pose/./openpose_generated_bodyPartConnectorBase.cu.o
nvcc 致命:不支持的 gpu 架构“compute_70”src/openpose/CMakeFiles/openpose.dir/build.make:77:目标“src/openpose/CMakeFiles/openpose.dir/pose/openpose_generated_bodyPartConnectorBase.cu.o”的配方失败 make[ 2]:*** [src/openpose/CMakeFiles/openpose.dir/pose/openpose_generated_bodyPartConnectorBase.cu.o] 错误 1 CMake 错误在 openpose_generated_maximumBase.cu.o.cmake:207(消息):错误生成 /home/ubuntu/ openpose/build/src/openpose/CMakeFiles/openpose.dir/net/./openpose_generated_maximumBase.cu.o
src/openpose/CMakeFiles/openpose.dir/build.make:98:目标“src/openpose/CMakeFiles/openpose.dir/net/openpose_generated_maximumBase.cu.o”的配方失败 make[2]:*** [src/ openpose/CMakeFiles/openpose.dir/net/openpose_generated_maximumBase.cu.o] Error 1 nvcc fatal: Unsupported gpu architecture 'compute_70' CMake Error at openpose_generated_renderPose.cu.o.cmake:207 (message): Error generated /home/ubuntu/ openpose/build/src/openpose/CMakeFiles/openpose.dir/pose/./openpose_generated_renderPose.cu.o
nvcc 致命:openpose_generated_renderFace.cu.o.cmake:207 处不支持的 gpu 架构“compute_70”CMake 错误:207(消息):错误生成 /home/ubuntu/openpose/build/src/openpose/CMakeFiles/openpose.dir/face/./ openpose_generated_renderFace.cu.o
src/openpose/CMakeFiles/openpose.dir/build.make:84:目标“src/openpose/CMakeFiles/openpose.dir/pose/openpose_generated_renderPose.cu.o”的配方失败 make[2]:*** [src/ openpose/CMakeFiles/openpose.dir/pose/openpose_generated_renderPose.cu.o] Error 1 nvcc fatal: Unsupported gpu architecture 'compute_70' CMake Error at openpose_generated_resizeAndMergeBase.cu.o.cmake:207 (message): Error generated /home/ubuntu/ openpose/build/src/openpose/CMakeFiles/openpose.dir/net/./openpose_generated_resizeAndMergeBase.cu.o
src/openpose/CMakeFiles/openpose.dir/build.make:70:目标“src/openpose/CMakeFiles/openpose.dir/face/openpose_generated_renderFace.cu.o”的配方失败 make[2]:* [src/openpose/ CMakeFiles/openpose.dir/face/openpose_generated_renderFace.cu.o] 错误 1 src/openpose/CMakeFiles/openpose.dir/build.make:112:目标 'src/openpose/CMakeFiles/openpose.dir/net/openpose_generated_resizeAndMergeBase 的配方。 cu.o' 使 [2] 失败:* [src/openpose/CMakeFiles/openpose.dir/net/openpose_generated_resizeAndMergeBase.cu.o] 错误 1 nvcc 致命:不支持的 gpu 架构“compute_70”在 openpose_generated_pyramidalLK.cu.o 处出现 CMake 错误。 cmake:207(消息):生成/home/ubuntu/openpose/build/src/openpose/CMakeFiles/openpose.dir/tracking/./openpose_generated_pyramidalLK.cu.o时出错
src/openpose/CMakeFiles/openpose.dir/build.make:91:目标“src/openpose/CMakeFiles/openpose.dir/tracking/openpose_generated_pyramidalLK.cu.o”的配方失败 make[2]:* [src/openpose/ CMakeFiles/openpose.dir/tracking/openpose_generated_pyramidalLK.cu.o] 错误 1 CMakeFiles/Makefile2:179: 目标 'src/openpose/CMakeFiles/openpose.dir/all' 的配方失败 make[1]: * [src/openpose/ CMakeFiles/openpose.dir/all] 错误 2 make[1]: *** Waiting for unfinished jobs.... [8%] Building CXX object src/openpose/filestream/CMakeFiles/openpose_filestream.dir/bvhSaver.cpp.o扫描目标 openpose_gpu 的依赖关系 扫描目标 openpose_thread 的依赖关系 [ 8%] 构建 NVCC(设备)对象 src/openpose/hand/CMakeFiles/openpose_hand.dir/openpose_hand_generated_renderHand.cu。o [9%] 构建 NVCC(设备)对象 src/openpose/face/CMakeFiles/openpose_face.dir/openpose_face_generated_renderFace.cu.o 扫描目标 openpose_calibration 的依赖项 [9%] 构建 CXX 对象 src/openpose/filestream/CMakeFiles/openpose_filestream。 dir/cocoJsonSaver.cpp.o [ 9%] 构建 CXX 对象 src/openpose/filestream/CMakeFiles/openpose_filestream.dir/defineTemplates.cpp.o [ 10%] 构建 CXX 对象 src/openpose/thread/CMakeFiles/openpose_thread.dir/ defineTemplates.cpp.o [ 11%] 构建 CXX 对象 src/openpose/calibration/CMakeFiles/openpose_calibration.dir/cameraParameterEstimation.cpp.o [ 11%] 构建 CXX 对象 src/openpose/calibration/CMakeFiles/openpose_calibration.dir/gridPatternFunctions。 cpp.o nvcc 致命:不支持的 gpu 架构“compute_70”openpose_hand_generated_renderHand.cu.o.cmake 处的 CMake 错误:207(消息):错误生成 /home/ubuntu/openpose/build/src/openpose/hand/CMakeFiles/openpose_hand.dir//./openpose_hand_generated_renderHand.cu.o
nvcc 致命:openpose_face_generated_renderFace.cu.o.cmake:207 处不支持的 gpu 架构“compute_70”CMake 错误(消息):生成/home/ubuntu/openpose/build/src/openpose/face/CMakeFiles/openpose_face.dir// 时出错。 /openpose_face_generated_renderFace.cu.o
src/openpose/hand/CMakeFiles/openpose_hand.dir/build.make:63:目标 'src/openpose/hand/CMakeFiles/openpose_hand.dir/openpose_hand_generated_renderHand.cu.o' 的配方失败 make[2]: * [src/ openpose/hand/CMakeFiles/openpose_hand.dir/openpose_hand_generated_renderHand.cu.o] 错误 1 CMakeFiles/Makefile2:344: 目标 'src/openpose/hand/CMakeFiles/openpose_hand.dir/all' 的配方失败 make[1]: * [ src/openpose/hand/CMakeFiles/openpose_hand.dir/all] 错误 2
o 在来自 /home/ubuntu/openpose/include/openpose/filestream/headers.hpp:9:0 的文件中,来自 /home/ubuntu/openpose/src/openpose/filestream/defineTemplates.cpp:1:/home/ubuntu /openpose/include/openpose/filestream/fileStream.hpp:54:32:错误:“CV_IMWRITE_JPEG_QUALITY”未在此范围内声明 = {CV_IMWRITE_JPEG_QUALITY, 100, CV_IMWRITE_PNG_COMPRESSION, 9}); ^ 编译因 -Wfatal-errors 而终止。src/openpose/filestream/CMakeFiles/openpose_filestream.dir/build.make:110:目标'src/openpose/filestream/CMakeFiles/openpose_filestream.dir/defineTemplates.cpp.o'的配方失败make [2]:[src/openpose /filestream/CMakeFiles/openpose_filestream.dir/defineTemplates.cpp.o] 错误 1 make[2]: Waiting for unfinished jobs.... [13%] 构建 CXX 对象 src/openpose/gpu/CMakeFiles/openpose_gpu.dir/gpu .cpp。o 在 /home/ubuntu/openpose/src/openpose/filestream/fileStream.cpp:7:0 包含的文件中:/home/ubuntu/openpose/include/openpose/filestream/fileStream.hpp:54:32:错误:' CV_IMWRITE_JPEG_QUALITY' 未在此范围内声明 = {CV_IMWRITE_JPEG_QUALITY, 100, CV_IMWRITE_PNG_COMPRESSION, 9}); ^ 编译因 -Wfatal-errors 而终止。src/openpose/filestream/CMakeFiles/openpose_filestream.dir/build.make:158:目标'src/openpose/filestream/CMakeFiles/openpose_filestream.dir/fileStream.cpp.o'的配方失败make [2]:[src/openpose /filestream/CMakeFiles/openpose_filestream.dir/fileStream.cpp.o] 错误 1 [13%] 构建 CXX 对象 src/openpose/gpu/CMakeFiles/openpose_gpu.dir/opencl.cpp.o CMakeFiles/Makefile2:234:目标配方'src/openpose/filestream/CMakeFiles/openpose_filestream.dir/all' 失败 make[1]: [src/openpose/filestream/CMakeFiles/openpose_filestream.dir/all] 错误 2 在 /home/ubuntu/openpose/src/openpose/calibration/cameraParameterEstimation.cpp:11:0: /home 中包含的文件中/ubuntu/openpose/include/openpose/filestream/fileStream.hpp:54:32:错误:未在此范围内声明“CV_IMWRITE_JPEG_QUALITY”= {CV_IMWRITE_JPEG_QUALITY, 100, CV_IMWRITE_PNG_COMPRESSION, 9}); ^ 编译因 -Wfatal-errors 而终止。src/openpose/calibration/CMakeFiles/openpose_calibration.dir/build.make:62:目标“src/openpose/calibration/CMakeFiles/openpose_calibration.dir/cameraParameterEstimation.cpp.o”的配方失败 make[2]:[src/openpose /calibration/CMakeFiles/openpose_calibration.dir/cameraParameterEstimation.cpp.o] 错误 1 make[2]: Waiting for unfinished jobs.... /home/ubuntu/openpose/src/openpose/calibration/gridPatternFunctions.cpp:在函数'void op::improveCornersPositionsAtSubPixelLevel(std::vector >&, const cv::Mat&)'中:/home/ubuntu/openpose/src/ openpose/calibration/gridPatternFunctions.cpp:22:52: 错误: 'CV_TERMCRIT_EPS' 未在此范围内声明 cv::TermCriteria{ CV_TERMCRIT_EPS+CV_TERMCRIT_ITER, 1000, 1e-9 }); ^ 编译因 -Wfatal-errors 而终止。src/openpose/calibration/CMakeFiles/openpose_calibration.dir/build.make:86:目标'src/openpose/calibration/CMakeFiles/openpose_calibration.dir/gridPatternFunctions.cpp.o'的配方失败make [2]:[src/openpose /calibration/CMakeFiles/openpose_calibration.dir/gridPatternFunctions.cpp.o] 错误 1 CMakeFiles/Makefile2:511: 目标配方'
解决方案
AWS p3 实例具有需要 CUDA 9 及更高版本的 Tesla V100。但是 OpenPose 需要 CUDA 8。
如果要在 AWS 上使用 OpenPose,则必须使用 p2 实例。
推荐阅读
- laravel - Laravel 8 上传下载文件
- javascript - iframe 可以访问主窗口对象 [如登录令牌] 吗?
- vb.net - VB.NET GroupBy 多个属性
- javascript - 如何在 HighCharts 中设置自定义工具提示设计?
- python-3.x - 正则前瞻 (AND) 和 {e=<3} 的正则表达式模糊搜索问题
- reactjs - 用 while 不断地响应改变状态
- javascript - 如何将一组指令块划分为适合 JavaScript 中特定大小的连续数组的序列?
- sql-server - 将 DATETIME 列中的 NULL 值和空格替换为“不可用”的字符串?
- python - 如何在 pandas 中过滤(使用 loc)时应用数学函数
- php - PHP 数据库的第一行不会包含在网页上的表格中