资讯详情

资讯详情

跑分榜:Ollama 开 16 槽,5090D 比只开 1 槽还慢

跑分榜Ollama 开 16 槽5090D 比只开 1 槽还慢摘要峰值在 4 槽180.92 tok/s。开到 16 槽只剩 55.71 —— 比单槽的 61.25 还低 9%。本文为本地实测记录含完整命令与原始数据可按步骤复现。这周的跑分榜只有一个主角Ollama 的OLLAMA_NUM_PARALLEL。我拿同一个模型qwen2.5:14bQ4_K_Mctx 8192在 5090D 上把槽位从 1 一路开到 16每档都重启一次 serve 再发满并发请求三轮取中位。结果不是「越大越好」是一条先涨后塌的曲线61.25→97.33→180.92→158.82→55.71(tok/s)1槽2槽4槽8槽16槽峰值在 4 槽180.92 tok/s。开到 16 槽只剩 55.71 —— 比单槽的 61.25 还低 9%。我给这张图起了个名字花钱买回来的负收益。同一轮我在 5060Ti 16GB 上跑了同一套流程峰值出现在2 槽16.63 tok/s开 4 槽变成 16.22也是往下掉。两张卡的吞吐峰值差了10.9 倍180.92 ÷ 16.63但峰值出现的位置也不一样。这一篇就把这条曲线摊开讲清楚它为什么长这样以及你手上那张卡该配几槽。① 本周跑分榜一栏槽位先涨后塌先上表。同一个模型、同一个上下文长度、同一套发请求逻辑每档独立重启一次 serveOLLAMA_NUM_PARALLEL只在进程启动时读一次进程内切档不生效——这条我上一轮踩过每档丢弃首轮预热三轮取中位。RTX 5090D 32GBqwen2.5:14b Q4_K_M / ctx 8192 / 每请求 128 token / Ollama 0.40.4槽位聚合吞吐相对单槽总显存KV 落 CPU 的部分161.25 tok/s1.00×13502 MiB0297.33 tok/s1.59×15042 MiB04180.92 tok/s2.95×18119 MiB08158.82 tok/s2.59×24962 MiB01655.71 tok/s0.91×31887 MiB2560 MiBRTX 5060Ti 16GB同模型同上下文 / Ollama 0.40.3 / 桌面环境已占约 9.2 GiB槽位聚合吞吐相对单槽总显存111.43 tok/s1.00×15945 MiB216.63 tok/s1.45×—416.22 tok/s0.98×15919 MiB两件事同时成立32G 卡巅峰在 4 槽16G 卡巅峰在 2 槽。换句话说「Ollama 建议开几个槽」这件事没有通用答案它随显存容量移动。顺便放本期最扎眼的一组两张卡的并发峰值差10.9 倍180.92 ÷ 16.63。这是本周跑分库里唯一一个两位数倍差。② 数字背后两段曲线两个不同的机制这条曲线不能用一个原因解释完。我把 5 个档的显存和 KV 逐档拆开后发现它是两段拼接的。4 槽之前真收益而且效率高得合理。四个槽换来 2.95 倍吞吐效率 73.8%。此时总显存 18119 MiB全程没有任何卸载——这是「完全不溢出」的最后一档也正好是吞吐最高的一档。这一段没什么可挑的。4 槽到 8 槽没有任何溢出还是掉了 12%。这一档我特意核了NP8 时总显存 24962 MiB构成是模型 8148.38 KV 12288 CUDA_Host 417.66 计算缓冲KV 一分钱都没落到内存里占了 32G 卡的 76.6%。它掉到 158.82纯粹是单张卡上同时跑 8 路 decode抢同一份 SM。并发越多每路分到的算力越薄调度的固定开销却一分不少地摊在每一次 token 上。这一段不是容量问题是并行度本身开始亏。8 槽到 16 槽这里才轮到溢写而且不报错。NP16 时启动日志出现两行这是本轮最该记的东西CPU KV buffer size2560.00MiB CUDA0 KV buffer size22016.00MiBKV 总量 24576 MiB8192 cells / 48 层 / 16 路正好等于单槽 1536 MiB 乘以 16其中2560 MiB 被搬到了内存。更隐蔽的是权重NP1 和 NP8 时 GPU 上的模型段都是 8148.38 MiB到 NP16 变成GPU 7316.31 Host 1249.73也就是832.07 MiB 模型权重也被挪出了显存。请求照样返回 200推理照样完成。你从外面看一切正常只有吞吐塌了。这也解释了那个看起来矛盾的现象NP16 的总显存 31887 MiB 低于「模型 8148 KV 24576 32724」的直觉值——因为有一部分根本不在卡上。总显存占 32607 MiB 的 97.8%余 720 MiB。到这一步它已经在 OOM 边缘只是没掉下去。而 decode 阶段每生成一个 token 都要把全部 KV 读一遍落在 CPU 的那 2560 MiB 每次都要过 PCIe。这就是为什么单请求延迟从 1.47 秒涨到22.69 秒——慢了 15.4 倍用户体感就是「点了没反应」。卸载有边界而且边界很近。同一台机器把 ctx 开到 32768 再试 NP16KV 需求量按公式算就是 98304 MiB远超物理上限Ollama 直接返回502 Bad Gateway错误体是upstream connect failed。判据卸载机制能兜住「超出一点点」兜不住「超出三倍」。要判能不能开 N 个槽位不能只看总 KV 是否小于显存还要看超出部分有没有在可卸载范围内。③ 对你意味着什么三张卡三个数我不给通用结论只给按显存分档的判据。全部基于今天这两张卡的实测换模型、换上下文长度都要重测。你的卡ctx 8192 跑 14B 该开几槽依据16GB5060Ti2 槽单槽已用 15945 / 16311 MiB4 槽只剩 392 MiB吞吐反降 2%32GB5090D4 槽4 槽 18119 MiB 全程无溢出2.95× 吞吐24GB4090没有实测不给数按 2 槽与 4 槽之间的容量推断但推断不是实测这套数落在钱上是这样的如果你有一台 24 小时跑的本地服务按 4 槽配置一天理论上是 180.92 × 86400 ≈ 15.6M token按 16 槽只有 4.8M。同一张卡、同一份电开错槽位等于白扔掉三分之二的产出。这台机器满载按 575W 估、0.55 元一度一天电费不到 5 块——省电从来不是重点白扔吞吐才是。如果你在纠结 5090D 还是 5060Ti并发峰值差 10.9 倍180.92 对 16.63。按公开报价粗估整卡价格三万上下 vs 一万上下均为估价不是实付摊到每 1 tok/s5090D 约 166 元5060Ti 约 601 元。要跑并发服务5090D 大约便宜 3.6 倍只跑单路对话这个价差一分都不值。如果你正在给 16G 卡加槽位「榨性能」别加。单槽 15945 MiB 已经把 16311 塞满余 366 MiB。第二槽是真的并行延迟只涨 3%第三第四槽是假的延迟从 8.12 秒涨到 13.80 秒吞吐还掉。16G 卡跑 14B 这件事本身是「能跑」级别不是「能服务」级别。④ 一个副作用别用 tok/s 判断「能不能开」上面那张表里有个细节容易漏NP8 全程没有卸载NP16 只卸载了 2560 MiB占 KV 的 10.4%但吞吐从 158.82 掉到 55.71掉了 65%。卸载量只占一成性能赔掉三分之二。这说明在 decode 这种「每 token 读全 KV」的负载下哪怕一小段 KV 落在 PCIe 后面代价也是非线性的。所以判据不能是「显存够不够」。要看的是llama_kv_cache那两行日志是不是出现了CPU KV buffer。一旦出现不管 tok/s 当时还好看不好看你已经在付 PCIe 的账了。⑤ 下周预告下周我打算把这件事往深一层做同一个 5090D把 ctx 从 8192 拉到 32768看 4 槽的峰值会不会前移。按公式算ctx 拉到 32K 之后单槽 KV 就是 6144 MiB4 槽 24576 MiB——已经超过 4 槽今天用掉的 12288 的两倍。如果峰值真的往前移到 2 槽那就等于说「该开几槽」这件事不只看卡还看你的上下文长度。到点来看。验证等级L1 五档槽位各独立重启 serve 三轮取中位轮间极差 0.4%–10.9%KV 与总显存读数与llama_kv_cache日志逐 MiB 对齐5 次采样极差 0 MiB参考来源槽位扫描2026-11-03 本机 RTX 5090D 32GB Ollama 0.40.4 实测qwen2.5:14b Q4_K_M / ctx 8192 / 每请求 128 token / 五档 1-2-4-8-16每档独立重启 serve、丢弃首轮、三轮取中位16G 卡对照同轮 RTX 5060Ti 16GBWindows 11 桌面机桌面环境占约 9.2 GiB Ollama 0.40.3三档 1-2-4KV 与卸载llama_kv_cache/CPU KV buffer size/CUDA0 KV buffer size启动日志原文显存读数为nvidia-smi memory.used每档 5 次采样失败形态NP16 × ctx 32768 返回502 Bad Gateway错误体upstream connect failed10.9 倍、73.8%、97.8%、65%、15.4 倍、15.6M 与 4.8M token、166 元与 601 元 均为按上表实测值换算非独立计时电价、整卡功耗、整卡价格均为假设或公开报价不是实付声明本文所有吞吐、延迟、显存、KV 数值均来自本机真机实测模型版本、量化格式、上下文长度、Ollama 版本已在文中标明。未测到的部分24GB 卡不参与、其他模型与其他上下文长度不外推、双卡与多机并发未测、桌面环境占用的显存未扣除归因已在文中写为未测或明确标为推断。另跑分库里 NP8 的总显存存在 24267 MiB 的一条旧读数与同轮启动日志KV 12288 MiB、无 CPU KV buffer 行、模型段 8148.38 MiB 未变算不平本文采用与日志对齐的 24962 MiB该条旧读数保留在库中待复核。文中电价按 0.55 元/度、满载功耗按 575W 估算属假设值不是实测。不同模型、不同上下文长度、不同量化下这条曲线的位置都会移动判断方法不变。原创声明本文为本人原创实测记录转载请注明出处与作者丘山录。复现说明文中脚本与原始数据留在本机参数不同结论会变请自行复测。
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →