阻塞该AIV需要等待Arrive组全部完成任务,再开始执行任务。
1 | __aicore__ inline void Wait(uint32_t waitIndex) |
参数 |
输入/输出 |
说明 |
---|---|---|
waitIndex |
输入 |
该AIV在Wait组的序号。范围为[0, waitSize - 1]。 |
无。
该接口支持在循环中使用,但是受限于多核间通信效率要求,循环最大次数不超过1,048,575次。
1 2 3 4 5 6 7 | if (id >= 0 && id < ARRIVE_NUM) { //各种Vector计算逻辑,用户自行实现 barA.Arrive(id); } else(id >= ARRIVE_NUM && id < ARRIVE_NUM + WAIT_NUM){ barA.Wait(id - ARRIVE_NUM); // Wait组的6个AIV中的AIV需要等待Arrive组AIV做完任务 // 各种Vector计算逻辑,用户自行实现 } |