深入 DwarfStar Metal 后端整模型 Metal 图推理如何做到极致性能【免费下载链接】ds4DeepSeek 4 Flash and PRO local inference engine for Metal, CUDA and ROCm项目地址: https://gitcode.com/GitHub_Trending/ds4/ds4DwarfStards4是一个面向DeepSeek V4 Flash / PRO与 GLM 5.2 的本地推理引擎专为 Metal、CUDA 和 ROCm 三大后端设计。其中Metal 是它的第一优先级目标通过整模型 Metal 图推理架构在 128 GB 的 MacBook Pro M3 Max 上实现 26 tokens/s 的生成速度、463 t/s 的长上下文 prefill。本文将带你拆解它的 Metal 后端是如何做到极致性能的。一、为什么是整模型图而不是逐层调度 大多数推理框架的 Metal 路径是逐算子调度CPU 端一个接一个地把 attention、MoE、norm 等算子提交给 GPU每个算子都有启动开销和同步点。DwarfStar 的设计哲学完全不同官方开发笔记 AGENT.md 中明确写道Keep the production path as whole-model Metal graph inference. 保持生产路径为整模型 Metal 图推理。这意味着整张模型计算图被固化在一个 Metal 运行时里每个 token 只提交一次批量化的 GPU 工作CPU 几乎不参与逐层调度。这个设计带来了三个直接收益零逐层启动开销一个 token 内所有层的计算都在同一条命令流中连续执行显存完全驻留模型权重通过 mmap 直接映射为 GPU 可寻址内存启动时不做整文件拷贝首 token 延迟极低为 SSD 流式铺路图结构与权重重排是解耦的路由专家可以整体换到磁盘缓存中按需加载。Metal 运行时主体是 ds4_metal.m约 4 万行 Objective-C它负责命令队列、管线状态、批次编码和读回同步全部计算核函数集中在 metal/ 目录下共 19 个.metal文件。二、kernel 全家桶DeepSeek V4 的每个部件都有专属加速 Metal 后端不是一个通用 runner而是针对 DeepSeek V4 / GLM 5.2 的结构量身定做。每个核心部件都有专门调优的 kernelKernel 文件职责metal/moe.metal路由 MoE 矩阵运算支持 IQ2_XXS / Q2_K / Q4_K / MXFP4 量化metal/dense.metal稠密权重注意力、共享专家、投影矩阵运算metal/flash_attn.metalFlash 注意力 kernelmetal/dsv4_hc.metalDeepSeek V4 特有的 HC 压缩/扩展路径metal/dsv4_kv.metal压缩 KV cache 的读改写metal/dsv4_rope.metal位置编码metal/norm.metal、metal/softmax.metal归一化与 softmax 等基础算子以 metal/moe.metal 为例8000 多行路由专家占了模型体积的大头DwarfStar 只对这部分做激进的 2-bit 量化up/gate 用IQ2_XXSdown 用Q2_K其余部分共享专家、投影、路由保持高精度。kernel 里内置了 256 项 IQ2_XXS 查表网格和 MXFP4 查找表把 2-bit 权重的解码直接做成 GPU 上的表查找配合pair swiglu 融合的复合 kernel一个 kernel 内完成双矩阵乘加和激活大幅减少中间数据的显存读写。这种专用换性能的策略是整模型图推理成立的前提——通用图编译器无法为每种量化格式做这种深度融合。三、性能实测M 系 Mac 上的真实数字 以下是官方 README.md 中记录的 Metal CLI 单跑数据32K 上下文、贪心解码机器量化场景Prefill生成MacBook Pro M3 Max, 128 GBq2短提示58.52 t/s26.68 t/sMacBook Pro M5 Max, 128 GBq211707 tokens463.44 t/s25.90 t/sMac Studio M3 Ultra, 512 GBq211709 tokens468.03 t/s27.39 t/sMac Studio M3 Ultra, 512 GBPRO q232768 tokens138.82 t/s9.56 t/s对消费级笔记本来说26~37 tokens/s 的生成速度意味着 DeepSeek 级别的模型第一次在个人机器上达到了可用即流畅的交互体验。基准数据的生成工具和图表见 speed-bench/README.md。四、内存不够怎么办SSD 流式兜底 ⚡整模型 Metal 图追求权重全驻留但 DwarfStar 还内置了SSD streaming模式非路由权重保持驻留路由专家放入内存缓存缓存未命中时从本地 GGUF 文件直接加载并利用当前层推理的时间窗口去预取下一批专家把磁盘延迟藏进计算里。64 GB 的 MacBook 一条命令即可跑起 2-bit Flash./download_model.sh q2-imatrix ./ds4 -m ./ds4flash.gguf --ssd-streaming --ctx 32768 --nothink这也是专用引擎思路的体现由于它精确知道哪些张量是路由专家、哪些必须驻留才能做这种细粒度的内存策略通用推理框架很难照搬。五、快速上手三步开始 Metal 推理 第一步获取代码与模型git clone https://gitcode.com/GitHub_Trending/ds4/ds4 cd ds4 ./download_model.sh q2-imatrix # 96/128 GB 内存机器推荐第二步编译macOS 上make默认就是 Metal 构建make第三步运行./ds4 -m ./ds4flash.gguf --nothink完整的命令行选项可以通过./ds4 --help查看模型下载脚本 download_model.sh 支持 q2 / q4 / mxfp4 / PRO 等多种规格也支持双机张量并行与流水线并行的分布式运行。总结专用化是性能的源泉 DwarfStar Metal 后端的极致性能来自三个关键选择的叠加整模型 Metal 图推理——消灭逐层调度开销一次提交跑完一个 token 的全部计算为特定模型深度定制 kernel——2-bit MoE 查表解码、swiglu 融合、压缩 KV 读写都是通用框架给不了的优化mmap 驻留 SSD 流式双模式——内存够时全速跑内存不够时优雅降级而不是跑不起来。如果你想在自己的 M 系 Mac 上跑 DeepSeek V4 Flash这个项目值得放进你的工具箱——源码简洁、路径单一、性能强悍是小而快推理引擎的典范之作。【免费下载链接】ds4DeepSeek 4 Flash and PRO local inference engine for Metal, CUDA and ROCm项目地址: https://gitcode.com/GitHub_Trending/ds4/ds4创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考