桃子桃子快讯
返回首页
工具

Qwen3 2-bit 量化在 M5 Max 上跑 350K 上下文:速度与稳定性实测

Reddit 用户在 128GB M5 Max 上以 llama.cpp 驱动 Qwen3.8-Flash-Next 2…

2026.08.30 · 周日4 分钟阅读

一位 Reddit 用户(u/Artistic_Okra7288)在 r/LocalLLaMA 板块发布了一组在 Apple MacBook Pro M5 Max 上运行 Qwen3.8-Flash-Next 2-bit 量化模型的实测数据。整个测试覆盖 100 轮对话、上限约 35 万 token 的上下文槽位,是目前在 Apple Silicon 平台上较为完整的超长上下文本地推理记录之一。

测试环境与模型配置

测试平台为搭载 M5 Max、128GB 统一内存的 MacBook Pro,系统为 macOS 26.5.2。推理框架使用 llama.cpp(b10686 版本),启用 Metal 后端、12 线程、batch 2048、flash-attn、KV-unified 以及 ngram 模推测解码。模型为 Unsloth 发布的 UD-Q2_K_XL 2-bit 量化版,文件大小 78.9 GB。

上下文通过 YaRN 从原生 262,144 扩展到 358,400 token 槽位,KV cache 以 fp16 保存。权重与完整的 350K KV 总占用低于 macOS 默认 96GB GPU wired limit,无需额外 sysctl 修改。

长上下文实测:100 轮、两个会话

测试在一个上下文槽位内连续进行 100 轮,分两个会话。

  • 会话一:在前缀复用下从 0 增长到约 48K 上下文;空闲约 20 分钟后,槽位仅保留 5.5K 系统前缀,下一轮冷启动 Prefill 整段 105K prompt,耗时 333 秒,为整次测试最长 Prefill。
  • 上下文随后继续增长至 169,425 token,为本次实测最深的实际位置;350K 仅是槽位容量,并未填满。
  • 会话二:从零开始增长到约 125K token 后停止采集。

Prefill 与 Decode 速度表现

测试以散点图呈现,未做任何平滑或拟合,纵轴为对数刻度(覆盖约两个数量级),横轴为各次测量发生的槽位上下文长度。绿色为 Prefill,红色为 Decode;圆点为过程中采样,方块为每轮最终值。

  • 冷启动 Prefill(绿色上沿):5.6K 处为 1,561 t/s,随 KV 填满逐步下降至 111K 处的 318 t/s。
  • 常规轮次 Prefill(绿色下沿):依赖前缀复用,每轮只 Prefill 增量 token,范围在 77–854 t/s,最远覆盖到 169K 上下文。
  • Decode(红色):呈现一条清晰的衰减曲线——小上下文下约 30–35 t/s,45K 处约 21 t/s,100–125K 处 13–15 t/s,169K 处降至 11.5 t/s。140K 附近出现的 7.7 t/s 谷值被归因于 macOS 低电量模式开启。

需要注意:Decode 数值开启了 ngram 模推测解码,draft 接受率在 0–81% 之间波动,因此并非模型基线速度。整体上,依赖前缀复用时单轮 Prefill 仅需数秒,5.5 分钟级 Prefill 仅在空闲后冷启动出现一次,Decode 在 169K 之前保持可交互。

长尾稳定性观察

在前约 100K 上下文内,模型表现稳定;超过该深度后,用户观察到模型开始混淆用户消息与自身历史输出(角色错乱),且随使用时间推移加重。作者排查后排除 KV 量化和 RoPE 外推(最差轮次远低于原生 262K),剩余嫌疑指向 2-bit 量化本身以及预览版模型在长上下文下的质量衰减。

对于计划在本地硬件上做超长上下文推理的用户,这组数据提供了较具体的 Prefill/Decode 拐点与潜在的稳定性边界参考,但单机型、单模型、单一量化方案的结论仍需更多样本验证。

信源