我正在尝试使用 Visual Studio 性能分析器来分析我的程序,但我是这个工具的新手。
如果我在分析器中启动程序,我会收到一份报告,其中可以看到函数所花费的总分析时间的百分比。但总时间可能在 5 秒到 500 秒之间变化,那么我如何查看我的优化是否产生了效果?
如果以毫秒为单位,我就不会遇到这个问题,但我找不到任何像“以毫秒为单位显示”或类似的功能。这样的功能存在吗?
Visual Studio Profiler 中有两种不同的 CPU 分析方法:Sampling & 仪器仪表.
采样(默认)
The 抽样分析法按设定的时间间隔中断计算机处理器并收集函数调用堆栈。正在执行的函数的独占样本计数会增加,调用堆栈上所有调用函数的包含计数也会增加。采样报告显示分析模块、函数、源代码行和指令的计数总数。
采样方法是轻量级的(二进制文件中没有任何更改),并且对应用程序方法的执行影响很小:它收集仅统计有关应用程序在分析会话期间执行的工作的数据。
这对于初步探索很有好处。高 % 可能意味着函数运行缓慢或调用过于频繁。
仪器仪表
The 仪器分析法收集分析应用程序中函数调用的详细计时。如何?它注入的代码捕获检测文件中每个函数以及这些函数进行的每个函数调用的计时信息。检测还可以识别函数何时调用操作以进行写入文件等操作。
在报告中,您将看到应用程序时间(执行一段代码所花费的总时间,但不包括调用操作系统、ado.net、服务调用等所花费的时间)和运行时间(总时间)这是花费在执行一段代码上的)。
这种分析模式还具有较高的运行时开销。这不可避免地会稍微改变应用程序的性能特征,但影响很小。
只有这个选项可以让你看到毫秒。因此更改性能资源管理器中的向导中的分析方法。另请注意,此选项有时不可用,例如在分析单元测试时。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)