Skip to content

CUDA/cudnn - Runtime **dependencies** we would need documenting. The CUDA EP requires the user to install: #20532

@TurboGit

Description

@TurboGit

Runtime dependencies we would need documenting. The CUDA EP requires the user to install:

  • NVIDIA driver
  • CUDA 12 runtime libraries (libcudart, libcublas, libcufft, libcurand) — not the full CUDA Toolkit
  • cuDNN 9 (libcudnn.so.9) — major version must match exactly what ORT was built against

On Ubuntu: cuda-libraries-12-x libcudnn9-cuda-12. On Fedora: cuda-libs libcudnn. Without cuDNN 9 specifically, the CUDA EP silently falls back to CPU with no obvious error.

Some licensing notes (not blockers, but worth being aware of):

The ORT libraries we ship (libonnxruntime*.so) are MIT-licensed — no issue there. The concern is the cuDNN runtime dependency.

The cuDNN SLA prohibits use "in any manner that would cause it to become subject to an open source software license." This is a theoretical tension with GPLv3, since under a strict reading, dynamic linking creates a combined work. However:

  1. We don't ship cuDNN — the user installs it themselves. GPL governs distribution, not what users run on their own machines.
  2. digiKam 8.7 (GPL-2+, released June 2025) does exactly the same thing — cuDNN-dependent GPU inference via OpenCV DNN — and shipped it without controversy.
  3. This is the same grey area darktable already lives in with proprietary OpenCL drivers.

The practical community consensus supports this approach. Worth adding a note in the docs stating that GPU acceleration requires user-installed proprietary NVIDIA libraries not covered by darktable's GPL grant.

Originally posted by @andriiryzhkov in #20522 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions