当前位置: 首页 > news >正文

昇腾C矩阵量化向量接口

SetQuantVector【免费下载链接】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 CorexAtlas 训练系列产品xKirin X90√功能说明本接口提供对输出矩阵采用向量进行量化或反量化的功能即对于输入shape为[1, N]的参数向量N值为Matmul矩阵计算时M/N/K中的N值对输出矩阵的每一列都采用该向量中对应列的系数进行量化或反量化。Matmul反量化场景在Matmul计算时左、右矩阵的输入为int8_t或int4b_t类型输出为half类型或者左、右矩阵的输入为int8_t类型输出为int8_t类型。该场景下输出C矩阵的数据从CO1搬出到Global Memory时会执行反量化操作将最终结果反量化为对应的half或int8_t类型。Matmul量化场景在Matmul计算时左、右矩阵的输入为half或bfloat16_t类型输出为int8_t类型。该场景下输出C矩阵的数据从CO1搬出到Global Memory时会执行量化操作将最终结果量化为int8_t类型。函数原型量化参数的存储位置为GM__aicore__ inline void SetQuantVector(const GlobalTensoruint64_t quantTensor)量化参数的存储位置为L1 Buffer__aicore__ inline void SetQuantVector(const LocalTensoruint64_t quantTensor)Atlas 200I/500 A2 推理产品暂不支持量化参数的存储位置为L1 Buffer。Atlas 推理系列产品AI Core暂不支持量化参数的存储位置为L1 Buffer。Kirin X90暂不支持量化参数的存储位置为L1 Buffer。参数说明参数名输入/输出描述quantTensor输入量化或反量化运算时的参数向量。参数向量的存储位置为GM或L1 Buffer。将float数据类型的量化计算参数scale、offset转换为uint64类型的入参的计算公式如下quantTensor为64位格式初始为0。scale按bit位取高19位截断存储于quantTensor的bit位32位处并将46位修改为1。quantTensor quantTensor ∣ (scale 0xFFFFE000) ∣ (1 ≪ 46)根据offset取值进行后续计算若offset不存在不再进行后续计算。若offset存在将offset值处理为int范围为[-256, 255]。_o__f__f__s__e__t _M__a__x(M__i__n(I__N__T(R__o__u__n__d(o__f__f__s__e__t)), 255), −256)再将offset按bit位保留9位并存储于quantTensor的37到45位。quantTensor (quantTensor 0__x__4000__F__F__F__F__F__F__F__F) ∣ ((o__f__f__s__e__t 0__x__1__F__F_) ≪ 37)_返回值说明无约束说明需与SetDequantType保持一致。本接口必须在Iterate或者IterateAll前调用。调用示例REGIST_MATMUL_OBJ(pipe, GetSysWorkSpacePtr(), mm, tiling); // quantTensor量化或反量化运算时的Tensor支持的存储位置为GM和L1 mm.SetQuantVector(quantTensor); mm.SetTensorA(gm_a); mm.SetTensorB(gm_b); if (tiling.isBias) { matmulObj.SetBias(biasGlobal); } mm.IterateAll(gm_c); mm.End();【免费下载链接】asc-devkit本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言原生支持C和C标准规范主要由类库和语言扩展层构成提供多层级API满足多维场景算子开发诉求。项目地址: https://gitcode.com/cann/asc-devkit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
http://www.gsyq.cn/news/1330944.html

相关文章:

  • Ascend C矩阵乘法SetOrgShape接口
  • 杰和主板硬件级显示旋转技术:一体机竖屏适配原理与部署指南
  • AP微积分学习指南及相关书籍
  • 《超简单的微积分》、《简单微积分》阅读指北
  • 2026年四川自动售卖机运营市场品牌商业参考:技术与市场双维度评估 - 深度智识库
  • Perplexity习语查询功能突然失效?紧急修复手册:5分钟定位LLM微调偏差、缓存污染与地域策略冲突
  • 如何在Windows11中自定义快捷方式?提升操作效率的技巧
  • 什么是备忘录模式?一文详解
  • 哪个牌子的 pos 刷卡机靠谱?个人自用机正规机构扫码刷卡避坑指南 - 资讯速览
  • 告别Eclipse插件!在Maven项目中用antlr4-maven-plugin自动生成解析器代码(附完整pom.xml配置)
  • NetCoMi微生物网络分析:从数据到洞察的完整解决方案
  • 告别手动录入!用JavaScript+SQL实现泛微E9明细表数据自动填充(附完整代码)
  • 从AIGC到AIGS:Java团队的AI落地之路
  • PhantomJS+jsEncrypter插件:手把手教你打造BurpSuite专属密码加密爆破模块
  • FunASR与HuggingFace无缝对接:5分钟搞定跨平台语音识别部署
  • Linux more 命令详解:从基础分页到高级文本查看技巧
  • MATLAB文件选择对话框uigetfile()保姆级教程:从单文件到多选的完整配置流程
  • Sora 2时间轴与Blender NLA编辑器深度对齐指南(2024.06.12 Blender官方补丁前最后兼容方案)
  • FunASR工业级应用案例:金融客服语音分析系统
  • 医疗器械厂家可以定制中频治疗仪款式吗 - 舒雯文化
  • 三星固件下载终极指南:Bifrost跨平台工具免费获取官方系统
  • 从一次gRPC连接失败,聊聊Go语言中net.Listen(‘tcp‘, ‘127.0.0.1:9001‘)背后的网络编程哲学
  • 告别马赛克!用SPIN超像素Transformer,5分钟看懂轻量级图像超分新玩法
  • 哪个牌子的 pos 刷卡机靠谱?个人刷卡机正规机构大额刷卡,无年费对比测评 - 资讯速览
  • CANN/asc-devkit核间同步API文档
  • 2026 在线水印去除工具怎么选?6款实用方法对比测评
  • 2026开窗包装盒厂家推荐:大健康定制领域标杆企业测评 - 资讯速览
  • CubeCL 核心架构揭秘:基于立方体拓扑的跨平台计算模型
  • 深入理解DocQuery架构:LayoutLM模型与零样本学习原理
  • 2026年去水印工具推荐:6大免费去水印工具详测,这款处理速度快到离谱 - 科技热点发布