搜索
首页系统教程LINUXNVIDIA转移到开源GPU内核模块

NVIDIA全面转向开源GPU内核模块

NVIDIA Shifts To Open-Source GPU Kernel Modules

NVIDIA在开源软件的承诺上迈出了重要一步。该公司宣布其即将发布的R560驱动程序将完全转向开源GPU内核模块。此举标志着NVIDIA对驱动程序开发和分发的策略发生了重大转变。

目录

  • 进度和改进
  • 支持的GPU
  • 安装程序更改
      1. 使用CUDA元包的包管理器
      1. 运行文件安装
      1. 安装助手脚本
      1. 包管理器详情
      1. Windows Subsystem for Linux
      1. CUDA工具包安装
  • 结论

背景

2022年5月,NVIDIA在R515驱动程序中引入了开源Linux GPU内核模块。这些模块在双重GPL和MIT许可下发布,最初针对的是数据中心计算GPU。当时,对GeForce和工作站GPU的支持处于alpha阶段。

进度和改进

在过去的两年里,NVIDIA取得了实质性进展:

  • 性能: 开源模块的性能现在已经达到或超过了闭源驱动程序的性能。
  • 新功能:
    • 异构内存管理(HMM)支持,
    • 机密计算功能,
    • 对Grace平台上相干内存架构的支持。

支持的GPU

向开源模块的过渡对不同的GPU世代有不同的影响:

  • 尖端平台: Grace Hopper和Blackwell平台需要开源模块。
  • 支持的GPU: Turing、Ampere、Ada Lovelace和Hopper等较新的架构完全受开源模块支持。
  • 不支持的GPU: 来自Maxwell、Pascal和Volta架构的旧版GPU由于兼容性限制,需要继续使用专有驱动程序。
  • 混合部署: 具有新旧GPU混合的系统应继续使用专有驱动程序以获得最佳性能和稳定性。

如果您不确定要安装哪个驱动程序,请不要担心!NVIDIA提供了一个检测助手脚本来指导用户选择合适的驱动程序。

安装程序更改

NVIDIA正在将所有安装方法的默认安装方法从专有驱动程序更改为开源驱动程序。

1. 使用CUDA元包的包管理器

当使用包管理器安装CUDA工具包时,顶级cuda包会同时安装CUDA工具包和相关的驱动程序版本。例如,在CUDA 12.5版本期间安装cuda提供了专有的NVIDIA驱动程序555和CUDA工具包12.5。

以前,使用开源GPU内核模块需要同时安装特定于发行版的NVIDIA驱动程序open包和选择的cuda-toolkit-X-Y包。

从CUDA 12.6开始,此过程发生了变化。默认安装现在包括开源驱动程序。

2. 运行文件安装

CUDA或NVIDIA驱动程序的.run文件安装程序现在:

  1. 查询您的硬件,
  2. 自动安装最合适的驱动程序,
  3. 提供UI切换以在专有驱动程序和开源驱动程序之间进行选择。

对于命令行或自动化安装(例如Ansible),请使用以下覆盖:

<code># 用于CUDA安装
sh ./cuda_12.6.0_560.22_linux.run --override --kernel-module-type=proprietary

# 用于NVIDIA驱动程序安装
sh ./NVIDIA-Linux-x86_64-560.run --kernel-module-type=proprietary</code>

3. 安装助手脚本

NVIDIA提供了一个助手脚本来指导驱动程序的选择。要使用它,首先安装nvidia-driver-assistant包,然后运行脚本:

<code>$ nvidia-driver-assistant</code>

4. 包管理器详情

NVIDIA建议使用包管理器来进行一致的CUDA工具包和驱动程序安装。以下是特定于发行版的说明:

基于Debian的系统:

安装开源驱动程序:

<code>$ sudo apt-get install nvidia-open</code>

对于Ubuntu 20.04,首先升级到开放内核模块,然后像下面这样安装开源驱动程序:

<code>$ sudo apt-get install -V nvidia-kernel-source-open
$ sudo apt-get install nvidia-open</code>

基于RHEL的系统:

安装开源驱动程序:

<code>$ sudo dnf module install nvidia-driver:open-dkms</code>

要使用CUDA元包进行升级,请禁用模块流:

<code>$ echo "module_hotfixes=1" | tee -a /etc/yum.repos.d/cuda*.repo
$ sudo dnf install --allowerasing nvidia-open
$ sudo dnf module reset nvidia-driver</code>

SUSE或OpenSUSE:

根据您的内核选择合适的命令:

<code># 默认内核版本
$ sudo zypper install nvidia-open

# Azure内核版本(sles15/x86_64)
$ sudo zypper install nvidia-open-azure

