cann/ascend-transformer-boost编译与构建
编译与构建
【免费下载链接】ascend-transformer-boost本项目是CANN提供的是一款高效、可靠的Transformer加速库,基于华为Ascend AI处理器,提供Transformer定制化场景的高性能融合算子。项目地址: https://gitcode.com/cann/ascend-transformer-boost
ATB编译
下载加速库源码
git clone https://gitcode.com/cann/ascend-transformer-boost.git您可自行选择需要的分支。
编译
进入加速库的根目录,编译
cd ascend-transformer-boost bash scripts/build.sh注意:该编译过程涉及①拉取算子库/MKI并编译以及②加速库的编译两个过程。更多命令介绍可查看atb仓主目录下的README.md和scripts/build.sh文件。
ATB编译相关说明
ATB的基本编译命令是bash build.sh,默认构建模式下生成版本信息,并创建安装包(默认情况下不会编译python接口)。后可跟参数,实现不同功能:
--use_cxx11_abi=1:启用C++11 ABI--use_cxx11_abi=0:禁用C++11 ABI--verbose:开启编译详细输出--asan:启用内存错误检测,并强制设置为Debug模式--skip_build:跳过构建过程--debug:设置构建类型为Debug模式--msdebug:启用MSDebug模式,用于对算子内核代码进行调测--ascendc_dump:启用AscendC_Dump模式,用于对算子内核代码进行调测--clean-first:构建前清理所有构建历史,删除构建目录--src-only:仅构建源码--torch_atb: 编译pybind11并生成whl包,随后pip安装即可使用python接口--customizeops_tests: 构建ops_customize的单元测试default: 默认选项,构建ATB加速库的内容testframework:构建测试框架,生成版本信息,并打包测试框架unittest:构建单元测试,运行内核接口测试和单元测试kernelunittest:构建内核单元测试,运行内核单元测试pythontest:构建 Python 测试,运行 Python 测试kernelpythontest:构建内核 Python 测试,运行内核 Python 测试torchatbtest:构建 Torch ATB 测试,运行 Torch ATB 测试csvopstest:构建 CSV 操作测试,运行 CSV 操作测试infratest:构建基础设施测试,运行基础设施测试hitest:构建 HiTest,设置 HiTest 环境变量,生成版本信息,打包测试框架和 HiTestfuzztest:构建模糊测试,生成模糊测试用例运行模糊测试alltest:构建所有测试,运行所有测试clean:清理所有构建历史,删除构建目录gendoc:生成文档customizeops:构建ops_customize的内容,生成版本信息,并创建安装包
ATB关键文件介绍
scripts目录:install.sh: 安装脚本uninstall.sh: 卸载脚本build.sh: 编译脚本release.sh:全自动构建与打包脚本
include/atb目录:set_env.sh:ATB的环境变量设置文件
output目录:version.info:版本信息{arch}/Ascend-cann-atb_{version}_linux-{arch}.run:编译出的atb包
output/atb/cxx_abi_0/lib目录(或output/atb/cxx_abi_1/lib,与abi版本有关):libatb.so:Transformer加速库的动态链接库文件libasdops.so:算子包的动态链接库文件
ops_configs目录:atb_ops_info.ini:算子输入输出规格描述文件
配置文件
编译文件build.sh
文件名:scripts/build.sh
加速库编译文件,文件中可设置日志存放目录、日志文件、编译器版本等,一般无需更改。
环境变量设置文件set_env.sh
文件名:scripts/set_env.sh
加速库安装完成后,提供进程级环境变量设置脚本set_env.sh,以自动完成环境变量设置,用户进程结束后自动失效。 若想查看相关变量含义说明,可访问环境变量参考-昇腾社区。
【免费下载链接】ascend-transformer-boost本项目是CANN提供的是一款高效、可靠的Transformer加速库,基于华为Ascend AI处理器,提供Transformer定制化场景的高性能融合算子。项目地址: https://gitcode.com/cann/ascend-transformer-boost
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
