欢迎关注公众号"异构加速Lab",这里会持续分享神经网络编译优化与异构加速学习笔记
写在前面
本文主要介绍Intel OpenVINO编译器的使用方法,实现MobileNetV2-SSD网络在Intel CPU和神经计算棒二代(NCS2)上的编译优化与推理加速,这也是笔者在2019年进行本科毕业设计的前半部分入门工作,使用OpenVINO版本为2019_R3.1。目前OpenVINO已更新到2021版本,相关变动可参考OpenVINO官网。(本文不包括OpenVINO的安装,安装步骤可参考末尾链接)
Intel OpenVINO简介
Intel在2018年发行的OpenVINO是一套针对计算机视觉加速优化的深度学习推理框架,将传统计算机视觉算法与深度学习相结合,支持多种深度学习训练框架模型的编译优化,能够轻松实现将预训练模型部署到Intel CPU、GPU、FPGA、神经计算棒等硬件设备上,发挥Inte硬件设备最大性能。
OpenVINO包括模型优化器(Model Optimizer, MO)和推理引擎(Inference Engine, IE)两个组件,主要工作流程见图2。预训练模型经过模型优化器脚本生成优化后的中间表示IR文件,IR文件作为推理引擎的输入,在推理引擎内部将优化后网络部署到Intel的硬件设备上加速推理。