SetMaskCount
产品支持情况
- Ascend 950PR/Ascend 950DT:支持
- Atlas A3 训练系列产品/Atlas A3 推理系列产品:支持
- Atlas A2 训练系列产品/Atlas A2 推理系列产品:支持
- Atlas 200I/500 A2 推理产品:支持
- Atlas 推理系列产品 AI Core:支持
- Atlas 推理系列产品 Vector Core:不支持
- Atlas 训练系列产品:不支持
- Kirin X90:支持
- Kirin 9030:支持
功能说明
头文件路径为:"basic_api/kernel_common.h"。
设置Mask模式为Counter模式。该模式下,不需要开发者去感知迭代次数、处理非对齐的尾块等操作,可直接传入计算数据量,实际迭代次数由Vector计算单元自动推断。本接口推荐配合API中isSetMask模板参数使用,当isSetMask为false时,支持用户调用本接口手动管理Counter模式,并通过SetVectorMask设置Counter模式下参与计算的元素个数。
函数原型
C++
__aicore__ inline void SetMaskCount()
参数说明
无
返回值说明
无
约束说明
本接口推荐配合API中IsSetMask模板参数使用,当IsSetMask为false时,支持用户调用本接口手动管理Counter模式并通过SetVectorMask设置Counter模式下参与计算的元素个数。
设置为Counter模式的场景,需要在矢量计算使用完之后调用SetMaskNorm将Mask模式恢复为Normal模式,以避免影响后续计算。
- 针对Ascend 950PR/Ascend 950DT,Mask为软仿实现,Tensor前n个数据计算接口内部不会将Mask模式切换为Normal模式。若当前场景已通过本接口设置为Counter模式,接口调用后仍为Counter模式;后续计算需要使用Normal模式时,需手动调用SetMaskNorm进行设置。
调用示例
请参考Counter模式调用示例。