dlib 不使用 CUDA

Apu*_*ogi 5 python ubuntu nvidia dlib

我使用 pip 安装了 dlib。我的显卡支持 CUDA,但是在运行 dlib 时,它没有使用 GPU。

我在 ubuntu 18.04 上工作

Python 3.6.5 (default, Apr  1 2018, 05:46:30) 
[GCC 7.3.0] on linux
>>> import dlib
>>> dlib.DLIB_USE_CUDA
False
Run Code Online (Sandbox Code Playgroud)

我还安装了 NVidia Cuda Compile 驱动程序,但仍然无法正常工作。

nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Nov__3_21:07:56_CDT_2017
Cuda compilation tools, release 9.1, V9.1.85
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我如何让它工作。?

小智 6

我遇到了类似的问题,就我而言,我缺少 cuDNN 库,这阻止了 dlib 使用 CUDA 指令进行编译,尽管我安装了 CUDA 编译器和其他驱动程序。

下一部分是从这个 repo下载 dlib 。

然后运行这个命令来安装带有CUDA和AVX指令的dlib,你不需要使用make文件用CMake手动编译它:

python setup.py install --yes USE_AVX_INSTRUCTIONS --yes DLIB_USE_CUDA
Run Code Online (Sandbox Code Playgroud)

现在重要的部分是读取日志,如果python真的可以找到CUDA,cuDNN并且可以使用CUDA编译器来编译测试项目。这些是重要的行:

-- Found CUDA: /usr/local/cuda/bin/ (found suitable version "8.0", minimum required is "7.5")
-- Looking for cuDNN install...
-- Found cuDNN: /usr/local/cuda/lib64/libcudnn.so
-- Building a CUDA test project to see if your compiler is compatible with CUDA...
Run Code Online (Sandbox Code Playgroud)

我面临的第二个问题与 CMake 版本有关。最新版本的 cuda 和 dlib 存在一些已知问题,因此我必须安装 CMake 3.12.3 才能使其正常工作。

  • 运行 ```python setup.py install --yes USE_AVX_INSTRUCTIONS --yes DLIB_USE_CUDA``` 会产生以下输出消息: ```dlib 的 setup.py 的 --yes 选项不会执行任何操作,因为所有这些选项都是默认开启。所以 --yes 已被删除。不要将其交给 setup.py。``` (6认同)

小智 1

我们遇到了完全相同的问题,CUDA 驱动程序已正确安装,但 dlib.DLIB_USE_CUDA 标志为“False”。

通过“pip3 install -v dlib”安装 dlib 显示它正在选择不兼容的不同版本的 C++ 编译器。

安装 Visual Studio 14 2015 为我们解决了这个问题。

需要注意的一件事是,当我们尝试使用源代码中的命令“python setup.py install”进行安装时,我们收到了 dlib 将使用 cuda 的消息,但 dlib.DLIB_USE_CUDA 标志仍然设置为 False。