目录

  • 1 ATC 模型转换
    • 1.1 模型转换工具 ATC
    • 1.2 MS转换流程
      • 可视化转换模型
      • AIPP详解
      • 单算子转换
  • 2 ACL 语言简介
  • 3 ACL的总述/开发/编译
    • 3.1 ACL总述
    • 3.2 主要接口流程图
    • 3.3 ACL Hello World
    • 3.4 编译配置
    • 3.5 编译运行
  • 4 ACL运行资源管理
    • 4.1 运行资源概述
    • 4.2 Device
    • 4.3 Context
    • 4.4 Stream
  • 5 ACL内存管理和数据传输
    • 5.1 内存管理概述
    • 5.2 内存管理接口
  • 6 ACL数据预处理
    • 6.1 数据预处理概述
    • 6.2 基本原理
    • 6.3 JPEG图片解码
      • 约束
      • 流程
      • 函数原型
      • 内存申请与释放
      • 通道描述/通道创建与销毁
      • 图片描述创建与销毁
      • 图片解码主接口
    • 6.4 视频解码
      • VDEC基本原理
      • VDEC通道创建与销毁 通道描述
      • VDEC描述视频码流
      • 回调函数
      • 回调函数所在线程
      • 回调函数触发条件
      • sendFrame
    • 6.5 抠图/缩放
  • 7 ACL模型加载与执行
    • 7.1 模型推理三大流程
    • 7.2 模型资源准备相关接口
    • 7.3 模型推理执行接口
  • 8 ACL单算子加载与执行
    • 8.1 单算子流程
    • 8.2 普通算子调用
      • 匹配模式 aclopExecute
      • Handel模式
    • 8.3 CBLAS类算子调用
  • 9 ACL案例
    • 9.1 执行流程
    • 9.2 部署与运行
    • 9.3 代码..

1 ATC 模型转换

1.1 模型转换工具 ATC

  • Mindstudio 转换
  • ATC转换

环境变量 vim ~/.bashrc

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH# 2021.1.13 new_
export DDK_PATH=$HOME/Ascend/ascend-toolkit/latest/arm64-linux
export NPU_HOST_LIB=$HOME/Ascend/ascend-toolkit/latest/arm64-linux/acllib/lib64/stub# [ATC环境变量] xhh for set path 2021.1.12 200DK (20.1)
export install_path=/home/xhh/Ascend/ascend-toolkit/latest     # 以安装用户为xhh
# export PATH=${install_path}/atc/ccec_compiler/bin:${install_path}/atc/bin:${install_path}/toolkit/bin:$PATH
export PATH=/usr/local/python3.7.5/bin:${install_path}/atc/ccec_compiler/bin:${install_path}/atc/bin:${install_path}/toolkit/bin:$PATH
export LD_LIBRARY_PATH=${install_path}/acllib/lib64:${install_path}/atc/lib64:$LD_LIBRARY_PATH
export PYTHONPATH=${install_path}/atc/python/site-packages:${install_path}/atc/python/site-packages/auto_tune.egg/auto_tune:${install_path}/atc/python/site-packages/schedule_search.egg:${install_path}/toolkit/python/site-packages:${install_path}/pyACL/python/site-packages:$PYTHONPATH
export ASCEND_OPP_PATH=${install_path}/opp

1.2 MS转换流程

可视化转换模型

选择文件

  • .prototxt && .caffmodel
  • 格式选择Uint8时,可以进行DataPre-Processing(AIPP)

DataPre-Processing(AIPP)

atc --model=caffe_model/resnet50.prototxt --weight=caffe_model/resnet50.caffemodel --framework=0 --output=model/resnet50_aipp --soc_version=Ascend310 --insert_op_conf=caffe_model/aipp.cfg

AIPP详解

AIPP,把模型预处理,固话在模型.om文件中,即AIPP+Model = xx.om
AIPP,可以做一些DVPP无法操作过程



单算子转换

atc --singleop=out/op_models/op_list.json --soc_version=Ascend310 --output=out/op_modelsATC start working now, please wait for a moment.
ATC run success, welcome to the next use.

