跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 浅色
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • 深色
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(LCZ-Blue)
  • 不使用皮肤
  • LCZ-Green
  • LCZ-Blue
  • LCZ-Black
折叠
品牌标识

抡锤者

首页 版块 标签
硬件
装备秀
AI 广场
  1. 主页
  2. 版块
  3. LLM讨论区
  4. [实测] 双 RTX 3080 20G + Strata + Qwen3.8 Flash Next IQ3_S:128K 上下文,Pi Agent 持续任务与多会话实测

[实测] 双 RTX 3080 20G + Strata + Qwen3.8 Flash Next IQ3_S:128K 上下文,Pi Agent 持续任务与多会话实测

已定时 已固定 已锁定 已移动 LLM讨论区
rtx3080strataqwen-flash
9 帖子 6 发布者 624 浏览 1 关注中
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • Moor WuM
    Moor WuM
    Moor Wu
    编写于 最后由 Moor Wu 编辑
    #1

    最近在双 3080 20G 上折腾了一轮 Strata,用它给 Pi Agent 提供本地模型服务。平时我通过 Discord 和 Pi Agent 聊天、让它调用工具执行任务,也会在几个不同的会话之间来回切换。

    这次主要想看:Pi Agent 读入长对话要等多久,接着做任务能不能复用历史,以及切到别的会话再回来,会不会又从头读一遍。 除了模型生成文字的速度,也检查了完整输出和工具调用。

    先说一个比较直观的结果:在模拟这类会话的测试里,复用约 32K 的历史后,输出 100 条结构化记录约需 10 秒;切到另一个会话再回来,原会话缓存能恢复,完成同类输出只多了约半秒。这些是模型一次响应的耗时,不是 Pi Agent 跑完整个任务的时间;工具执行、生图和 Discord 发送还要另外算。

    下面记录的是 2026 年 10 月 3–4 日这轮测试,具体的生成速度和耗时放在表格里。


    1. 测试环境

    项目 配置
    GPU RTX 3080 20G × 2,魔改卡
    平台 华南 X99 F8,E5-2686 v4,18 核 36 线程
    内存 系统可用约 94 GiB
    连接 PCIe 3.0,没有 GPU P2P
    功耗限制 两张卡分别 250W、280W,测试期间没有提高
    引擎、模型 Strata v0.1.38 基础上的修改版;Qwen3.8-Flash-Next GSQ-RCO,IQ3_S
    上下文、KV 131,072 tokens;INT8 KV,显存驻留 32,768 cells
    推测解码、思考 MTP 6,最低置信度 0.9;medium,思考上限 2048、输出上限 8192

    双卡用的是主卡计算 + 副卡专家缓存,不是两个独立模型实例,也不是普通的张量并行。下面全部是单请求成绩,不是并发总吞吐。

    2. 现在到底有多快

    表里的 t/s 表示每秒处理或生成的 token 数,不等于每秒汉字数;Prefill 是模型读入对话历史的阶段。

    下面取最近一轮对照测试中当前配置的结果,每项两次测量取中位数。耗时从客户端发请求算到完整响应结束,不包含 Discord 发送、外部工具执行或生图时间。

    任务 Prefill 生成速度 完整响应耗时
    32K 档冷输入,约 123 tokens 输出 2109.6 t/s 76.4 t/s 17.28 秒
    32K 历史命中,完整输出 100 条记录,约 1012 tokens 复用历史 112.85 t/s 9.76 秒
    重复上述结构化任务 复用历史 112.50 t/s 9.55 秒
    保留历史,只修改最后一条消息 复用历史 108.15 t/s 10.90 秒
    自然语言列表,约 1202 tokens 复用历史 70.55 t/s 18.22 秒
    重复自然语言任务,约 1203 tokens 复用历史 84.80 t/s 15.09 秒
    切到另一会话,再返回原会话 恢复缓存 103.70 t/s 10.28 秒

    128K 是服务允许的上下文长度,不代表 Pi Agent 的长对话填满后,仍能保持表里这组测试的响应速度。 长输入检索、追加消息和取消恢复测过约 123K;表里的主要速度成绩来自 32K 档任务。自然语言两次输出不完全相同,不能只按耗时判断加速幅度。

    这轮当前配置与候选配置合计通过 44 项完整任务及缓存检查。它们检查的是测试里的事实、输出格式和工具交互,不代表模型在所有任务上的准确率。每个配置每项只有两次测量,也没有据此计算置信区间。

    3. 多个会话轮流请求,实际表现怎么样?

    我的用途是多个 Pi Agent/Discord 会话共用一个模型,所以还测了 A → B → A:先处理一个长会话,切到另一个会话,再回到原会话继续请求。

    场景 生成速度 完整响应耗时
    原会话缓存命中,输出约 1012 tokens 112.85 t/s 9.76 秒
    切到另一条约 8K 的新会话 70.60 t/s 7.19 秒
    返回原会话,恢复缓存并输出约 1012 tokens 103.70 t/s 10.28 秒

    返回原会话后,缓存能够恢复,不需要重新填充整段历史。完整响应只比一直留在原会话时多约半秒,这组测试里,多会话切换并没有让速度明显掉下去。中间那条新会话的输出更短,不能拿它的总耗时与另外两条直接比快慢。

    如果需求是几个会话轮流聊天、执行任务,目前这套配置已经挺好用。 但这里测的是交替请求,不是多个请求同时生成;真正同时到达时,仍会排队。

    在我这种多个会话交替使用的场景里,目前的响应速度并没有比之前用 vLLM 时差。不过前后的模型和配置不同,这属于使用体验,不能当成同条件下的引擎胜负结论。

    4. 相比最开始,改善了多少

    项目 早期状态 后续状态 变化
    32K 冷输入 prefill 时间 21.83 秒 15.58 秒 减少约 28.6%
    64K 冷输入 prefill 时间 42.26 秒 阶段验证值 30.91 秒 减少约 26.9%
    已调参的结构化热请求 82.95 t/s 112.85 t/s 提高约 36%

    这是不同优化阶段的变化,不是最后重跑的一组原版/修改版严格 A/B。各项收益不能直接相加,更不能把结构化任务的提升当成所有 Agent 任务的提升。

    5. 这些速度是怎么提上来的

    最开始分析耗时的时候,发现问题不只是显卡算得慢。一次约 1K 输入的冷请求里,预填充 GPU 时间约 3.88 秒,其中等待专家权重搬运就占了约 2.53 秒。显卡有不少时间是在等数据,而不是计算。

    所以这一轮先处理的是:能不能少搬一点,或者边搬边算。

    沿着这个方向,我们参考了 architectds 的 Strata fork。它在官方 v0.1.38 上增加了 CPU 协助预填充、按输入长度安排分块等改动,正好对应我们这台 PCIe 3.0 双卡机器遇到的问题。本次参考版本是 05c0f36。

    我们没有直接把整个 fork 换上去,而是在官方 v0.1.38 的基础上,采用其中相关的实现,再做本机对照测试。第一轮组合测试里,32K 冷输入的预填充从 21.83 秒降到 17.09 秒,64K 从 42.26 秒降到 33.19 秒。这一阶段主要改善的是读入速度,生成速度没有明显提升。

    其中两项比较重要:

    • CPU 协助计算专家: 小块预填充时,一部分专家直接由 CPU 从内存计算,GPU 同时处理其余部分,减少 PCIe 搬运等待。
    • 调整预填充分块: 尽量减少块数,避免最后留下一个很小的块,却仍要支付一轮专家搬运成本。

    该 fork 还有按需加载图像编码器、临时借还专家缓存显存的实现,主要解决识图时的显存安排,这里没有给它单独算加速收益。具体来源见其 README。

    这部分是参考 fork 的贡献,不是我们的原创。另外,它较早的 Q4 KV attention、MTP KV ring、批量专家 gather 改动已经进入官方 v0.1.38,不能重复计算收益。

    在这个基础上,我们继续检查双卡缓存、KV 上传和 CPU 调度,才有了下面四项自己的改动。

    6. 我们自己改了什么

    自己的 fork 是 moorwu/Strata。原创改动拆成了四个 PR,提交给官方 Strata。

    双卡专家缓存去重:PR #731

    副卡已有的专家,不再被主卡自适应缓存重复收进去。曾观察到约 1900–2000 个重复槽位;相同副卡容量下,32K 结构化热请求从 81.5 提高到 94.1 t/s,完整耗时从 13.00 降到 11.42 秒。

    KV 上传与计算重叠:PR #732

    提前上传下一层需要的 KV,让搬运和当前计算重叠。阶段 A/B 中,32K、64K prefill 时间分别减少约 5.3%、4.1%;8K 没有明显收益,也没有测出 decode 加速。

    CPU 专家流水线:PR #733

    一个专家完成前半段计算,就开始它的后半段,不等整批专家一起完成。单项收益约 1%,没有把它包装成大提升;独立移植版通过了 810/810 项真实权重数值一致性检查。这是局部计算检查,不是模型能力评分。

    在消息边界保存 checkpoint:PR #734

    长历史不变、只改最后一条消息时,尽量从最后一条消息之前恢复。配合分块调整,首次修改任务从 17.24 降到 11.53 秒;这是组合收益,不是 checkpoint 单项收益。

    四个 PR 目前都是 draft,尚未合并。 上面的性能收益来自本机组合版;移植到纯官方代码后的版本已完成编译和部分测试,完整 GPU 性能及回归验证还没全部完成。fork 的 main 仍跟随官方,四项改动在各自分支里,直接克隆 main 不会得到本文测速用的组合版。

    7. 配置也有用,但不是越大越好

    MTP 从 4 调到 6 的受控对照中,热请求生成速度提高约 15.5%,八类任务耗时的中位数之和减少约 5.7%。冷 prefill 没有改善,短工具任务也没有稳定收益;继续加到 8 没有采用。

    会话缓存目前是 8 GiB、4 个槽位,保留 2560 MiB 空闲内存门槛。A/B/A 会话切换测过可以恢复,但缓存不能保证无限保留或跨服务重启恢复。

    最后还试过一些局部能提高 token 速度的方案,但混合任务总耗时只改善约 0.9%,工具续接反而更慢,最终没有上线。我现在更看重一件事:同样的任务,能不能更早完整做完,而不只是仪表盘上的 t/s 更高。

    1 条回复 最后回复
    1
    • Moor WuM
      Moor WuM
      Moor Wu
      编写于 最后由 编辑
      #2

      补充:这轮测试实际使用的启动参数

      把参数也贴出来,方便大家对照。下面按当前运行进程核对过,用户名、机器地址和本地目录都换成了占位路径。这是本文的 v0.1.38 组合修改版参数,不是克隆官方或我们的 main 后就能直接复现的通用配置。 模型的 native pack 和配套 MTP 文件需要提前准备好。

      1. GPU 顺序和修改版开关

      # 按散热情况选择主卡;这里物理 GPU 1 是计算卡,GPU 0 是辅助缓存卡。
      export CUDA_VISIBLE_DEVICES=1,0
      
      # 以下开关由本文使用的组合修改版读取,不保证官方版本支持。
      export STRATA_PREFILL_CPU=auto
      export STRATA_DISJOINT_ADAPT=1
      export STRATA_KV_PREFETCH=1
      export STRATA_POOL_PIPELINE=1
      export STRATA_CACHE_MESSAGE_BOUNDARY=1
      

      对应关系:CPU 协助预填充来自参考 fork;后四项分别控制双卡缓存去重、KV 预取、CPU 专家流水线、消息边界 checkpoint,详见主帖的四个 PR。仅设置环境变量不会给未包含这些代码的版本增加功能。

      2. 引擎启动命令

      下面的路径都是占位符,替换成自己的文件位置。参数值则保留本机实际设置。

      STRATA_BIN="/path/to/modified-strata"
      PACK_DIR="/path/to/native-pack/iq3_s"
      MODEL_DIR="/path/to/gguf"
      MTP_DIR="/path/to/mtp/rt"
      EXPERT_PROFILE="/path/to/expert-profile.bin"
      CONTROL_VECTOR="/path/to/Qwen3.8-Flash-Next-experimental-speed-projection.gguf"
      
      "$STRATA_BIN" --serve \
        --pack "$PACK_DIR" \
        --native "$MODEL_DIR/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00001-of-00002.gguf" \
        --ple-gguf "$MODEL_DIR/Qwen3.8-Flash-Next-GSQ-RCO-IQ3_S-00002-of-00002.gguf" \
        --expert-profile "$EXPERT_PROFILE" \
        --expert-cache auto \
        --expert-cache-device1 9500 \
        --prefill auto:32768 \
        --spec 6 \
        --spec-min-p 0.9 \
        --mtp "$MTP_DIR" \
        --mtp-max-t 6 \
        --max-context 131072 \
        --kv int8 \
        --kv-resident 32768 \
        --vram-reserve-mib 700 \
        --conversation-cache-mib 8192 \
        --conversation-cache-slots 4 \
        --conversation-cache-min-free-mib 2560 \
        --pcie-frac 0.0 \
        --vision \
        --control-vector-scaled "$CONTROL_VECTOR:1.0" \
        --control-vector-layer-range 4 44 \
        --cvec-mode project \
        --cvec-dir per-layer
      

      几个容易混淆的地方:

      • 双卡:device1 是 CUDA 重排后的第二张卡,在上述顺序里对应物理 GPU 0。9500 是副卡专家缓存槽位数,不是 MiB,也不是两卡各跑一份模型。主卡缓存由 auto 按剩余显存安排。
      • 128K / INT8 KV:服务上下文是 131072;32768 是显存驻留窗口,不是把总上下文限制在 32K。
      • 会话缓存:8192 MiB 总预算、4 个槽位,空闲内存门槛 2560 MiB。用于多个会话交替时恢复历史,不等于四路同时生成,也不保证跨重启保留。
      • MTP:本轮采用 spec=6、mtp-max-t=6、最低置信度 0.9,需要配套权重。不是只加一个数字就能启用。
      • 识图:本机启用了 vision,依赖配套资源和修改版的按需加载逻辑;本文速度表不代表识图速度。

      3. 思考和 HTTP 服务是另外一层

      实际对外还套了一层服务封装,处理 OpenAI 兼容接口和思考预算。上面的原生引擎命令不是完整的 HTTP 服务启动脚本。

      服务层设置 本轮值
      请求思考级别 medium
      思考 token 预算 2048
      输出 token 上限 8192

      封装层通过 STRATA_THINKING_BUDGET=2048 和 STRATA_OUTPUT_CAP=8192 读取预算;它们不是承诺官方原生引擎直接支持的 CLI 参数。客户端的采样设置、提示词和任务内容也会影响实际耗时。

      4. 控制向量参数

      末尾四项是当前启用的运行时控制向量实验:强度 1.0,作用层 4–44,project 模式,per-layer 方向。它与直接修改权重的 abliterated 模型不是一回事,也不是一个保证所有请求都不拒答的通用开关。 文件必须与模型配套;没有该文件时不要照抄这四项。本文没有单独给它计算加速收益。

      以上是便于对照的脱敏参数记录,没有公开服务地址、认证信息或本机目录。两卡功耗限制仍是主帖里的 250W / 280W,本次只补充文字,没有改服务或提高功耗。

      1 条回复 最后回复
      2
      • N
        N
        neo
        德高望重 劳动模范
        编写于 最后由 编辑
        #3

        正好想试试flash-next,很有帮助,感谢分享。

        1 条回复 最后回复
        0
        • Quanta MagicQ
          Quanta MagicQ
          Quanta Magic
          德高望重 劳动模范
          编写于 最后由 编辑
          #4

          大佬 你的内存是ddr 3 还是ddr4 ? 可以给具体型号吗?多少钱买的?

          1 条回复 最后回复
          0
          • Moor WuM
            Moor WuM
            Moor Wu
            编写于 最后由 编辑
            #5

            ddr4 2400 ecc reg 拼多多买的,我就随便挑了一家,900多 32g, 不算便宜

            A 1 条回复 最后回复
            0
            • Moor WuM Moor Wu

              ddr4 2400 ecc reg 拼多多买的,我就随便挑了一家,900多 32g, 不算便宜

              A
              A
              applejuice
              技术大牛 劳动模范
              编写于 最后由 编辑
              #6

              @Moor-Wu 便宜的还得是拼多多吗?
              在观望 希望有机会入手3200

              Moor WuM 1 条回复 最后回复
              0
              • A applejuice

                @Moor-Wu 便宜的还得是拼多多吗?
                在观望 希望有机会入手3200

                Moor WuM
                Moor WuM
                Moor Wu
                编写于 最后由 编辑
                #7

                @applejuice 说:

                @Moor-Wu 便宜的还得是拼多多吗?
                在观望 希望有机会入手3200

                我没特别仔细的比价

                1 条回复 最后回复
                0
                • C
                  C
                  comeN
                  编写于 最后由 编辑
                  #8

                  我也是这配置在一直思考3条32G升4条32G会有提升?AI告诉我提升不大,我考虑是4通道比3通道,能不提升内存带宽提升性能

                  terryT 1 条回复 最后回复
                  0
                  • C comeN

                    我也是这配置在一直思考3条32G升4条32G会有提升?AI告诉我提升不大,我考虑是4通道比3通道,能不提升内存带宽提升性能

                    terryT
                    terryT
                    terry
                    超级版主
                    编写于 最后由 编辑
                    #9

                    @comeN 主要问题再PCIE带宽。

                    油管:https://www.youtube.com/@抡锤者

                    1 条回复 最后回复
                    0

                    你好!看起来您对这段对话很感兴趣,但您还没有一个账号。

                    厌倦了每次访问都刷到同样的帖子?您注册账号后,您下次访问时都将自动回到上次浏览的位置,并可选择接收新回复的通知(通过电子邮件或推送通知)。您还可以收藏帖子、为帖子点赞,以此向其他社区成员表达您的感谢。

                    有了你的建议,这篇帖子会更精彩哦 💗

                    注册 登录
                    回复
                    • 在新帖中回复
                    登录后回复
                    • 从旧到新
                    • 从新到旧
                    • 最多赞同


                    • 登录

                    • 登录或注册以进行搜索。
                    • 第一个帖子
                      最后一个帖子
                    0
                    • 版块
                    • 最新
                    • 标签
                    • 热门
                    • 用户
                    • 群组