---
title: 概念说明
description: "KUPL矩阵编程模块对外提供了Tensor概念及基于Tensor对象的一系列操作行为，从而便于用户在鲲鹏硬件平台上快速使能发挥Matrix computation能力加速矩阵乘相关算子。具体操作行为包含针对Tensor对象的取下标、相加、标量乘等operator操作，除此之外还有基于Tensor对象的KUPL MMA和Copy操作，其中MMA实现了D=A*B+C形式的矩阵乘kernel能力，Copy实现了不同内存空间排布的矩阵之间快速转置或者预取的能力。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpckit/devg/KunpengHPCKit_developer_104.html
sourcePath: /source/zh/kunpenghpcs/hpckit/devg/KunpengHPCKit_developer_104.html
indexId: a541ca10c20f2c0cd5b6f201004f6177cad7c90f9f484af79c6c45b5525b584e67
---
# 概念说明

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指令的支持，实现上存在差异。
