Installation Guide for Linux - NVIDIA Developer

Installation Guide for Linux

Release 12.3 NVIDIA

Jan 2, 2024

Contents

1 System Requirements

3

2 OS Support Policy

5

3 Host Compiler Support Policy

7

3.1 Supported C++ Dialects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4 About This Document

9

5 Pre-installation Actions

11

5.1 Verify You Have a CUDA-Capable GPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5.2 Verify You Have a Supported Version of Linux . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5.3 Verify the System Has gcc Installed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5.4 Verify the System has the Correct Kernel Headers and Development Packages Installed 12

5.5 Install GPUDirect Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.6 Choose an Installation Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.7 Download the NVIDIA CUDA Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5.8 Address Custom xorg.conf, If Applicable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5.9 Handle Conflicting Installation Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

6 Package Manager Installation

17

6.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

6.2 RHEL 7 / CentOS 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

6.2.1 Prepare RHEL 7 / CentOS 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

6.2.2 Local Repo Installation for RHEL 7 / CentOS 7 . . . . . . . . . . . . . . . . . . . . . . . . 19

6.2.3 Network Repo Installation for RHEL 7 / CentOS 7 . . . . . . . . . . . . . . . . . . . . . . 19

6.2.4 Common Installation Intructions for RHEL 7 / CentOS 7 . . . . . . . . . . . . . . . . . . 19

6.2.5 Installing a Previous NVIDIA Driver Branch on RHEL 7 . . . . . . . . . . . . . . . . . . . 20

6.3 RHEL 8 / Rocky 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

6.3.1 Prepare RHEL 8 / Rocky 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

6.3.2 Local Repo Installation for RHEL 8 / Rocky 8 . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.3.3 Network Repo Installation for RHEL 8 / Rocky 8 . . . . . . . . . . . . . . . . . . . . . . . 22

6.3.4 Common Instructions for RHEL 8 / Rocky 8 . . . . . . . . . . . . . . . . . . . . . . . . . . 22

6.4 RHEL 9 / Rocky 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6.4.1 Prepare RHEL 9 / Rocky 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6.4.2 Local Repo Installation for RHEL 9 / Rocky 9 . . . . . . . . . . . . . . . . . . . . . . . . . 23

6.4.3 Network Repo Installation for RHEL 9 / Rocky 9 . . . . . . . . . . . . . . . . . . . . . . . 24

6.4.4 Common Instructions for RHEL 9 / Rocky 9 . . . . . . . . . . . . . . . . . . . . . . . . . . 24

6.5 KylinOS 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

6.5.1 Prepare KylinOS 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

6.5.2 Local Repo Installation for KylinOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

6.5.3 Network Repo Installation for KylinOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

6.5.4 Common Instructions for KylinOS 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

6.6 Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

i

6.6.1 Prepare Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 6.6.2 Local Repo Installation for Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 6.6.3 Network Repo Installation for Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 6.6.4 Common Installation Intructions for Fedora . . . . . . . . . . . . . . . . . . . . . . . . . 27 6.7 SLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 6.7.1 Prepare SLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 6.7.2 Local Repo Installation for SLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 6.7.3 Network Repo Installation for SLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 6.7.4 Common Installation Instructions for SLES . . . . . . . . . . . . . . . . . . . . . . . . . . 29 6.8 OpenSUSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 6.8.1 Prepare OpenSUSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 6.8.2 Local Repo Installation for OpenSUSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 6.8.3 Network Repo Installation for OpenSUSE . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 6.8.4 Common Installation Instructions for OpenSUSE . . . . . . . . . . . . . . . . . . . . . . 31 6.9 WSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 6.9.1 Prepare WSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 6.9.2 Local Repo Installation for WSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 6.9.3 Network Repo Installation for WSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 6.9.4 Common Installation Instructions for WSL . . . . . . . . . . . . . . . . . . . . . . . . . . 32 6.10 Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 6.10.1 Prepare Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 6.10.2 Local Repo Installation for Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 6.10.3 Network Repo Installation for Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 6.10.4 Common Installation Instructions for Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . 35 6.11 Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 6.11.1 Prepare Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 6.11.2 Local Repo Installation for Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 6.11.3 Network Repo Installation for Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 6.11.4 Common Installation Instructions for Debian . . . . . . . . . . . . . . . . . . . . . . . . . 36 6.12 Additional Package Manager Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 6.12.1 Available Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 6.12.2 Meta Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 6.12.3 Optional 32-bit Packages for Linux x86_64 .deb/.rpm . . . . . . . . . . . . . . . . . . . . 39 6.12.4 Package Upgrades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

7 Driver Installation

41

8 NVIDIA Open GPU Kernel Modules

43

8.1 CUDA Runfile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

8.2 Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

8.3 Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

8.4 KylinOS 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

8.5 RHEL 9 and Rocky 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

8.6 RHEL 8 and Rocky 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

8.7 RHEL 7 and CentOS 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

8.8 OpenSUSE and SLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

8.9 Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

9 Precompiled Streams

47

9.1 Precompiled Streams Support Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

9.2 Modularity Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

10 Kickstart Installation

51

10.1 RHEL 8 / Rocky Linux 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

10.2 RHEL 9 / Rocky Linux 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

ii

11 Runfile Installation

53

11.1 Runfile Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

11.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

11.3 Disabling Nouveau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

11.3.1 Fedora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

11.3.2 RHEL / Rocky and KylinOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

11.3.3 OpenSUSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

11.3.4 SLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

11.3.5 WSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

11.3.6 Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

11.3.7 Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

11.4 Device Node Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

11.5 Advanced Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

11.6 Uninstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

12 Conda Installation

61

12.1 Conda Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

12.2 Installing CUDA Using Conda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

12.3 Uninstalling CUDA Using Conda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

12.4 Installing Previous CUDA Releases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

12.5 Upgrading from cudatoolkit Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

13 Pip Wheels

63

14 Tarball and Zip Archive Deliverables

65

14.1 Parsing Redistrib JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

14.2 Importing Tarballs into CMake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

14.3 Importing Tarballs into Bazel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

15 CUDA Cross-Platform Environment

69

15.1 CUDA Cross-Platform Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

15.2 CUDA Cross-Platform Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

16 Post-installation Actions

71

16.1 Mandatory Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

16.1.1 Environment Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

16.1.2 POWER9 Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

16.2 Recommended Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

16.2.1 Install Persistence Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

16.2.2 Install Writable Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

16.2.3 Verify the Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

16.2.3.1 Verify the Driver Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

16.2.3.2 Running the Binaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

16.2.4 Install Nsight Eclipse Plugins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

16.2.5 Local Repo Removal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

16.3 Optional Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

16.3.1 Install Third-party Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

16.3.2 Install the Source Code for cuda-gdb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

16.3.3 Select the Active Version of CUDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

17 Advanced Setup

79

18 Frequently Asked Questions

81

18.1 How do I install the Toolkit in a different location? . . . . . . . . . . . . . . . . . . . . . . . . 81

18.2 Why do I see "nvcc: No such file or directory" when I try to build a CUDA application? . 81

iii

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download