当我使用tensorflow_gpu时,Dlib不使用GPU

问题描述 投票:0回答:1

我有两个版本的tensorflow,cpu和gpu。我正在使用conda来管理我的环境。当我激活cpu的时,dlib可以很好地在GPU上运行。但是当我使用gpu的时候,它只是在cpu上运行。我不是为什么,请帮助我。

有一些我的系统信息,我不知道它可以提供一些信息。

  • Ubuntu 18.04LTS
  • python 3.6
  • CUDA 10.1
  • tensorflow-gpu 1.9.0
  • 张量流1.12.0

测试代码

conda activate ML

ipython

>>> import dlib

>>> dlib.DLIB_USE_CUDA

True

上面的代码输出True但下面的代码输出False。

conda activate ML_GPU

ipython

>>> import dlib

>>> dlib.DLIB_USE_CUDA

False

我希望当我使用GPU版本tensorflow时,dlib可以像CPU一样使用我的GPU。有人可以帮忙吗?

tensorflow dlib
1个回答
0
投票

我通过手动安装dlib解决了这个问题。有一些步骤可以做到这一点。

注意:您应该对虚拟环境执行这些步骤。

conda activate ML_GPU

pip uninstall dlib

git clone https://github.com/davisking/dlib.git

cd dlib

mkdir build

cd build

cmake .. -DDLIB_USE_CUDA=1 -DUSE_AVX_INSTRUCTIONS=1

cmake --build .

cd ..

python setup.py install

当你做最后一步时仍然有问题。您应该注意到,如果您看到这样的信息 - 找到了CUDA,但您的编译器无法编译简单的CUDA程序,因此dlib不会使用CUDA。

然后你应该改变你的g ++编译器版本。你也可以从中寻找一些信息 Install dlib with cuda support ubuntu 18.04

我的g ++版本是:(Ubuntu 6.5.0-2ubuntu1~18.04)6.5.0 20181026.看起来最新版本与CUDA不兼容。

如果一切正常,你会看到

>>> dlib.DLIB_USE_CUDA
True
© www.soinside.com 2019 - 2024. All rights reserved.