昇腾社区首页
中文
注册

BLAS公共接口

算子使用说明

若需使用BLAS算子,需先创建句柄,调用对应算子的plan接口初始化该句柄对应的算子配置并进行绑定,再调用BLAS公共接口“asdBlasGetWorkspaceSize”接口获取计算所需workspace大小以及包含了算子计算流程的执行器,然后调用“asdBlasSetWorkspace”给对应的plan设置需要workspaces,最后调用BLAS算子接口执行计算。计算完需要对plan进行销毁,以免造成内存泄漏。具体调用示例参见算子调用示例

公共接口说明

asdBlasCreate

功能描述:创建全局唯一的handle。

接口原型:AspbStatus asdBlasCreate(asdBlasHandle &handle)

参数列表:

参数名称

Input/Output

类型

描述

handle

Input

asdBlasHandle

asdBlasCreate接口的句柄。

asdBlasSetStream

功能描述:将使用runtime创建的stream与具体的plan实例进行绑定。

接口原型:AspbStatus asdBlasSetStream(asdBlasHandle handle, void *stream)

参数列表:

参数名称

Input/Output

类型

描述

handle

Input

asdBlasHandle

asdBlasSetStream接口的句柄。

stream

Input

void *

指向流对象的指针。

asdBlasDestroy

功能描述:销毁创建的plan并释放对应plan申请的资源。

接口原型:AspbStatus asdBlasDestroy(asdBlasHandle handle)

参数列表:

参数名称

Input/Output

类型

描述

handle

Input

asdBlasHandle

asdBlasDestroy接口的句柄。

asdBlasSetWorkspace

功能描述:给对应的plan设置所需要workspace。

接口原型:AspbStatus asdBlasSetWorkspace(asdBlasHandle handle, void *workSpace);

参数列表:

参数名称

Input/Output

类型

描述

handle

Input

asdBlasHandle

asdBlasSetWorkspace接口的句柄。

workSpace

Input

void *

指针,指向一个存储所需的工作空间大小的变量。

asdBlasSynchronize

功能描述:等待算子执行。

接口原型:AspbStatus asdBlasSynchronize(asdBlasHandle handle)

参数列表:

参数名称

Input/Output

类型

描述

handle

Input

asdBlasHandle

asdBlasSynchronize接口的句柄。

asdBlasGetWorkspaceSize

功能描述:计算所需workspace大小以及包含了算子计算流程的执行器。

接口原型:AspbStatus asdBlasGetWorkspaceSize(asdBlasHandle handle, size_t &workspaceSize);

参数列表:

参数名称

Input/Output

类型

描述

handle

Input

asdBlasHandle

asdBlasGetWorkspaceSize接口的句柄。

workspaceSize

Input

size_t

所需工作空间大小。