Questions tagged «profiling»

分析是通过运行称为探查器的分析工具来评估应用程序或系统的过程。分析工具可以集中在许多方面:函数调用次数和计数,内存使用率,CPU负载和资源使用率。


4
PHP内存分析
剖析PHP页面的内存使用情况的好方法是什么?例如,查看我的数据正在使用多少内存,和/或哪些函数调用分配了最多的内存。 xdebug似乎没有在其性能分析功能中提供内存信息。 xdebug 确实在其跟踪功能中提供了它。这与我想要的非常接近,除了庞大的数据量是压倒性的,因为它显示了每个单个函数调用的内存增量。如果可以使用某些GUI工具将呼叫隐藏在一定深度以下,那将解决我的问题。 还有别的事吗?
95 php  memory  profiling 

6
剖析javascript执行的最佳方法是什么?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 6年前关闭。 改善这个问题 是否有适用于javascript的良好分析器?我知道firebug对分析代码提供了一些支持。但是我想确定更大范围的统计数据。假设您正在构建大量的javascript代码,并且您想确定代码中实际上是什么瓶颈。首先,我想查看每个javascript函数和执行时间的配置文件统计信息。接下来将包括DOM函数。这与放慢速度的操作(如对渲染树的操作)相结合将是完美的。我认为,如果在我的代码,DOM准备或渲染树/视觉效果的更新中失去性能,将会给人留下很好的印象。 有什么接近我想要的吗?或者,要实现我所描述的大部分内容,最好的工具是什么?它将是通过配置文件功能增强的自编译浏览器以及JavaScript引擎吗?

4
如何配置我的Android应用程序?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 改善这个问题 我需要找到Android应用程序中的瓶颈所在。 我可以使用哪些配置文件工具或技术?

10
什么是烫发空间?
在学习Java内存配置文件时,除了“堆”之外,我还会看到术语“ perm空间”。我知道堆是什么-烫发空间是什么?
88 java  profiling 

19
有没有像样的C#分析器?[关闭]
从目前的情况来看,这个问题不适合我们的问答形式。我们希望答案能得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 我需要一个C#分析器。 尽管我不愿意花钱购买,但免费或至少带有试用版的东西是理想的选择,因为要花很多时间才能提高采购订单。 有什么建议吗?
83 c#  .net  profiling  profiler 

21
您最喜欢的分析工具是什么(针对C ++)?
从目前的情况来看,这个问题不适合我们的问答形式。我们希望答案能得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 到目前为止,我只使用过Rational Quantify。我听说过有关英特尔VTune的很棒的事情,但是从未尝试过! 编辑:我主要是在寻找可以检测代码的软件,因为我猜这是获得非常好的结果的唯一方法。 也可以看看: Windows上本机C ++有哪些好的分析器?

10
分析大型Java堆转储的工具
我有一个HotSpot JVM堆转储,我想分析一下。VM使用运行-Xmx31g,堆转储文件大48 GB。 我什至不会尝试jhat,因为它需要大约五倍的堆内存(在我的情况下为240 GB),而且速度非常慢。 ArrayIndexOutOfBoundsException在分析了几个小时的堆转储后,Eclipse MAT崩溃了。 还有哪些其他工具可用于该任务?最好使用一套命令行工具,其中包括一个程序,该程序将堆转储转换为有效的数据结构以进行分析,再结合使用其他几个可处理预构建数据的工具。
80 java  profiling 

