-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Dygraph] Fix performance of pp+mp by using send/recv_calc_stream instead of send/recv #46116
Conversation
你的PR提交成功,感谢你对开源项目的贡献! |
if use_calc_stream: | ||
task.wait() | ||
return None | ||
return group.process_group.recv_on_calc_stream(tensor, src) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
不能在这个接口里用use_calc_stream这个语义,这个参数要被改成sync_op了,这样语义就错了
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
PR types
Bug fixes
PR changes
Others
Describe
[Dygraph] Fix performance of pp+mp by using send/recv_calc_stream instead of send/recv
Done:
1、c_identity_op反向op - c_allreduce_sum用ProcessGroupStream下的AllReduce代替,性能提升5%左右;
2、ProcessGroupStream下新增allgather_partial算子
3、PP策略下用send/recv/allgather_partial_on_calc_stream算子代替collective下的API,避免切流引起的性能损耗;性能提升1%左右。
新老动态图精度对齐: