tensorflower delegate介绍

news2025/1/18 11:57:44

为什么要使用delegate

  • delegate是什么意思?
image-20221212144653727

性能优化的方法:

  1. 量化
  2. 剪枝
  3. 权重聚集
  4. 利用硬件加速器

其中,当我们使用硬件加速器的时候,可以获得相应硬件的特性,提高性能,降低功耗。但是硬件加速器有很多种,究竟该用哪一种,这么多种该如何管理。

怀揣着管理和维护加速委托的目的,这个时候delegate就应运而生。 本质是一种OP的实现管理机制。

如果说GPU的kenel, CPU的kenel,DSP的kenerl都实现了ADD这个OP,但是真正运行的实际,到底采用哪个硬件的的OP呢?

delegate就可以进行选择,在一个比如我有一个新硬件NPU,哪NPU实现的OP又该如何注册呢?这个时候还是delegate。

image-20221212142317176 image-20221212142335972 image-20221212144725848

如何使用delegate

说到这里的话,其实直接看官网的文档是最好的,这里列举二个官网源代码中的例子来说明。

TfLiteContext 一个接口,连接tflit delegate运行时的。

image-20221212142538185

  • 简单举例说明delegate工作原理

假设delegate 仅支持add op,在运行该模型的时候,run time的分割算法,会将node拆分成二个集合。一个是delegate,另一个则不是delegate。

image-20221212142905798

  1. 理由1:deletae
  2. 理由2:

之后:

image-20221212145031113

image-20221212143247810

image-20221212143404208

目前官网都有哪些delegate

硬件加速器的抽象层:NNAPI(Android)

image-20221212144919287 image-20221212143454376 image-20221212143545121 image-20221212143630248 image-20221212143725379

如何决定是否使用delegate

image-20221212143835177 image-20221212143854479 image-20221212143946239 image-20221212145237864

参考资料

【GITHUB】TensorFlow Lite C++ image classification demo

【DOC】TFLITE Delegate document

【DOC】TensorFlow Lite 委托

Delefate YouTobe

YouTube TFLITE delegate

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/93441.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【外汇天眼】外汇市场交易基本面分析:什么是利率平价(IRP)?

