-
Notifications
You must be signed in to change notification settings - Fork 27.7k
[RPC] Make ProcessGroupAgent send task non-blocking #24946
Copy link
Copy link
Open
Labels
module: rpcRelated to RPC, distributed autograd, RRef, and distributed optimizerRelated to RPC, distributed autograd, RRef, and distributed optimizertodoNot as important as medium or high priority tasks, but we will work on these.Not as important as medium or high priority tasks, but we will work on these.triagedThis issue has been looked at a team member, and triaged and prioritized into an appropriate moduleThis issue has been looked at a team member, and triaged and prioritized into an appropriate module
Metadata
Metadata
Assignees
Labels
module: rpcRelated to RPC, distributed autograd, RRef, and distributed optimizerRelated to RPC, distributed autograd, RRef, and distributed optimizertodoNot as important as medium or high priority tasks, but we will work on these.Not as important as medium or high priority tasks, but we will work on these.triagedThis issue has been looked at a team member, and triaged and prioritized into an appropriate moduleThis issue has been looked at a team member, and triaged and prioritized into an appropriate module
@xush6528 pointed out in #23968 that we should make send task non-blocking in
ProcessGroupAgent. It currently waits until both preamble and payload send finishes. We could use a separate send GC thread that captures thepreamble,payloadandProcessGroup::Work(all asstd::shared_ptr) in a GC work, keep them in a queue, wait for completion in order, and destructpreambleandpayloadtensors.cc @pietern @mrshenli @pritamdamania87 @zhaojuanmao @satgera