CANN PTO自动模式总览
auto模式总览【免费下载链接】pto-isaParallel Tile Operation (PTO) is a virtual instruction set architecture designed by Ascend CANN, focusing on tile-level operations. This repository offers high-performance, cross-platform tile operations across Ascend platforms.项目地址: https://gitcode.com/cann/pto-isa范围这篇文档提供一个auto模式的概览。auto模式是什么AUTO模式是一个新的PTO的编译模式。编译器负责自动为Tile分配内存和插入同步指令。和manual模式下编程大致相同只是程序员不需要手动调用TASSIGN来分配内存以及手动调用同步指令来同步pipe。为什么使用auto modeauto模式的目标提高用户的编程效率同时保持相对较好的性能与一个manual模式下手动优化的代码相比。主要功能包括自动在不同硬件pipe之间插入同步指令对Tile对象自动分配内存AUTO模式特性接下来的部分会介绍auto模式的特性作为程序员可用的另一种编程模型。重要: 一般来说每一个PTO指令的实现都应该拥有以下不同层级的API从最高层到最低用户层kernel开发者可调用的公有的最高层级APIIMPL层TF Tile Function层CCE实现层例如vector functionSMIT等等PTO编译器是在Tile这一抽象层级工作的。这意味着以下列出的所有特性都只在TF层以上运作因为TF层接口是Tile抽象层级的最后一层一旦进入了tile function就脱离了Tile抽象层级而进入了裸指针和CCE intrinsics的层级CCE的领域。因此对PTO编译器来说tile function是一个完全的黑盒子PTO编译器的功能不会在tile function运作那是CCE编译器处理的部分了。更具体来说所有以下特性只能在tile function层以上运作而不会进入tile function内。Tile的自动liveness分析在auto模式下编译器会分析每一个Tile的liveness。这个liveness分析是auto模式的核心是给以下功能实现提供支持。自动同步在manual模式下程序员需要熟悉昇腾硬件不同pipe之间异步运行的特性并运用PTO的Event编程模型在正确的地点手动插入同步指令来保证正确的结果和高性能。这非常繁琐且很容易出错。auto模式编译器给程序员省去了这个麻烦。编译器会代替程序员自动在正确的位置插入正确的同步指令确保正确的结果以及相对较好的性能。Tile内存分配在manual模式下程序员需要手动调用TASSIGN来为每一个Tile对象分配对应硬件buffer上的内存地址。然而在auto模式下这也不需要了。对于每一个定义的Tile对象编译器会自动替程序员在正确的buffer上分配地址。使用Ascend CANN编译auto模式代码要用auto模式编译你的kernel你只需要加上一条编译命令--cce-enable-pto-passes来使能auto模式编译。示例device侧编译要想编译一个device侧的kernel请确保针对你的Soc使用正确的--cce-aicore-arch...比如dav-c220-vecdav-c310-vec等等。示例source /usr/local/Ascend/ascend-toolkit/latest/bin/setenv.bash bisheng -c -x cce -O2 --cce-aicore-only \ --cce-aicore-archdav-c310-vec \ -stdc17 \ --cce-enable-pto-passes \ kernel.cpp -o kernel.o【免费下载链接】pto-isaParallel Tile Operation (PTO) is a virtual instruction set architecture designed by Ascend CANN, focusing on tile-level operations. This repository offers high-performance, cross-platform tile operations across Ascend platforms.项目地址: https://gitcode.com/cann/pto-isa创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2597996.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!