通知其他等待的AIV,本AIV已经完成其依赖的任务。
1 | __aicore__ inline void Arrive(uint32_t arriveIndex) |
参数 |
输入/输出 |
说明 |
---|---|---|
index |
输入 |
该AIV在Arrive组的序号。范围为[0, arriveSize - 1]。 |
无。
Atlas A2训练系列产品/Atlas 800I A2推理产品
该接口支持在循环中使用,但是受限于多核间通信效率要求,循环最大次数不超过1,048,575次。
1 2 3 | AscendC::GroupBarrier<AscendC::PipeMode::MTE3_MODE> barA(startAddr, 3, 6); // 6个AIV等3个AIV Arrive后再开始后续业务,总共花费6 * 512B,起始地址为startAddr // vector运算 barA.Arrive(1); // Arrive组的3个AIV中的第二个AIV已经完成任务 |