函数:create_event_with_flag
产品支持情况
产品 |
是否支持 |
---|---|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
|
√ |
功能说明
创建一个带flag的Event,不同flag的Event用于不同的功能。支持创建Event时携带多个flag(按位进行或操作),从而同时使能对应flag的功能。
函数原型
- C函数原型
1
aclError aclrtCreateEventWithFlag(aclrtEvent *event, uint32_t flag)
- python函数
1
event, ret = acl.rt.create_event_with_flag(flag)
参数说明
参数名 |
说明 |
---|---|
flag |
int,Event的flag,可支持以下选项。
|
返回值说明
返回值 |
说明 |
---|---|
event |
int,创建的Event对象的指针地址。 |
ret |
int,错误码,返回0表示成功,返回其它值表示失败。 |
约束说明
使用本接口创建Event时,“flag”为bitmap,支持对单个flag或者多个flag进行操作,例如:acl.rt.create_event_with_flag( ACL_EVENT_TIME_LINE | ACL_EVENT_SYNC )。
- 若“flag”参数值包含“ACL_EVENT_SYNC”,则创建出来的Event数量受限,具体参考如下:
Atlas 200/300/500 推理产品 ,单个Device上最多支持1023个Event。Atlas 200I/500 A2 推理产品 ,单个Device上最多支持65536个Event。Atlas 推理系列产品 ,单个Device上最多支持1023个Event。Atlas 训练系列产品 ,单个Device上最多支持65535个Event。Atlas A2 训练系列产品 /Atlas 800I A2 推理产品 /A200I A2 Box 异构组件,单个Device上最多支持65536个Event。Atlas A3 训练系列产品 /Atlas A3 推理系列产品 ,单个Device上最多支持65536个Event。 - 若flag参数值不包含“ACL_EVENT_SYNC”,则不支持在以下API中使用本接口创建的Event:acl.rt.reset_event、acl.rt.stream_wait_event、acl.rt.query_event_wait_status。