跳到正文
Hacker News· novaRom·· 6 小时前AI 评分58

Nvidia RTX Spark 笔记本加密固件致 Linux 推理速度降至 35%

Nvidia RTX Spark encrypted firmware slows inference speed to 35% on Linux

AI 导读

在 MSI Prestige RTX Spark 笔记本上实测,原生 Linux 插电后 GPU 被锁在约 780 MHz,GPT-OSS-120B 推理仅 13.9 tokens/s,而 Windows 为 65.4、WSL 为 65.1、DGX Spark 为 61。

正文 · AI 翻译

是的,但有一个严重的隐患。Linux 可以在 RTX Spark 笔记本上安装并运行,比如 MSI Prestige N16 Flip AI Plus,包括通过 Nvidia 的开源内核驱动实现 GPU 加速。问题在于时钟频率:一旦笔记本接通电源,GPU 在 Linux 上就会被锁定在约 780 MHz,而不是在 Windows 上能达到的 2 GHz 以上。这使得一颗在 1200 亿参数模型上能跑到约 65 tokens/s 的芯片,变成难以突破 14 tokens/s,原因与 Linux 目前无法读取的电源管理固件有关。

TL;DR

  • 双启动 Linux 可行,在 MSI Prestige RTX Spark 笔记本上,配置正确后可以获得完整桌面、通过 Nvidia 开源驱动实现的 GPU 加速、120Hz 的 4K 输出,以及正常工作的音频、键盘和触控板。
  • 一个名为 Nvidia Platform Controllers and Framework 的隐藏 Windows 专属组件负责管理 CPU 与 GPU 之间的供电,它没有 Linux 对应物,这正是性能下降的根本原因。
  • 接通电源时,Linux 上的 GPU 时钟频率会跌至约 780 MHz,而 Windows 上约为 2.2 GHz,因为固件的功率表是加密的,只有 Windows 驱动才能解密。
  • GPT-OSS-120B 上的基准测试清晰显示了差距:Windows 达到 65.4 tokens/s,WSL 为 65.1,Nvidia DGX Spark 为 61,而同一台笔记本上的原生 Linux 仅达到 13.9。
  • 内存分配是另一个头疼问题,因为该笔记本默认给 GPU 预留 96GB 统一内存,只有 Windows 提供了更改这一划分的设置,而 Linux 必须先调整这一设置才能看到超过一小部分的 RAM。
  • WSL(Windows Subsystem for Linux)是目前实用的折中方案,因为它依托 Windows 驱动栈,无论笔记本接通电源还是使用电池都能保持完整的 GPU 加速,同时仍可运行 vLLM 等 Linux 优先的 AI 工具。
  • 真正的修复取决于 Nvidia,具体来说是将平台控制器的电源管理逻辑移植到其 Linux 驱动中,这将有效地把这台笔记本变成 DGX Spark 的便携版本。

自托管
Remy。

本地部署或部署在你的私有云中。Remy 和你构建的每个应用都留在你的防火墙之内。

RTX Spark 笔记本与普通 Windows PC 有何不同?

RTX Spark 平台搭载于 MSI Prestige、Asus ProArt 和 Dell XPS 等机型,采用与 Nvidia DGX Spark 台式机相同的 GPU 设计。但 DGX Spark 开箱即用 Nvidia 自家的 Linux 构建,而这些笔记本变体全都预装 Windows on ARM。

这一区别很重要,因为支持 CUDA 的 Windows on ARM 是全新的。基于 ARM 的 Windows 机器已存在几年,但将这一架构与 Nvidia 的 CUDA 栈配对,直到这款芯片才成为可能。这些笔记本还支持最高 128GB 的统一内存配置,由 CPU 和 GPU 共享,这在笔记本中并不常见,也正是它们最初面向 AI 开发者营销的核心原因。

由于包括 vLLM 和 SGLang 在内的众多 AI 工具生态都是 Linux 优先构建的,购买这些机器的开发者自然想知道能否抛弃 Windows,或至少双启动,而不损失性能。

如何实际安装 Linux?

这个过程并非即插即用。第一次尝试使用 Omarchy(一个基于 Arch 的 Linux 发行版)失败了,因为虽然它已经支持华硕和戴尔硬件上的该芯片,但 MSI Prestige 的表现不同,在启动时产生了闪烁、不稳定的显示。

改用 Debian 后运行更可靠,但仍需要变通方案。安装程序无法连接 Wi-Fi,因此安装需要 USB 以太网适配器。开箱即用时,Debian 也无法识别键盘、触摸板或 GPU,因为原版内核中不包含任何针对该笔记本的硬件支持。

回到 Omarchy 解决了驱动问题,因为它的内核已经捆绑了 Nvidia 的开源驱动。此时 Linux 可以正常启动,但只能看到笔记本 128GB 统一内存中的 28GB。这是因为笔记本固件为 GPU 使用预留了 96GB,而这种划分只能在 Windows 中调整。将 Windows 侧的 GPU 内存预留降至 4GB 后,Linux 启动后就能看到 120GB。调整之后,笔记本以 4K 和 120Hz 运行完整桌面,音频、触摸板、键盘和 CUDA 加速均正常工作。

在安装过程中通过 HDMI 获取视频输出本身就是一个障碍。在过程早期,笔记本只会在其内部屏幕上显示视频,而不通过 HDMI 输出,这导致需要将外接摄像头对准笔记本屏幕,才能在远程控制的安装步骤中看到发生了什么。

Linux 性能与 Windows 和 WSL 相比如何?

