开发者
资源
Rate This Document
Findability
Accuracy
Completeness
Readability
在线提单
论坛求助

概念说明

KUPL矩阵编程模块对外提供了Tensor概念及基于Tensor对象的一系列操作行为,从而便于用户在鲲鹏硬件平台上快速使能发挥Matrix computation能力加速矩阵乘相关算子。具体操作行为包含针对Tensor对象的取下标、相加、标量乘等operator操作,除此之外还有基于Tensor对象的KUPL MMA和Copy操作,其中MMA实现了D=A*B+C形式的矩阵乘kernel能力,Copy实现了不同内存空间排布的矩阵之间快速转置或者预取的能力。

KUPL矩阵编程模块相关概念如下:

  • Int,整数包装类型,用于传递编译期整型常量。
  • Ops,枚举方法包装类型,用于传递编译期枚举常量。
  • Coord,表示矩阵下标,用于Tensor对象的取下标操作。
  • Shape,表示矩阵尺寸或计算尺寸。
  • Stride,表示矩阵元素行/列跨度。
  • Layout,表示矩阵内存布局。
  • Tensor,表示矩阵对象,包含源数据与布局。

使用KUPL矩阵编程模块的接口,需在支持Matrix computation指令的环境下安装HPCKit。

下述编程接口说明中的示例均为基于Bisheng版本KUPL矩阵编程接口实现;GCC版本受限于Matrix computation指令的支持,实现上存在差异。