aclrtGetTaskIdFromExceptionInfo
aclrtUnSubscribeHostFunc
函数功能
与aclrtSubscribeHostFunc接口配合使用,调用模型执行接口后,调用本接口取消线程注册,Stream上的回调函数不再由指定线程处理。同步接口。
Atlas 200/500 A2推理产品,不支持该接口。
函数原型
aclError aclrtUnSubscribeHostFunc(uint64_t hostFuncThreadId, aclrtStream exeStream)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| hostFuncThreadId | 输入 | 指定线程的ID。 |
| exeStream | 输入 | 指定Stream。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: 同步等待
aclrtSetExceptionInfoCallback
函数功能
设置异常回调函数,同步接口。
约束说明
-
您需要在执行异步任务之前,设置异常回调函数,当Device上的任务执行异常时,系统会向用户设置的异常回调函数中传入一个包含任务ID、Stream ID、线程ID、Device ID以及错误码的aclrtExceptionInfo结构体指针,并执行回调函数,用户可以再分别调用aclrtGetTaskIdFromExceptionInfo、aclrtGetStreamIdFromExceptionInfo、aclrtGetThreadIdFromExceptionInfo、aclrtGetDeviceIdFromExceptionInfo、aclrtGetErrorCodeFromExceptionInfo接口获取产生异常的任务ID、Stream ID、线程ID、Device ID以及错误码,便于定位问题。
使用场景****举例:例如,在调用aclopExecuteV2接口前,调用aclrtSetExceptionInfoCallback接口设置异常回调函数,当算子在Device执行异常时,系统会向用户设置的异常回调函数中传入一个包含任务ID、Stream ID、线程ID、Device ID以及错误码的aclrtExceptionInfo结构体指针,并执行回调函数。
-
如果多次设置异常回调函数,以最后一次设置为准。
-
如果想清空回调函数,可调用aclrtSetExceptionInfoCallback接口,将入参设置为空指针。
函数原型
aclError aclrtSetExceptionInfoCallback(aclrtExceptionInfoCallback callback)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| callback | 输入 | 指定要注册的回调函数。 回调函数的函数原型为: typedef void (*aclrtExceptionInfoCallback)(aclrtExceptionInfo *exceptionInfo); |
返回值说明
返回0表示成功,返回其它值表示失败。
参考资源
接口调用示例,参见AI Core异常信息获取。
父主题: 同步等待
aclrtGetTaskIdFromExceptionInfo
函数功能
获取异常信息中的任务ID,同步接口。该接口与aclrtSetExceptionInfoCallback接口配合使用。
函数原型
uint32_t aclrtGetTaskIdFromExceptionInfo(const aclrtExceptionInfo *info)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| info | 输入 | 异常信息的指针。 在执行任务之前调用aclrtSetExceptionInfoCallback接口,系统会将产生异常的任务ID、Stream ID、线程ID、Device ID存放在aclExceptionInfo结构体中。 |
返回值说明
返回异常信息中的任务ID,返回值为0xFFFFFFFF(以十六进制为例)时表示Device异常。
参考资源
接口调用示例,参见AI Core异常信息获取。
父主题: 同步等待
aclrtGetStreamIdFromExceptionInfo
函数功能
获取异常信息中的Stream ID,同步接口。该接口与aclrtSetExceptionInfoCallback接口配合使用。
函数原型
uint32_t aclrtGetStreamIdFromExceptionInfo(const aclrtExceptionInfo *info)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| info | 输入 | 异常信息的指针。 在执行任务之前调用aclrtSetExceptionInfoCallback接口,系统会将产生异常的任务ID、Stream ID、线程ID、Device ID存放在aclExceptionInfo结构体中。 |
返回值说明
返回异常信息中的Stream ID,返回值为0xFFFFFFFF(以十六进制为例)时表示Device异常。
参考资源
接口调用示例,参见AI Core异常信息获取。
父主题: 同步等待
aclrtGetThreadIdFromExceptionInfo
函数功能
获取异常信息中的线程ID,同步接口。该接口与aclrtSetExceptionInfoCallback接口配合使用。
函数原型
uint32_t aclrtGetThreadIdFromExceptionInfo(const aclrtExceptionInfo *info)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| info | 输入 | 异常信息的指针。 在执行任务之前调用aclrtSetExceptionInfoCallback接口,系统会将产生异常的任务ID、Stream ID、线程ID、Device ID存放在aclExceptionInfo结构体中。 |
返回值说明
返回异常信息中的线程ID,返回值为0xFFFFFFFF(以十六进制为例)时表示Device异常。
父主题: 同步等待
aclrtGetDeviceIdFromExceptionInfo
函数功能
获取异常信息中的Device ID,同步接口。该接口与aclrtSetExceptionInfoCallback接口配合使用。
函数原型
uint32_t aclrtGetDeviceIdFromExceptionInfo(const aclrtExceptionInfo *info)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| info | 输入 | 异常信息的指针。 在执行任务之前调用aclrtSetExceptionInfoCallback接口,系统会将产生异常的任务ID、Stream ID、线程ID、Device ID存放在aclExceptionInfo结构体中。 |
返回值说明
返回异常信息中的Device ID,返回值为0xFFFFFFFF(以十六进制为例)时表示Device异常。
参考资源
接口调用示例,参见AI Core异常信息获取。
父主题: 同步等待
在线提单