Graph-autofusion super_kernel极简示例
super_kernel极简sample【免费下载链接】graph-autofusionGraph-autofusion 是一个面向昇腾Ascend芯片的轻量级、解耦式组件集合旨在通过自动融合技术加速模型执行。 目前已开源 SuperKernel 组件未来将持续开放更多自动融合相关模块。项目地址: https://gitcode.com/cann/graph-autofusion用例功能该sample展示了如何使用super_kernel完成算子融合包括算子融合的定义、编译、执行等。 核心特点依赖简单仅依赖AscendC与runtime环境。使用python封装底层c接口简化开发流程。目录结构├── super_kernel_runtime_ascendc_only # 目录 └── superkernel_runtime_ascendc_basic.py # 主入口流程上包含子kernel编译、superkernel编译、内存分配、加载执行等 └── compile_sk.py # 编译sub_kernel、super_kernel算子 └── utils.py # 工具函数用例介绍该用例通过编译时依赖ascendc执行时依赖runtime展示了super_kernel的基本功能。主要分为几步初始化编译sub_kernel编译super_kernel设置super kernel中子kernel的topo关系便于内存分配内存分配输入数据构造kernel加载launch执行包含args排布等打印输出, 输出结果校验资源清理释放包括内存、kernel、stream等解释说明子kernel的拓扑关系通过字符串表示比如pow的输出是isinf的输入则pow的output与isinf的input使用相同字符串表示分配内存时通过字符串来表达内存相同的内存地址launch args时按照[pow_in1, pow_in2, pow_ws, isinf_in1, isinf_out1, isinf_ws]排布执行命令python3 superkernel_runtime_ascendc_basic.py预期执行结果执行后打印显示successexecute sample success【免费下载链接】graph-autofusionGraph-autofusion 是一个面向昇腾Ascend芯片的轻量级、解耦式组件集合旨在通过自动融合技术加速模型执行。 目前已开源 SuperKernel 组件未来将持续开放更多自动融合相关模块。项目地址: https://gitcode.com/cann/graph-autofusion创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2597689.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!