学习笔记(13):英特尔®OpenVINO™工具套件中级课程-推理引擎详解内部API
立即学习:https://edu.csdn.net/course/play/28807/427188?utm_source=blogtoedu
目录
1、推理引擎详解
2、推理引擎API (ie_api)
1、推理引擎详解
- 优化步骤:
- 1、特殊插件HETERO与MULTI
"HETERO"plugin —— 该插件可以在不同设备上运行不受支持的特定层。(设置优先级?)
"尝试在FPGA上运行所有层,如果找不到相应方案在CPU上运行"
"MULTI"Plugin —— 该插件可以在不同设备上运行每个推理调用,从来利用系统中的所有设备。(设置设备分配?)
程序运行时将生成许多推理请求,每帧都有不同的推理调用
"指令可以把所有请求发送到MYRIAD设备上,如果前者充分利用,后续请求将发送到CPU,两个设备并行执行推理"
2、特定设备优化插件
在推理之前,推理引擎把网络映射到正确的库单元的同时,网络发送至硬件插件,多个级别的硬件优化便已完成。
每个设备或者设备系列都有自己的插件实现方案。
优化内容:
1、网络级优化:一些操作不映射到内核,而是映射到他们之间的关系,例如数据重组,以提高性能,减少推理过程中数据转换的时间
2、内存级优化:在内存中按照特定数据的集合重组数据
3、内核级优化:根据设备是否支持特定指令集来选择合适的指令集
2、推理引擎API (ie_api)
- 常用的基本API
- 1、IECore(推理引擎对象) —— 推理引擎的主要类
运行在各种不同插件上层,因此可以创建一个core类对象而无需指定任何特定设备,并只有在加载网络,实际运行的时候才需要指定设备,因此无需注册特定插件,直接在IECore内部完成
- 2、InferRequest ——进行推理
使用推理请求类执行推理,还可以为推理指定请求ID,这对异步推理很重要
3、Performance Counters —— 性能计数器
报告实际运行时的性能计数器
performance_counters = exec_net.requests[0].get_perf_counts()
- 4、Available Devices —— 可用设备
- 感知哪些设备被连接且可以被使用
- devices = ie.available_devices
学习笔记(13):英特尔®OpenVINO™工具套件中级课程-推理引擎详解内部API相关推荐
- 学习笔记(01):英特尔® OpenVINO™工具套件初级课程-如何加速视频处理进程?
立即学习:https://edu.csdn.net/course/play/27685/385715?utm_source=blogtoedu 1Frame = 1920*1080 pxels RGB ...
- 英特尔OpenVINO工具套件高级课程实验操作记录与学习总结
英特尔OpenVINO工具套件高级课程&实验操作记录与学习总结 实验机器环境部分信息: dc2-user@10-0-255-63:~$ lsb_release -a No LSB module ...
- TF/pytorch/caffe-CV/NLP/音频-全生态CPU部署实战演示-英特尔openVINO工具套件课程总结(下)
TF-pytorch-caffe~CV/NLP/音频-全生态CPU部署实战演示-英特尔openVINO工具套件课程总结(下) 在上中两篇中我们充分理解了openvino的基本原理以及其硬件基础,在这篇 ...
- 英特尔OpenVINO工具套件快速构建一款AI应用之课程体验
首先和大家说明一下,这是一个体验课程笔记 本文记录.博主学习该课程前两个章节内容的笔记心得 声明:本文禁止转载.感谢理解与支持 文末有课程链接 这个课程.博主会一边学习.一边撰写更多笔记类教程 对 模 ...
- 英特尔核芯显卡控制面板怎么找不到_【全球首发】英特尔第十代Cometlake台式机处理器详解与评测...
[0.前言] 第十代还有4个月左右才会发布,本文所测试的处理器性能并不代表实际上市后的具体情形(本文的结果会偏低).这也并不影响你选择9代或AMD平台,早买早享受,因为等到十代价格趋于稳定合理,至少还 ...
- 英特尔核显驱动hd630_【惊喜提升】英特尔第十代Cometlake台式机处理器详解与简单评测...
[0.前言] 第十代还有4个月左右才会发布,本文所测试的处理器性能并不代表实际上市后的具体情形(本文的结果会偏低).这也并不影响你选择9代或AMD平台,早买早享受,因为等到十代价格趋于稳定合理,至少还 ...
- 学习笔记-Flutter 布局(二)- Padding、Align、Center详解
Flutter 布局(二)- Padding.Align.Center详解 本文主要介绍Flutter布局中的Padding.Align以及Center控件,详细介绍了其布局行为以及使用场景,并对源码 ...
- linux初级学习笔记七:linux用户管理,密码和组命令详解!(视频序号:04_1)
本节学习的命令: 用户管理命令:useradd,userdel,id,finger,usermod,chsh,chfn,passwd,pwck, 组管理命令:groupadd,groupmod,gro ...
- 【STM32学习笔记】(12)——NVIC(嵌套向量中断控制器)详解
NVIC(嵌套向量中断控制器)简介 在讲如何配置中断优先级之前,我们需要先了解下 NVIC.NVIC 是嵌套向量中断控制器,控制着整个STM32芯片中断相关的功能,它跟Cortex-M3 内核紧密联系 ...
最新文章
- java继承对象转换_java 继承的基础(转)
- linux给普通用户分配root权限
- 定义交货类型(Delivery Types)
- PyInstaller库函数
- opengl教程 linux,绘制基本的几何图形 - OpenGL编程学习实战教程_Linux编程_Linux公社-Linux系统门户网站...
- android多条件查询数据,Android GreenDao 条件查询问题
- 抽象类中不能有private的成员_【java基础】-- java接口和抽象类的异同分析
- vue前台导出zip文件_在Vue.js中使用JSZip实现在前端解压文件的方法_心病_前端开发者...
- oralce 创建用户和权限
- Java 并发 —— Thread、Executor、线程池
- bzoj 1664: [Usaco2006 Open]County Fair Events 参加节日庆祝(DP)
- 海量数据挖掘MMDS week7: 相似项的发现:面向高相似度的方法
- tcpdump -w xxxxx.pcap 提示 Permission denied
- C语言编程>第十六周 ① 给定程序的功能是求1/4的圆周长。函数通过形参得到圆的直径,函数返回1/4的圆周长(圆周长公式为:L=Πd,在程序中定义的变量名要与公式的变量相同)。
- 攻防世界逆向入门maze详解
- Adobe将支持HTTP流媒体直播 预示着ipad将可以用flash吗?
- 【硬核技术文】研发绩效,AI算法的完美舞台
- 浙江互联网金融联合会成立三周年走进海宁
- zxing 生成二维码,可设置logo、二维码颜色、白边大小
- 练习命令的使用,具体命令如下: set getrange strlen append setbit bitcount decr decrby incr incrby incr