mirror of
https://github.com/kvcache-ai/Mooncake.git
synced 2026-11-05 01:17:55 +00:00
[GH-ISSUE #256] Network problem about SGLang PD disaggregation #105
Labels
No labels
ascend
auto-closed
bug
bug
CI/Build
Common
documentation
enhancement
feature request
good first issue
help wanted
high priority
MetaX
nightly-failure
pull-request
PyTorch Backend
question
RFC
Roadmap
stale
Store
Tests
Transfer Engine
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
kvcache-ai/Mooncake#105
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 @LJL36 on GitHub (Apr 16, 2025).
Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/256
Hi, I want to continue the disccusion about the problem I encountered while using the PD disaggregation by SGLang.
Mooncake config and commands
Introduction
Some running log
As mentioned here, the several requests at the beginnning is OK. After i issued the pressure test, the following error will be raised uncertainly.
All of the above are the situations encountered yesterday.
New discoveries
Today, I switch to the latest main branch of SGLang and Mooncake. And I found the number of connections between the two nodes is always increasing.
After all servers started(prefill node/decode node/proxy server), the number of connections is 8 keeping the connection between the metadata server and the decode node. For each request, the number of connections will be increased by 9, and after the request is completed, one is reduced by. In total 8 connections will be increased for each request and will not be released. When the number of connections increases more than 1000, the pressure test task will stuck. If restarting the task, the number of connections will increase to nearly 2000 after running for a period of time, and the network card will fail.
@LJL36 commented on GitHub (Apr 16, 2025):
We found that the number of connections will always be increasing and takes up most of the decode node's memory. Then some connections will be released. I guess that is why the pressure test will stuck for corresponding requests have been cancelled. And at the time the network card fails, the memory exhausted. Have you ever encountered a situation where the number of connections only increases and does not decrease?
In addition, I want to ask that why as the number of connections increases, the memory usage of the decode node increases, but the memory usage of the prefill node remains the same.
@ShangmingCai commented on GitHub (Apr 16, 2025):
We reuse the connection at the engine level. Can you show us what type of connection number increase? Did you mean the underlying transfer sync processes of the transfer engine?
CC: @alogfans
@LJL36 commented on GitHub (Apr 17, 2025):
How can I distinguish the type of connection? I can only observe the pair of ip:port between two nodes. And these ports are held by the sglang::scheduler process
Here we changed two other nodes for testing
@Zhou-sx commented on GitHub (Apr 17, 2025):
I run successfully using one RDMA nic. But failed when I set four RDMA nics.
@LJL36 commented on GitHub (Apr 21, 2025):
After I use the latest version of SGLang and Mooncake, I encoutered the following problem
It seems mooncake try to use all the nic including the ones I don't include in the mooncake.json and how can i address it?
@ShangmingCai commented on GitHub (Apr 21, 2025):
Try
--disaggregation-ib-device, append the ib-device that used to be in the JSON file.@LJL36 commented on GitHub (Apr 21, 2025):
can you show me how to run the latest PD disaggregation on two nodes? --disaggregation-ib-device replaces the device_name and which args replaces the metadata_server? the --dist-init-addr or --host?
@LJL36 commented on GitHub (Apr 21, 2025):
I run it successfully by not assigning the boostrap server ip maually, thanks