• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1NVK
2===
3
4NVK is a Vulkan driver for Nvidia GPUs.
5
6Hardware support
7----------------
8
9NVK currently supports Turing (RTX 20XX and GTX 16XX) and later GPUs.
10Eventually, we plan to support as far back as Kepler (GeForce 600 and 700
11series) GPUs but anything pre-Turing is currently disabled by default.
12
13Kernel requirements
14-------------------
15
16NVK requires at least a Linux 6.6 kernel
17
18Conformance status:
19-------------------
20
21NVK is not currently conformant on any hardware.  As of the writing of this
22documentation, it was failing about 2000 tests with the current feature
23set.
24
25Debugging
26---------
27
28Here are a few environment variable debug environment variables
29specific to NVK:
30
31:envvar:`NVK_DEBUG`:
32   a comma-separated list of named flags, which do various things:
33
34   ``push_dump``
35      Dumps all pusbufs to stderr on submit.  This requires that
36      ``push_sync`` also be set.
37   ``push_sync``
38      Waits for submit to complete before continuing
39   ``zero_memory``
40      Zeros all VkDeviceMemory objects upon creation
41
42:envvar:`NVK_I_WANT_A_BROKEN_VULKAN_DRIVER`
43   If defined to ``1`` or ``true``, this will enable enumeration of all
44   GPUs Kepler and later, including GPUs for which hardware support is
45   poorly tested or completely broken.  This is intended for developer use
46   only.
47
48Hardware Documentation
49----------------------
50
51What little documentation we have can be found in the `NVIDIA open-gpu-doc
52repository <https://github.com/NVIDIA/open-gpu-doc>`__.  The majority of
53our documentation comes in the form of class headers which describe the
54class state registers.
55