NVIDIA DGX Spark 与 Mac Studio 与 RTX-4080:Ollama 性能对比

GPT-OSS 120b 在三个 AI 平台上的基准测试

目录

我找到了一些关于GPT-OSS 120b在三个不同平台上运行的性能测试结果:NVIDIA DGX Spark、Mac Studio和RTX 4080。Ollama库中的GPT-OSS 120b模型大小为65GB,这意味着它无法装入RTX 4080(或更新的RTX 5080的16GB显存中。

是的,该模型可以通过部分卸载到CPU来运行,如果你有64GB的系统内存(就像我一样),你可以尝试一下。然而,这种设置的性能远不能达到生产就绪的水平。对于真正苛刻的工作负载,你可能需要像NVIDIA DGX Spark这样的设备,它专门设计用于高容量AI工作负载。

7 llamas

我原本预计这个LLM在像DGX Spark这样的“高内存AI设备”上运行时会有显著的性能提升。虽然结果不错,但与DGX Spark和更经济实惠选项之间的价格差异相比,提升并不如预期那样显著。

TL;DR

Ollama运行GPT-OSS 120b在三个平台上的性能比较:

设备 提示评估性能(token/s) 生成性能(token/s) 备注
NVIDIA DGX Spark 1159 41 整体性能最佳,完全GPU加速
Mac Studio 未知 34 → 6 一项测试显示随着上下文大小增加性能下降
RTX 4080 969 12.45 由于显存限制,78% CPU / 22% GPU 分配

模型规格:

  • 模型:GPT-OSS 120b
  • 参数:117B(专家混合架构)
  • 每次通过的活动参数:5.1B
  • 量化:MXFP4
  • 模型大小:65GB

这与其它MoE模型如Qwen3:30b的架构类似,但规模要大得多。

GPT-OSS 120b在NVIDIA DGX Spark上的表现

NVIDIA DGX Spark的LLM性能数据来自Ollama官方博客文章(在下面的“有用链接”部分中链接)。DGX Spark代表NVIDIA进入个人AI超级计算机市场的尝试,它具有128GB的统一内存,专门设计用于运行大型语言模型。

ollama on dgx spark performance table

GPT-OSS 120b的生成性能看起来令人印象深刻,达到41 tokens/s。这使它在这个特定模型中成为明显的赢家,表明额外的内存容量对极大型模型确实有实际影响。

然而,中等至大型LLM的性能并不那么有吸引力。这一点在Qwen3:32b和Llama3.1:70b模型上尤为明显——正是这些模型你期望高内存容量能发挥优势的地方。这些模型在DGX Spark上的性能与价格溢价相比并不令人鼓舞。如果你主要使用30-70B参数范围的模型,你可能需要考虑像配置良好的工作站这样的替代方案,甚至考虑使用带有48GB显存的Quadro RTX 5880 Ada

GPT-OSS 120b在Mac Studio Max上的表现

YouTube频道Slinging Bits对使用Ollama运行GPT-OSS 120b进行了全面测试,使用不同的上下文大小。结果揭示了一个显著的性能问题:随着上下文大小的增加,模型的生成速度从34 tokens/s急剧下降到仅6 tokens/s。

这种性能下降可能是由于内存压力和macOS如何管理统一内存架构。虽然Mac Studio Max具有令人印象深刻的统一内存(在M2 Ultra配置中高达192GB),但其在不断增加的上下文负载下处理非常大模型的方式与专用GPU显存有显著不同。

ollama with gpt-oss 120b on mac studio

“ollama-gpt-oss-120b-on-mac-studio-summary”

对于需要在不同上下文长度下保持一致性能的应用,这使得Mac Studio对于GPT-OSS 120b来说不太理想,尽管它在AI工作负载方面有其他出色的性能。你可能会在使用较小模型时有更好的体验,或者考虑使用Ollama的并行请求处理功能以最大化生产场景中的吞吐量。

GPT-OSS 120b在RTX 4080上的表现

我最初认为在个人电脑上使用Ollama运行GPT-OSS 120b不会特别令人兴奋,但结果却让我感到意外。当我用这个查询测试它时,发生了以下情况:

$ ollama run gpt-oss:120b --verbose Compare the weather in state capitals of Australia


Thinking...
We need to compare weather in state capitals of Australia. Provide a comparison, perhaps include 
...
*All data accessed September 2024; any updates from the BOM after that date may slightly adjust the 
numbers, but the broad patterns remain unchanged.*


total duration:       4m39.942105769s
load duration:        75.843974ms
prompt eval count:    75 token(s)
prompt eval duration: 77.341981ms
prompt eval rate:     969.72 tokens/s
eval count:           3483 token(s)
eval duration:        4m39.788119563s
eval rate:            12.45 tokens/s

有趣的是,Ollama与这个LLM一起运行时主要在CPU上!模型根本无法装入16GB显存,因此Ollama智能地将大部分内容卸载到系统内存中。你可以使用ollama ps命令查看这种行为:

$ ollama ps

NAME            ID              SIZE     PROCESSOR          CONTEXT 
gpt-oss:120b    a951a23b46a1    65 GB    78%/22% CPU/GPU    4096

尽管运行时有78% CPU / 22% GPU的分配,RTX 4080对于这个规模的模型仍能提供令人满意的性能。提示评估速度非常快,达到969 tokens/s,即使生成速度为12.45 tokens/s,对于许多应用来说也是可用的。

这尤其令人印象深刻,考虑到以下几点:

  1. 模型的大小几乎是可用显存的4倍
  2. 大部分计算发生在CPU上(这得益于我拥有的64GB系统内存)
  3. 了解Ollama如何使用CPU核心可以帮助进一步优化此设置

谁能想到,一款消费级GPU竟然能够处理一个117B参数的模型,更不用说还能提供可用的性能?这展示了Ollama智能内存管理的强大之处,以及拥有足够系统内存的重要性。如果你有兴趣将Ollama集成到你的应用中,请查看这篇关于使用Ollama与Python的指南。

注意:虽然这适用于实验和测试,但你会发现GPT-OSS可能会有一些问题,尤其是在结构化输出格式方面。

主要来源

相关阅读

硬件比较与价格

Ollama指南与性能

模型比较