故事在这里发生了转折。在 GPU 上运行 GPT-OSS-120B 时,Windows 达到每秒 65.4 个 token。WSL(在 Windows 内运行 Linux 环境)达到每秒 65.1 个 token,几乎相同。DGX Spark 桌面单元运行 Nvidia 的原生 Linux 构建,达到每秒 61 个 token。然而,笔记本上的原生 Linux 降至每秒 13.9 个 token,大约慢了五倍。

每个团队 都用 AI 构建。
没有任何东西会丢失。

在 vLLM 运行八个并发客户端时,差距再次显现:WSL 达到每秒 127 个 token,而原生 Linux 达到 39.5。更长的基准测试运行以时间而非吞吐量讲述了同样的故事。Windows 在约 8 分钟内完成,同时将 GPU 保持在接近 2.2 GHz。Linux 花了 37 分钟,GPU 全程停留在约 790 MHz。温度保持在 40 至 47°C 之间,因此这不是热降频问题。GPU 只是不被允许全速运行。

奇怪的是,问题的方向会随电源来源而翻转。拔掉电源时,Linux 在 LM Studio 上达到每秒约 61 至 67 个 token,与 Windows 相当。插上电源后,同样的测试降至每秒约 15 个 token。时钟速度也讲述了同样的故事:负载下拔掉电源时约为 1,800 MHz,连接到墙电时降至约 780 MHz。

为什么给笔记本插上电源会让 Linux 变慢?

原因可以追溯到 Windows 设备管理器中一个名为 Nvidia Platform Controllers and Framework 的组件。这部分固件和驱动逻辑管理 CPU 与 GPU 之间的共享功耗预算,因为笔记本(不同于桌面 DGX Spark)必须在两个芯片之间平衡供电,而不是单独为 GPU 供电。

在 Windows 中禁用该控制器后,降速问题直接复现:每秒 token 数从约 83 降至约 31,时钟频率从约 2 GHz 降至与 Linux 插电时相同的 786 MHz。重新启用该控制器后,速度立即恢复正常。这证实了拖慢 Linux 的是该控制器,而非内核、发行版或 Nvidia GPU 驱动本身。

更深层的问题在于,固件交给该控制器的是一张加密的功耗设置表。Windows 拥有解密它的密钥,Linux 目前没有,测试期间尝试的任何软件修复都无法启用它,其中一次尝试还触发了内核恐慌。从 Windows 驱动中提取解密密钥被提出作为一种理论上的变通方案,但这将是一种脆弱的单机破解,而非广泛适用的方案。真正的修复需要 Nvidia 在其 Linux 驱动中提供等效的电源管理逻辑。

WSL 目前是原生 Linux 的好替代品吗?

对大多数开发者来说,是的,至少目前如此。WSL 运行在 Windows 驱动栈之上,因此无论笔记本插电还是使用电池,它都继承了 Windows 完整的 GPU 加速行为。它还能运行 vLLM 和 SGLang 等 Linux 优先的 AI 工具,而不受原生 Linux 安装所面临的时钟节流问题影响。

唯一需要调整的是内存。WSL 默认仅保留 14GB,对于 128GB 统一内存机器上的大模型工作负载来说不够,因此需要手动增加该分配。完成之后,WSL 的基准测试结果接近原生 Windows 性能,使其成为更实用的选择,直到 Nvidia 直接解决 Linux 驱动的差距。

常见问题

Nvidia RTX Spark 笔记本能否双启动 Windows 和 Linux?

可以。在 MSI Prestige RTX Spark 笔记本上使用 Omarchy 演示了双启动,该 Linux 发行版已包含针对此芯片的 Nvidia 开源内核驱动,而最初尝试 Debian 时需要手动处理驱动和网络变通方案。

为什么这台笔记本插电时 Linux 比 Windows 慢这么多?

开发者有自己的工具。企业有 Remy。

开发者

>

为 API 添加速率限制
● 正在读取 src/server.ts
● 正在编辑 3 个文件

+ import

{ limit }

from

'rate'
- app.use(cors())
✓ 测试通过 · 可提交 PR

企业

贷款审批● 实时

SOC 2基于角色的访问自托管

抵押贷款 · $412,000已批准

小企业 · $85,000已批准

汽车 · $31,500已批准

一个名为 Nvidia Platform Controllers and Framework 的 Windows 专属固件组件负责管理 CPU 与 GPU 之间的功耗分配。由于缺少 Linux 等效组件,笔记本接通电源时 GPU 时钟频率被锁定在约 780 MHz,而 Windows 上约为 2.2 GHz。

拔掉笔记本电源能解决 Linux 性能问题吗?

能显著改善。使用电池供电时,Linux 的 GPU 时钟和 token 吞吐量更接近 Windows 水平。严重降速特别出现在笔记本接通墙电时,这与大多数用户的预期相反。

在 RTX Spark 上,WSL 与运行原生 Linux 是一样的吗?

不完全是,但实际效果很接近。WSL 在 Windows 内核和驱动栈之上运行 Linux 环境,因此它保留了 Windows 的 GPU 时钟加速行为,避免了降频问题,同时仍支持 vLLM 等 Linux 原生 AI 工具。

Nvidia 会修复 RTX Spark 笔记本上的 Linux GPU 性能吗?

这取决于 Nvidia 是否在其 Linux 驱动中提供平台控制器的电源管理逻辑。加密的固件功率表目前只能由 Windows 解密,迄今为止尚未找到任何变通方法能在没有它的情况下恢复 Linux 上的完整时钟速度。

来源:Hacker News · mindstudio.ai