通过Visual Studio诊断工具定位软件CPU瓶颈

news/2024/11/28 11:56:39/

通过VS诊断工具定位软件CPU瓶颈

前情提示:正常情况下我们使用调试模式会看不到诊断工具窗口,控制台会报“无法启动标准收集器。请尝试修复 Visual Studio 的安装。 (HRESULT: 0xe1110002)”这样的错误。

解决方式:通过[Downloads - Visual Studio Subscriptions Portal](https://my.visualstudio.com/Downloads?q=remote tools visual studio 2019) 链接下载对应的版本安装便可以解决。

下面我主要讲解我是如何通过VS诊断工具去定位代码中CPU占用过高的问题。

操作步骤:

1、将代码使用debug方式运行起来;

2、使用“诊断工具”中的“记录CPU配置文件”按钮记录操作软件CPU情况;

3、停止记录分析CPU的占用比例;

如下图:
在这里插入图片描述

上图可以清晰的看出除了"外部调用",opencv是占比最大的

通过代码(我们只需双击我们熟悉的接口就行)比如CaptureThread这里的采集线程接口;该接口主要通过使用UWP获取RGB中的视频流,我们双击便可获取到调用堆栈

在这里插入图片描述

这里有opencv调用的地方,虽是占比不高但通过阅读代码这里的是调用opencv最主要的入口;我通过分析代码发现在每次取出RGB数据帧时原始格式是NV12,需要使用opencv将NV12转成bgr格式供外部使用;外部一般只有流模式情况下才会使用bgr格式,其他时间这种转化是在浪费CPU。

故而,我优化我们代码逻辑,在流模式时进行转换,在非流模式时不转化,大大降低了非流模式(大部分时间)CPU的使用率。

效果如下:

在这里插入图片描述

非流模式下CPU占用非常的低,之前高占用的opencv也不见了。。。。

参考:分析性能探查器中的 CPU 使用情况 - Visual Studio (Windows) | Microsoft Learn


http://www.ppmy.cn/news/241559.html

相关文章

联想yoga13s锐龙版和酷睿版 哪个好

联想yoga13s两个版本的屏幕都是一样的,都采用了13.3英寸的尺寸大小的屏幕,分辨率都是2.5k,色域为100%sRGB高色域,屏幕占比比较高,为全面屏设计,两个版本的屏幕素质不错,是目前轻薄本市场中第一梯…

联想拯救者y7学计算机可以用吗,2018什么笔记本电脑好 联想拯救者y7000评测

如今,爱好网游的年轻朋友非常多,尤其是热衷于端游的人较多。为了使自己在玩游戏时不出现卡顿的现象,越来越多的朋友都选择购买游戏本。于是,许多电脑品牌纷纷推出游戏本,当然联想也不例外。那么下面小编就来给大家具体…

联想拯救者r720适合java么_联想拯救者哪个型号好 联想拯救者r720怎么样【详解】...

目前,联想这一品牌旗下的笔记本或者电脑在我们生活中出现的频率很高,因为其产品质量一直以来都让广大消费者十分放心。针对一些游戏爱好者,联想推出了一系列的游戏本,拯救者就是其中比较热门的系列。但是,究竟 联想拯救…

学计算机r7000和y7000哪个好,分析看看联想拯救者r7000和y7000区别是什么?哪个好?真相评测揭秘...

这两款联想拯救者r7000和y7000区别不是很大的哈,款式和配置是差不多的,只是说联想拯救者y7000p大气一些的,看个人喜欢吧,我自己用的是联想拯救者y7000p,这款性价比蛮高的,质感蛮强的,电脑贼棒.外…

学计算机r7000和y7000哪个好,联想拯救者r7000p和y7000p哪个好-联想拯救者r7000p和y7000p评测对比...

联想拯救者r7000p 2020最近开放上架了,那么这款搭载了AMD处理器的游戏本对标y7000p又有哪些不同之处呢,两款笔记本是否体验不同,究竟哪一款更好,哪一款更香,哪一款更实在,快来了解一下吧,也许能…

当开发同事辞职,接手到垃圾代码怎么办?

目录 一、前言 二、开发中的另一种选择 三、低代码概念 四、低代码在开发中的优势 01、开发效率提高 02、开发成本减少 03、维护性更高 五、有低代码后就不要开发了? 一、前言 事实上,垃圾项目是日积月累而成的,所谓冰冻三尺非一日之寒&#xf…

【JavaEE】HTTPS加密原理

HTTPS加密原理✿✿ヽ(▽)ノ✿ 文章目录 JavaEE & HTTPS加密原理1. 为什么要加密2. HTTPS加密原理2.1 初始想法2.2 引入非对称加密2.3 中间人攻击2.4 引入证书 JavaEE & HTTPS加密原理 1. 为什么要加密 例子:(运营商劫持) 你可能经常…

分布式理论 - CAP

tip: 作为程序员一定学习编程之道,一定要对代码的编写有追求,不能实现就完事了。我们应该让自己写的代码更加优雅,即使这会费时费力。 文章目录 一、简介深入理解三、CAP的应用应用 一、简介 CAP理论是分布式系统中最重要的理论之一&#xf…