部署paddlecor中遇到的GPU环境集成问题(CUDA版本不一致、GPU不识别等)

  1. 背景
    在使用百度飞桨的paddleocr过程中,安装配置gpu运行环境,代码部署后运行报错,无法检测到gpu。(实际我的环境是有八张显卡gpu的)。具体错误信息如下:
    Compiled with WITH_GPU, but no GPU found in runtime.
    You are using GPU version Paddle, but your CUDA device is not set properly. CPU device will be used by default
  2. 解决思路
    以paddleocr为例,如果是严格按照文档部署配置环境,那么基本可以归结为软件版本问题。分别可以检查cuda版本、paddleocr版本、cudnn版本、paddle serving版本等软件是否匹配。
  3. 可能遇到的问题及具体操作。
  • nvcc和nvidia-smi查看的cuda版本不一致。
    1、先使用nvcc -V查看cuda版本。

    2、再使用nvidia-smi查看cuda版本。

    3、出现版本不一致情况该以哪个版本为准呢,一般是以nvcc -V显示的cuda版本为准,上层程序sdk都会调用这个运行时api。查看具体lib安装路径及版本信息可以执行 cat /usr/local/cuda/version.txt,相关lib也在这个路径下查看。
    4、怎么理解nvcc和nvidia-smi不一致的问题。
    nvcc属于CUDA的编译器,将程序编译成可执行的二进制文件,nvidia-smi全称是NVIDIA System Management Interface ,是一种命令行实用工具,旨在帮助管理和监控NVIDIA GPU设备。
    CUDA有runtime api和driver叩i,两者都有对应的CUDA版本,nvcc —version显示的就是前者对应的CUDA版本,而nvidia-smi显示的是后者对应的CUDA版本。
    用于支持driver api的必要文件由GPU driver installer安装,nvidia-sm就属于这一类API;而用于支持runtime api的必要文件是由CUDA Toolkit installer安装的。nvcc是与CUDA Toolkit—起安装的CUDA compiler driver tool,它只知道它自身构建时的CUDA runtime版本,并不知道安装了什么版本的GPU driver,甚至不知道是否安装了GPU driver。
    CUDA Toolkit Installed^常会集成了GPU driver lnstallerz 如果你的CUDA均通过CUDA Tooklkit Installer来安装,那么runtime api和driver api的版本应该是一致的,也就是说,nvcc -version和nvidia-smi显示的版本应该一样。否则,你可能使用了单独的GPU drive门nstaller来安装GPU dirver,这样就会导致nvidia-smi和nvcc —version显示的版本不一致了。
    通常,driver api的版本能向下兼容runtime api的版本,即nvidia-smi显示的版本大于nvcc -version的版本通常不会出现大问题。
    5、cuda和驱动版本验证表
  • 查看cudnn版本
    cat /usr/local/cuda-9.2/include/cudnn.h | grep CUDNN_MAJOR -A 2
  • 检查paddlepaddle-gpu版本
    版本号后面跟着的post**数字按顺序代表了你的cuda以及cudnn的版本。比如环境是cuda9和cudnn7,那么应该选择以post97结尾的版本。
  1. 解决思路。
    通过排查判断错误的原因是 cuda版本和paddlepaddle-gpu不一致,我这里是cuda版本低、paddlepaddle-gpu版本高,有几种解决方法。
    1、升级cuda。
    2、寻找与cuda9匹配的低版本paddlepaddle-gpu。
    3、使用nvidia-docker环境。

参考:https://blog.csdn.net/qq_43585377/article/details/114387345
https://www.jianshu.com/p/eb5335708f2a
https://blog.csdn.net/XP1990/article/details/120728487

posted on 2022-03-16 11:23  法斯特  阅读(5388)  评论(0编辑  收藏  举报

导航