# op_list.json
[
{"op": "Cast","input_desc": [{"format": "ND","shape": [1000],"type": "float"}],"output_desc": [{"format": "ND","shape": [1000],"type": "float16"}],"attr" : [{"name": "truncate","type": "bool","value": false},{"name": "dst_type","type": "int","value": 1}]
},
{"op": "ArgMaxD","input_desc": [{"format": "ND","shape": [1000],"type": "float16"}],"output_desc"

【Atlas 200 DK】(四)ACL开发相关推荐

  1. 【华为云技术分享】【昇腾】ModelArts与Atlas 200 DK云端协同开发——行人检测Demo(提供完整Demo)

    基于ModelArts与Atlas 200 DK 端云协同开发,基于开源数据集,使用ModelArts训练行人检测模型,在本地MindStudio完成模型转换,最终部署到Atlas 200 DK,从数 ...

  2. Atlas 200 DK 系列 -- 快速搭建开发环境

    一 .PC虚拟机上安装Ubuntu (系统版本为(ubuntu-16.04.3-desktop-amd64.iso),与版端系统版本必须对应(ubuntu-16.04.3-server-arm64.i ...

  3. Atlas 200 DK 开发者套件(1.0.9.alpha)–搭载开发环境

    Atlas 200 DK 开发者套件(1.0.9.alpha)–搭载开发环境 文章目录 Atlas 200 DK 开发者套件(1.0.9.alpha)--搭载开发环境 前言 一.Atlas 200 D ...

  4. 【华为云技术分享】基于Atlas 200 DK的原版YOLOv3(基于Darknet-53)实现(Python版本)

    摘要:本文将为大家带来使用Atlas 200 DK的原版YOLOv3(基于Darknet-53)实现的展示. 前言 YOLOv3可以算作是经典网络了,较好实现了速度和精度的Trade off,成为和目 ...

  5. 【华为云技术分享】【昇腾】【玩转Atlas200DK系列】Atlas 200 DK安装python的hiai库以及opencv

    [摘要] Atlas 200 DK安装python的hiai库以及opencv [昇腾]开发板上安装python的hiai库和opencv库 Matrix是已经支持phthon接口了,但是发现目前py ...

  6. Atlas 200 DK

    Atlas 200 DK系列教程--初级篇 Atlas 200 DK文档 搭建硬件环境 制作SD卡 get tools git clone https://github.com/Ascend/tool ...

  7. Atlas 200 DK 系列--初级篇--图像分类应用的部署和使用

    通用分类网络应用 本Application支持运行在Atlas 200 DK或者AI加速云服务器上,实现了对常见的分类网络的推理功能并输出前n个推理结果. 前提条件 部署此Sample前,需要准备好以 ...

  8. 【玩转Atlas200DK系列】Atlas 200 DK安装python的hiai库以及opencv

    [摘要] Atlas 200 DK安装python的hiai库以及opencv [昇腾]开发板上安装python的hiai库和opencv库 Matrix是已经支持phthon接口了,但是发现目前py ...

  9. Atlas 200 DK 环境配置,踩坑与学习记录

    第一步:采购配件 除了Atlas 200 DK 还需要准备以下配件: 其中,在PC配置中作者采用的是直接将Ubuntu18.04.6装在了电脑上而不是采用虚拟机的方式(虚拟机当然也是可行的).也就是在 ...

  10. Atlas 200 DK开发者套件环境部署(1.0.9.alpha)极简版

    Atlas 200 DK开发者套件环境部署(1.0.9.alpha)极简版 前言 Atlas 200 DK开发者套件介绍 环境部署介绍 资源要求 开发环境部署 安装Docker 获取镜像(两种方法任选 ...

最新文章

  1. 80+机器学习数据集,还不快收藏
  2. mysql 事务 返回插入的值_Mysql同一个事务内记录成功插入后查询不出来
  3. Linux命令学习手册-grep命令
  4. php lalaogu cn,php安装编译时错误合集
  5. oracle解除死锁
  6. Git之删除远程分支
  7. python设置环境变量_小白Python进行中
  8. SOA项目技术实施指南
  9. 为何要学习 Linux?
  10. sqlServer 如何查看数据库日志文件的大小
  11. Swift ARKit 人脸滤镜保姆级教程
  12. 数字图像处理与应用——图像滤波技术
  13. 电脑记事本中文都乱码了解决方法
  14. Centos7下安装Relion
  15. python控制蓝牙pybluez_Python之蓝牙通讯模块pybluez学习笔记
  16. ttl低电平接大电阻_电压不稳定?那是你不懂上拉/下拉电阻原理,5分钟教你应用!...
  17. slim的train
  18. 软件测试面试题【含答案】
  19. Educoder 机器学习 第1关:基于贝叶斯决策理论的分类方法
  20. python量化交易:Joinquant_量化交易基础【三】:python基本语法与变量

热门文章

  1. 编写Java程序,在子类老虎中重写父类动物的吃食方法
  2. “链上海南”海南省区块链财政电子票据应用管理平台上线
  3. Oracle-如何判断字符串包含中文字符串(汉字),删除中文内容及保留中文内容
  4. 【Linux】 PC双系统,在ubuntu16.04系统里修复windows启动引导
  5. Siemens NX 1988 Build 2201 (NX 1980 Series)
  6. 计算机事业单位试题排序,事业单位考试行测——语句排序怎么排
  7. SQLite 判断表存在/删除表/创建表及if not exist插入数据
  8. 0x06算法设计与分析复习(二):算法设计策略-贪心法3
  9. IBM笔记本电脑如何设置u盘启动?
  10. 《Ruby/YARV/Python跨平台性能对比测试报告》(附单词频率统计实例)