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

CANN/cannbot-skills HFusion属性枚举速查

属性与枚举速查

【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills

1. 概述

HFusion 方言定义了丰富的枚举和属性,用于控制逐元操作的函数选择、类型转换、舍入模式、原子操作类型等。本文档提供完整的速查表。

源码参考:HFusionEnums.td、HFusionBase.td、HFusionAttrs.td

2. UnaryFn(一元函数枚举)

枚举值整数值说明
relu0ReLU 激活
sqrt1平方根
rsqrt2平方根倒数
rec3倒数
vnot4按位取反
tanh5双曲正切
sin6正弦
cos7余弦
atan8反正切
tan9正切
absi10绝对值
erf11误差函数
log212以 2 为底对数
log1013以 10 为底对数
log1p14log(1+x)
exp2152^x
expm116e^x - 1
ilogb17指数部分

属性语法:unary_fn = <sqrt>

3. BinaryFn(二元函数枚举)

枚举值整数值说明
vor0按位或
vand1按位与
vxor2按位异或
minf3浮点最小值
maxf4浮点最大值
powf5浮点幂
mod6取模
shli7左移
shrsi8算术右移
shrui9逻辑右移
ldexp10ldexp
ceildivsi11有符号向上取整除法
ceildivui12无符号向上取整除法
floordivsi13有符号向下取整除法
powi14整数幂
minnumf15IEEE 浮点最小值
maxnumf16IEEE 浮点最大值
modui17无符号取模
divfhp18高精度除法

属性语法:binary_fn = <vand>

4. CompareFn(比较函数枚举)

枚举值整数值说明
veq0等于
vne1不等于
vle2有符号小于等于
vlt3有符号小于
vge4有符号大于等于
vgt5有符号大于
vule6无符号小于等于
vuge7无符号大于等于
vugt8无符号大于
vult9无符号小于

属性语法:compare_fn = <veq>

5. TernaryFn(三元函数枚举)

枚举值整数值说明
select0条件选择

属性语法:ternary_fn = <select>

6. TypeFn(类型转换函数枚举)

枚举值整数值说明
cast_signed0有符号类型转换
cast_unsigned1无符号类型转换
bitcast2位转换

属性语法:type_fn = <cast_signed>

7. RoundMode(舍入模式枚举)

枚举值整数值助记符说明
RINT0rint四舍五入到偶数(C 语言 rint)
ROUND1round四舍五入远离零(C 语言 round)
FLOOR2floor向负无穷取整(C 语言 floor)
CEIL3ceil向正无穷取整(C 语言 ceil)
TRUNC4trunc向零取整(C 语言 trunc)
ODD5odd向奇数取整(Von Neumann 舍入)
TRUNCWITHOVERFLOW6truncwithoverflow截断并检测溢出

属性语法:round_mode = <RINT>

8. UnsignedMode(无符号转换模式枚举)

枚举值整数值助记符说明
SI2SI0si2si有符号整数到有符号整数
SI2UI1si2ui有符号整数到无符号整数
UI2SI2ui2si无符号整数到有符号整数
UI2UI3ui2ui无符号整数到无符号整数

属性语法:unsigned_mode = <SI2SI>

9. AtomicKind(原子操作类型枚举)

枚举值整数值助记符说明
NONE0none非原子操作
ADD1add原子加
MAX2max原子有符号最大值
MIN3min原子有符号最小值
AND4and原子按位与
OR5or原子按位或
XOR6xor原子按位异或
CAS7cas原子比较并交换
XCHG8xchg原子交换
UMAX9umax原子无符号最大值
UMIN10umin原子无符号最小值

属性语法:atomic_kind = <add>

10. FusionKind(融合类型枚举)

枚举值整数值助记符说明
PureElemwise1PURE_ELEMWISE纯逐元融合
AnyPB2ANY_PB任意 Producer-Consumer 融合
LastAxisPBR3LAST_AXIS_PBR末轴 PBR 融合
AnyPBR4ANY_PBR任意 PBR 融合
SingleCube5SINGLE_CUBE单 Cube 融合
ShallowCV6SHALLOW_CV浅层 Cube-Vector 融合
ShallowVV7SHALLOW_VV浅层 Vector-Vector 融合
MixCV8MIX_CV混合 Cube-Vector 融合
MixC29MIX_C2双 Cube 混合融合
Unknown10UNKNOWN未知融合类型

11. 其他枚举

11.1 FlattenMode

枚举值整数值说明
Greedy1贪心展平模式
Tidy2整洁展平模式(带分析)

11.2 OutputMode

枚举值整数值说明
Multiple1多输出模式
Single2单输出模式
SingleAggressive3激进单输出模式

11.3 ReduceWithIndexKind

枚举值助记符说明
MINmin最小值归约
MAXmax最大值归约

11.4 CastMode

