mirror of
https://github.com/kvcache-ai/ktransformers.git
synced 2026-11-05 01:07:28 +00:00
[GH-ISSUE #1041] [Bug] 多路请求下调度严重降低了性能 #738
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
kvcache-ai/ktransformers#738
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @yeungtuzi on GitHub (Apr 4, 2025).
Original GitHub issue: https://github.com/kvcache-ai/ktransformers/issues/1041
检查清单
问题描述
(kt024) root@local:~/kt024/ktransformers/ktransformers/tests# python ./test_speed.py --concurrent 4
4路测速, 此时A100 GPU占用最高15%,还经常性低于10%,GPU最高功耗只有60W左右
对比0.23post2使用NUMA的情况下能冲到35%
推测是多个任务交叉调用的时候调度方式对性能有很大冲击,建议优化。
复现步骤
(kt024) root@local:~/kt024/ktransformers/ktransformers/tests# python ./test_speed.py --concurrent 4
环境信息
2x Intel(R) Xeon(R) Gold 6330 CPU @ 2.00GHz
1x A100 40GB PCIe
16x DDR4-2933 64GB
Version: 0.2.4+cu128torch26fancy NO NUMA
@yeungtuzi commented on GitHub (Apr 4, 2025):
GPU LOG

CPU LOG
看起来是调度进程单进程卡死了?
@yeungtuzi commented on GitHub (Apr 4, 2025):
日志没记录全,性能为
倒数第二个请求 prefill 32.54722026540755, decode 2.366459768712007,
最后完成的请求 Performance(T/s): prefill 1.393169144318016, decode 3.265519070287735.
@qiyuxinlin commented on GitHub (Apr 4, 2025):
您好,您有修改 test_speed.py 里面的 prompt 吗?直接使用后出现掉速?终端显示的模型执行时间正常吗?
@git-shan commented on GitHub (Apr 4, 2025):
0.2.4+cu128torch26fancy NO NUMA 请问做了哪些修改编译成功的?
@yeungtuzi commented on GitHub (Apr 4, 2025):
没有修改,时间正常,我把脚本里显示统计信息的代码打开了,输出如下
Request 1: Done
Request 1: Decode Speed = 2.16 tokens/s
Request 2: Done
Request 2: Decode Speed = 2.11 tokens/s
Request 3: Done
Request 3: Decode Speed = 2.18 tokens/s
这三个请求几乎同步完成,然后又输出了大概几百个字符后第一个请求结束
Request 0: Done
Request 0: Decode Speed = 4.24 tokens/s
@yeungtuzi commented on GitHub (Apr 4, 2025):
按照官方文档没有任何特殊修改,除了启动命令使用了之前下载的model-config
@yeungtuzi commented on GitHub (Apr 4, 2025):
没有任何访问请求时也有核心满载
@CYSTEV-chn commented on GitHub (Apr 4, 2025):
我也是,KT024,单路decode 10,双路退化到5
单路还不如023post1版快了。
启动命令:
python ktransformers/server/main.py
--port 6006
--model_path /home/zewen/model/DeepSeek-V3
--gguf_path /home/zewen/model/DeepSeek-R1-Q4_K_M
--optimize_config_path ktransformers/optimize/optimize_rules/DeepSeek-V3-Chat-serve.yaml
--max_new_tokens 4096
--cache_lens 32768
--chunk_size 256
--max_batch_size 4
--cache_q4 true
--cpu_infer 84
--model_name "DeepSeek-R1"
--force_think
--backend_type balance_serve
我修改 --backend_type balance_serve 为 --backend_type ktransformers
想试试退回023版后端,对话直接报错。
@qiyuxinlin commented on GitHub (Apr 4, 2025):
您好,如果要改为 ktransformers 后端,inject yaml 需要替换为 DeepSeek-V3-Chat.yaml,balance serve 前几次运行较慢,多运行几次后性能就正常了
@chmmn commented on GitHub (Apr 4, 2025):
update_last_batch 和 get_local_messages 似乎有忙等待,导致空闲时 CPU 被占用。我强制sleep后空闲时 CPU 得到释放,期待完善。
@qiyuxinlin commented on GitHub (Apr 5, 2025):
收到您的反馈,我们会考虑加入适当的 sleep 或其他机制来优化空闲时的资源使用,感谢您的建议!
@Colacalc commented on GitHub (Apr 6, 2025):
您好,请问您这个监控工具叫什么名字,谢谢回复~
@yeungtuzi commented on GitHub (Apr 7, 2025):
apt install btop
@yeungtuzi commented on GitHub (Apr 9, 2025):
新版本已经解决,关闭issue