昇腾社区首页
中文
注册

函数:record_event

产品支持情况

产品

是否支持

Atlas A3 训练系列产品 / Atlas A3 推理系列产品

Atlas A2 训练系列产品 / Atlas 800I A2 推理产品 /A200I A2 Box 异构组件

Atlas 训练系列产品

Atlas 推理系列产品

Atlas 200I/500 A2 推理产品

Atlas 200/300/500 推理产品

功能说明

在Stream中记录一个Event。本接口被调用时,会捕获当前Stream上已下发的任务并记录到Event事件中,因此后续若调用acl.rt.query_event_statusacl.rt.stream_wait_event接口时,会检查或等待该Event事件中所捕获的任务都已经完成。

对于使用acl rt.create_event_ex_with_flag创建的Event:

  • 本接口支持对同一个Event多次record实现Event复用,每次Record会重新捕获当前Stream上已下发的任务,并覆盖保存到Event中。在调用acl.rt.stream_wait_event接口时,会使用最近一次Event中所保存的任务,且不会被后续的acl.rt.record_event调用影响。
  • 在首次调用本接口前,由于Event中没有任务,因此调用acl.rt.query_event_status接口时会返回“ACL_EVENT_RECORDED_STATUS_COMPLETE”

函数原型

  • C函数原型
    1
    aclError aclrtRecordEvent(aclrtEvent event, aclrtStream stream)
    
  • python函数
    1
    ret = acl.rt.record_event(event, stream)
    

参数说明

参数名

说明

event

int,待记录的Event的指针地址。

stream

int,将该Event记录在指定的Stream(指针地址)中,如果使用默认Stream,此处设置为0。

返回值说明

返回值

说明

ret

int,错误码,返回0表示成功,返回其它值表示失败。

约束说明

资源参考

接口调用示例,参见关于Event的同步等待关于Stream间任务的同步等待