Skip to content

Instantly share code, notes, and snippets.

@nguyenhoan1988
Created October 19, 2021 22:05
Show Gist options
  • Select an option

  • Save nguyenhoan1988/ed92d58054b985a1b45a521fcf8fa781 to your computer and use it in GitHub Desktop.

Select an option

Save nguyenhoan1988/ed92d58054b985a1b45a521fcf8fa781 to your computer and use it in GitHub Desktop.
Installing dlib using conda with CUDA enabled

Installing dlib using conda with CUDA enabled

Prerequisite: conda and/or miniconda are already installed

  1. Create a conda environment.
$ conda create -n dlib python=3.8 cmake ipython
  1. Activate the environment.
$ conda activate dlib
  1. Install CUDA and cuDNN with conda using nvidia channel
$ conda install cuda cudnn -c nvidia

Then find the path to the nvcc of this environment. We will use this path for the build step below

$which nvcc
/path/to/your/miniconda3/envs/dlib/bin/
  1. Install dlib. Clone and build dlib from source
$ git clone https://github.com/davisking/dlib.git
$ cd dlib
$ mkdir build
$ cd build
$ cmake .. -DDLIB_USE_CUDA=1 -DUSE_AVX_INSTRUCTIONS=1 -DCUDAToolkit_ROOT=/path/to/your/miniconda3/envs/dlib/bin/
$ cmake --build .
$ cd ..
$ python setup.py install --set DLIB_USE_CUDA=1
  1. Test dlib
(dlib) $ ipython
Python 3.8.12 (default, Oct 12 2021, 13:49:34)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.27.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import dlib

In [2]: dlib.DLIB_USE_CUDA
Out[2]: True

In [3]: print(dlib.cuda.get_num_devices())
1
@sickybee
Copy link

i've added some tweaks in my build
-install cuda 12.8
-install vs_BuildTools ->install Clang
-install intel onemkl
-install OpenBLAS

  • cmake .. -DDLIB_USE_MKL_WITH_TBB=1 -DDLIB_USE_BLAS=1 -DDLIB_USE_CUDA=1 -DUSE_AVX_INSTRUCTIONS=1 -DUSE_SS2_INSTRUCTIONS=1 -DUSE_SS4_INSTRUCTIONS=1 -DCUDAToolkit_ROOT=E:\Source_Codes\WhoIsShe.conda\Library\bin\

  • activate conda environment

  • pip uninstall dlib #uninstall previous dlib

  • python setup.py install --set DLIB_USE_CUDA=1

DLIB CUDA is available
DLIB BLAS is available
DLIB LAPACK is available
DLIB AVX is available

... and now face_recognition webcam face blur works flawlessly in my GTX 970

@Rapcole12
Copy link

Rapcole12 commented Jul 9, 2025

for windows user who met the import dlib Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\oceanx\AppData\Local\Programs\Python\Python310\lib\site-packages\dlib-19.24.99-py3.10-win-amd64.egg\dlib\__init__.py", line 19, in <module> from _dlib_pybind11 import * ImportError: DLL load failed while importing _dlib_pybind11: The specified module could not be found. check your __init__.py , make sure its "on"=="on".

Thank you so much! I was wondering what was going on. Also make sure for anyone getting an error for not being able to find specific header files to ensure that your file paths are easily readable by C++ compilers. For example: If i have a apostrophe in my file path ex. C:\Go'Up, dlib will say it cannot find some header files when compiling for CUDA. But if i have ex. C:Go_Up, the problem is solves

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment