Agents-A1-bf16性能实测:M5 Max芯片上6种精度模式的速度与内存对比
Agents-A1-bf16性能实测:M5 Max芯片上6种精度模式的速度与内存对比
【免费下载链接】Agents-A1-bf16 项目地址: https://ai.gitcode.com/hf_mirrors/mlx-community/Agents-A1-bf16
Agents-A1-bf16是基于MLX框架的视觉语言代理模型,专为高效处理多模态任务设计。本文将在MacBook Pro M5 Max 128GB 40 GPU环境下,对bf16、8-bit、6-bit、5-bit、4-bit和3-bit六种精度模式进行全面性能测试,帮助用户选择最适合的部署方案。
测试环境与方法
测试采用oMLX基准测试工具,在MacBook Pro M5 Max 128GB 40 GPU上进行。主要测试指标包括:
- 解码速度(tok/s):生成128 tokens的速度
- 峰值内存占用(GB):不同上下文长度下的内存使用情况
- 冷启动预填充时间(TTFT):首次处理请求的延迟
测试覆盖从1k到131k的多种上下文长度,并包含单请求和连续批处理两种场景。
单请求性能对比(batch=1)
在单请求场景下,不同精度模式的解码速度表现如下:
| 上下文长度 | bf16 | 8-bit | 6-bit | 5-bit | 4-bit | 3-bit |
|---|---|---|---|---|---|---|
| 1,024 | 67.6 | 95.4 | 95.2 | 98.2 | 117.4 | 133.0 |
| 4,096 | 67.6 | 94.0 | 97.3 | 102.8 | 119.5 | 130.4 |
| 8,192 | 66.8 | 91.7 | 95.3 | 103.1 | 115.7 | 126.9 |
| 16,384 | 64.7 | 88.0 | 91.5 | 80.5 | 105.8 | 119.8 |
| 32,768 | 60.9 | 80.6 | 88.6 | 80.2 | 95.6 | 104.2 |
| 65,536 | 53.5 | 68.4 | 67.6 | 66.6 | 75.4 | 83.5 |
| 131,072 | 40.7 | 48.7 | 50.9 | 48.2 | 50.3 | 52.5 |
关键发现:
- 低精度模式(3-bit、4-bit)在所有上下文长度下均表现出最快的解码速度
- 随着上下文长度增加,所有精度模式的速度均有下降,但低精度模式下降幅度较小
- 5-bit模式在16k以上上下文时出现性能波动,可能与内存管理策略有关
内存占用对比
不同精度模式的峰值内存占用(GB)差异显著:
| 精度模式 | 峰值RAM(GB) | 磁盘大小 |
|---|---|---|
| bf16 | 66–69 | ~65 GB |
| 8-bit | 35–39 | ~35 GB |
| 6-bit | 27–31 | ~27 GB |
| 5-bit | 23–26 | ~23 GB |
| 4-bit | 19–22 | ~19 GB |
| 3-bit | 15–18 | ~15 GB |
3-bit模式相比bf16可节省约75%的内存空间,使模型能够在资源受限的设备上运行。而磁盘存储需求也随精度降低呈线性减少,便于模型的分发和部署。
连续批处理性能
在1k上下文长度下的连续批处理测试中,各精度模式的聚合解码速度(tok/s)如下:
| 批处理大小 | bf16 | 8-bit | 6-bit | 5-bit | 4-bit | 3-bit |
|---|---|---|---|---|---|---|
| 1 | 67.6 | 95.4 | 95.2 | 98.2 | 117.4 | 133.0 |
| 2 | 62.5 | 151.0 | 156.5 | 160.6 | 190.9 | 188.7 |
| 4 | 107.1 | 202.0 | 185.1 | 195.7 | 239.9 | 230.2 |
| 8 | 129.6 | 252.4 | 223.4 | 238.7 | 289.0 | 276.1 |
批处理性能特点:
- 8-bit和4-bit模式在批处理场景下表现最佳,8批时分别达到252.4和289.0 tok/s
- bf16模式在批处理规模增加时性能提升最为显著(从1批67.6到8批129.6 tok/s)
- 3-bit模式在批处理大小超过2时性能增长放缓,可能受计算效率限制
冷启动预填充时间
冷启动预填充时间(TTFT)在不同上下文长度下的表现:
- 1k上下文:约0.3秒
- 8k上下文:约3秒
- 32k上下文:约21秒
- 64k上下文:约63秒
- 128k上下文:约225秒
值得注意的是,预填充时间与精度模式关系不大,主要受上下文长度影响,属于计算密集型操作。
精度模式选择建议
根据测试结果,不同场景下的最佳精度选择:
性能优先场景 🚀
- 推荐4-bit:在速度和内存占用间取得最佳平衡,适合大多数实时应用
- 备选3-bit:内存最紧张时使用,牺牲少量性能换取最大内存节省
质量优先场景 🎯
- 推荐bf16:完整精度,适合对输出质量要求极高的任务
- 备选8-bit:在质量损失最小的前提下提供较好的性能提升
资源受限设备 📱
- 推荐5-bit或6-bit:在低端设备上提供可接受的性能和质量平衡
快速开始指南
要在您的M5 Max设备上测试Agents-A1-bf16,请按照以下步骤操作:
- 克隆仓库:
git clone https://gitcode.com/hf_mirrors/mlx-community/Agents-A1-bf16
- 安装依赖:
pip install mlx-vlm
- 运行基本测试:
python -m mlx_vlm.generate --model mlx-community/Agents-A1-bf16 \
--prompt "What is 17 * 24? Think step by step." --max-tokens 512
- 测试不同精度模式,只需替换模型仓库名称:
# 例如测试4-bit模式
python -m mlx_vlm.generate --model mlx-community/Agents-A1-4bit \
--prompt "Describe this image." --image img.jpg
总结
Agents-A1-bf16在M5 Max芯片上展现出优异的性能表现,通过选择合适的精度模式,可以在速度、内存占用和输出质量之间取得理想平衡。对于大多数用户,4-bit模式提供了最佳的性价比,而在资源受限的环境下,3-bit模式能够实现惊人的内存节省。随着MLX框架的不断优化,这些性能指标还有进一步提升的空间。
无论您是开发实时视觉语言应用,还是进行大规模批处理任务,Agents-A1系列模型都能为您提供灵活高效的解决方案。
【免费下载链接】Agents-A1-bf16 项目地址: https://ai.gitcode.com/hf_mirrors/mlx-community/Agents-A1-bf16
更多推荐



所有评论(0)