开发者
资源

aclrtSetDeviceTaskAbortCallback

产品支持情况

产品

是否支持

Atlas 350 加速卡

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

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

Atlas 200I/500 A2 推理产品

Atlas 推理系列产品

Atlas 训练系列产品

功能说明

调用本接口注册回调函数,用于在调用aclrtDeviceTaskAbort接口前后触发该回调函数。不支持重复注册。

函数原型

1
aclError aclrtSetDeviceTaskAbortCallback(const char *regName, aclrtDeviceTaskAbortCallback callback, void *args)

参数说明

参数名

输入/输出

说明

regName

输入

注册名称,保持唯一,不能为空,输入保证字符串以\0结尾。

callback

输入

回调函数。若callback不为NULL,则表示注册回调函数;若为NULL,则表示取消注册回调函数。

回调函数的函数原型为:

typedef enum {
    ACL_RT_DEVICE_TASK_ABORT_PRE = 0,
    ACL_RT_DEVICE_TASK_ABORT_POST,
} aclrtDeviceTaskAbortStage;
typedef int32_t (*aclrtDeviceTaskAbortCallback)(int32_t deviceId, aclrtDeviceTaskAbortStage stage, uint32_t timeout, void *args);

此处的timeout表示期望回调函数执行的最长时间。

args

输入

待传递给回调函数的用户数据的指针。

返回值说明

返回0表示成功,返回其他值表示失败,请参见aclError