繁体   English   中英

使用yourkit进行内存分析时花费的时间

[英]Time taken during memory profiling using yourkit

在150G机器上配置一个大约消耗100G内存的Java应用程序通常需要花费多少时间? 大约2小时后,我开始进行性能分析,到目前为止,它仅完成了20%。 自从我开始分析以来,jvm使用的总内存已达到150G(接近RAM大小)。 高内存进程在使用yourkit进行性能分析时花费大量时间是正常的,还是我做错了什么。 由于内存已到达RAM内存,是否有可能发生大量磁盘交换,这会减慢内存分析的速度。 我怎样才能使这个过程更快。 如果无法使其更快,调查Java应用程序中的内存泄漏的其他方法有哪些?

嗯,你的JVM 大:)

如果您有正在运行的JVM,获取有关堆中对象的某些信息的最快方法是获取jmap直方图:

jmap -histo:live <pid>

它将打印堆中的所有活动对象(:live执行gc),其实例编号和(浅)大小。

当然,它不适合进行复杂的分析,但通常足以发现泄漏,尤其是在泄漏较大的情况下:将直方图与泄漏前的直方图进行比较。

请参阅http://docs.oracle.com/javase/7/docs/technotes/tools/share/jmap.html上的文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM