---
title: 简介
description: "- 本算子库提供的算子均为CANN内置算子，您可以直接调用；如需自定义算子，请参考《Ascend C算子开发(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/programug/Ascendcopdevg/docs/guide/入门教程/Ascend-C概述与学习路径.md)》完成算子开发。"
url: https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/latest/API/aolapi/context/ops-transformer/aclnn_quant_lightning_indexer_v2_metadata.md
sourcePath: /source/zh/CANNCommunityEdition/920beta1/API/aolapi/operatorlist_00001.html
indexId: 1a62036e03bdf4b048362bc1f30c047a14698d8983d54c5eb5cabb33d719435c75
---
# 简介

#### 概述

- 本算子库提供的算子均为CANN内置算子，您可以直接调用；如需自定义算子，请参考《Ascend C算子开发(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/programug/Ascendcopdevg/docs/guide/入门教程/Ascend-C概述与学习路径.md)》完成算子开发。
- CANN算子源码已在  Gitcode CANN开源项目(https://gitcode.com/cann)
开放，您可以进一步了解算子开发和贡献流程。


CANN(https://www.hiascend.com/cann)（Compute Architecture for Neural Networks）提供了一系列丰富且经过深度优化、硬件亲和的高性能算子，可直接应用于AI业务，为网络在AI处理器上的加速计算奠定了基础。

算子库在CANN架构中的位置如图1所示，主要包含如下算子库：

- Math库：数值计算类算子库，提供不同维度的数值处理与计算算子，例如Add、Abs等，覆盖张量形态变换、基础数学运算、随机数生成等场景。
- NN库：神经网络类算子（Neural Network），提供深度学习模型中常见的计算算子，例如卷积、矩阵乘、激活函数、归一化等。
- CV库：计算机视觉类算子（Computer Vision），提供图像处理和目标检测算子，例如GridSample等。
- Transformer库：大模型计算类算子，提供Transformer核心算子，例如Attention类、LayerNorm类、通算融合类（简称MC2）等。
- RAS库：安全和维测类算子（Reliability, Availability and Serviceability），提供可靠性、可用性和可维护性等能力，包含安全、加密以及维测相关算子。
- Opbase库：所有算子库依赖的基础框架库，提供基础调度能力（如aclTensor创建/释放、workspace复用等）和公共依赖能力。

图1 算子库架构图

如需调用算子库中的算子，CANN提供了多种调用方式，请根据实际情况选择。

- aclnn API：针对全量算子，提供了一套相应的C API，方便Host侧调用，简称单算子API（或者算子Host API）调用方式，调用流程如  图2
所示。
- PyTorch API：针对非PyTorch原生但常见的大模型算子，提供了一套兼容PyTorch原生风格的torch_extension API。该API借助JIT机制（torch.utils.cpp_extension.load）在首次调用时即时编译C++ Kernel Wrapper，将PyTorch函数桥接到aclnn API。同时，它还通过GE Converter支持TorchAir图模式。
- GE图模式调用：通过算子Ascend IR（Intermediate Representation）定义，以构图方式实现算子调用，调用原理参见《图开发(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/programug/graphdevg/atlasag_25_0081.html)》中“  编程指南(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/programug/graphdevg/docs/zh/user_guides/graph_dev/construct_graph/op_proto_definition.md)
“，这里不详细阐述。

图2 aclnn API调用流程


#### 使用说明

- V版本演进：功能演进过程中，算子或算子API可能会存在多个V版本，使用时请选择最高V版本（高版本默认兼容低版本能力）。
- 对于算子文档中未声明支持的场景（如产品型号、数据类型、数据格式、数据维度等），不推荐开发者使用，当前版本不保证算子调用效果。
- 昇腾虚拟化实例：当前版本融合类算子暂不支持该功能。融合类算子是指由多个独立基础“小算子”（如向量Vector、矩阵Cube等）融合而成，其功能与多个小算子等效，而性能通常更优，例如Flash Attention、通算融合算子（简称MC2算子）等。


#### 使用向导

阅读手册正文前，请先熟悉向导表，了解手册大纲和章节作用，以帮助您快速了解算子分类、适用场景等信息。


**表1 使用向导**

| 使用场景 | 操作指引 | 说明 |
| --- | --- | --- |
| 算子库依赖哪些头文件/库文件 | 头文件和库文件说明 | 介绍不同方式调用算子依赖的头文件或库文件。 |
| 算子库基础领域知识 | 基本概念(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/API/aolapi/context/common/两段式接口.md) | 介绍算子的基本概念、术语及关键技术，帮助用户更好地理解算子文档。 |
| 算子API调用时依赖哪些公共接口 | 公共接口 | 调用算子接口时依赖的公共Meta接口，如创建aclTensor、aclScalar、aclIntArray等。 |
| 算子库中有哪些aclnn API | Math类接口(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/API/aolapi/context/ops\-math/op\_api\_list.md) | 数学计算类算子库，提供Add、Abs等算子对应的C API。 |
| 算子库中有哪些aclnn API | NN类接口(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/API/aolapi/context/ops\-nn/op\_api\_list.md) | Neural Network，即神经网络类算子库，提供Matmul等算子对应的C API。 目前该类算子API在整个算子库中占最大比重。 |
| 算子库中有哪些aclnn API | CV类接口(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/API/aolapi/context/ops\-cv/op\_api\_list.md) | Computer Vision，即计算机视觉类算子库，提供GridSample等算子对应的C API。 |
| 算子库中有哪些aclnn API | Transformer类接口(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/API/aolapi/context/ops\-transformer/op\_api\_list.md) | 大模型计算类算子库，提供FlashAttention、MC2（通算融合）、MoE（Mixture of Experts）等算子对应的C API。 |
| 算子库中有哪些aclnn API | RAS类接口(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/920beta1/API/aolapi/context/ops\-ras/op\_api\_list.md) | 安全和维测类算子（Reliability, Availability and Serviceability），提供可靠性、可用性和可维护性等能力，包含安全、加密以及维测相关算子。 |
| 算子库有哪些Torch扩展接口 | 算子接口（torch\_extension）(https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/latest/API/aolapi/context/ops\-transformer/torch\_api\_list.md) | 针对非PyTorch原生但常见的大模型算子，提供PyTorch API。通过JIT即时编译C++ Kernel Wrapper，将PyTorch函数桥接到aclnn API，同时通过GE Converter支持TorchAir图模式。 |
| 算子库中Ascend IR算子规格信息 | Ascend IR算子规格说明 | 罗列了基于Ascend IR定义的算子信息。 |
| 算子库相关知识 | 附录 | 提供开发aclnn API依赖的nnopbase接口 提供算子开发/调用过程中依赖的op\_common公共接口 介绍算子性能提升方法 算子调用过程中常见FAQ和案例 |
