通信算子识别

TP通信算子识别

TP下,集合通信采用多stream实现,stream个数=TP维度卡数-1。

图1 界面图所示,TP=8,使用stream6,与stream18~stream23共7条stream完成。其中stream6作为通信主stream,负责与计算stream同步,stream18~stream23作为通信从stream,配合stream6完成基于mesh拓扑的集合通信操作。

图1 界面图

图2 界面图所示,stream2为计算stream,stream6为TP通信主stream,stream2与stream6通过event彼此同步,完成TP中计算任务与通信任务的交替执行

图2 界面图

PP通信算子识别

图3 界面图所示,pipeline并行中的send、recv在stream4上,通过Event与计算stream2同步,pipeline并行中的allgather与TP在同一个通信域维度,在主stream6与从stream18~23上执行,同样通过Event与计算stream2同步。

图3 界面图

DP通信算子识别

图4 界面图所示,stream8是DP1维度集合通信算子,通信完成后与计算stream同步,由于通信数据量较大,通信内部会按照HCCL_BUFFSIZE为粒度对DP数据量进行切分并串行完成通信。

图4 界面图
图5 界面图