当前位置: 首页 > news >正文

在华为服务器的openEuler系统中适配Pytorch调用NPU

服务器架构:aarch64
yolov7 和 mindyolo 二选一即可,yolov7是基于pytorch,mindyolo是基于mindspore
本文档基于CANN8.0RC3 , 刚发布比较新,如果有问题,可将CANN版本降低

导读

  • 资料首页:https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/80RC3alpha001/softwareinst/instg/instg_0030.html
  • 资源下载:https://www.hiascend.com/developer/download/community/result?module=dl+pt+cann
  • 官方教程:https://www.hiascend.com/document/detail/zh/Pytorch/60RC2/configandinstg/instg/insg_0006.html
  • 问题:https://www.mindspore.cn/docs/zh-CN/master/faq/installation.html

NPU驱动

  • 查看npu驱动是否安装:nup-smi info ,如果没有需要先安装驱动

安装miniconda

  • 安装python3.10,没有用系统自带的python3 和 pip3 因为版本比较低
    mkdir -p ~/miniconda3
    wget https://repo.anaconda.com/miniconda/Miniconda3-py310_24.5.0-0-Linux-aarch64.sh -O ~/miniconda3/miniconda.sh
    bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
    rm -rf ~/miniconda3/miniconda.sh# 初始化
    ~/miniconda3/bin/conda init bash
    ~/miniconda3/bin/conda init zsh# 安装完成重启终端
    

前置配置

  • 前置必备
    yum install -y gcc gcc-c++ make cmake sqlite-devel zlib-devel openssl-devel libffi-devel net-toolspip install numpy==1.24.4 -i https://pypi.tuna.tsinghua.edu.cn/simplepip install attrs cython decorator sympy cffi pyyaml pathlib2 psutil protobuf scipy requests absl-py -i https://pypi.tuna.tsinghua.edu.cn/simple
    

安装CANN

  • nnae,nnal,nnrt 可选不必安装

  • 安装cann

    wget https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/Milan-ASL/Milan-ASL%20V100R001C19SPC802/Ascend-cann-toolkit_8.0.RC3.alpha001_linux-aarch64.run?response-content-type=application/octet-stream -O cann.run
    chmod +x cann.run
    ./cann.run --install --quiet
    # 任意目录下执行vi ~/.bashrc命令 ,最后一样添加如下命令
    source /usr/local/Ascend/ascend-toolkit/set_env.sh
    # 刷新生效
    source ~/.bashrc
    
  • 安装Kernels

    wget https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/Milan-ASL/Milan-ASL%20V100R001C19SPC802/Ascend-cann-kernels-910_8.0.RC3.alpha001_linux.run?response-content-type=application/octet-stream -O kernels.run
    chmod +x kernels.run
    ./kernels.run --install --type=toolkit  --quiet
    

安装pytorch

  • 注意pytorch版本和cann版本的对应关系:https://portrait.gitee.com/ascend/pytorch

  • 还需要注意yolov7 和 pytorch的版本对应关系

  • 安装pytorch

    pip install torch==版本号
    pip install pyyaml
    pip install setuptools# 安装适配插件,https://gitee.com/ascend/pytorch/releases/download/v6.0.rc2-pytorch2.1.0/torch_npu-2.1.0.post6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
    pipinstall torch-npu==版本号
    
  • 安装是否安装成功

    python -c "import torch;import torch_npu;print(torch_npu.npu.is_available())"
    

安装yolov7

  • 下载源码:

    git clone  https://gitee.com/ascend/modelzoo-GPL.gitcd modelzoo-GPL/built-in/PyTorch/Official/cv/object_detection/Yolov7_for_PyTorch# 配置数据集
    built-in/PyTorch/Official/cv/object_detection/Yolov7_for_PyTorch/data/coco.yaml
    
  • 安装依赖

    pip install -r requirements.txt  -i https://pypi.tuna.tsinghua.edu.cn/simple
    
  • 开始训练

    #多卡训练请看官方文档
    python train.py
    

