NVIDIA Dory 4B 跑在 llama.cpp 上:每个 loop 都要算账
MarkTechPost 的 Sana Hassan 给出一份 Dory 1.0 4B 的 llama.cpp 实操指南。重点在锁定分支、逐 loop 看计算成本、测内存缓存,再做配对评估。想本地跑循环语言模型,先把这几件事排好。
NVIDIA 的 Dory 1.0 4B 是一类 looped language model。MarkTechPost 上 Sana Hassan 的 coding guide 把运行路径拆成四步:构建锁定版本的 llama.cpp 分支,逐 loop 分析计算成本,测试内存缓存,做配对评估。原文链接:How to Run NVIDIA Dory 4B with llama.cpp: Loop by Loop Guide。
对不熟悉循环模型的读者,先补一个背景。常见的 Transformer 推理按层往前走,每层参数只算一次。looped 模型让同一组计算重复执行若干次,用更多计算换更深的处理。参数量没有跟着变,延迟和显存压力会变。Dory 4B 的 4B 指参数量级,loop 次数决定实际计算量。跑这类模型,只看模型文件大小会误判体验。
这篇指南的价值在流程。第一步锁定 llama.cpp 分支。pinned 的意思是代码版本固定,避免上游更新把实验结果带偏。做复现和评测时,这一步不能省。第二步逐 loop 记录计算成本。每增加一次循环,预填充和解码的耗时、显存占用、吞吐都要单独看。把所有 loop 混在一起报一个总时间,信息量不够。第三步测内存缓存。循环模型的缓存策略影响命中率和内存占用,缓存没配好,loop 加得越多,等待越明显。第四步配对评估。用同一组输入、同一套参数比较不同 loop 设置,才能判断多出来的计算有没有换来质量提升。
如果你准备本地跑 Dory 4B,建议先按原文构建 pinned 分支,再从小 loop 数开始测。记录每次 loop 的耗时和内存曲线,确认缓存行为,最后做配对输出对比。跑通一条命令只算热身,知道每个 loop 花在哪里,才算把模型跑明白。原文有完整操作路径,链接在上面。
发布时间: 2026-11-08 03:22