CreateHcomWaitTask
产品支持情况
头文件
#include <graph/kernel_launch_info.h>
功能说明
创建一个Wait Task,此Task用于阻塞流,当与其有相同group_name的Record Task被执行时,阻塞会被解除。
函数原型
static KernelLaunchInfo CreateHcomWaitTask(const gert::ExeResGenerationContext *context, const char *group_name = "group")
参数说明
返回值说明
返回创建出来的Wait Task信息。
约束说明
group_name必须与算子原型中定义的属性一致。例如,某个mc2算子定义了一个属性group_ep,则可以使用group_name为group_ep创建Record任务和Wait任务。
调用示例
graphStatus Mc2GenTaskCallback(const gert::ExeResGenerationContext *context,
std::vector<std::vector<uint8_t>> &tasks) {
...
// 创建WaitTask
auto wait_task = KernelLaunchInfo::CreateHcomWaitTask(context);
wait_task.SetStreamId(attach_stream_id);
tasks.insert(tasks.begin() + aicore_index, wait_task.Serialize());
aicore_index++;
...
}