575 lines
24 KiB
HTML
575 lines
24 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html>
|
|
<head>
|
|
<meta name="generator" content=
|
|
"HTML Tidy for Linux/x86 (vers 1 September 2005), see www.w3.org">
|
|
<meta http-equiv="Content-Type" content=
|
|
"text/html; charset=us-ascii">
|
|
<title>Chapter 5. Listing of Installed Components</title>
|
|
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
|
<link rel="start" href="index.html" title=
|
|
"NVIDIA Accelerated Linux Graphics Driver README and Installation Guide">
|
|
<link rel="up" href="installationandconfiguration.html" title=
|
|
"Part I. Installation and Configuration Instructions">
|
|
<link rel="prev" href="installdriver.html" title=
|
|
"Chapter 4. Installing the NVIDIA Driver">
|
|
<link rel="next" href="editxconfig.html" title=
|
|
"Chapter 6. Configuring X for the NVIDIA Driver">
|
|
</head>
|
|
<body>
|
|
<div class="navheader">
|
|
<table width="100%" summary="Navigation header">
|
|
<tr>
|
|
<th colspan="3" align="center">Chapter 5. Listing of
|
|
Installed Components</th>
|
|
</tr>
|
|
<tr>
|
|
<td width="20%" align="left"><a accesskey="p" href=
|
|
"installdriver.html">Prev</a> </td>
|
|
<th width="60%" align="center">Part I. Installation and
|
|
Configuration Instructions</th>
|
|
<td width="20%" align="right"> <a accesskey="n" href=
|
|
"editxconfig.html">Next</a></td>
|
|
</tr>
|
|
</table>
|
|
<hr></div>
|
|
<div class="chapter" lang="en">
|
|
<div class="titlepage">
|
|
<div>
|
|
<div>
|
|
<h2 class="title"><a name="installedcomponents" id=
|
|
"installedcomponents"></a>Chapter 5. Listing of Installed
|
|
Components</h2>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<p>The NVIDIA Accelerated Linux Graphics Driver consists of the
|
|
following components (filenames in parentheses are the full names
|
|
of the components after installation). Some paths may be different
|
|
on different systems (e.g., X modules may be installed in
|
|
/usr/X11R6/ rather than /usr/lib/xorg/).</p>
|
|
<div class="itemizedlist">
|
|
<ul type="disc">
|
|
<li>
|
|
<p>An X driver (<code class=
|
|
"filename">/usr/lib/xorg/modules/drivers/nvidia_drv.so</code>);
|
|
this driver is needed by the X server to use your NVIDIA
|
|
hardware.</p>
|
|
</li>
|
|
<li>
|
|
<p>A GLX extension module for X (<code class=
|
|
"filename">/usr/lib/xorg/modules/extensions/libglxserver_nvidia.so.535.161.07</code>);
|
|
this module is used by the X server to provide server-side GLX
|
|
support.</p>
|
|
</li>
|
|
<li>
|
|
<p>EGL and OpenGL ES libraries ( <code class=
|
|
"filename">/usr/lib/libEGL.so.1</code>, <code class=
|
|
"filename">/usr/lib/libGLESv1_CM.so.535.161.07</code>, and
|
|
<code class="filename">/usr/lib/libGLESv2.so.535.161.07</code> );
|
|
these libraries provide the API entry points for all OpenGL ES and
|
|
EGL function calls. They are loaded at run-time by
|
|
applications.</p>
|
|
</li>
|
|
<li>
|
|
<p>A Wayland EGL external platform library (<code class=
|
|
"filename">/usr/lib/libnvidia-egl-wayland.so.1</code>) and its
|
|
corresponding configuration file ( <code class=
|
|
"filename">/usr/share/egl/egl_external_platform.d/10_nvidia_wayland.json</code>
|
|
); this library provides client-side Wayland EGL application
|
|
support using either dmabuf or EGLStream buffer sharing protocols,
|
|
as well as server-side protocol extensions enabling the client-side
|
|
EGLStream-based buffer sharing path. The EGLStream path can only be
|
|
used in combination with an EGLStream-enabled Wayland compositor,
|
|
e.g: <a href="https://gitlab.freedesktop.org/ekurzinger/weston"
|
|
target=
|
|
"_top">https://gitlab.freedesktop.org/ekurzinger/weston</a>.</p>
|
|
<p>More information can be found along with the EGL external
|
|
interface and Wayland library source code at <a href=
|
|
"https://github.com/NVIDIA/eglexternalplatform" target=
|
|
"_top">https://github.com/NVIDIA/eglexternalplatform</a> and
|
|
<a href="https://github.com/NVIDIA/egl-wayland" target=
|
|
"_top">https://github.com/NVIDIA/egl-wayland</a>.</p>
|
|
</li>
|
|
<li>
|
|
<p>A GBM EGL external platform library (<code class=
|
|
"filename">/usr/lib/libnvidia-egl-gbm.so.1</code>) and its
|
|
corresponding configuration file ( <code class=
|
|
"filename">/usr/share/egl/egl_external_platform.d/15_nvidia_gbm.json</code>
|
|
); this library provides GBM EGL application support.</p>
|
|
<p>The source code for the GBM EGL external platform library can be
|
|
found at <a href="https://github.com/NVIDIA/egl-gbm" target=
|
|
"_top">https://github.com/NVIDIA/egl-gbm</a>. See <a href=
|
|
"gbm.html" title=
|
|
"Chapter 40. GBM and GBM-based Wayland Compositors">Chapter 40,
|
|
<i>GBM and GBM-based Wayland Compositors</i></a> for more details
|
|
on GBM support in the NVIDIA driver.</p>
|
|
</li>
|
|
<li>
|
|
<p>Vendor neutral graphics libraries provided by libglvnd
|
|
(<code class="filename">/usr/lib/libOpenGL.so.0</code>,
|
|
<code class="filename">/usr/lib/libGLX.so.0</code>, and
|
|
<code class="filename">/usr/lib/libGLdispatch.so.0</code>); these
|
|
libraries are currently used to provide full OpenGL dispatching
|
|
support to NVIDIA's implementation of EGL.</p>
|
|
<p>Source code for libglvnd is available at <a href=
|
|
"https://github.com/NVIDIA/libglvnd" target=
|
|
"_top">https://github.com/NVIDIA/libglvnd</a></p>
|
|
</li>
|
|
<li>
|
|
<p>GLVND vendor implementation libraries for GLX (<code class=
|
|
"filename">/usr/lib/libGLX_nvidia.so.0</code>) and EGL
|
|
(<code class="filename">/usr/lib/libEGL_nvidia.so.0</code>); these
|
|
libraries provide NVIDIA implementations of OpenGL functionality
|
|
which may be accessed using the GLVND client-facing libraries.</p>
|
|
<p><code class="filename">libGLX_nvidia.so.0</code> and
|
|
<code class="filename">libEGL_nvidia.so.0</code> can be used as
|
|
Vulkan ICDs. The Vulkan ICD configuration file included with the
|
|
driver references <code class="filename">libGLX_nvidia.so.0</code>,
|
|
however in environments where X11 client libraries are not
|
|
available, <code class="filename">libEGL_nvidia.so.0</code> should
|
|
be used.</p>
|
|
<p>The Vulkan ICD configuration file is installed as <code class=
|
|
"filename">/etc/vulkan/icd.d/nvidia_icd.json</code>.</p>
|
|
<p>An additional Vulkan layer configuration file is installed as
|
|
<code class=
|
|
"filename">/etc/vulkan/implicit_layer.d/nvidia_layers.json</code>.
|
|
These layers add functionality to the Vulkan loader.</p>
|
|
</li>
|
|
<li>
|
|
<p>A GLVND GLX client ICD loader library (<code class=
|
|
"filename">/usr/lib/libGL.so.1</code>), This library provides API
|
|
entry points for all GLX function calls, and is loaded at run-time
|
|
by applications.</p>
|
|
<p>This library is included as a convenience to support systems
|
|
that do not already have an existing libglvnd installation. On
|
|
systems with libglvnd libraries already installed, the existing
|
|
libraries should be used instead.</p>
|
|
</li>
|
|
<li>
|
|
<p>Various libraries that are used internally by other driver
|
|
components. These include <code class=
|
|
"filename">/usr/lib/libnvidia-cfg.so.535.161.07</code>,
|
|
<code class=
|
|
"filename">/usr/lib/libnvidia-eglcore.so.535.161.07</code>,
|
|
<code class=
|
|
"filename">/usr/lib/libnvidia-glcore.so.535.161.07</code>,
|
|
<code class=
|
|
"filename">/usr/lib/libnvidia-glsi.so.535.161.07</code>,
|
|
<code class=
|
|
"filename">/usr/lib/libnvidia-glvkspirv.so.535.161.07</code>,
|
|
<code class=
|
|
"filename">/usr/lib/libnvidia-rtcore.so.535.161.07</code>, and
|
|
<code class=
|
|
"filename">/usr/lib/libnvidia-allocator.so.535.161.07</code>.</p>
|
|
</li>
|
|
<li>
|
|
<p>A VDPAU (Video Decode and Presentation API for Unix-like
|
|
systems) library for the NVIDIA vendor implementation,
|
|
(<code class="filename">/usr/lib/vdpau/libvdpau_nvidia.so.535.161.07</code>);
|
|
see <a href="vdpausupport.html" title=
|
|
"Appendix G. VDPAU Support">Appendix G, <i>VDPAU
|
|
Support</i></a> for details.</p>
|
|
</li>
|
|
<li>
|
|
<p>The CUDA library (<code class=
|
|
"filename">/usr/lib/libcuda.so.535.161.07</code>) which provides
|
|
runtime support for CUDA (high-performance computing on the GPU)
|
|
applications.</p>
|
|
</li>
|
|
<li>
|
|
<p>The CUDA Debugger library (<code class=
|
|
"filename">/usr/lib/libcudadebugger.so.535.161.07</code>) which
|
|
provides support for debugging CUDA applications.</p>
|
|
</li>
|
|
<li>
|
|
<p>Cryptography library wrappers, (<code class=
|
|
"filename">/usr/lib/libnvidia-pkcs11.so.535.161.07</code>) and
|
|
(<code class=
|
|
"filename">/usr/lib/libnvidia-pkcs11.openssl3.so.535.161.07</code>),
|
|
which dynamically link to the system's OpenSSL libraries and
|
|
provide cryptography operations when the GPU and driver are
|
|
operating in Confidential Compute mode. The driver attempts to use
|
|
OpenSSL 3 first and if OpenSSL 3 is not available then it will
|
|
attempt to use OpenSSL 1.1.</p>
|
|
</li>
|
|
<li>
|
|
<p>The PTX JIT Compiler library (<code class=
|
|
"filename">/usr/lib/libnvidia-ptxjitcompiler.so.535.161.07</code>)
|
|
is a JIT compiler which compiles PTX into GPU machine code and is
|
|
used by the CUDA driver.</p>
|
|
</li>
|
|
<li>
|
|
<p>The NVVM Compiler library (<code class=
|
|
"filename">/usr/lib/libnvidia-nvvm.so.4.0.0</code>) is loaded by
|
|
the CUDA driver to do JIT link-time-optimization.</p>
|
|
</li>
|
|
<li>
|
|
<p>Two OpenCL libraries (<code class=
|
|
"filename">/usr/lib/libOpenCL.so.1.0.0</code>, <code class=
|
|
"filename">/usr/lib/libnvidia-opencl.so.535.161.07</code>); the
|
|
former is a vendor-independent Installable Client Driver (ICD)
|
|
loader, and the latter is the NVIDIA Vendor ICD. A config file
|
|
<code class="filename">/etc/OpenCL/vendors/nvidia.icd</code> is
|
|
also installed, to advertise the NVIDIA Vendor ICD to the ICD
|
|
Loader.</p>
|
|
</li>
|
|
<li>
|
|
<p>The <code class="filename">nvidia-cuda-mps-control</code> and
|
|
<code class="filename">nvidia-cuda-mps-server</code> applications,
|
|
which allow MPI processes to run concurrently on a single GPU.</p>
|
|
</li>
|
|
<li>
|
|
<p>A kernel module (<code class="filename">/lib/modules/`uname
|
|
-r`/kernel/drivers/video/nvidia-modeset.ko</code>); this kernel
|
|
module is responsible for programming the display engine of the
|
|
GPU. User-mode NVIDIA driver components such as the NVIDIA X
|
|
driver, OpenGL driver, and VDPAU driver communicate with
|
|
nvidia-modeset.ko through the /dev/nvidia-modeset device file.</p>
|
|
</li>
|
|
<li>
|
|
<p>A kernel module (<code class="filename">/lib/modules/`uname
|
|
-r`/kernel/drivers/video/nvidia.ko</code>); this kernel module
|
|
provides low-level access to your NVIDIA hardware for all of the
|
|
above components. It is generally loaded into the kernel when the X
|
|
server is started, and is used by the X driver and OpenGL.
|
|
nvidia.ko consists of two pieces: the binary-only core, and a
|
|
kernel interface that must be compiled specifically for your kernel
|
|
version. Note that the Linux kernel does not have a consistent
|
|
binary interface like the X server, so it is important that this
|
|
kernel interface be matched with the version of the kernel that you
|
|
are using. This can either be accomplished by compiling yourself,
|
|
or using precompiled binaries provided for the kernels shipped with
|
|
some of the more common Linux distributions.</p>
|
|
</li>
|
|
<li>
|
|
<p>NVIDIA Unified Memory kernel module (<code class=
|
|
"filename">/lib/modules/`uname
|
|
-r`/kernel/drivers/video/nvidia-uvm.ko</code>); this kernel module
|
|
provides functionality for sharing memory between the CPU and GPU
|
|
in CUDA programs. It is generally loaded into the kernel when a
|
|
CUDA program is started, and is used by the CUDA driver on
|
|
supported platforms.</p>
|
|
</li>
|
|
<li>
|
|
<p>The nvidia-tls library (<code class=
|
|
"filename">/usr/lib/libnvidia-tls.so.535.161.07</code>); this file
|
|
provides thread local storage support for the NVIDIA OpenGL
|
|
libraries (libGLX_nvidia, libnvidia-glcore, and
|
|
libglxserver_nvidia).</p>
|
|
</li>
|
|
<li>
|
|
<p>The nvidia-ml library (<code class=
|
|
"filename">/usr/lib/libnvidia-ml.so.535.161.07</code>); The NVIDIA
|
|
Management Library provides a monitoring and management API. See
|
|
<a href="nvidia-ml.html" title=
|
|
"Chapter 28. The NVIDIA Management Library">Chapter 28,
|
|
<i>The NVIDIA Management Library</i></a> for more information.</p>
|
|
</li>
|
|
<li>
|
|
<p>The application nvidia-installer (<code class=
|
|
"filename">/usr/bin/nvidia-installer</code>) is NVIDIA's tool for
|
|
installing and updating NVIDIA drivers. See <a href=
|
|
"installdriver.html" title=
|
|
"Chapter 4. Installing the NVIDIA Driver">Chapter 4,
|
|
<i>Installing the NVIDIA Driver</i></a> for a more thorough
|
|
description.</p>
|
|
<p>Source code is available at <a href=
|
|
"https://download.nvidia.com/XFree86/nvidia-installer/" target=
|
|
"_top">https://download.nvidia.com/XFree86/nvidia-installer/</a>.</p>
|
|
</li>
|
|
<li>
|
|
<p>The application nvidia-modprobe (<code class=
|
|
"filename">/usr/bin/nvidia-modprobe</code>) is installed as setuid
|
|
root and is used to load the NVIDIA kernel module, create the
|
|
<code class="filename">/dev/nvidia*</code> device nodes and
|
|
configure certain runtime settings in the kernel by processes (such
|
|
as CUDA applications) that don't run with sufficient privileges to
|
|
do those things themselves.</p>
|
|
<p>Source code is available at <a href=
|
|
"https://download.nvidia.com/XFree86/nvidia-modprobe/" target=
|
|
"_top">https://download.nvidia.com/XFree86/nvidia-modprobe/</a>.</p>
|
|
</li>
|
|
<li>
|
|
<p>The application nvidia-xconfig (<code class=
|
|
"filename">/usr/bin/nvidia-xconfig</code>) is NVIDIA's tool for
|
|
manipulating X server configuration files. See <a href=
|
|
"editxconfig.html" title=
|
|
"Chapter 6. Configuring X for the NVIDIA Driver">Chapter 6,
|
|
<i>Configuring X for the NVIDIA Driver</i></a> for more
|
|
information.</p>
|
|
<p>Source code is available at <a href=
|
|
"https://download.nvidia.com/XFree86/nvidia-xconfig/" target=
|
|
"_top">https://download.nvidia.com/XFree86/nvidia-xconfig/</a>.</p>
|
|
</li>
|
|
<li>
|
|
<p>The application nvidia-settings (<code class=
|
|
"filename">/usr/bin/nvidia-settings</code>) is NVIDIA's tool for
|
|
dynamic configuration while the X server is running. See <a href=
|
|
"nvidiasettings.html" title=
|
|
"Chapter 25. Using the nvidia-settings Utility">Chapter 25,
|
|
<i>Using the nvidia-settings Utility</i></a> for more
|
|
information.</p>
|
|
</li>
|
|
<li>
|
|
<p>The libnvidia-gtk libraries (<code class=
|
|
"filename">/usr/lib/libnvidia-gtk2.so.535.161.07</code> and
|
|
<code class=
|
|
"filename">/usr/lib/libnvidia-gtk3.so.535.161.07</code>); these
|
|
libraries are required to provide the nvidia-settings user
|
|
interface.</p>
|
|
<p>Source code is available at <a href=
|
|
"https://download.nvidia.com/XFree86/nvidia-settings/" target=
|
|
"_top">https://download.nvidia.com/XFree86/nvidia-settings/</a>.</p>
|
|
</li>
|
|
<li>
|
|
<p>The application nvidia-smi (<code class=
|
|
"filename">/usr/bin/nvidia-smi</code>) is the NVIDIA System
|
|
Management Interface for management and monitoring functionality.
|
|
See <a href="nvidia-smi.html" title=
|
|
"Chapter 27. Using the nvidia-smi Utility">Chapter 27,
|
|
<i>Using the nvidia-smi Utility</i></a> for more information.</p>
|
|
</li>
|
|
<li>
|
|
<p>The application nvidia-debugdump (<code class=
|
|
"filename">/usr/bin/nvidia-debugdump</code>) is NVIDIA's tool for
|
|
collecting internal GPU state. It is normally invoked by the
|
|
nvidia-bug-report.sh (<code class=
|
|
"filename">/usr/bin/nvidia-bug-report.sh</code>) script. See
|
|
<a href="nvidia-debugdump.html" title=
|
|
"Chapter 29. Using the nvidia-debugdump Utility">Chapter 29,
|
|
<i>Using the nvidia-debugdump Utility</i></a> for more
|
|
information.</p>
|
|
</li>
|
|
<li>
|
|
<p>The daemon nvidia-persistenced (<code class=
|
|
"filename">/usr/bin/nvidia-persistenced</code>) is the NVIDIA
|
|
Persistence Daemon for allowing the NVIDIA kernel module to
|
|
maintain persistent state when no other NVIDIA driver components
|
|
are running. See <a href="nvidia-persistenced.html" title=
|
|
"Chapter 30. Using the nvidia-persistenced Utility">Chapter 30,
|
|
<i>Using the nvidia-persistenced Utility</i></a> for more
|
|
information.</p>
|
|
<p>Source code is available at <a href=
|
|
"https://download.nvidia.com/XFree86/nvidia-persistenced/" target=
|
|
"_top">https://download.nvidia.com/XFree86/nvidia-persistenced/</a>.</p>
|
|
</li>
|
|
<li>
|
|
<p>The NVCUVID library (<code class=
|
|
"filename">/usr/lib/libnvcuvid.so.535.161.07</code>); The NVIDIA
|
|
CUDA Video Decoder (NVCUVID) library provides an interface to
|
|
hardware video decoding capabilities on NVIDIA GPUs with CUDA.</p>
|
|
</li>
|
|
<li>
|
|
<p>The NvEncodeAPI library (<code class=
|
|
"filename">/usr/lib/libnvidia-encode.so.535.161.07</code>); The
|
|
NVENC Video Encoding library provides an interface to video encoder
|
|
hardware on supported NVIDIA GPUs.</p>
|
|
</li>
|
|
<li>
|
|
<p>The NVAPI library (<code class=
|
|
"filename">/usr/lib/libnvidia-api.so.1;</code>); NVAPI provides an
|
|
interface for managing properties of GPUs. The NVAPI library
|
|
provides runtime support for NVAPI applications.</p>
|
|
</li>
|
|
<li>
|
|
<p>The NvFBC library (<code class=
|
|
"filename">/usr/lib/libnvidia-fbc.so.535.161.07</code>); The
|
|
NVIDIA Framebuffer Capture library provides an interface to capture
|
|
and optionally encode the framebuffer of an X server screen.</p>
|
|
</li>
|
|
<li>
|
|
<p>An X driver configuration file (<code class=
|
|
"filename">/usr/share/X11/xorg.conf.d/nvidia-drm-outputclass.conf</code>);
|
|
If the X server is sufficiently new, this file will be installed to
|
|
configure the X server to load the <code class=
|
|
"filename">nvidia_drv.so</code> driver automatically if it is
|
|
started after the NVIDIA DRM kernel module (<code class=
|
|
"filename">nvidia-drm.ko</code>) is loaded. This feature is
|
|
supported in X.Org xserver 1.16 and higher when running on Linux
|
|
kernel 3.13 or higher with CONFIG_DRM enabled.</p>
|
|
</li>
|
|
<li>
|
|
<p>Predefined application profile keys and documentation for those
|
|
keys can be found in the following files in the directory
|
|
<code class="filename">/usr/share/nvidia/</code>: <code class=
|
|
"filename">nvidia-application-profiles-535.161.07-rc</code>,
|
|
<code class=
|
|
"filename">nvidia-application-profiles-535.161.07-key-documentation</code>.</p>
|
|
<p>See <a href="profiles.html" title=
|
|
"Appendix J. Application Profiles">Appendix J,
|
|
<i>Application Profiles</i></a> for more information.</p>
|
|
</li>
|
|
<li>
|
|
<p>The OptiX library (<code class=
|
|
"filename">/usr/lib/libnvoptix.so.1</code>); This library
|
|
implements the OptiX ray tracing engine. It is loaded by the
|
|
<code class="filename">liboptix.so.*</code> library bundled with
|
|
applications that use the OptiX API.</p>
|
|
<p>OptiX also includes a data file <code class=
|
|
"filename">/usr/share/nvidia/nvoptix.bin</code>.</p>
|
|
</li>
|
|
<li>
|
|
<p>The NVIDIA Optical Flow library (<code class=
|
|
"filename">/usr/lib/libnvidia-opticalflow.so.535.161.07</code>);
|
|
The NVIDIA Optical Flow library can be used for
|
|
hardware-accelerated computation of optical flow vectors and stereo
|
|
disparity values on Turing and later NVIDIA GPUs. This is useful
|
|
for some forms of computer vision and image analysis. The Optical
|
|
Flow library depends on the NVCUVID library, which in turn depends
|
|
on the CUDA library.</p>
|
|
</li>
|
|
<li>
|
|
<p>NGX (<code class=
|
|
"filename">/usr/lib/libnvidia-ngx.so.535.161.07</code>); and the
|
|
NVIDIA NGX Updater (<code class=
|
|
"filename">/usr/bin/nvidia-ngx-updater</code>); NGX is a collection
|
|
of software which provides AI features to applications. On Linux
|
|
this is supported only with x86_64 applications. Developers
|
|
interested in using NGX in their applications should visit the
|
|
following resources:</p>
|
|
<div class="itemizedlist">
|
|
<ul type="circle">
|
|
<li>
|
|
<p><a href="https://developer.nvidia.com/rtx/ngx" target=
|
|
"_top">https://developer.nvidia.com/rtx/ngx</a></p>
|
|
</li>
|
|
<li>
|
|
<p><a href="https://developer.nvidia.com/dlss" target=
|
|
"_top">https://developer.nvidia.com/dlss</a></p>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<p>NGX comes with nvidia-ngx-updater, a binary which updates NGX
|
|
features without requiring a full application update. By default
|
|
this functionality is disabled on Linux and needs to be enabled via
|
|
a configuration file; see <a href="ngx.html" title=
|
|
"Chapter 38. NGX">Chapter 38, <i>NGX</i></a> for
|
|
details.</p>
|
|
</li>
|
|
<li>
|
|
<p>A kernel module (<code class="filename">/lib/modules/`uname
|
|
-r`/kernel/drivers/video/nvidia-peermem.ko</code>); this kernel
|
|
module allows Mellanox HCAs access to NVIDIA GPU memory read/write
|
|
buffers without needing to copy data to host memory. See <a href=
|
|
"nvidia-peermem.html" title=
|
|
"Chapter 42. GPUDirect RDMA Peer Memory Client">Chapter 42,
|
|
<i>GPUDirect RDMA Peer Memory Client</i></a> for more
|
|
information.</p>
|
|
</li>
|
|
<li>
|
|
<p>NGX for Proton and Wine (<code class=
|
|
"filename">/usr/lib/nvidia/wine/nvngx.dll</code>); (<code class=
|
|
"filename">/usr/lib/nvidia/wine/_nvngx.dll</code>);</p>
|
|
<p>NGX for Proton and Wine is a Microsoft Windows dynamic-link
|
|
library used by Microsoft Windows applications which support NVIDIA
|
|
DLSS.</p>
|
|
<p>In addition to driver-side support, changes to third-party
|
|
software are required in order to support DLSS within Proton and
|
|
Wine.</p>
|
|
</li>
|
|
<li>
|
|
<p>Firmware (<code class=
|
|
"filename">/lib/firmware/nvidia/535.161.07/gsp_*.bin</code>) which
|
|
offloads tasks from the CPU to the GPU. See <a href="gsp.html"
|
|
title="Chapter 43. GSP Firmware">Chapter 43, <i>GSP
|
|
Firmware</i></a> for more information.</p>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<p></p>
|
|
<p>Problems will arise if applications use the wrong version of a
|
|
library. This can be the case if there are either old libGL
|
|
libraries or stale symlinks left lying around. If you think there
|
|
may be something awry in your installation, check that the
|
|
following files are in place (these are all the files of the NVIDIA
|
|
Accelerated Linux Graphics Driver, as well as their symlinks):</p>
|
|
<pre class="screen">
|
|
/usr/lib/xorg/modules/drivers/nvidia_drv.so
|
|
|
|
/usr/lib/xorg/modules/extensions/libglxserver_nvidia.so.535.161.07
|
|
/usr/lib/xorg/modules/extensions/libglxserver_nvidia.so -> libglxserver_nvidia.so.535.161.07
|
|
|
|
/usr/lib/libGL.so.1.0.0;
|
|
/usr/lib/libGL.so.1 -> libGL.so.1.0.0;
|
|
/usr/lib/libGL.so -> libGL.so.1
|
|
|
|
(libGL.so.1.0.0 is the name of the libglvnd client-side GLX ICD loader
|
|
library included with the NVIDIA Linux driver. A compatible ICD loader
|
|
provided by your distribution may have a slightly different filename.)
|
|
|
|
/usr/lib/libnvidia-glcore.so.535.161.07
|
|
|
|
/usr/lib/libcuda.so.535.161.07
|
|
/usr/lib/libcuda.so -> libcuda.so.535.161.07
|
|
|
|
/lib/modules/`uname -r`/video/nvidia.{o,ko}, or
|
|
/lib/modules/`uname -r`/kernel/drivers/video/nvidia.{o,ko}
|
|
</pre>
|
|
<p>If there are other libraries whose "soname" conflicts with that
|
|
of the NVIDIA libraries, ldconfig may create the wrong symlinks. It
|
|
is recommended that you manually remove or rename conflicting
|
|
libraries (be sure to rename clashing libraries to something that
|
|
ldconfig will not look at -- we have found that prepending "XXX" to
|
|
a library name generally does the trick), rerun 'ldconfig', and
|
|
check that the correct symlinks were made. An example of a library
|
|
that often creates conflicts is "/usr/lib/mesa/libGL.so*".</p>
|
|
<p>If the libraries appear to be correct, then verify that the
|
|
application is using the correct libraries. For example, to check
|
|
that the application /usr/bin/glxgears is using the libglvnd GLX
|
|
libraries, run:</p>
|
|
<pre class="screen">
|
|
% ldd /usr/bin/glxgears
|
|
linux-vdso.so.1 (0x00007ffc8a5d4000)
|
|
libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007f6593896000)
|
|
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f65934f8000)
|
|
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f65931c0000)
|
|
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6592dcf000)
|
|
libGLX.so.0 => /usr/lib/x86_64-linux-gnu/libGLX.so.0 (0x00007f6592b9e000)
|
|
libGLdispatch.so.0 => /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x00007f65928e8000)
|
|
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f65926c9000)
|
|
/lib64/ld-linux-x86-64.so.2 (0x00007f6593d28000)
|
|
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f65924a1000)
|
|
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f659229d000)
|
|
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f6592099000)
|
|
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f6591e93000)
|
|
libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f6591c7e000)
|
|
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f6591a76000)
|
|
</pre>
|
|
<p>In the example above, the list of libraries reported by
|
|
<span><strong class="command">ldd</strong></span> includes
|
|
<code class="filename">libGLX.so.0</code> and <code class=
|
|
"filename">libGLdispatch.so.0</code>. If the GLX client library is
|
|
something other than the GLVND <code class=
|
|
"filename">libGL.so.1</code>, then you will need to either remove
|
|
the library that is getting in the way or adjust your dynamic
|
|
loader search path using the <code class=
|
|
"envar">LD_LIBRARY_PATH</code> environment variable. You may want
|
|
to consult the man pages for <span><strong class=
|
|
"command">ldconfig</strong></span> and <span><strong class=
|
|
"command">ldd</strong></span>.</p>
|
|
</div>
|
|
<div class="navfooter">
|
|
<hr>
|
|
<table width="100%" summary="Navigation footer">
|
|
<tr>
|
|
<td width="40%" align="left"><a accesskey="p" href=
|
|
"installdriver.html">Prev</a> </td>
|
|
<td width="20%" align="center"><a accesskey="u" href=
|
|
"installationandconfiguration.html">Up</a></td>
|
|
<td width="40%" align="right"> <a accesskey="n" href=
|
|
"editxconfig.html">Next</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td width="40%" align="left" valign="top">
|
|
Chapter 4. Installing the NVIDIA Driver </td>
|
|
<td width="20%" align="center"><a accesskey="h" href=
|
|
"index.html">Home</a></td>
|
|
<td width="40%" align="right" valign="top">
|
|
Chapter 6. Configuring X for the NVIDIA Driver</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</body>
|
|
</html>
|