16G 内存的 Mac 能跑多大的本地大模型?实测结果跟直觉相反

fubaba AI工具评论31阅读模式
摘要

128G 的 Mac 硬卡成 16G 实测四档模型:装不下的 30B MoE 反而比装得下的 14B 快一倍;上下文默认被砍到 4000,手动开 32k 几乎无损。

先说结论:16G 的 Mac,最该跑的模型恰恰是它"装不下"的那个。

我把一台 128G 的 Mac 用一行命令硬卡成 16G 显存,从头实测了一遍主流尺寸的本地大模型。方法先诚实说明:CPU 和内存带宽还是大机器的,速度数字对真 16G 偏乐观;但装不装得下、上下文剩多少,是显存说了算,这两条结论可以直接搬。

装得下的三档

  • 4B(约 3G):每秒 55 个字,飞快
  • 8B(约 5.5G):每秒 32 个字,日常够用
  • 14B(约 9.4G):每秒 17 个字。16G 机器满打满算能给 10.9G,只剩 1.5G 余量——能跑,但顶到天花板了

到这儿都符合直觉:越大越慢,装不下就别想。

反转:装不下的 30B,反而快一倍

30B 的混合专家模型(MoE)要 17.8G,16G 根本装不下。但 Ollama 没报错——它把一半塞进显存,另一半甩给 CPU 内存。

结果:每秒 34 个字,比塞得进显存的 14B 快了整整一倍。

我第一反应不是高兴,是怀疑:会不会掉到 CPU 上本来就没什么损失?于是把显存卡得更低,逼两个模型都往 CPU 上掉再比一次——14B 六成掉出去,从 17 掉到 11.7;30B 被逼到只剩两成还在显存里,仍然跑出 28.7。

而且 MoE 掉得其实更狠(只保留五成速度,稠密模型还能保留六成六)。所以差别根本不在掉不掉 CPU,而在名字后面那个小尾巴:a3b。它揣着 300 亿参数,每次只叫醒 30 亿干活,底子就比 14B 快三倍。折扣再狠,也盖不过倍数。

比速度更容易被忽略的一刀:上下文

同一个 4B 小模型,在 128G 机器上 Ollama 给 26 万上下文,在 16G 机器上直接砍到 4000——砍掉九成八,不报错,不提示。

好消息:4000 不是硬上限,只是保守默认值。我在 16G 档手动把上下文开到 32k,占用从 5.5G 涨到 9.5G,全部还在显存里,速度几乎无损(31.5 → 30.7)。

16G 的 Mac 拿到手,第一件该做的事就是自己把 num_ctx 调上去。你不动它,就只有 4000。

那 32G 买到了什么?

8B 没差别,14B 也没差别。唯一变了的是 30B MoE:从每秒 34 个字涨到 55 个字,快了六成——因为 32G 是唯一能让它全量进显存的档位。就这一条。你要是不打算跑它,多出来的 16G 一分都用不上。

行动清单

  1. 16G Mac 日常问答:直接用 8B,别纠结
  2. 想要更聪明:上 30B MoE(如 qwen3-30b-a3b),别管它装不装得下
  3. 装好第一件事:手动把上下文从默认 4000 调到 32k
  4. 选型只盯两个数:激活参数(决定速度)和你需要的上下文长度(决定显存),不是总参数

完整实测过程做成了 4 分钟视频(含对照实验和翻车过程):https://youtu.be/uDGG-rAlLuM


相关文章

更多真机实测视频,见 YouTube 频道「富爸爸大妙招」

文章末尾固定信息
weinxin
我的微信
微信扫一扫
fubaba
  • 本文由 发表于 2026年7月29日 11:07:57
  • 转载请务必保留本文链接:https://www.fubaba.org/40.html
评论  0  访客  0
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: