Dlib не использует GPU, когда я использую tenorflow_gpu - PullRequest
0 голосов
/ 22 апреля 2019

У меня есть 2 версия с тензорным потоком, процессором и графическим процессором. И я использую conda для управления своей средой. Когда я активирую процессор, dlib может очень хорошо работать на GPU. Но когда я использую процессор, он просто запускается на процессоре. Я не знаю почему, пожалуйста, помогите мне.

Есть некоторая информация о моей системе, но я не знаю, что она может дать какую-то информацию.

  • Ubuntu 18.04LTS
  • питон 3,6
  • CUDA 10.1
  • tenorflow-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 tenorflow dlib может использовать мой GPU точно так же, как и процессор. Кто-нибудь может помочь?

1 Ответ

0 голосов
/ 22 апреля 2019

Я исправил эту проблему с помощью install dlib вручную. Есть шаги, чтобы сделать это.

Примечание: вы должны выполнить эти шаги для ваших виртуальных envs.

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 ++. Вы также можете получить информацию от
Установить dlib с поддержкой cuda ubuntu 18.04 .

Моя версия g ++: (Ubuntu 6.5.0-2ubuntu1 ~ 18.04) 6.5.0 20181026. Похоже, что новейшая версия не совместима с CUDA.

Если все в порядке, вы увидите

>>> dlib.DLIB_USE_CUDA
True
...