利率平价(平价Interest RateParity,也称为IRP利息率,是指外汇市场在所有可自由兑换货币的预期回报率相同时所能提供的平衡条件。 利率平价规定,一种货币对另一种货币的升值(贬值)必须由利率差异的变化抵销…

音乐推荐系统设计

文章目录问题描述如何解决系统设计评测指标推荐系统的用户画像运动音乐场景用户行为分析睡眠音乐场景用户行为分析治愈音乐场景用户行为分析其他音乐场景用户行为分析问题描述 移动网络和数字多媒体技术的飞速发展促进了数字音乐产业的共享与广泛传播.对用户而言&a…

TensorRT框架解析

简介: 官网网址: Installation Guide :: NVIDIA Deep Learning TensorRT Documentation NVIDIA TensorRT 的核心是一个C库。 这有助于在 NVIDIA 图形处理单元 (GPU) 上进行高性能推理。 TensorRT 采用经过训练的网络&#xff0…

计算机毕设Python+Vue校园失物招领平台(程序+LW+部署)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【2023程序员必看】人工智能行业分析

IT行业薪资高已成为大家的共识,但你知道哪个岗位薪资在IT行业中也是“高高在上”吗? IT届薪资天花板,人工智能当仁不让! 当下人工智能就业行情怎么样 22年毕业生春招就业情况 根据《2022年春招市场行情周报》显示,人…

【Git】拉取远程仓库的指定目录,图文详细步骤

Git概述 Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。 分布式相比于集中式的最大区别在于开发…

[附源码]Python计算机毕业设计个人博客Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

零碎知识点

零碎知识: 1.**在Python中表示乘方运算,**2即为求平方,**3表示3次方; 2.为赋值运算符,表示把右侧的数据赋值给左边的变量,例如:a 10; 3.变量名的命名规则: 变量名由数字…

【论文阅读】(2018)The Meet-in-the-Middle Principle for Cutting and Packing Problems

文章目录一、摘要二、介绍三、Normal Patterns 正常模式四、Meet-in-the-Middle Principle4.1 MIM Patterns4.2 MIM 的性质4.2.1 性质14.2.2 性质24.2.3 性质34.2.4 性质4五、Evaluation六、Conclusions论文来源:(2018)The Meet-in-the-Middl…

Odoo 16 企业版手册 - 采购之三向匹配采购收货和账单

三向匹配采购收货和账单的方式 Odoo 16采购模块中的3向方式匹配采购收货和账单功能将帮助您确保您仅为交付到您地址的产品支付供应商账单。在收到采购订单中订购的产品之前,您可能会收到供应商的供应商账单。但是,您可能希望推迟付款,直到产品…

tkinter: 基本+Button+Layout

简介 简介 Tcl 动态解释型编程语言可独立执行,多嵌入C程序中作为脚本引擎,或者作为使用Tk工具包的接口Tcl库可以创建一个或多个Tcl解释器实例,然后在这些实例上运行C或Tcl命令和脚本每个解释器有一个事件队列,接受事件并处理他们…

未来5年,Python发展前景如何?什么方向最吃香?

有同学提问——请问就未来3到5年来讲,python的发展趋势如何?我要不要深学下去?如果学建议从事python的哪个方向? 今天我们就来看一下一线技术人员的分析与解答。 因为一直在开发一线工作,经历了好些环节,…

PyTorch可视化工具Visdom教程

文章目录什么是visdom安装和启动安装启动可视化折线图Line什么是visdom visdom是Facebook为PyTorch开发可视化工具,支持numpy和tensor,功能和Tensorboard差不多,在三维空间数据展示十分出色,其次可以远程访问,随时随地观察训练效…

Linux 网络流量监控工具

Linux 网络流量监控 Linux 网络流量监控是捕获和分析企业的 Linux 网络流量的过程。 为什么要监控 Linux 网络流量 深入了解网络流量对于测量和管理带宽使用情况非常重要。分析 Linux 网络流量有助于识别带宽瓶颈、最高用量者和其他可能影响网络性能的网络问题。 Linux 网络…

Java+MySQL基于SSM的物流公司物流订单管理系统 毕业设计

随着我国经济的高速增长,物流快递的数量也在不断的增加,同时面临的就是如何更加方便快捷和高效的管理物流订单的问题,传统模式的物流订单管理模式明显已经不能够满足当下的需求,于是我们提出了基于B/S的贴心物流公司物流订单管理系统的设计与开发。 用户登录界面 本课题是一个…

vue框架甘特图控件(dhtmlxGantt)

官网JavaScript UI Framework - HTML5 Controls Library - DHTMLXJavaScript UI framework for high-speed web and mobile app development with customizable HTML5 UI controls. Free trial version available.https://dhtmlx.comGit及实例 GitHub - DHTMLX/gantt: GPL ver…

LC-1751. 最多可以参加的会议数目 II(动态规划)

1751. 最多可以参加的会议数目 II 难度困难69 给你一个 events 数组,其中 events[i] [startDayi, endDayi, valuei] ,表示第 i 个会议在 startDayi 天开始,第 endDayi 天结束,如果你参加这个会议,你能得到价值 valu…

用 Pandas 处理结构不佳的 Excel 文件

简介 用pandas很容易读取Excel文件并将数据转换为DataFrame。然而现实世界中的Excel文件往往构造不佳,在那些数据散落在工作表中的情况下,你可能需要定制读取数据的方式。本文将讨论如何使用pandas和openpyxl来读取这些类型的Excel文件,并干…

手机视频怎么裁剪时长?教你三招快速搞定

大家知道手机视频怎么裁剪时长吗?现如今,新媒体行业发达,因为很多地方都需要用到视频文件,所以对视频处理的相关操作是免不了的。那么当你因为视频时长过长,导致视频无法发布的时候,你是怎么做的呢&#xf…

第六章JDBC基础详解

文章目录什么是JDBC数据库编程的必要条件JDBC工作原理JDBC如何建立数据库连接JBDC的基本操作添加操作修改操作删除操作查询操作JDBC使用的步骤JDBC的批处理操作JDBC数据源连接池关于执行sql语句的对象什么是JDBC 数据库编程的必要条件 编程语言,如Java&#xff0c…