Dottrace 10.0.2 使用心得

开发环境vs2015 

软件:JetBrains dotTrace 10.0.2  

刚开始不知道怎么下手,多看了一会还有一位仁兄的解释.算是对某个功能小有入门了. 当前会查看某个方法在抓取快照时间它的执行时间了.今天就在此把这个方法介绍一下

引言:

    当自己程序遇到性能问题,比如IIs请求反应缓慢,客户端程序执行缓慢,怎么分析是哪里出了问题呢?dottrace可以帮助.net程序跟踪出代码里每个方法的执行时间,这样让我们更清晰的看出是哪里执行时间过长,然后再分析应该怎样解决。Dottrace是由JetBrainshttp://www.jetbrains.com/ 公司开发的一款产品,它分dottrace Performance和dottrace Memory 两个工具,dottrace Performance用来分析代码性能,比如函数执行时间,调用次数,消耗时间比率等,dottrace Memory一般用来分析内存占用情况。dottrace可以跟踪.net编写的:应用程序,IIS挂接的程序,windows服务,silverlight,WCF服务程序等。还可以把跟踪的文件,以快照的方式保存下来,保存为dtp后缀的文件。跟踪后的结果,如果能找到对应用户的代码信息,还可以直接查看对应的源代码,并选择在VS里直接编辑该方法对应的文件。

复制别的博客的内容,今天懒得改了,版本不一样大体都差不多.关键的原理就在下边.

如上图,Application、Arguments分别对应可执行程序的路径和需要的参数。

profiling type 有三种类型:

  • Tracing:它是通过获取CLR内部一个方法开始执行和结束执行的时间差来计算的分析时间。
  • Line-by-line:它是通过收集代码执行的每条语句的时间来,它计算出的时间更精确。
  • Sampling:它是抽样的方式,每隔一段时间(windows下大概是10ms),会暂停所有线程,并抓取堆栈里的信息,然后计算出代码执行时间差,这个选项可能会导致一些执行很短的方法抓取不到的问题。

Measure的三种类型:

  • Wall time(performance counter): 它是通过Performance Counter API来收集的信息,一般操作系统和各个硬件设备都提供性能计数的API供程序调用。
  • Thread time:它只支持Sampling的分析方式,它通过一个固定的线程来抓取堆栈信息计算时间,并且它只计算自己内部程序执行的时间,不管等待其他IO的时间。
  • Wall time(CPU instruction):它是通过读取TSC processor register里记录的方法进入和退出时间差的方式来计算的。

  根据上面的选项方式,一般我们要想完整分析自己程序的执行时间,建议可以采用Line-byline(或Tracing)和Wall time(CPU instruction)或Wall time(performance counter)的方式,因为如果用抽样和Thread time的搭配方式,会只计算自己内部时间,不能计算自己程序和外部程序交互的时间,会让自己分析性能时产生误导。

一下是自己的心得:

数据快照抓取完毕后,进入all calls  此处应该是方法调用次数吧.

点工具栏上边的搜索框,输入你想查询的自己编写的方法.就能查出此方法运行占用的时间了. 如图:

main后半边的 ms 是整个运行的时间 下边是具体哪个部分占用的时间长,个人理解.

搜索后进入另一个界面

这是个写txt 的方法, 上边有总的时间,  写的时间,关的时间,close 用了5ms 

打开那个上边12ms的目录

竟然createfile 方法占的最多

 

转载于:https://www.cnblogs.com/zuochanzi/p/6782769.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
dotTrace 3.0 是一种性能分析工具,用于帮助开发人员识别和解决应用程序中的性能瓶颈。它由JetBrains开发,被广泛用于优化和改进.NET应用程序的性能。 dotTrace 3.0具有一些重要的特点和功能。首先,它可以捕获和分析应用程序的性能数据,包括 CPU 使用率、内存占用、方法执行时间等。这些数据使开发人员能够深入了解应用程序的性能状况,从而找出可能导致性能问题的部分。 其次,dotTrace 3.0提供了多种分析模式,以满足不同的需求。例如,它可以进行线程级别的分析,以了解多线程应用程序的性能问题。还可以进行时间线分析,以详细了解方法的执行时间和顺序。此外,它还提供了一种针对服务器端应用程序的分析模式,以帮助优化Web应用程序的性能。 除了基本的性能分析功能,dotTrace 3.0还提供了一些高级功能,如快照拍摄和过滤。快照拍摄可以帮助开发人员在运行时观察应用程序的状态,以便更好地理解性能问题的来源。过滤功能则可根据开发人员的需求,排除某些不需要的数据,使分析结果更加准确和有针对性。 总的来说,dotTrace 3.0是一种功能强大的性能分析工具,能够帮助开发人员识别和解决应用程序中的性能问题。它提供了多种分析模式和高级功能,使开发人员能够更好地理解应用程序的性能状况,并进行有针对性的优化和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值