CANN/asc-devkit SetFmatrix矩阵配置接口 # SetFmatrix【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit产品支持情况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_operator_mm_intf.h。用于调用LoadData卷积数据搬运时设置FeatureMap的属性描述。LoadData卷积数据搬运的模板参数isSetFMatrix设置为false时表示LoadData卷积数据搬运传入的FeatureMap的属性包括l1H、l1W、padList参数介绍参考表3 LoadData3DParamsV1结构体内参数说明、表4 LoadData3DParamsV2结构体内参数说明将不生效开发者需要通过该接口进行设置。函数原型__aicore__ inline void SetFmatrix(uint16_t l1H, uint16_t l1W, const uint8_t padList[4], const FmatrixMode fmatrixMode)参数说明表1参数说明参数名称输入/输出含义l1H输入源操作数height取值范围l1H∈[1, 32767]。l1W输入源操作数width取值范围l1W∈[1, 32767]。padList输入padding列表 [padding_left, padding_right, padding_top, padding_bottom]每个元素取值范围[0,255]。默认为{0, 0, 0, 0}。fmatrixMode输入用于控制LoadData指令从left还是right寄存器获取信息。FmatrixMode类型定义如下。当前只支持FMATRIX_LEFT左右矩阵均使用该配置。enum class FmatrixMode : uint8_t {FMATRIX_LEFT 0,FMATRIX_RIGHT 1,};返回值说明无约束说明该接口需要配合LoadData卷积数据搬运接口一起使用需要在LoadData卷积数据搬运接口之前调用其中fmatrixMode参数需要和LoadData卷积数据搬运接口参数中的fMatrixCtrl值保持一致。操作数地址对齐要求请参见通用地址对齐约束。调用示例完整调用示例参考SetLoadDataBoundary样例以下为样例中的关键代码片段示例AscendC::LoadData3DParamsV2U loadData3dParams; loadData3dParams.l1W 1; loadData3dParams.l1H K; loadData3dParams.channelSize N; loadData3dParams.kExtension N; loadData3dParams.mExtension K; loadData3dParams.kStartPt 0; loadData3dParams.mStartPt 0; loadData3dParams.strideW 1; loadData3dParams.strideH 1; loadData3dParams.filterW 1; loadData3dParams.filterH 1; loadData3dParams.dilationFilterW 1; loadData3dParams.dilationFilterH 1; loadData3dParams.enTranspose true; loadData3dParams.enSmallK false; loadData3dParams.padValue 0; loadData3dParams.filterSizeW 0; loadData3dParams.filterSizeH 0; loadData3dParams.fMatrixCtrl false; uint8_t padList[AscendC::PAD_SIZE] {0, 0, 0, 0}; static constexpr AscendC::IsResetLoad3dConfig LOAD3D_CONFIG {false, false}; AscendC::SetFmatrix(N, 1, padList, AscendC::FmatrixMode::FMATRIX_LEFT); // 使能FM内存排布模式从left寄存器获取信息 #if defined(__NPU_ARCH__) (__NPU_ARCH__ 2201) AscendC::SetLoadDataRepeat({0, 1, 0}); AscendC::SetLoadDataBoundary(0); AscendC::SetLoadDataPaddingValue(0); AscendC::LoadDataU, LOAD3D_CONFIG(b2, rightMatrix, loadData3dParams); #elif defined(__NPU_ARCH__) (__NPU_ARCH__ 3510) uint16_t dstStride DivCeil(N, 16); AscendC::SetLoadDataRepeatWithStride({0, 1, 0, dstStride}); AscendC::SetLoadDataPaddingValue(0); AscendC::LoadDataWithStrideU, LOAD3D_CONFIG(b2, rightMatrix, loadData3dParams); #endif【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

最新新闻

Base64与文件对象互转:前端开发实战指南

Base64与文件对象互转:前端开发实战指南

1. 为什么需要Base64与文件对象互转在Web开发中,我们经常遇到这样的场景:用户上传图片后需要即时预览,但服务器尚未保存文件;或者需要将Canvas绘图结果保存为文件。这些场景都涉及到二进制数据与文本格式的相互转换。Base64编码的…

2026/7/16 14:41:38
3个关键技巧:如何让Mac外接鼠标获得触控板般的丝滑滚动体验?

3个关键技巧:如何让Mac外接鼠标获得触控板般的丝滑滚动体验?

3个关键技巧:如何让Mac外接鼠标获得触控板般的丝滑滚动体验? 【免费下载链接】Mos 一个用于在 macOS 上平滑你的鼠标滚动效果或单独设置滚动方向的小工具, 让你的滚轮爽如触控板 | A lightweight tool used to smooth scrolling and set scroll directio…

2026/7/16 14:41:38
Blender高效可视化操作指南:Screencast Keys插件完全教程

Blender高效可视化操作指南:Screencast Keys插件完全教程

Blender高效可视化操作指南:Screencast Keys插件完全教程 【免费下载链接】Screencast-Keys Blender Add-on: Screencast Keys 项目地址: https://gitcode.com/gh_mirrors/sc/Screencast-Keys 还在为录制Blender教程时观众看不清你的操作而烦恼吗&#xff1f…

2026/7/16 14:41:38
ADB助手:解锁Android手机管理新境界

ADB助手:解锁Android手机管理新境界

一、ADB助手:你的Android手机全能管家 ADB助手是一款功能强大且实用的Android手机管理工具,它集成了多种便捷功能,能够帮助用户更高效、更深入地管理自己的手机。无论是日常的文件管理、应用操作,还是高级的调试与系统优化&#…

2026/7/16 14:41:38
如何用JavaScript为中文学习者创建生动的汉字书写动画?

如何用JavaScript为中文学习者创建生动的汉字书写动画?

如何用JavaScript为中文学习者创建生动的汉字书写动画? 【免费下载链接】hanzi-writer Chinese character stroke order animations and practice quizzes 项目地址: https://gitcode.com/gh_mirrors/ha/hanzi-writer Hanzi Writer 是一个免费开源的 JavaScr…

2026/7/16 14:41:38
基于YOLO的车型识别系统开发与优化实践

基于YOLO的车型识别系统开发与优化实践

1. 项目概述这个基于YOLO系列模型的常见车型识别系统是一个结合了深度学习目标检测技术和图形用户界面的完整解决方案。系统支持YOLOv5到YOLOv8多个版本的模型,使用Python语言开发,并采用PySide6构建了直观的图形界面。在实际应用中,车型识别…

2026/7/16 14:36:37

月新闻