如何在Visual Studio性能分析器中查看毫秒而不是%样本

ikw*_*lem 18 c# performance-testing visual-studio

我正在尝试使用Visual Studio性能分析器分析我的程序,但我是这个工具的新手.

如果我在分析仪中启动我的程序,我会得到一个报告,其中我看到一个函数所用的总分析时间的百分比.但是总时间可以在5秒到500秒之间变化,那么我如何才能看出我的优化是否有任何影响?

如果是以毫秒为单位,我不会遇到这个问题,但我找不到任何像"以毫秒为单位显示"或类似的功能.这样的功能存在吗?

在此输入图像描述

Cyb*_*axs 31

有两种不同的CPU性能分析方法在Visual Studio探查:采样仪器仪表.

采样(默认)

采样分析方法中断以设定的间隔的计算机处理器和收集函数调用栈.对于正在执行的函数,增加独占样本计数,并且对于调用堆栈上的所有调用函数,增加包含计数.采样报告显示了配置模块,函数,源代码行和指令的这些计数总数.

采样方法是轻量级的(二进制文件没有变化),对应用程序方法的执行几乎没有影响:它只收集有关应用程序在分析会话期间执行的工作的统计数据.

这对初步探索很有帮助.高%可以表示缓慢的功能或太频繁调用的功能.

仪表

仪器分析方法收集详细定时功能在一个型材应用程序调用.怎么样?它注入代码,用于捕获已检测文件中的每个函数的定时信息以及由这些函数进行的每个函数调用.Instrumentation还可以识别函数何时调用操作以进行诸如写入文件之类的操作.

在报告中,您将看到应用程序时间(执行一段代码所花费的总时间,但不包括调用操作系统,ado.net,服务调用等所花费的时间)和经过时间(总时间)这是花在执行一段代码上的.

此分析模式也具有更高的运行时开销.这不可避免地会稍微改变应用程序的性能特征,但它很小.

只有此选项允许您查看毫秒.因此,请在性能资源管理器的向导中更改分析方法.另请注意,此选项有时不可用,例如分析单元测试时.