aclrtQueryEventWaitStatus
aclrtResetEvent
函数功能
复位一个Event。用户需确保等待Stream中的任务都完成后,再复位Event,异步接口。
约束说明
在复位Event时,涉及重置Event的状态,Event的状态是在调用aclrtRecordEvent接口时记录,因此在调用aclrtResetEvent接口前,需要先调用aclrtRecordEvent接口。
接口调用顺序:aclrtCreateEvent-->aclrtRecordEvent-->aclrtResetEvent-->aclrtSynchronizeStream
函数原型
aclError aclrtResetEvent(aclrtEvent event, aclrtStream stream)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| event | 输入 | 待复位的Event。 |
| stream | 输入 | 指定Event所在的Stream。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 同步等待
aclrtQueryEvent
须知
此接口后续版本会废弃,请使用aclrtQueryEventStatus接口。
函数功能
查询与本接口在同一线程中的aclrtRecordEvent接口所记录的Event是否执行完成。同步接口。
函数原型
aclError aclrtQueryEvent(aclrtEvent event, aclrtEventStatus *status)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| event | 输入 | 指定待查询的Event。 |
| status | 输出 | Event状态的指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 同步等待
aclrtQueryEventStatus
函数功能
本接口是aclrtQueryEvent接口的扩展接口,可查询与本接口在同一线程或不同线程中的aclrtRecordEvent接口所记录的Event是否执行完成。同步接口。
函数原型
aclError aclrtQueryEventStatus(****aclrtEvent event, aclrtEventRecordedStatus *status)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| event | 输入 | 指定待查询的Event。 |
| status | 输出 | Event状态的指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 同步等待
aclrtQueryEventWaitStatus
函数功能
调用aclrtStreamWaitEvent接口后,查询Stream是否接收到指定Event。如果多个Stream等待同一个Event,则多个Stream都接收到Event,通过该接口查询的Event状态才是已完成。同步接口。
函数原型
aclError aclrtQueryEventWaitStatus(****aclrtEvent event, aclrtEventWaitStatus *status)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| event | 输入 | 指定待查询的Event。 |
| status | 输出 | Event状态的指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 同步等待
aclrtSynchronizeEvent
函数功能
阻塞应用程序运行,等待Event完成,同步接口。
函数原型
aclError aclrtSynchronizeEvent(aclrtEvent event)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| event | 输入 | 需等待的Event。 |
返回值说明
返回0表示成功,返回其它值表示失败。
参考资源
接口调用示例,参见Event的同步等待示例代码。
父主题: 同步等待
aclrtSynchronizeEventWithTimeout
函数功能
阻塞应用程序运行,等待Event完成,该接口是在接口aclrtSynchronizeEvent基础上进行了增强,支持用户设置超时时间,当应用程序异常时可根据所设置的超时时间自行退出。同步接口。
函数原型
aclError aclrtSynchronizeEventWithTimeout(aclrtEvent event, int32_t timeout)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| event | 输入 | 需等待的Event。 |
| timeout | 输入 | 接口的超时时间。 取值说明如下: - -1:表示永久等待,和接口aclrtSynchronizeEvent功能一样; - >0:配置具体的超时时间,单位是毫秒。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 同步等待
aclrtEventElapsedTime
函数功能
统计两个Event之间的耗时,同步接口。
约束说明
**接口调用顺序:调用aclrtCreateEvent/aclrtCreateEventWithFlag接口创建Event-->调用aclrtRecordEvent接口在同一个Stream中记录起始Event、结尾Event-->调用aclrtSynchronizeStream接口阻塞应用程序运行,直到指定Stream中的所有任务都完成-->**调用aclrtEventElapsedTime接口统计两个Event之间的耗时
函数原型
aclError aclrtEventElapsedTime(float *ms, aclrtEvent startEvent, aclrtEvent endEvent)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| ms | 输出 | 表示两个Event之间耗时的指针,单位为毫秒。 |
| start | 输入 | 起始Event。 |
| end | 输入 | 结尾Event。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 同步等待
在线提单