1、基本概念

SNPE是高通推出的一个神经网络加速引擎,他可以同时利用到DSP和GPU、GPU。

目前最新版本的SNPE1.54支持TensorFlow, Caffe, Caffe2, ONNX, TensorFlow, PyTorch

转换的流程大致如下:

将训练好的模型用SNPE的工具转成DLC文件就可以在SNPE运行环境里跑了。装成DLC之后也可以用它自带的量化工具量化成8位整形,放到DSP上跑。

各芯片支持:


2、运行环境

大致架构如下:

DL Container Loader:加载DLC工具

Model Validation : 验证DLC工具

Runtime Engine : 推理引擎

Partitioning Logic : 将模型划分成多个子网络

Runtime
CPU 支持双精度浮点和8位量化的模型
GPU         支持混合精度或者单精度浮点
DSP 支持8位整形
AIP 支持8位整形

HTA: 全称Hexagon Tensor Accelerator,既Hexagon张量加速器。 如果要在HTA上运行模型的一部分就需要用工具(snpe-dlc-quantize)对模型进行量化并且将其二值化然后嵌入到DLC中。有些情况下也可能手动的去分配哪些子网络在HTA上运行会更高效

HVX:Hexagon Vector eXtensions, 向量处理扩展核心

SNPE可以将AIP剩余的部分放到CPU上运行

HTA自网络:对应着HTA编译器编译的部分,他的元数据来源于DFC的HTA部分

HNN子网络:对应着可以用Hexagon NN 库在DSP上运行的子网络,他的元数据是DLC的HVX部分

AIP: AIP(AI Processor) 可以交叉使用HTA, HVX, Q6去运行神经模型。而Q6就是协调HTA和HVX一起运行的

AIP(AI Processor)运行环境有以下几种方式:

A: 全部在HTA上运行

当你选择AIP运行环境时默认时完全的HTA

B: 部分在HTA上运行,部分在HNN上运行

当所有的子网络不能再HTA上运行时,HTA智能编译一个更小的子集

你也可以手动划分一个子网络到HTA上运行

C:可以手动划分多个部分

SNPE教程一:基本概念相关推荐

  1. 大学英语综合教程一 Unit1至Unit8 课文内容英译中 中英翻译

    大学英语综合教程一 Unit1至Unit8 课文内容英译中 中英翻译   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的 ...

  2. shell教程一 :介绍

    shell教程一 :介绍 大家好,自工作至今,因为工作环境原因(CenOS6.X 集群),经常用到shell的编程,shell是linux下开发必不可少的利器.为了能让想学习的朋友,能快速上手.so ...

  3. AUTOCAD自学教程一

    AUTOCAD自学教程一 AUTOCAD自学教程 在学习任何一款软件的时候,第一步也是非常必要的一步就是如何的安装软件. 下面我们讲解如何的安装这个软件. 1.安装autocad 2.安装产品 3.正 ...

  4. pytorch打印模型参数_Pytorch网络压缩系列教程一:Prune你的模型

    Pytorch网络压缩系列教程一:Prune你的模型 本文由林大佬原创,转载请注明出处,来自腾讯.阿里等一线AI算法工程师组成的QQ交流群欢迎你的加入: 1037662480 深度学习模型取得了前所未 ...

  5. MongoDB 教程一: 安装和使用 (Mongodb启动命令mongod参数说明)

    视频: MongoDB 教程一: 安装和使用 Mongodb启动命令mongod参数说明 我们可以通过mongod --help查看mongod的所有参数说明,以下是各参数的中文解释. 基本配置 –q ...

  6. 初识c语言教程,第1课C语言教程一: 初识C程序.doc

    第1课C语言教程一: 初识C程序 第1课 初识C程序 教学目标 1.计算机语言介绍 2.了解C语言 3.如何学好C语言(多做题,多上机调试程序) 4.C语言上机调试环境 教学过程 计算机程序设计语言的 ...

  7. 大学英语综合教程一 Unit 8 课文内容英译中 中英翻译

    大学英语综合教程一 Unit 8 课文内容英译中 中英翻译   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的博客 本文 ...

  8. 大学英语综合教程一 Unit 2 课文内容英译中 中英翻译

    大学英语综合教程一 Unit 2 课文内容英译中 中英翻译   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的博客 本文 ...

  9. 原创 | k8s系列教程一:开篇

    作者:潘吉祥 欢迎加入k8s学习系列教程,在接下来的系列文章,你将可以在较短的时间内达到入门k8s的效果. k8s是什么 Kubernetes(K8S)作为Google在2014年发布的一个开源项目, ...

最新文章

  1. 某程序员炫耀:因长得太帅被女领导追求,三年就提拔到总监!程序员搞技术没用,健身护肤才是王道!...
  2. mysql的分库分表
  3. Java 基础——构造器和方法的区别
  4. oracle 根据分隔符提取,oracle自定义函数按照某个分隔符拆分字符串
  5. 【MySQL】MySQL 执行 PROCEDURE ANALYSE 报错 ERROR 1064 (42000)
  6. 使用fetch函数发送ajax
  7. PHP连接pda,OTG接口是什么
  8. robots的几种作用
  9. pdf论文中visio画的图出现Times New Roman 字体未嵌入
  10. [模型调研]实体消歧
  11. linux 内核网络中 RPS/RFS 原理Ⅱ
  12. 关于Palantir ——第六部分 – 图分析应用
  13. 微信营销为什么会用到微信公众号客服系统?
  14. 让打工人颤抖的监控系统:离职倾向、摸鱼通通都能被监测!你还敢上班摸鱼吗?...
  15. [多-元-智-能]理论 IQ智商 EQ情商 AQ逆商 FQ财商 HQ健商 BQ戆商 CQ创商 MQ德商 DQ胆商 MQ心商 WQ志商 SQ灵商...
  16. 汽车信息安全系列-3.TI HSM笔记(更新中)
  17. Android中的Menu功能菜单-OptionsMenu[选项菜单]
  18. windows中的多执行绪
  19. 今天搞毕设了么?——3.29 audioread读取音频文件
  20. MxCAD5.2 2017.2.23更新

热门文章

  1. File ignored because of a matching ignore pattern. Use “--no-ignore“ to override
  2. linux//常用命令
  3. 北美18名校的数据挖掘,数据分析,人工智能及机器学习课程汇总
  4. IPV6地址解析与DAD机制实验分析
  5. js数组格式转成json格式
  6. 文件流,gzip解压,压缩
  7. CocoStudio基础教程(3)在程序中处理cocoStudio导出动画
  8. IEEE-754标准与浮点数运算
  9. Java IO框架之BIO、NIO、AIO
  10. JAVA IO与NIO优劣浅析