安装mindyolo

  • 下载源码:

    git clone  https://github.com/mindspore-lab/mindyolo.gitcd mindyolo# 配置数据集,数据集和标注的文件名称只能数字,不能出现英文或符号或空格
    configs/coco.yaml
    
  • 安装依赖

    pip install -r requirements.txt  -i https://pypi.tuna.tsinghua.edu.cn/simple
    
  • 开始训练

    #多卡训练请看官方文档
    python train.py --config /root/mindyolo/configs/yolov7/yolov7-tiny.yaml
    

模型转换

  • onnx模型转换为om模型 ;https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/80RC3alpha001/quickstart/quickstart/quickstart_18_0010.html
  • 转换后om模型可以在晟腾开发板上进行运行推理

相关文章:

在华为服务器的openEuler系统中适配Pytorch调用NPU

服务器架构:aarch64 yolov7 和 mindyolo 二选一即可,yolov7是基于pytorch,mindyolo是基于mindspore 本文档基于CANN8.0RC3 , 刚发布比较新,如果有问题,可将CANN版本降低 导读 资料首页:https://www.hiasce…...

MVCC工作原理深入解析

一、事务概述 mysql事务是指一组命令操作,在执行过程中用来保证要么全部成功,要么全部失败。事务是由引擎层面来支持的,MyISM引擎不支持事务,InnoDB引擎支持事务。 事务具有ACID四大特性 原子性(Atomicity&#xff0…...

使用html+css+js实现完整的登录注册页面

在这篇博客中,我们将讨论如何使用简单的 HTML 和 CSS 构建一个登录与注册页面。这个页面包含两个主要部分:登录界面和注册界面。我们还会展示如何通过 JavaScript 切换这两个部分的显示状态。 页面结构 我们将创建一个页面,其中包含两个主要…...

2024年8月16日(运维自动化 ansible)

一、回顾 1、mysql和python (1)mysql5.7 1.1不需要执行mysql_ssl_rsa_setup 1.2change_master_to 不需要get public key (2)可以使用pymysql非交互的管理mysql 2.1pymysql.connect(host,user,password,database,port) 2.2 cursorconn.cursor() 2.3 cursor.execute("creat…...

荣耀Magicbook x14 扩容1TB固态

版权归作者所有,如有转发,请注明文章出处:https://cyrus-studio.github.io/blog/ 固态硬盘规格 在官网查看加装固态硬盘的接口规格 https://www.honor.com/cn/laptops/honor-magicbook-x14-2023/ https://club.honor.com/cn/thread-2847379…...

Springboot整合全文检索引擎Lucene

文章目录 前言Lucene的介绍springboot项目中如何整合Lucene简单用法1. 引入依赖2. 其它用到的类2. 创建索引3. 简单搜索4. 更新索引5. 删除索引6. 删除全部索引 Springboot整合Lucene复杂搜索1. 同时标题和内容中查找关键词2. 搜索结果高亮显示关键词3. 分页搜索4. 多关键词联合…...

【深度学习】【语音】TTS, 如何使用Python分析WAV的采样率、比特深度、通道数

文章目录 使用Python分析WAV文件的属性与可视化简介所需环境代码解析可视化音频数据结论使用Python分析WAV文件的属性与可视化 WAV文件录音要求 为了确保录制的音频文件符合TTS模型训练的质量标准,请遵循以下录音要求: 采样率要求:44.1 kHz说明:采样率44.1 kHz(即每秒采样…...

Linux的安装和使用

Linux 第一节 Linux 优势 1. 开源 为什么这么多的的设备都选择使用 Linux?因为它是开源软件(open source software),具有不同的含义。使用一个安全的操作系统工作变得必不可少的事,而 Linux 恰好满足了这个需求。因…...

查看一个exe\dll文件的依赖项

方法 使用一个Dependencies工具&#xff0c;检测exe文件的所有依赖项 工具使用 下载压缩包之后解压&#xff0c;解压后如下图所示 在命令行中运行Dependencies.exe程序会得到帮助菜单 查询某exe的所有依赖项&#xff0c;使用命令 Dependencies.exe -chain <查询文件> …...

高校科研信息管理系统pf

TOC springboot364高校科研信息管理系统pf 第1章 绪论 1.1 研究背景 互联网概念的产生到如今的蓬勃发展&#xff0c;用了短短的几十年时间就风靡全球&#xff0c;使得全球各个行业都进行了互联网的改造升级&#xff0c;标志着互联网浪潮的来临。在这个新的时代&#xff0c;…...

Linux 开机自动挂载共享文件设置

选择一个要共享的文件 点击确定 -> 确定 启动虚拟机 执行下面的命令 /YumSource 是我选择的共享文件夹&#xff0c;自行替换自已选择的文件夹 mkdir -p /mnt/hgfs cat >> /etc/fstab << EOF .host:/YumSource /mnt/hgfs fuse.vmhgfs-fuse allow_other defaul…...

c_cpp_properties.json、launch.json、 tasks.json

在 Visual Studio Code 中&#xff0c;c_cpp_properties.json、launch.json 和 tasks.json 是三个重要的配置文件&#xff0c;它们的作用如下&#xff1a; c_cpp_properties.json&#xff1a; 这个文件用于配置 C/C 扩展的 IntelliSense、编译器路径和包括路径等。它帮助 VS Co…...

mysql 一些知识点 面试用

mysql 1、4个隔离级别与3个现象2、快照读与当前读2.1 可重复读的情况下出现幻读问题的两种情况 3 数据库 常用引擎4、InnoDB存储引擎对MVCC的实现5、索引(重点)5.1 什么是索引5.2 索引的创建与删除5.2.1 查看表中有哪些索引5.2.2 添加索引5.2.3 删除索引 5.3 索引的分类5.4 树数…...

STM32之点亮LED灯

使用固件库实现LED点灯 LED灯&#xff1a; LED灯&#xff0c;是一种能够将电能转化为可见光的半导体器件 控制LED灯&#xff1a; LED灯的正极接到了3.3V&#xff0c;LED灯的负极接到了PA1&#xff0c;也就是GPIOA1引脚 只需要控制PA1为相对应的低电平&#xff0c;即可点亮对…...

Java 多线程练习2 (抽奖比较Runnable写法)

MultiProcessingExercise2 package MultiProcessingExercise120240814;import java.util.ArrayList; import java.util.Collections;public class MultiProcessingExercise1 {public static void main(String[] args) {// 需求&#xff1a;// 在此次抽奖过程中&#xff0c;抽奖…...

使用fastboot更新部分系统

使用fastboot更新部分系统 获取分区信息 > part list sunxi_flash 0Partition Map for UNKNOWN device 0 -- Partition Type: EFIPart Start LBA End LBA NameAttributesType GUIDPartition GUID1 0x00008000 0x000097c5 "boot-r…...

windows 加载portch遇到的错误

import torch 遇到如下错误 File "<stdin>", line 1, in <module> File "C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\site-packages\torch\__init__.py", line 148, in <module> raise err OSError: [W…...

如何将 CICD 模版重构为 CICD component?

极狐GitLab 是 GitLab 在中国的发行版&#xff0c;专门面向中国程序员和企业提供企业级一体化 DevOps 平台&#xff0c;用来帮助用户实现需求管理、源代码托管、CI/CD、安全合规&#xff0c;而且所有的操作都是在一个平台上进行&#xff0c;省事省心省钱。可以一键安装极狐GitL…...

数学建模——评价决策类算法(层次分析法、Topsis)

一、层次分析法 概念原理 通过相互比较确定各准则对于目标的权重, 及各方案对于每一准则的权重&#xff0c;这些权重在人的思维过程中通常是定性的, 而在层次分析法中则要给出得到权重的定量方法. 将方案层对准则层的权重及准则层对目标层的权重进行综合, 最终确定方案层对目标…...

KEEPALIVED 全csdn最详细----理论+实验(干货扎实,包教会的)

环境准备 主机名IP虚拟IP&#xff08;VIP&#xff09;功能ka1172.25.254.10172.25.254.100keepalived服务ka2172.25.254.20172.25.254.100keepalived服务realserver1172.25.254.110web服务realserver2172.25.254.120web服务 注意一定要关闭selinux,和防火墙&#xff0c;不然在…...

LabVIEW架构演进:从数据流到混合计算与云原生的未来

1. 项目概述&#xff1a;从一次访谈看LabVIEW的架构演进最近&#xff0c;我偶然看到一篇关于LabVIEW之父Jeff Kodosky的访谈&#xff0c;他谈到了LabVIEW未来软件架构的构想。作为一名在测控领域摸爬滚打了十多年的工程师&#xff0c;这个话题瞬间就抓住了我的眼球。LabVIEW&am…...

开源机器人夹爪任务控制台:架构设计与工程实践全解析

1. 项目概述&#xff1a;从“OpenClaw 任务控制”看开源机器人控制台的演进最近在机器人开发社区里&#xff0c;一个名为abhi1693/openclaw-mission-control的项目引起了我的注意。乍一看这个标题&#xff0c;你可能会联想到科幻电影里那些布满屏幕、控制着庞大机械臂的指挥中心…...

30天试用期重置神器:JetBrains IDE免费使用终极解决方案

30天试用期重置神器&#xff1a;JetBrains IDE免费使用终极解决方案 【免费下载链接】ide-eval-resetter 项目地址: https://gitcode.com/gh_mirrors/id/ide-eval-resetter 还在为JetBrains IDE试用期到期而烦恼吗&#xff1f;每次30天试用结束后&#xff0c;那些强大的…...

[实战] 2026年CNC加工质量控制:从工程图纸数字化到检验计划生成的全流程解析

在 2026 年的精密制造环境中&#xff0c;cnc 加工&#xff08;CNC machining&#xff09;已不再仅仅是切削工艺的竞争&#xff0c;更是数字化协作与质量控制能力的较量。随着多品种、小批量生产模式成为主流&#xff0c;如何快速解析复杂的工程图纸并制定高精度的检验计划&…...

ARM Cortex-A72 GICv3中断处理机制与优化实践

1. ARM Cortex-A72 GIC CPU接口架构概述在ARMv8-A架构中&#xff0c;通用中断控制器(GIC)作为中断管理的核心组件&#xff0c;其CPU接口承担着处理器核心与中断源之间的桥梁作用。Cortex-A72处理器实现了GICv3架构规范&#xff0c;相较于前代GICv2&#xff0c;主要引入了以下关…...

为什么你的“--style raw”输出毫无银盐颗粒感?深度解析Midjourney V6渲染管线中未公开的卤化银模拟层

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;卤化银模拟层的光学隐喻与历史语境 在数字成像技术蓬勃发展的今天&#xff0c;回溯胶片时代的物理成像机制&#xff0c;不仅具有技术考古价值&#xff0c;更构成理解当代计算摄影底层隐喻的关键支点。“…...

港大开源 【OpenHarness】 深度剖析:1.1 万行代码解构 Agent 架构,把黑盒变白盒

港大开源 【OpenHarness】 深度剖析&#xff1a;1.1 万行代码解构 Agent 架构&#xff0c;把黑盒变白盒 写在前面&#xff1a;香港大学数据科学研究所&#xff08;HKUDS&#xff09;开源的 OpenHarness 项目&#xff0c;上线两天斩获 1.9K Star&#xff0c;10 天突破 9.5K Star…...

赣州 GEO 科普|AI 时代品牌信息基建,七文 GEO 助力品牌长效可见

赣州GEO科普&#xff5c;AI时代品牌信息基建&#xff0c;读懂生成式引擎优化逻辑人工智能全面普及的当下&#xff0c;生成式AI正在重塑大众的信息获取方式。如今多数用户习惯借助文心一言等AI工具检索品牌、查询行业服务&#xff0c;人工智能会整合全网信息进行智能作答。在此行…...

达达主义AI艺术正在消失?深度起底平台内容审核算法对“无意义美学”的误判逻辑(含绕过策略与伦理边界声明)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;达达主义AI艺术正在消失&#xff1f; 达达主义以反逻辑、反美学、拥抱偶然性为内核&#xff0c;而当代AI艺术生成工具却日益依赖确定性提示词工程、风格迁移约束与商业审美对齐——这种张力正悄然消解达…...

蜡笔变蜡烛:DIY分层香薰蜡烛的材料原理与制作实践

1. 项目概述&#xff1a;当蜡笔遇见蜡烛&#xff0c;一次关于气味与色彩的记忆重塑不知道你有没有过这样的体验&#xff1a;打开一盒崭新的蜡笔&#xff0c;那股混合着油脂、黏土与淡淡皂感的独特气味扑面而来&#xff0c;瞬间就能将你拉回铺满画纸的童年午后。Crayola蜡笔的官…...