CANNBot Skills HFusion变换Pass总览
HFusion 变换 Pass 总览【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills1. 概述HFusion 方言提供了 40 个变换 Pass覆盖操作融合、自动调度、自动向量化、类型合法化、Tiling 数据打包等多个编译阶段。本文档列出所有 Pass 的名称和功能简述。源码参考Passes.td、Passes.h2. 融合与调度 PassPass 名称作用域功能简述hfusion-fuse-opsModuleOp张量上的操作融合将可融合操作 outline 为独立函数hfusion-auto-scheduleModuleOp自动调度融合 Kernel生成 Tiling 参数hfusion-infer-func-fusion-kindFuncOp推断函数的融合类型hfusion-infer-out-shapesModuleOp生成输出张量形状推断函数hfusion-compose-multi-reduceFuncOp组合多个归约为单个操作hfusion-decompose-multiFuncOp将多操作分解为单操作hfusion-pre-vectorization-fusionFuncOp向量化前的逐元操作融合hfusion-eliminate-duplicate-funcsModuleOp消除融合后的重复函数3. 向量化 PassPass 名称作用域功能简述hfusion-auto-vectorizeModuleOp自动向量化 Linalg 命名操作hfusion-auto-vectorize-v2ModuleOp第二版自动向量化Tile Fuse Vectorizehfusion-generic-unrollerFuncOp非可向量化 Linalg 操作的展开hfusion-pull-slice-into-vector-functionModuleOp将 extract_slice/insert_slice 拉入 VF 函数outline-vector-functionModuleOpOutline 向量函数hfusion-vectorize-opsModuleOp向量化 HFusion 操作remove-mask-from-unaligned-reduction-loopFuncOp移除未对齐归约循环的掩码4. 类型合法化 PassPass 名称作用域功能简述hfusion-legalize-scalarFuncOp将标量操作合法化为张量操作hfusion-legalize-bf16FuncOp将 BF16 类型合法化为 FP32hfusion-legalize-fp8FuncOp将 FP8 类型合法化为 FP32hfusion-legalize-boolModuleOp将 int8/int1 布尔类型合法化hfusion-downgrade-fp64FuncOp将 FP64 常量降级为 FP32hfusion-normalize-opsFuncOp规范化 HFusion 操作hfusion-normalize-slice-opsFuncOp规范化 Slice 操作5. Tiling 与数据打包 PassPass 名称作用域功能简述hfusion-pack-tiling-dataModuleOp将动态 Tiling 信息打包为结构体hfusion-constantize-tiling-dataModuleOp在 Tiling 和 Device 函数间传播常量hfusion-add-ffts-addrModuleOp添加 FFTS 基地址到函数参数6. 形状与参数变换 PassPass 名称作用域功能简述hfusion-tensor-results-to-out-paramsModuleOp将张量结果移至函数输出参数hfusion-hoist-tensor-emptyModuleOp将 tensor.empty 提升到函数参数并合并hfusion-simplify-vf-argModuleOp简化 VF 函数参数hfusion-merge-vfModuleOp合并 VF 函数hfusion-fold-unit-dimsFuncOp折叠 Linalg 操作中的单位维度7. 操作变换 PassPass 名称作用域功能简述hfusion-convert-generic-to-namedFuncOp将 Linalg generic 转换为命名操作hfusion-flatten-opsFuncOp展平 Linalg 和 HFusion 操作hfusion-inline-brcFuncOp内联广播类操作hfusion-outline-single-opFuncOpOutline 单个 Linalg 操作为 Kernelhfusion-simplify-opsFuncOp简化操作hfusion-reorder-opsFuncOp按 BFS 重排操作hfusion-generalizeFuncOp将 HFusion 操作转换为 linalg.generichfusion-decomposeFuncOp分解实现 AggregatedOpInterface 的操作8. 缓存与符号 PassPass 名称作用域功能简述hfusion-cache-ioFuncOp缓存输入输出参数hfusion-cache-io-for-return-argFuncOp缓存直接返回的参数hfusion-recache-ioFuncOp重新缓存 IOhfusion-remove-cache-ioFuncOp移除缓存 IOhfusion-fold-symbolic-dimFuncOp用 hfusion::SymbolicDimOp 替换 tensor.dimhfusion-unfold-symbolic-dimFuncOp将 SymbolicDimOp 替换为符号参数hfusion-drop-symbolsFuncOp丢弃操作中的 ranked tensor 符号9. Host 函数与 Triton 适配 PassPass 名称作用域功能简述hfusion-wrap-host-funcModuleOp为 Host 辅助函数创建包装函数adapt-triton-kernelModuleOp适配 Triton 入口 Kernel10. 关键 Pass 选项10.1 hfusion-fuse-ops选项类型默认值说明output-modeOutputModeMultipleOutline 函数输出模式fusion-modeFusionKindUnknown融合类型always-inlineboolfalse始终内联 outline 函数move-out-to-parambooltrue将张量输出移至参数max-horizontal-fusion-sizeint-1最大水平融合大小multi-kernelboolfalse启用多 Kernel outlineenable-symbol-analysisboolfalse启用符号分析10.2 hfusion-auto-vectorize选项类型默认值说明vector-lengthunsigned256向量长度字节peel-loopsboolfalse尝试剥离循环max-vectorize-axesint64_t-1最大向量化轴数tree-reduceboolfalse使用树形归约10.3 hfusion-flatten-ops选项类型默认值说明flatten-modeFlattenModeGreedy展平模式skip-hostboolfalse跳过 Host 函数multi-dynamic-shapebooltrue折叠多个动态形状register-basedboolfalse使用基于寄存器的展平模式skip-scopebooltrue存在 scope 时跳过10.4 hfusion-auto-vectorize-v2选项类型默认值说明vector-lengthunsigned256向量长度字节max-fused-opsunsigned15单个融合节点最大操作数enable-multiple-consumer-fusionboolfalse启用多消费者融合【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

