跑个模型测试一下
01 ltzc
-
【直播】4卡R9700从采购到调试 -
Mac生态跑文生图视频以有可能了吗?M5 Max 40GPU 64G -
Mac生态跑文生图视频以有可能了吗?M5 Max 40GPU 64G -
Mac M2 Max测试本地模型Qwen3.8-27B-4bit、Qwen3.8-27B-Uncensored-oQ4e-mtp模型在 oMLX(Mac M2 Max 环境) 横向深度对比32 GB 统一内存:─► 追求多任务/高并发/流畅度 ──► Qwen3.8-27B-4bit. 高并发吞吐极佳 (~62 tok/s)
─► 追求代码质量/无规则限制 ──► Qwen3.8-27B-Uncensored-oQ4e-mtp
64 GB / 96 GB 统一内存:Qwen3.8-27B-4bit/6bit -
Mac M2 Max测试本地模型Qwen3.8-27B-4bit、Qwen3.8-27B-Uncensored-oQ4e-mtp模型在 oMLX(Mac M2 Max 环境) 横向深度对比Mac M2 Max 本地模型横向深度对比:Qwen3.8-27B-4bit vs. Qwen3.8-27B-Uncensored-oQ4e-mtp
测试环境:oMLX(Mac M2 Max)
oMLX 项目:LLM inference, optimized for your Mac
GitHub:https://github.com/jundot/omlx
Engine:Auto
Context:代码(Python)
一、Benchmark 模型:Qwen3.8-27B-4bit
1.1 Single Request Results
Test TTFT(ms) TPOT(ms) pp TPS tg TPS E2E(s) Throughput Peak Mem pp1024/tg128 9048.7 50.86 113.2 tok/s 19.8 tok/s 15.531 74.2 tok/s 15.85 GB pp4096/tg128 34039.8 52.03 120.3 tok/s 19.4 tok/s 40.670 103.9 tok/s 17.10 GB 1.2 Continuous Batching
预处理 1024 / 生成 128
Batch tg TPS Speedup pp TPS pp TPS/req TTFT(ms) E2E(s) 1x 19.8 tok/s 1.00x 113.2 tok/s 113.2 tok/s 9048.7 15.531 2x 33.6 tok/s 1.70x 90.6 tok/s 45.3 tok/s 17273.3 30.233 4x 62.8 tok/s 3.17x 78.3 tok/s 19.6 tok/s 31000.7 60.467
二、Benchmark 模型:Qwen3.8-27B-Uncensored-oQ4e-mtp
2.1 Single Request Results
Test TTFT(ms) TPOT(ms) pp TPS tg TPS E2E(s) Throughput Peak Mem pp1024/tg128 8955.1 50.04 114.3 tok/s 20.1 tok/s 15.330 75.1 tok/s 22.34 GB pp4096/tg128 33851.1 57.56 121.0 tok/s 17.5 tok/s 41.180 102.6 tok/s 23.70 GB 2.2 Continuous Batching
预处理 1024 / 生成 128
Batch tg TPS Speedup pp TPS pp TPS/req TTFT(ms) E2E(s) 1x 20.1 tok/s 1.00x 114.3 tok/s 114.3 tok/s 8955.1 15.330 2x 28.8 tok/s 1.43x 91.5 tok/s 45.8 tok/s 16951.1 31.272 4x 47.3 tok/s 2.35x 81.3 tok/s 20.3 tok/s 30249.7 61.207
三、数据深度分析
3.1 关键指标对比(oQ4e-mtp vs. 常规 4bit)
指标 常规 4bit 模型 oQ4e-mtp 模型 变化分析 内存峰值 (Peak Mem) 15.85 - 17.10 GB 22.34 - 23.70 GB 大增约 6.5 GB(+38%),接近纯 6-bit 的开销 单生成速度 (tg TPS) 19.8 tok/s 20.1 tok/s(pp1024)<br>17.5 tok/s(pp4096) 基础生成速度相当,但在长上下文下略有所衰减 Prefill 吞吐量 (pp TPS) 113.2 ~ 120.3 tok/s 114.3 ~ 121.0 tok/s 首字响应(TTFT)性能几乎完全一致 Continuous Batching (4x) 62.8 tok/s(3.17x) 47.3 tok/s(2.35x) 并发性能明显下降(-25%) 3.2 性能与技术细节拆解
为什么内存增加到了 22.34 - 23.70 GB?
- oQ4e 混合精度量化:它不是普通的均匀 4-bit 量化,而是通过 importance-matrix(重要性矩阵 calibration)对关键层/注意力层提高了精度(提升至 5-bit 或 fp16),因此实际权重体积接近 6-bit 量化。
- MTP(Multi-Token Prediction / 投机/多 Token 预测模块):附加了 MTP 预测头,这需要额外的显存空间用于加载加速权重和维持额外的 KV Cache。
为什么单生成速度没有大幅提升?
- MTP 本质是通过 Speculative Decoding(投机采样) 以计算换速度。
- 但在 M2 Max(显存带宽约 300-400 GB/s) 这种带宽受限设备上,当权重增长到 22GB+ 时,内存带宽瓶颈冲淡了 MTP 带来的并行收益。
- 长上下文(pp4096)下生成速度降至 17.5 tok/s,也是因为更高的显存占用导致 Cache 访问开销变大。
为什么多并发(Continuous Batching)性能下降严重?
- 从 4x 批处理来看,常规 4bit 可以达到 62.8 tok/s,而本模型降到了 47.3 tok/s。
- 这是由于 MTP 模块和更高权重的模型在多 Request 并发时抢占显存带宽与 GPU 计算单元更剧烈,造成 Batching 的并行加速效率下降。
四、结论摘要
维度 结论 首字延迟 / Prefill 两者几乎一致,oQ4e-mtp 无明显优势 单请求生成速度 短上下文基本持平;长上下文 oQ4e-mtp 略降 显存占用 oQ4e-mtp 显著更高(+38%),接近 6-bit 开销 并发吞吐 oQ4e-mtp 明显落后(4x 时 -25%) 适用场景 常规 4bit 更适合 M2 Max 带宽受限环境下的高并发/长上下文推理;oQ4e-mtp 在精度敏感、并发需求低的场景可能更有价值 -
Mac生态跑文生图视频以有可能了吗?M5 Max 40GPU 64GMac M2 Max测试本地模型Qwen3.8-27B-4bit、Qwen3.8-27B-Uncensored-oQ4e-mtp模型在 oMLX(Mac M2 Max 环境) 下的横向深度对比:oMLX - LLM inference, optimized for your Mac
https://github.com/jundot/omlx
Benchmark Model: Qwen3.8-27B-4bit
Engine: Auto
Context: 代码(Python)
================================================================================
Single Request Results
Test TTFT(ms) TPOT(ms) pp TPS tg TPS E2E(s) Throughput Peak Mem
pp1024/tg128 9048.7 50.86 113.2 tok/s 19.8 tok/s 15.531 74.2 tok/s 15.85 GB
pp4096/tg128 34039.8 52.03 120.3 tok/s 19.4 tok/s 40.670 103.9 tok/s 17.10 GB
Continuous Batching
预处理1024 / 生成128
Batch tg TPS Speedup pp TPS pp TPS/req TTFT(ms) E2E(s)
1x 19.8 tok/s 1.00x 113.2 tok/s 113.2 tok/s 9048.7 15.531
2x 33.6 tok/s 1.70x 90.6 tok/s 45.3 tok/s 17273.3 30.233
4x 62.8 tok/s 3.17x 78.3 tok/s 19.6 tok/s 31000.7 60.467
oMLX - LLM inference, optimized for your Mac
https://github.com/jundot/omlx
Benchmark Model: Qwen3.8-27B-Uncensored-oQ4e-mtp
Engine: Auto
Context: 代码(Python)Single Request Results
Test TTFT(ms) TPOT(ms) pp TPS tg TPS E2E(s) Throughput Peak Mem
pp1024/tg128 8955.1 50.04 114.3 tok/s 20.1 tok/s 15.330 75.1 tok/s 22.34 GB
pp4096/tg128 33851.1 57.56 121.0 tok/s 17.5 tok/s 41.180 102.6 tok/s 23.70 GBContinuous Batching
预处理1024 / 生成128Batch tg TPS Speedup pp TPS pp TPS/req TTFT(ms) E2E(s)
1x 20.1 tok/s 1.00x 114.3 tok/s 114.3 tok/s 8955.1 15.330
2x 28.8 tok/s 1.43x 91.5 tok/s 45.8 tok/s 16951.1 31.272
4x 47.3 tok/s 2.35x 81.3 tok/s 20.3 tok/s 30249.7 61.207
数据深度分析如下:一、 关键指标对比(oQ4e-mtp vs. 常规 4bit)指标常规 4bit 模型oQ4e-mtp 模型变化分析内存峰值 (Peak Mem)15.85 - 17.10 GB22.34 - 23.70 GB大增约 6.5 GB (+38%),接近纯 6-bit 的开销单生成速度 (tg TPS)19.8 tok/s20.1 tok/s (pp1024)17.5 tok/s (pp4096)基础生成速度相当,但在长上下文下略有所衰减Prefill 吞吐量 (pp TPS)113.2 ~ 120.3 tok/s114.3 ~ 121.0 tok/s首字响应(TTFT)性能几乎完全一致Continuous Batching (4x)62.8 tok/s (3.17x)47.3 tok/s (2.35x)并发性能明显下降 (-25%)二、 性能与技术细节拆解为什么内存增加到了 22.34 - 23.70 GB?oQ4e 混合精度量化:它不是普通的均匀 4-bit 量化,而是通过 importance-matrix(重要性矩阵 calibration)对关键层/注意力层提高了精度(提升至 5-bit 或 fp16),因此实际权重体积接近 6-bit 量化。 MTP (Multi-Token Prediction / 投机/多Token预测模块):附加了 MTP 预测头,这需要额外的显存空间用于加载加速权重和维持额外的 KV Cache。 为什么单生成速度没有大幅提升?MTP 本质是通过 Speculative Decoding(投机采样)以计算换速度。但在 M2 Max(显存带宽约 300-400 GB/s) 这种带宽受限设备上,当权重增长到 22GB+ 时,内存带宽瓶颈冲淡了 MTP 带来的并行收益。长上下文(pp4096)下生成速度降至 17.5 tok/s,也是因为更高的显存占用导致 Cache 访问开销变大。为什么多并发 (Continuous Batching) 性能下降严重?从 4x 批处理来看,常规 4bit 可以达到 62.8 tok/s,而本模型降到了 47.3 tok/s。这是由于 MTP 模块和更高权重的模型在多 Request 并发时抢占显存带宽与 GPU 计算单元更剧烈,造成 Batching 的并行加速效率下降。
