免费.NET探查器.NET 4.0混合code [英] Free .NET Profiler for .NET 4.0 mixed code

查看:156
本文介绍了免费.NET探查器.NET 4.0混合code的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我检查了一些性能分析器这里提到。但是......

I checked out some of the performance profilers mentioned here. But...

  • 在EQATEC没有为我工作,因为我有很多组件我想的空间,其对集会的限制来分析。如何麻烦的多少是得到一个免费许可?我会去,如果有人保证我说EQATEC可以配置文件托管和非托管code
  • SlimTune只异形我管理code,即使我设定配置文件的本地函数到真
  • XTE探查不再免费
  • 我们有AQTime 6,我们才买的一个副本,但它似乎不支持.NET 4.0的应用程序(它甚至不能启动我的应用程序)
  • 我们使用Visual Studio 2010专业版SP1,所以我们没有在Visual Studio分析器
  • 我尝试了穷人的分析(暂停程序很多次,看到它在哪里),但我得到了太多随机的结果,我更习惯于传统的分析

(我花了整整一天难倒这个,对不起,如果我是太消极)

(I've spent the whole day stumped on this, sorry if I was too negative)

更新:当我清理我的解决方案,重新建造它,并检查了所有调试信息(.PDB)被复制到同一个目录下的可执行文件,我再次试图AQTime和它的工作!这表明我的托管和非托管code常规时间信息,所以我的问题就解决了​​。但是,我使用的是付费探查,所以这个问题将继续开放,直到我看看xperf或有人想出了别的东西。

UPDATE: After I cleaned my solution, built it again and checked all debug info (.pdb) was copied to the same directory as the executable, I tried AQTime again and it worked! It showed me routine timing info for both managed and unmanaged code, so my problem is solved. However, I'm using a paid profiler, so the question will remain open until I take a look at xperf or someone comes up with something else

推荐答案

AQTime有他们的最新探查一个免费版本(http://smartbear.com/products/free-tools/aqtime-standard/)支持的.Net 4,但我怀疑它可以做本地的混合特性和管理。

AQTime have a free version of their latest profiler (http://smartbear.com/products/free-tools/aqtime-standard/) It supports .Net 4, But I doubt it can do a mixed profile of Native and Managed.

如果你真的认真对待它,你可能会考虑微软xperf工具(http://msdn.microsoft.com/en-us/performance)。他们有一个陡峭的学习曲线,但它们都是免费的,我怀疑任何商业探查能做什么xperf能(仪表是在操作系统中,而不是在一个单独的进程,因此无论是Vista中,Win7的或win2K8是必需的)。我在等人写它周围漂亮的GUI,但它采取有点长......; - )

If you are really serious about it you might look into the Microsoft xperf tools (http://msdn.microsoft.com/en-us/performance). They have a steep learning curve but they are free and I doubt any commercial profiler can do what xperf can (the instrumentation is in the OS, not in a separate process, thus either Vista, win7 or win2K8 are required). I'm waiting for someone to write a nice GUI around it, but it's taking a bit long... ;-)

xperf将配置您的本地code,你可以加载你的符号到结果观众。我不认为它会下降到每行粒度虽然。它有一个.NET CLR提供者(http://msdn.microsoft.com/en-us/library/dd264809.aspx)。关于xperf很酷的事情是,它也能显示出可能影响你的表现其他进程(你可以自由地将其关闭,只配置您自己的过程)。例如:它能够揭示出你的IO是缓慢的,因为一个写的不好的USB驱动程序,病毒扫描程序或防火墙软件。传统的分析器将只显示缓慢的IO,导致你专注于一个非瓶颈。

xperf will profile your native code and you can load your symbols into the result viewer. I don't think it will go down to per-line granularity though. It has has a .Net CLR Provider (http://msdn.microsoft.com/en-us/library/dd264809.aspx). The cool thing about xperf is that it can also show other processes that may be influencing your performance (you are free to switch it off and only profile your own process). For example: it is capable of revealing that your IO is slow due to a badly written USB driver, virus scanner or firewall software. A traditional profiler would only show the slow IO, causing you to focus on a non-bottleneck.

对了,还有一个ICorProfilerCallback接口,你可以利用编写自己的分析器(http://msdn.microsoft.com/en-us/library/s5ec0es1.aspx)。

By the way, there is also an ICorProfilerCallback interface you can utilize to write your own profiler (http://msdn.microsoft.com/en-us/library/s5ec0es1.aspx).

这篇关于免费.NET探查器.NET 4.0混合code的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