Intel Developer Cloud Telemetry数据分析(一)

描述

 

作者:尹参军 英特尔高级应用工程师

01Telemetry 介绍

Telemetry(遥测)是指Intel Developer Cloud 帮助开发者收集应用程序执行时开发者指定的信息,并通过 UI 的形式展现的功能,该功能可以被启动或关闭。

Intel Developer Cloud 提供的遥测指标,包括有关计算设备运行状态和应用运行数据。在Intel Developer Cloud 的部分实例调用了 Telemetry Dashboard 模块,我们可以通过运行这块单元格来查看边缘节点上运行应用过程中实际数据,这些数据对于想要为其应用程序做出数据驱动决策以确定适合其解决方案的最佳硬件的用户来说是很有参考价值的。

Telemetry 涉及的内容比较多,我们本文仅从 Telemetry 概念,功能做介绍,对于如何把 Telemetry 功能集成到自己的应用中去,我们后面会再做分析。

02Telemetry 流程

Intel Developer Cloud示例的整体工作流程如下:

数据分析

图 1-1 工作流程图

1.注册 Intel Developer Cloud

2.启动并打开 Jupyter Notebook

3.使用指定的目标硬件开发模型并将作业发送到作业队列

4. 应用运行时调用 Telemetry 接口记录数据

5.指标/结果由 Jupyter Notebook 访问

6.通过 Grafana 仪表板生成遥测数据

Telemetry 数据包含在给定作业运行期间的应用程序详细信息——即:平均推理时间 (MS)、推理计数、目标硬件。它还包括以下指标:每秒帧数、推理时间、推理期间的 CPU/GPU 使用率、平均 CPU/GPU 温度以及推理期间的内存使用率。

03裸机实例演示

Step1. 进入 Jupyter Lab 环境

登录主页后,选择“Bare Metal Deployment”的 “Get Started”,进入 Jupyter Notebook 开发环境。

数据分析

图 2-1 点击进入Jupyter Notebook

Step2. 运行参考实例

这次我们并不去细究 Telemetry 调用,所以选择已经集成了 Telemetry 的预置实例——物体检测。我在多个介绍文章里选择把这个预置实例拎出来,主要是因为它功能非常齐全,很适合做演示。当然平台还有很多预置程序,可以自行去探索,大可不必局限于这个实例。

进入Jupyter Notebook开发环境后,依次点击文件夹:

~/Reference-samples/iot-devcloud/openvino-dev-latest/developer-samples/python/

然后找到 object-detection-python 应用,打开 object_detection_demo.ipynb 文件:

依次运行 notebook 上模块(Cell),需要注意的是要等在边缘节点上的应用运行完毕后,再去点击 notebook 最后 Telemetry Dashboard 模块,会生成进入 Telemetry 数据页面的链接地址,点击即可进入数据页面,观察边缘设备运行对象检测应用的数据指标。注意:数据收集发生在应用过程,并随应用终止而结束,需等收集结束后才可查看数据。

数据分析

图 2-2 Submit jobs

数据分析

图 2-3 Telemetry Dashboard

数据分析

图 2-4 观察数据

04总结

Telemetry 虽然功能简单,却是十分关键。获取AI应用执行过程中设备的状态,通过数据分析,找到一个更合理的硬件搭配,发现我们设备资源瓶颈,才能更好地优化我们的方案。

上面只是演示了裸机部署实例,在 DevCloud 容器化环境下也是支持 Telemetry 功能的,原理一样,这里不再赘述,可以自行去探索一下。

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分