ATB加速库外部开发者自定义算子目录
【免费下载链接】ascend-transformer-boost本项目是CANN提供的是一款高效、可靠的Transformer加速库,基于华为Ascend AI处理器,提供Transformer定制化场景的高性能融合算子。项目地址: https://gitcode.com/cann/ascend-transformer-boost
介绍
单独为外部开发者设置开发目录,外部开发者可以按照本目录下的customize_block_copy Operation实现自定义算子。本目录支持单独编译和测试,也支持与ATB加速库一同编译。
使用说明
以customize_block_copy Operation为例
方式一:单独编译
安装CANN
chmod +x Ascend-cann-toolkit_$(version)_linux-$(arch).run ./Ascend-cann-toolkit_$(version)_linux-$(arch).run --install安装后配置
配置环境变量脚本set_env.sh,当前安装路径以${HOME}/Ascend为例。
source ${HOME}/Ascend/ascend-toolkit/set_env.sh安装NNAL
chmod +x Ascend-cann-nnal_$(version)_linux-$(arch).run ./Ascend-cann-nnal_$(version)_linux-$(arch).run --install安装后配置
配置环境变量脚本set_env.sh,当前安装路径以${HOME}/Ascend为例。
source ${HOME}/Ascend/nnal/atb/set_env.sh编译自定义算子目录
cd ascend-transformer-boost/ops_customize bash build.sh该脚本目前支持:default|clean|unittest| --use_cxx11_abi=0|--use_cxx11_abi=1|--debug|--msdebug编译命令具体功能介绍:
default: 默认选项,构建ops_customize的内容clean: 清理所有构建历史,删除构建目录unittest: 构建单元测试,运行ops_customize的单元测试--use_cxx11_abi=0: 禁用C++11 ABI--use_cxx11_abi=1: 启用C++11 ABI--debug: 设置构建类型为Debug模式--msdebug: 启用MSDebug模式,用于对算子内核代码进行调测
执行测试用例
执行customize_block_copy Operation的测试用例
bash build.sh unittest方式二:与ATB加速库一同编译
准备环境变量
当前安装路径以${HOME}/Ascend为例。
source ${HOME}/Ascend/ascend-toolkit/set_env.sh source ${HOME}/Ascend/nnal/atb/set_env.sh export ATB_BUILD_DEPENDENCY_PATH=${ATB_HOME_PATH}编译带有自定义算子的ATB加速库
cd ascend-transformer-boost bash scripts/build.sh customizeops执行测试用例
编译带有自定算子和测试用例的ATB加速库, 执行customize_block_copy Operation的测试用例
bash scripts/build.sh customizeops --customizeops_tests source ./output/atb/set_env.sh cd ./build/ops_customize/ops/customize_blockcopy/tests/ && ./customize_blockcopy_test【免费下载链接】ascend-transformer-boost本项目是CANN提供的是一款高效、可靠的Transformer加速库,基于华为Ascend AI处理器,提供Transformer定制化场景的高性能融合算子。项目地址: https://gitcode.com/cann/ascend-transformer-boost
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考