【免费下载链接】halogen-flash-server
The fastest way to run Qwen3.8-Flash-Next on Strix Halo (gfx1151)
halogen-flash-server 是一个为 AMD Strix Halo(gfx1151)深度定制的 OpenAI 兼容推理服务端,专门快速运行 Qwen3.8-Flash-Next。它最值得玩味的能力,是让一台机器同时跑 4 路对话:靠一块共享的KV 池管理所有会话的显存,用 4 个并发槽位控制同时生成,再配上1M 上下文的选填方案,长会话、多 Agent 并行都不怕。本文把这三个核心配置一次讲透。
🧩 先懂概念:KV 池是内存,槽位是排队规则
很多新手会以为"每开一路对话就要多一块显存"。halogen-flash-server 的设计恰恰相反(见 docs/configuration.md 的Context and memory章节):
HALOGEN_KV_POOL_POSITIONS(KV 池)= 内存旋钮。所有会话共享同一块池子,每个注意力位置约 29.5 KiB,默认 524,288 个位置,可同时驻留 2 条全长(262k)对话,约占 27.0 GiB。HALOGEN_KV_SLOTS(并发槽位)= 延迟策略。默认 4,即最多 4 路对话同时在生成;每个槽位只多占约 115 MB 自身状态,它不决定能不能装下,池子才决定。- 请求被接纳时预占
prompt + max_tokens个位置;池子装不下就按到达顺序排队,不会报错。 - 每一路流生成的 token 与单独跑该请求时逐字节一致,并发不会"稀释"输出质量。
一句话记忆:调池子管"装得下几路",调槽位管"同时跑几路、单路多快"。
📊 池子选多大:4 档实测对照
默认配置就是为"4 路 131k 级对话"准备的。文档给出的四档布局如下(默认检查点、128 GB 主机):
| KV 池大小 | 可同时驻留 | 设备显存 | 适用场景 |
|---|---|---|---|
| 262,144 | 1 条全长对话,或 4 路 65k | 19.8 GiB | 最小布局,内存紧张时 |
| 524,288(默认) | 2 条全长对话,或 4 路 131k | 27.0 GiB | ✅ 4 路对话的标配 |
| 786,432 | 3 条全长对话,或 4 路 196k | 34.2 GiB | 实测 3 条 250k 对话驻留、内存平稳 |
| 1,048,576 | 4 条全长对话,或 8 路 131k | 36.9 GiB(需HALOGEN_MAX_TOK=16384) | 1M 上下文布局 |
启动时服务端会按MemTotal − 驻留权重 − HALOGEN_HOST_RESERVE_GIB(默认留 20 GiB)自动降档,并打印LOWERING THE POOL TO N——想要 3 条驻留就直接写 786,432,别等它从 1,048,576 对半砍。每条请求日志行结尾都有pool N/<positions>,一 grep 就知道真实池子。
🚀 4 路并发到底多快:槽位的收益与代价
在发布版 0.18.0 镜像上、把HALOGEN_KV_SLOTS提到 8 让所有流同时被接纳后的实测(详见 docs/performance.md 与 docs/configuration.md):
| 并发流数 | v2 总吞吐(代码,贪心) | 单流速度 |
|---|---|---|
| 1 | 70–72 tok/s | 70–72 |
| 2 | 81 tok/s | 40 |
| 4 | 84–85 tok/s | 21 |
| 8 | 107–108 tok/s | 13 |
规律很直观:流数越多,总吞吐越高,单流越慢;超过 8 路后总吞吐不再增长。槽位的作用是"闸门"——5 个 worker 竞争 4 个槽时,前 4 路仍按 4 流速度解码,第 5 路排队,而不是把所有人拖慢。社区 5-worker aider 实测:4 槽单轮 42 s、8 槽单流 14.9 t/s,所以重回复、重缓存的客户端用默认 4 槽就是最优。
另外别担心长 prompt 拖住所有人:默认分块接纳——131k 的新 prompt 会分 3 段读入,段间穿插其他对话的生成步(每段约 28 s),而不是一次性卡 105 s;HALOGEN_MAX_TOK=16384还能把暂停再减半(prefill 仅慢约 8%,输出仍逐字节一致)。
💡多 Agent 扇出(fan-out)提醒:父对话 50k + 两个子对话各 80k,起步就要82k+112k+112k=306k个位置,第五轮左右就会挤爆默认池。对策:池子调到 786,432、让客户端发更小的max_tokens、或减少并行子 Agent 数量。
📈 1M 上下文:两行配置,一份不同模型
模型的 262,144 原生上下文可以靠静态 YaRN(factor 4)扩展到 1M,不设置则完全不改变行为(见 docs/configuration.md):
-e HALOGEN_ROPE_YARN=4 \ -e HALOGEN_CTX=1048576 \ -e HALOGEN_KV_POOL_POSITIONS=1048576 \ -e HALOGEN_MAX_TOK=16384要认清它的代价:
- 它不是缓存开关,而是另一种模型配置:每个位置的 RoPE 都被重缩放,短 prompt 也一样。1k–32k 区间困惑度 +0.4–0.6%,8k–30k 区间投机解码约慢 10%;262k 与 1M 深度的检索测试均 9/9 通过。
- 1M KV 缓存约 25 GB:128 GB 机器上放不下默认 prefill 工作区,服务端会自动把
HALOGEN_MAX_TOK压到 16,384(prefill 约慢 9%)并打印出来。 - 实测:1,004,581 token 的 prompt 冷 prefill 17.9 分钟(937 tok/s),decode 38 tok/s;深度解码每步多花约 3.6 ms 读取全部 key。
- 但开了 prompt cache 后,续聊回归常速:1,000,000 token 上下文的下一轮首 token 仅 0.55 s(对比几十秒的冷 prefill),因为注意力状态原地保留,只保存很小的位置无关部分。
⚠️ 提示:恰好等于上下文长度的 prompt 会被拒绝——上下文必须给生成留位置。
🔧 配置速查 + 运维验证
| 旋钮 | 默认 | 何时改 |
|---|---|---|
HALOGEN_KV_POOL_POSITIONS | 524,288(=2×CTX) | 想驻留更多/更长会话时调大;起不来(池子放不下)时调小 |
HALOGEN_KV_SLOTS | 4 | 想让第 5、6 路立刻跑而不是排队时调大(单流会变慢) |
HALOGEN_CTX | 262,144 | 单请求上限;超过即硬报错,绝不静默截断 |
HALOGEN_MAX_TOK | 32,768 | 内存不够时调 16,384 换回约 4.4 GiB 工作内存 |
HALOGEN_ROPE_YARN/HALOGEN_HOST_RESERVE_GIB | 未设置 / 20 | 1M 布局时按需设置(见上文) |
启动后两条命令验证一切生效:
GET /health:看version、池子与槽位能力、host memory left;GET /cache:看pool里的positions、used、busy_regions、waiting_for_room,排队和驻留一目了然。
遇到"启动后长 prompt 变慢",先查启动行host memory left for everything else:低于 10 GiB 时查表行会走磁盘,prefill 会从秒级退化到分钟级——对策就是三个杠杆:缩池子、降HALOGEN_MAX_TOK、停掉其他驻留大进程(完整排查见 docs/troubleshooting.md)。
✅ 小结
- 一台机器 4 路对话 = 默认 524,288 KV 池 + 4 个槽位,零配置即得,单路输出与独跑逐字节一致;
- 池子管内存、槽位管排队、
HALOGEN_MAX_TOK管工作区,三招解决 99% 的"装不下/跑不快"; - 1M 上下文是"另一种模型配置",
HALOGEN_ROPE_YARN=4一行开启,配合 1M 池 + 16,384 prefill 上限,冷 prefill 很慢但续聊只要半秒。
更多细节:全部参数见 docs/FLAGS.md(Context and concurrency 一节)、配置原理与数字见 docs/configuration.md、一键部署参考 docker-compose.yml 与 deploy/entrypoint.sh。
【免费下载链接】halogen-flash-server
The fastest way to run Qwen3.8-Flash-Next on Strix Halo (gfx1151)
相关推荐
AnimatedSvgView高级使用手册:自定义动画时间与颜色配置
AnimatedSvgView高级使用手册:自定义动画时间与颜色配置 AnimatedSvgView是一款专为Android平台设计的SVG动画绘制库,它能让开
如何在一对DGX Spark上跑通DeepSeek-V4-Flash 1M上下文:DSpark项目完全解读
如何在一对DGX Spark上跑通DeepSeek V4 Flash 1M上下文:DSpark项目完全解读 DeepSeek v4 Flash DSpark 2
GLM-4-9B-Chat-1M:一文解锁百万上下文对话能力
GLM 4 9B Chat 1M:一文解锁百万上下文对话能力 导语 智谱AI推出GLM 4 9B Chat 1M模型,将上下文长度突破性扩展至100万Token
大模型深度学习
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考