# 64kb内核版本(sles15/sbsa)适用于Grace-Hopper
$ sudo zypper install nvidia-open-64k</code>

5. Windows Subsystem for Linux

WSL用户无需执行任何操作,因为它使用来自主机Windows系统的NVIDIA内核驱动程序。

6. CUDA工具包安装

CUDA工具包的安装过程保持不变。用户可以像以前一样通过他们的包管理器安装它。

<code>$ sudo apt-get/dnf/zypper install cuda-toolkit</code>

有关驱动程序安装或CUDA工具包设置的更多详细信息,用户可以参考CUDA安装指南

结论

NVIDIA转向开源GPU内核模块标志着该公司对驱动程序开发方法的重大转变。

我非常希望这将提高各种GPU世代和Linux发行版的兼容性、性能和用户选择。

资源:

  • NVIDIA全面转向开源GPU内核模块

特色图片来自Pixabay的Mizter_X94

以上是NVIDIA转移到开源GPU内核模块的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Linux系统管理员的主要任务是什么?Linux系统管理员的主要任务是什么?Apr 19, 2025 am 12:23 AM

Linux系统管理员的主要任务包括系统监控与性能调优、用户管理、软件包管理、安全管理与备份、故障排查与解决、性能优化与最佳实践。1.使用top、htop等工具监控系统性能,并进行调优。2.通过useradd等命令管理用户账户和权限。3.利用apt、yum管理软件包,确保系统更新和安全。4.配置防火墙、监控日志、进行数据备份以确保系统安全。5.通过日志分析和工具使用进行故障排查和解决。6.优化内核参数和应用配置,遵循最佳实践提升系统性能和稳定性。

很难学习Linux吗?很难学习Linux吗?Apr 18, 2025 am 12:23 AM

学习Linux并不难。1.Linux是一个开源操作系统,基于Unix,广泛应用于服务器、嵌入式系统和个人电脑。2.理解文件系统和权限管理是关键,文件系统是层次化的,权限包括读、写和执行。3.包管理系统如apt和dnf使得软件管理方便。4.进程管理通过ps和top命令实现。5.从基本命令如mkdir、cd、touch和nano开始学习,再尝试高级用法如shell脚本和文本处理。6.常见错误如权限问题可以通过sudo和chmod解决。7.性能优化建议包括使用htop监控资源、清理不必要文件和使用sy

Linux管理员的薪水是多少?Linux管理员的薪水是多少?Apr 17, 2025 am 12:24 AM

Linux管理员的平均年薪在美国为75,000至95,000美元,欧洲为40,000至60,000欧元。提升薪资可以通过:1.持续学习新技术,如云计算和容器技术;2.积累项目经验并建立Portfolio;3.建立职业网络,拓展人脉。

Linux的主要目的是什么?Linux的主要目的是什么?Apr 16, 2025 am 12:19 AM

Linux的主要用途包括:1.服务器操作系统,2.嵌入式系统,3.桌面操作系统,4.开发和测试环境。Linux在这些领域表现出色,提供了稳定性、安全性和高效的开发工具。

互联网在Linux上运行吗?互联网在Linux上运行吗?Apr 14, 2025 am 12:03 AM

互联网运行不依赖单一操作系统,但Linux在其中扮演重要角色。Linux广泛应用于服务器和网络设备,因其稳定性、安全性和可扩展性受欢迎。

Linux操作是什么?Linux操作是什么?Apr 13, 2025 am 12:20 AM

Linux操作系统的核心是其命令行界面,通过命令行可以执行各种操作。1.文件和目录操作使用ls、cd、mkdir、rm等命令管理文件和目录。2.用户和权限管理通过useradd、passwd、chmod等命令确保系统安全和资源分配。3.进程管理使用ps、kill等命令监控和控制系统进程。4.网络操作包括ping、ifconfig、ssh等命令配置和管理网络连接。5.系统监控和维护通过top、df、du等命令了解系统运行状态和资源使用情况。

使用Linux别名提高自定义命令快捷方式的生产率使用Linux别名提高自定义命令快捷方式的生产率Apr 12, 2025 am 11:43 AM

介绍 Linux是一个强大的操作系统,由于其灵活性和效率,开发人员,系统管理员和电源用户都喜欢。但是,经常使用长而复杂的命令可能是乏味的

Linux实际上有什么好处?Linux实际上有什么好处?Apr 12, 2025 am 12:20 AM

Linux适用于服务器、开发环境和嵌入式系统。1.作为服务器操作系统,Linux稳定高效,常用于部署高并发应用。2.作为开发环境,Linux提供高效的命令行工具和包管理系统,提升开发效率。3.在嵌入式系统中,Linux轻量且可定制,适合资源有限的环境。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热工具

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。