时隔2年,我又回来了~

VS2010 Analyze模块

上一篇 / 下一篇  2011-05-10 08:55:11 / 个人分类:Analyze模块

使用Analyze模块,主要是用来分析系统的性能
有4中数据收集方法
1.采样:采样方法每隔一定时间收集分析信息。此方法对于查找处理器利用率问题很有用,并且大多数性能调查都建议以此方法开始。
默认情况下:Visual Studio高级专业版分析工具采样方法每10,000,000个处理周期(在频率为1GHZ的计算机上这一时间大约为每百分之一秒)收集一次分析信息。
 
2.检测:检测方法注入模块分析代码的副本中,这段代码记录分析运行期间模块中各个函数的每次进入、退出和函数调用。此方法适用于收集有关代码中某个部分的详细即时信息,以及了解输入和输出操作对应用程序性能的影响。
 
3.并发:并发方法收集阻止代码执行(如线程等待释放对应用程序资源的锁定访问时)的每个事件的数据。此方法对分析多线程应用程序很有用。
4..net内存分析:收集.net对象分配信息。默认情况下,数据包括所分配对象的数量和大小。选中或清除此复选框启用或禁用.net内存数据收集。还收集.net对象的生存期信息。选中此复选框可包括有关用于回收内存对象的各代垃圾回收的数据。
 
 
右键点击性能会话,点击属性选项,可以指定性能分析的其他选项
 
常规任务
 
 
常规:添加.net内存分配和生存期数据收集,并为生成的分析数据文件指定命名详细信息。
采样:更改采样率,将采样事件从处理器时钟周期更改到另一个处理器性能计数器,或者将两者都更改。
启动:如果代码解决方案中有多个.exe项目,则指定要启动的应用程序及启动顺序。
层交互:将ADO.NET调用信息添加到分析运行期间收集的数据。
交互层视图:
http://msdn.microsoft.com/zh-cn/library/dd557764.aspx
Windows事件:指定要随采样数据收集的一个或多个Windows事件跟踪事件。
Windows计数器:指定要作为标记添加到分析数据的一个或多个操作系统性能计数器。
高级:指定在应用程序模块使用多个.net framework运行版本时,要分析的运行时版本。默认情况下,分析加载的第一个版本。
 
检测任务
 
二进制文件:指定被检测的模块副本的位置。默认情况下,原始的二进制文件将移至备份文件夹。
检测:在分析范围内排除小型函数以减少分析开销,分析ASP.NET也年中的JavaScript代码,并指定在检测过程之前和之后要在命令提示符下运行的命令。
CPU计数器:指定要添加到分析数据的一个或多个处理器性能计数器。
高级:指定所需的任何其他VSInstr.exe选项,如用于保函或排除特定函数的选项。有关VSInstr选项的更多信息,参见
http://msdn.microsoft.com/zh-cn/library/ms182402.aspx
 
如果要使用VS2010来测试Sliverlight系统,需要安装sp1补丁,然后就可以像分析一般的Web系统一样来做性能分析。
 
分析报告出来之后,有很多数据将以各种形态展现出来。同样,对于一些可以优化的函数以及代码部分,Analyze会提出一些修改建议。
 
性能分析出来的报告中各种数据,还是要看个人对数据的理解,来进行分析,虽然Analyze都已经将分析数据展现了,同时也可以为性能优化作出建议,但是最终的决定权还是在你的手中。
 
 
探查器采样方法数据视图
 
1.摘要试图
列出收集样本时指向最频繁的函数以及执行单个工作最多的函数。
2.调用树视图
显示层次结构树中各个函数的执行路径。
3.模块视图
按模块组织分析数据,并列出收集样本是正在执行的函数、源代码行和指令。
4.调用方/被调用方视图
显示所选函数与调用其及其调用的各个函数的分析数据。
5.函数视图
按函数组织分析数据,并列出收集样本是正在执行的函数。
6.行视图
列出收集样本时正在执行的源代码行。
7.指令指针(IP)视图
列出收集样本时正在执行的源代码行。
8.进程视图
列出进程和线程的开始和结束时间。
9.标记视图
列出插入到分析数据文件中的分析标记。
10.函数详细信息视图
显示所选函数、调用该函数的函数以及该函数调用的函数之间的关系的图表。
11.资源争用数据视图
显示分析数据的图像时间线,并列出大多数阻塞事件中所涉及的函数和资源。

TAG:

旺仔小罐头的个人空间 引用 删除 289782385   /   2011-05-10 10:43:16
 

评分:0

我来说两句

Open Toolbar