枚举值助记符说明
F32TOI8F32TOI8FP32 转 INT8
F32TOI16F32TOI16FP32 转 INT16
F16TOI8F16TOI8FP16 转 INT8
I64TOI32I64TOI32INT64 转 INT32
I64TOI16I64TOI16INT64 转 INT16
I64TOI8I64TOI8INT64 转 INT8
I32TOI16I32TOI16INT32 转 INT16
I32TOI8I32TOI8INT32 转 INT8
I16TOI8I16TOI8INT16 转 INT8

11.5 TaylerMode

枚举值助记符说明
SINsin正弦泰勒展开
ATANatan反正切泰勒展开

11.6 MmMapMode

枚举值助记符说明
CoreOpcore_op核心操作模式
MacroInstrmacro_instr宏指令模式

12. HFusion 属性列表

属性名助记符说明
FusionKindAttrfusion_kind融合类型
StrideAlignDimsAttrstride_align_dims步长对齐维度
StrideAlignValueInByteAttrstride_align_value_in_byte步长对齐字节数
MultiBufferAttrmulti_buffer多缓冲属性
BindSubBlockAttrbind_sub_block绑定子 Block
ReduceComposeAttrreduce_composed归约组合
ReduceWithIndexOpAttrreduce_with_index_kind带索引归约类型
ReturnOperandNumAttrreturn_operand_num返回操作数编号
PaddingOptionAttr-填充选项(zero/nan)
CacheModifierAttr-缓存修饰符
EvictionPolicyAttr-驱逐策略

12.1 PaddingOption

枚举值整数值助记符说明
PAD_ZERO1zero零填充
PAD_NAN2nanNaN 填充

12.2 CacheModifier

枚举值整数值助记符说明
NONE1none无缓存修饰
CA2ca缓存所有
CG3cg缓存全局
WB4wb写回
CS5cs缓存流
WT6wt写穿透
CV7cv缓存易失

12.3 EvictionPolicy

枚举值整数值助记符说明
NORMAL1evict_normal正常驱逐
EVICT_FIRST2evict_first优先驱逐
EVICT_LAST3evict_last最后驱逐

【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/1168796/

相关文章:

  • TMC7300与dsPIC33EP的有刷直流电机控制系统设计
  • 免费享受全网无损音乐的终极方案:洛雪音乐开源音源全攻略
  • API设计的艺术与科学:RESTful、GraphQL与gRPC的实战选型指南
  • 抖音内容批量保存:从单个视频到全量归档的自动化解决方案
  • 百年杭味非遗点心 轻甜健康风物名片 —— 科普杭州特色特产杨先生糕点 - 品牌测评网
  • STM32L151ZD与L9958电机控制方案解析
  • 指纹浏览器 WebRTC 防护 3 种方案对比:源码修改、命令行参数与配置禁用
  • 2026你7月杭州GEO/SEO优化公司全维度测评:技术、询盘、售后横向打分榜单 - 商业新知
  • 3步解锁华硕笔记本AniMe Matrix个性化动画:G-Helper轻量级控制实践
  • NVIDIA-Nemotron-3-Super-120B-A12B-OptiQ-2bit安全部署指南:许可证要求与合规性检查
  • ☁️ 极光鸟IM|多租户 SaaS 应用解决方案,打造安全高效的企业级通讯底座
  • 如何高效使用MediaCrawler:从零开始的完整自媒体数据采集教程
  • 丝杆选型常规校核标准是什么
  • 004、模拟增益与数字增益:增益分配策略对信噪比和图像质量的实战影响
  • TexturePanner核心功能深度解析:从基础滚动到高级扫描线的完整使用手册
  • JSON API Serializer错误处理指南:构建健壮的API错误响应
  • iPhone性能解锁终极指南:如何安全禁用过热保护并提升游戏体验
  • 一、ZooKeeper集群安装
  • 东芝TC78H651AFNG与PIC18F45K22的直流电机驱动方案
  • 2026 年 7 月表主必看:杭州卡地亚修表门店地址在哪?到店做机芯保养前的准备事项与服务项目全解析 建议收藏 - 卡地亚中国售后中心
  • AutoRemesher在建筑信息模型中的应用:如何优化BIM模型的拓扑
  • CANNBot Skills HFusion变换Pass总览
  • FFmpeg H.264 裁剪与拼接:SPS/PPS 数据丢失的 2 种修复方案与原理
  • 3分钟掌握Umi-OCR:免费离线文字识别工具终极指南
  • 深度解析Bytecode Viewer:Java字节码逆向工程实战指南
  • 2026 温岭起重设备出租 吊车叉车租赁本地博主真实测评榜单 - LYL仔仔
  • PrimeQA社区贡献指南:如何为这个顶级开源项目做出贡献
  • 如何快速构建跨平台音乐歌词提取工具:完整技术方案与开源解决方案
  • STM32L152RE与PAM8904的低功耗蜂鸣器驱动方案
  • 嵌入式AT命令解析难题的DMA驱动解决方案:STM32串口通信效率革命