7
跟踪Java中的内存泄漏/垃圾回收问题
这是我几个月来一直试图寻找的问题。我有一个正在运行的Java应用程序,该应用程序处理xml提要并将结果存储在数据库中。存在间歇性的资源问题,很难追踪。 背景: 在生产包装盒(问题最明显的地方)上,我对包装盒的访问不是特别好,并且无法使Jprofiler运行。那个盒子是运行centos 5.2,tomcat6和java 1.6.0.11的64位四核8gb机器。它以这些java-opts开头 JAVA_OPTS="-server -Xmx5g -Xms4g -Xss256k -XX:MaxPermSize=256m -XX:+PrintGCDetails - XX:+PrintGCTimeStamps -XX:+UseConcMarkSweepGC -XX:+PrintTenuringDistribution -XX:+UseParNewGC" 技术堆栈如下: Centos 64位5.2 Java 6u11 雄猫6 Spring / WebMVC 2.5 休眠3 石英1.6.1 DBCP 1.2.1 的MySQL 5.0.45 高速缓存1.5.0 (当然还有许多其他依赖项,特别是jakarta-commons库) 我最能重现该问题的是内存需求较低的32位计算机。我确实可以控制。我已经使用JProfiler对其进行了探究,并修复了许多性能问题(同步问题,预编译/缓存xpath查询,减少线程池,删除不必要的休眠预取以及处理过程中过度的“缓存变暖”)。 在每种情况下,探查器都显示这些资源由于某种原因占用了大量资源,并且一旦进行更改,这些资源就不再是主要的资源消耗。 问题: JVM似乎完全忽略了内存使用设置,填满了所有内存并且变得无响应。这对于面对最终客户的客户来说是个问题,他们希望定期进行轮询(每5分钟一次,然后重试1分钟),对于我们的运营团队来说,这是不断得到通知的,盒子已变得没有响应,必须重新启动它。此框上没有其他可运行的东西。 问题似乎是垃圾回收。我们使用ConcurrentMarkSweep(如上所述)收集器是因为原始的STW收集器导致JDBC超时并变得越来越慢。日志显示,随着内存使用量的增加,即开始引发cms故障,并踢回原始的世界停止收集器,然后该收集器似乎未正确收集。 但是,使用jprofiler运行时,“运行GC”按钮似乎可以很好地清理内存,而不是显示增加的占用空间,但是由于我无法将jprofiler直接连接到生产盒,并且无法解决已证明的热点问题,因此我正在使用剩下的是将Garbage Collection调为盲人的巫毒教。 我试过的 分析和修复热点。 使用STW,Parallel和CMS垃圾收集器。 以最小/最大堆大小以1 / 2、2 / 4、4 / …


7
对C ++编译过程进行性能分析
我倾向于编写相当大的仅模板头的C ++库模板,而我的用户通常抱怨编译时间。在考虑了这个问题之后,我想到我不知道时间在哪里。是否有一些简单的方法可以用通用编译器(例如g ++,icc和xlC)来分析C ++编译过程?例如,是否有可能了解在C ++编译的每个阶段中花费了多少时间?



1
cProfile输出上的tottime和cumtime有什么区别?
我正在main.py使用cProfile通过以下命令来分析python脚本: python -m cProfile -s tottime main.py 我得到的输出是(仅复制粘贴输出的第一行): 10184337 function calls (10181667 primitive calls) in 13.597 seconds Ordered by: internal time ncalls tottime percall cumtime percall filename:lineno(function) 1 4.674 4.674 13.598 13.598 main.py:2(<module>) 2142 2.964 0.001 4.663 0.002 load_aerdat3.py:61(getPacket) 459 2.381 0.005 2.381 0.005 {waitKey} 1667989 1.170 0.000 1.170 0.000 …

3
在Mac OS X上分析C ++
我正在尝试在Mac(OS X Lion)上配置一些c ++代码,但找不到任何有用的东西。我正在寻找一个探查器,该探查器将告诉我哪些功能占用了我的CPU时间(类似于matlab探查器)。 这是我尝试过的 gprof。这是我在linux机器上使用的,但是它只是在Mac上给了我空的输出(显然是一个已知问题) 仪器。我一生都无法弄清楚如何在已编译的二进制文件中分析任何内容。我也找不到任何有用的教程。 (其他搜索显示Shark(不再可用)和Valgrind(用于存储))。 非常感谢您的帮助!
69 macos  profiling 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.