Package Details: python-dlib-cuda 19.24.3-1

Git Clone URL: https://aur.archlinux.org/python-dlib.git (read-only, click to copy)
Package Base: python-dlib
Description: Dlib is a general purpose cross-platform C++ library designed using contract programming and modern C++ techniques.
Upstream URL: http://www.dlib.net/
Licenses: boost
Conflicts: python-dlib
Provides: python-dlib
Submitter: fzavan
Maintainer: petronny (AutoUpdateBot)
Last Packager: petronny
Votes: 14
Popularity: 0.011918
First Submitted: 2016-10-27 15:05 (UTC)
Last Updated: 2024-03-30 13:10 (UTC)

Pinned Comments

petronny commented on 2024-03-30 13:11 (UTC) (edited on 2024-03-30 13:13 (UTC) by petronny)

Set _build_cpu and _build_cuda to 1 and 0 to build or not build the CPU or CUDA version.

If options=(!lto) has no effect, please check if it's still enabled in /etc/makepkg.conf.

petronny commented on 2023-11-28 04:57 (UTC)

Prebuilt binaries of this package can be found in arch4edu.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 Next › Last »

AbysmalBiscuit commented on 2018-06-28 08:15 (UTC)

@petronny Sorry for the delay in answering your questions.

  1. If you remove cuda or cudnn (since both are needed to compile and run dlib with cuda support) with pacman -Rdd cuda cudnn, python-dlib-cuda will not fallback to using only the cpu. In fact importing dlib will simply fail with an ImportError with not being able to open the shared object file(s) (either cuda or cudnn).

  2. I do not fully understand your question, I will assume that you are asking if it is possible to replace cuda with another dependency and still have be capable of using dlib in python. You cannot replace cuda with something else, or only with cudnn. You need both cuda and cudnn, hence why they are not only make dependencies, but also dependencies.

The dependency issue and the need to recompile if you would want to switch from having cuda support to using cpu only are likely the reason why python dlib was originally split into a cuda and non-cuda version.

If you have any other questions please don't hesitate to ask.

petronny commented on 2018-06-26 15:41 (UTC) (edited on 2018-06-26 15:41 (UTC) by petronny)

Hi I just took over python-dlib and I'm trying to merge this and python-dlib into one PKGBUILD.

So I have some questions:

  1. If I build and install python-dlib-cuda with cuda, then remove cuda with pacman -Rdd cuda, will python-dlib-cuda run and fallback to cpu?

  2. Replace cuda in 1 with cudnn or an optional dependency like cblas, will python-dlib-cuda run without it?

AbysmalBiscuit commented on 2018-04-30 12:43 (UTC) (edited on 2018-05-03 10:55 (UTC) by AbysmalBiscuit)

@p00h cuda presence is tested for by cmake (in dlib/CMakeLists.txt from line 593 you can see the cuda tests), hence there is no need to explicitly invoke it. Also even if it is explicitly invoked, and cudnn isn't installed the package will still build fine, but without gpu support. However, avx and sse are not tested for by cmake (as far as I could find), which is why they are tested for by the PKGBUILD.

You are absolutely correct about cudnn being a missing essential dependency, thanks for pointing it out!

p00h commented on 2018-04-18 11:56 (UTC)

Unfortunately, the provided PKGBUILD is invalid: 1) It lacks of essential cudnn package in dependencies 2) It does not contain the essential --yes DLIB_USE_CUDA param.

If you tried to make a package, it would be compiled but without the CUDA support. Feel free to check it out: cmake configuration process will claim that.

So there is the working (fixed) PKBUILD, it was tested with face_recognition package and 100% works. https://pastebin.com/c4eyhzEZ

AbysmalBiscuit commented on 2018-03-16 10:19 (UTC) (edited on 2018-03-16 11:04 (UTC) by AbysmalBiscuit)

agradzki,

I'll adopt the package and maintain it then. :)

agradzki commented on 2018-03-12 13:49 (UTC)

AbysmalBiscuit,

I have disowned this package as I do not have an Arch Linux system to test this on right now.

Thanks for posting the fixes!

AbysmalBiscuit commented on 2018-03-12 11:38 (UTC) (edited on 2018-03-12 11:41 (UTC) by AbysmalBiscuit)

Hey,

TLDR: Fixed and improved PKGBUILD updated to the latest version (19.9) is available here: https://pastebin.com/NufcQpRj

There are other issues besides those pointed out by Karmadon.

First, the environment variables that indicate the compiler that CUDA needs are not set before building the Python3 version, hence the Python3 package has no CUDA support.

Second, there is no need to specify the CUDA include and library directories as they get auto detected.

Third, no SSE optimizations are set, as compared with the 'dlib' package also available in the AUR.

Fourth, compiling times for Python3 can be improved somewhat via the use of multiple proceses (although this isn't that much of an issue).

I have fixed and improved the PKGBUILD file, which can be downloaded from the pastebin link in the TLDR.

Karmadon commented on 2018-01-20 16:26 (UTC)

Hello!

I have to change variable "md5" to "md5sums" and add _pkgname=dlib in order to be able to compile it.

agradzki commented on 2017-11-17 14:24 (UTC) (edited on 2017-11-17 14:24 (UTC) by agradzki)

You can use the changes in my PKGBUILD to update this package. https://aur.archlinux.org/packages/python-dlib-cuda/ https://aur.archlinux.org/packages/python2-dlib-cuda/