终极游戏修复工具:彻底解决GTA IV完整版技术问题的完整指南

终极游戏修复工具:彻底解决GTA IV完整版技术问题的完整指南

终极游戏修复工具:彻底解决GTA IV完整版技术问题的完整指南 【免费下载链接】GTAIV.EFLC.FusionFix This project aims to fix or address some issues in Grand Theft Auto IV: The Complete Edition 项目地址: https://gitcode.com/gh_mirrors/gt/GTAIV.EFLC.Fu…

2026/7/11 17:35:20阅读更多 →
为什么选择MLGO?LLVM机器学习优化框架的终极优势分析

为什么选择MLGO?LLVM机器学习优化框架的终极优势分析

为什么选择MLGO?LLVM机器学习优化框架的终极优势分析 【免费下载链接】ml-compiler-opt Infrastructure for Machine Learning Guided Optimization (MLGO) in LLVM. 项目地址: https://gitcode.com/gh_mirrors/ml/ml-compiler-opt 在当今编译器技术飞速发展…

2026/7/11 17:35:20阅读更多 →
终极指南:如何免费下载Steam创意工坊模组 - WorkshopDL完整教程

终极指南:如何免费下载Steam创意工坊模组 - WorkshopDL完整教程

终极指南:如何免费下载Steam创意工坊模组 - WorkshopDL完整教程 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 还在为GOG、Epic等非Steam平台无法下载Steam创意工坊…

2026/7/11 17:35:20阅读更多 →
终极etmem内存优化技巧:openEuler存储文档教你设置最佳换出阈值

终极etmem内存优化技巧:openEuler存储文档教你设置最佳换出阈值

终极etmem内存优化技巧:openEuler存储文档教你设置最佳换出阈值 【免费下载链接】Storage-docs Documentation Repository Dedicated to Storage Features 项目地址: https://gitcode.com/openeuler/Storage-docs 前往项目官网免费下载:https://a…

2026/7/11 18:35:24阅读更多 →
大模型前端工程能力实战评测:春节网页生成对比

大模型前端工程能力实战评测:春节网页生成对比

1. 项目概述:一场不带滤镜的春节网页实战压力测试春节拜年动画网页,表面看只是个“写个HTML放点动效”的小活儿,但在我干了十多年前端开发、带过三届AI辅助开发工作坊的经验里,它恰恰是检验大模型真实工程能力的黄金试纸。为什么&…

2026/7/11 18:35:24阅读更多 →
L9958与STM32F417ZG电机控制方案设计与优化

L9958与STM32F417ZG电机控制方案设计与优化

1. 为什么选择L9958与STM32F417ZG组合在电机控制领域,芯片选型往往决定了系统性能的上限。L9958作为一款专为汽车电子设计的H桥驱动器,其核心优势在于集成了多重保护机制和高达40V的驱动电压范围。我曾在一个工业机械臂项目中对比过五款驱动芯片&#xf…

