针对同一通信算子在不同卡之间通信时间的波动的分析,其主要目的在于需要识别一些可能存在的通信算子内部瓶颈单元。在分析过程中,主要采用以下几个指标:
该指标可以用来初步识别是否存在慢卡瓶颈,对每块卡上的wait_ratio,通过比较max_wait_ratio (等待时间长) - min_wait_ratio(等待时间短) 与wait_ratio_threshold(当前设置为0.2)的关系,识别是否存在慢节点,当max和min的差值大于阈值threshold时,认为出现了慢节点,慢节点为min_wait_ratio(等待时间短)对应的卡。
DMA(Direct Memory Access)指的是直接存储访问。当CPU完成传输配置后,将不再参与传输过程,由DMA控制器将数据从一个地址空间复制到另外一个地址空间。
按照传输介质,可以将DMA分为RDMA和SDMA。
通信数据一般通过DMA机制在不同卡和不同节点间传输。在单节点内,遵循如下逻辑分析快慢卡。