环境部署【免费下载链接】ops-tensorops-tensor 是 CANN Compute Architecture for Neural Networks算子库中提供张量类计算的基础算子库采用模块化设计支持灵活的算子开发和管理。项目地址: https://gitcode.com/cann/ops-tensor基于本项目进行算子调用或算子开发之前需要参考下述步骤完成基础环境搭建。前提条件使用本项目前请确保如下基础依赖、NPU驱动和固件已安装。安装依赖本项目源码编译用到的依赖如下请注意版本要求。python 3.7.0, 3.10gcc 7.3.0cmake 3.16.0pigz可选安装后可提升打包速度建议版本 2.4dos2unixgawkmake上述依赖包可通过项目根目录install_deps.sh安装命令如下若遇到不支持系统请参考该文件自行适配。bash install_deps.sh安装驱动与固件运行态依赖运行算子时必须安装驱动与固件若仅编译算子可跳过本操作。单击下载链接根据实际产品型号和环境架构获取对应的Ascend-hdk-chip_type-npu-driver_version_linux-arch.run、Ascend-hdk-chip_type-npu-firmware_version_linux-arch.run包。安装指导详见《CANN 软件安装指南》。环境准备二选一算子开发的第一步是准备一个包含CANN及算子仓前置依赖的环境使用Docker镜像是最高效的方式。使用Docker部署说明该部署方式适用于Ascend 950系列产品。镜像文件比较大下载需要一定时间请您耐心等待。1. 下载镜像以root用户登录宿主机。确保宿主机已安装Docker引擎版本1.11.2及以上。从昇腾镜像仓库拉取已预集成CANN软件包及ops-tensor所需依赖的镜像。命令如下根据实际架构选择# 示例拉取ARM架构的CANN开发镜像 docker pull --platformarm64 swr.cn-south-1.myhuaweicloud.com/ascendhub/cann:9.0.0-950-ubuntu22.04-py3.10-ops # 示例拉取X86架构的CANN开发镜像 docker pull --platformamd64 swr.cn-south-1.myhuaweicloud.com/ascendhub/cann:9.0.0-950-ubuntu22.04-py3.10-ops2. 运行Docker拉取镜像后需要以特定参数启动容器以便容器内能访问宿主的昇腾设备。docker run --name cann_container --device /dev/davinci0 --device /dev/davinci_manager --device /dev/devmm_svm --device /dev/hisi_hdc -v /usr/local/dcmi:/usr/local/dcmi -v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi -v /usr/local/Ascend/driver/lib64/:/usr/local/Ascend/driver/lib64/ -v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info -v /etc/ascend_install.info:/etc/ascend_install.info -it swr.cn-south-1.myhuaweicloud.com/ascendhub/cann:9.0.0-950-ubuntu22.04-py3.10-ops bash参数说明注意事项--name cann_container为容器指定名称便于管理。可自定义。--device /dev/davinci0核心将宿主机的NPU设备卡映射到容器内可指定映射多张NPU设备卡。必须根据实际情况调整davinci0对应系统中的第0张NPU卡。请先在宿主机执行npu-smi info命令根据输出显示的设备号如NPU 0,NPU 1来修改此编号。--device /dev/davinci_manager映射NPU设备管理接口。--device /dev/devmm_svm映射设备内存管理接口。--device /dev/hisi_hdc映射主机与设备间的通信接口。-v /usr/local/dcmi:/usr/local/dcmi挂载设备容器管理接口DCMI相关工具和库。-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi挂载npu-smi工具。使容器内可以直接运行此命令来查询NPU状态和性能信息。-v /usr/local/Ascend/driver/lib64/:/usr/local/Ascend/driver/lib64/关键挂载将宿主机的NPU驱动库映射到容器内。-v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info挂载驱动版本信息文件。-v /etc/ascend_install.info:/etc/ascend_install.info挂载CANN软件安装信息文件。-it-i交互式和-t分配伪终端的组合参数。镜像名称指定要运行的Docker镜像。请确保此镜像名和标签tag与你通过docker pull拉取的镜像完全一致。bash容器启动后立即执行的命令。手动安装CANN包安装社区CANN toolkit包根据实际产品型号和环境架构获取对应的Ascend-cann-toolkit_${cann_version}_linux-${arch}.run包。Ascend 950系列产品单击下载链接获取软件包。# 确保安装包具有可执行权限 chmod x Ascend-cann-toolkit_${cann_version}_linux-${arch}.run # 安装命令 ./Ascend-cann-toolkit_${cann_version}_linux-${arch}.run --install --force --install-path${install_path}${cann_version}表示CANN包版本号。${arch}表示CPU架构如aarch64、x86_64。${install_path}表示指定安装路径默认安装在/usr/local/Ascend目录。安装社区版CANN ops包运行态依赖运行算子时必须安装本包若仅编译算子可跳过本操作。根据实际产品型号和环境架构获取对应的Ascend-cann-${soc_name}-ops_${cann_version}_linux-${arch}.run包。Ascend 950系列产品单击下载链接获取软件包。# 确保安装包具有可执行权限 chmod x Ascend-cann-${soc_name}-ops_${cann_version}_linux-${arch}.run # 安装命令 ./Ascend-cann-${soc_name}-ops_${cann_version}_linux-${arch}.run --install --install-path${install_path}${soc_name}表示NPU型号名称即${soc_version}删除ascend后剩余的内容如950。${install_path}表示指定安装路径需要与toolkit包安装在相同路径默认安装在/usr/local/Ascend目录。环境验证安装CANN包或进入容器后验证环境和驱动是否正常。检查NPU设备# 运行npu-smi若能正常显示设备信息则驱动正常 npu-smi info检查CANN安装# 查看CANN Toolkit版本信息 cat /usr/local/Ascend/ascend-toolkit/latest/opp/version.info环境变量配置根据实际场景选择合适的命令。# 默认路径安装以root用户为例非root用户将/usr/local替换为${HOME} source /usr/local/Ascend/cann/set_env.sh # 指定路径安装 # source ${install_path}/cann/set_env.sh源码下载# 下载项目源码以master分支为例 git clone https://gitcode.com/cann/ops-tensor.git【免费下载链接】ops-tensorops-tensor 是 CANN Compute Architecture for Neural Networks算子库中提供张量类计算的基础算子库采用模块化设计支持灵活的算子开发和管理。项目地址: https://gitcode.com/cann/ops-tensor创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考