2026/7/11 18:35:24阅读更多 →
[IrisLimbalRing节点]原理解析与实际应用

[IrisLimbalRing节点]原理解析与实际应用

考虑了光线在眼睛表面的散射和吸收特性,从而产生逼真的视觉效果。 角膜缘环在真实人眼中表现为虹膜外缘的深色环状区域,其形成原因与虹膜前层的色素沉积和光线在角膜与虹膜交界处的特殊折射有关。在计算机图形学中,准确再现这一特征对于创造令…

2026/7/11 18:35:24阅读更多 →
3分钟实现IDM永久激活:Windows批处理脚本的技术解析与应用实践

3分钟实现IDM永久激活:Windows批处理脚本的技术解析与应用实践

3分钟实现IDM永久激活:Windows批处理脚本的技术解析与应用实践 【免费下载链接】IDM-Activation-Script-ZH IDM激活脚本汉化版 项目地址: https://gitcode.com/gh_mirrors/id/IDM-Activation-Script-ZH IDM激活脚本通过巧妙的Windows注册表操作,为…

2026/7/11 18:35:24阅读更多 →
看门狗(stm32笔记)

看门狗(stm32笔记)

简介:WDG(Watchdog)看门狗看门狗可以监控程序的运行状态,当程序因为设计漏洞、硬件故障、电磁干扰等原因,出现卡死或跑飞现象时,看门狗能及时复位程序,避免程序陷入长时间的罢工状态&#xff0c…

2026/7/11 18:30:24阅读更多 →
从GitHub安全案例解析常见漏洞与防护实践

从GitHub安全案例解析常见漏洞与防护实践

1. 项目概述:从GitHub Trending看安全实战 最近在GitHub Trending上看到一个项目,叫 skills4/skills ,它因为一些安全漏洞案例被大家讨论。这其实是一个挺典型的场景:一个旨在展示或教授某种技能的仓库,本身却成了安…

2026/7/11 18:37:06阅读更多 →
MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

# MLT 2026启示:因果推理与概率建模驱动下一代LLM应用## 一、背景与挑战:从“黑箱预测”到“可信推理”2026年6月,第7届机器学习与趋势国际会议(MLT 2026)将在悉尼召开。会议议程中,“因果与可解释机器学习…

2026/7/11 15:18:12阅读更多 →
通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

1. 项目概述与漏洞背景最近在梳理一些历史OA系统的安全风险时,通达OA v11.6版本中的一个老漏洞又进入了我的视线。这个漏洞位于/general/bi_design/appcenter/report_bi.func.php文件中,是一个典型的SQL注入点。虽然这个漏洞的利用方式看起来并不复杂&am…

2026/7/11 15:11:32阅读更多 →
Premiere Pro 2025安装失败原因与AGSIS验证绕过指南

Premiere Pro 2025安装失败原因与AGSIS验证绕过指南

1. 为什么2025版PR安装比以往更“磨人”?——从弹窗警告到路径陷阱的真实处境 Premiere Pro 2025版不是简单的一次版本迭代,它是一道分水岭。我从去年底开始帮影视工作室、高校剪辑实验室和自由职业者部署2025环境,累计处理了137台设备&#…

2026/7/11 0:03:43阅读更多 →
5款实用macOS系统优化工具:让你的Mac运行更流畅更高效

5款实用macOS系统优化工具:让你的Mac运行更流畅更高效

5款实用macOS系统优化工具:让你的Mac运行更流畅更高效 【免费下载链接】open-source-mac-os-apps 🚀 Awesome list of open source applications for macOS. https://t.me/s/opensourcemacosapps 项目地址: https://gitcode.com/gh_mirrors/op/open-so…

2026/7/11 0:03:43阅读更多 →
5分钟完全掌握:ComfyUI ControlNet预处理器终极使用指南

5分钟完全掌握:ComfyUI ControlNet预处理器终极使用指南

5分钟完全掌握:ComfyUI ControlNet预处理器终极使用指南 【免费下载链接】comfyui_controlnet_aux ComfyUIs ControlNet Auxiliary Preprocessors 项目地址: https://gitcode.com/gh_mirrors/co/comfyui_controlnet_aux 想要让AI图像生成真正听从你的指挥吗&…

2026/7/11 0:03:43阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/11 16:20:28阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/10 22:20:33阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/11 18:12:23阅读更多 →