aclrtCtxSetSysParamOpt
aclrtDestroyContext
函数功能
销毁一个Context,释放Context的资源,同步接口。只能销毁通过aclrtCreateContext接口创建的Context。
函数原型
aclError aclrtDestroyContext(aclrtContext context)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| context | 输入 | 需销毁的Context。 |
返回值说明
返回0表示成功,返回其它值表示失败。
参考资源
接口调用流程及示例,参见运行管理资源申请与释放。
父主题: Context管理
aclrtSetCurrentContext
函数功能
设置线程的Context,同步接口。
约束说明
- 支持以下场景:
- 如果在某线程(例如:thread1)中调用aclrtCreateContext接口显式创建一个Context(例如:ctx1),则可以不调用aclrtSetCurrentContext接口指定该线程的Context,系统默认将ctx1作为thread1的Context。
- 如果没有调用aclrtCreateContext接口显式创建Context,则系统将默认Context作为线程的Context,此时,不能通过aclrtDestroyContext接口来释放默认Context。
- 如果多次调用aclrtSetCurrentContext接口设置线程的Context,以最后一次为准。
- 若给线程设置的Context所对应的Device已经被复位,则不能将该Context设置为线程的Context,否则会导致业务异常。
- 推荐在某一线程中创建的Context,在该线程中使用。若在线程A中调用aclrtCreateContext接口创建Context,在线程B中使用该Context,则需由用户自行保证两个线程中同一个Context下同一个Stream中任务执行的顺序。
函数原型
aclError aclrtSetCurrentContext(****aclrtContext context)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| context | 输入 | 指定线程当前的Context。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: Context管理
aclrtGetCurrentContext
函数功能
获取线程的Context,同步接口。
如果用户多次调用aclrtSetCurrentContext接口设置当前线程的Context,则获取的是最后一次设置的Context。
函数原型
aclError aclrtGetCurrentContext(****aclrtContext *context)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| context | 输出 | 线程当前Context的指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: Context管理
aclrtCtxSetSysParamOpt
函数功能
设置当前Context中的系统参数值,同步接口。
约束说明
多次调用本接口,以最后一次设置的值为准。
函数原型
aclError aclrtCtxSetSysParamOpt(****aclSysParamOpt opt, int64_t value)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| opt | 输入 | 系统参数。 |
| value | 输入 | 系统参数值。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: Context管理
aclrtCtxGetSysParamOpt
函数功能
获取当前Context中的系统参数值,同步接口。
约束说明
系统参数无默认值,如果不调用aclrtCtxSetSysParamOpt接口设置系统参数的值,直接调用本接口获取系统参数的值,接口会返回失败。
函数原型
aclError aclrtCtxGetSysParamOpt(aclSysParamOpt opt, int64_t *value)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| opt | 输入 | 系统参数。 |
| value | 输出 | 存放系统参数值的内存的指针。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: Context管理
aclrtGetOverflowStatus
函数功能
获取当前Context下所有Stream上任务的溢出状态,并将状态值拷贝到用户申请的Device内存中。异步接口。
约束说明
本接口是异步接口,在调用之后,需调用aclrtSynchronizeStream接口阻塞应用程序运行,直到指定Stream中的溢出状态查询任务已完成。
函数原型
aclError aclrtGetOverflowStatus(void *outputAddr, size_t outputSize, aclrtStream stream)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| outputAddr | 输入&输出 | 用户申请的Device内存,需通过aclrtMalloc接口申请。 |
| outputSize | 输入 | 需申请的Device内存大小,单位Byte,固定大小为64Byte。 |
| stream | 输入 | 指定Stream,用于下发溢出状态查询任务。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: Context管理
aclrtResetOverflowStatus
函数功能
清除当前Context下所有Stream上任务的溢出状态。异步接口。
约束说明
本接口是异步接口,在调用之后,需调用aclrtSynchronizeStream接口阻塞应用程序运行,直到指定Stream中的溢出状态复位任务已完成。
函数原型
aclError aclrtResetOverflowStatus(aclrtStream stream)
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| stream | 输入 | 指定Stream,用于下发溢出状态复位任务。 |
返回值说明
返回0表示成功,返回其它值表示失败。
父主题: Context管理
在线提单