首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

读懂一行Full GC日志(回复JVM内存分配担保机制一文中 MrMrs Xxx 在留言区提出的问题)

另外这里的_adaptive_size_policy 常量就是对应的Ergonomics: case _adaptive_size_policy: return "Ergonomics...那么你也许有疑问说[Full GC (Ergonomics) 的Ergonomics究竟是个什么东东? Ergonomics翻译成中文,一般都是“人体工程学”。...在JVM中的垃圾收集器中的Ergonomics就是负责自动的调解gc暂停时间和吞吐量之间的平衡,然后你的虚拟机性能更好的一种做法。...对于注重吞吐量的收集器来说,在某个generation被过渡使用之前,GC ergonomics就会启动一次GC。...总之,以后遇到Full GC,不一定只有Allocation Failure,还有更多,比如本文中的“Ergonomics”。

10.4K91

真·屠龙之术 | 一次SparkSQL性能分析与优化之旅及相关工具小结

根据HotSpot VM的Ergonomics,我们机器上默认使用的就是Parallel GC。...可以看到,居然出现了两次FullGC(ParallelOld),GC的原因是Ergonomics,很明显不是因为内存不足引起(Allocation Failure)的,应该是可以避免的。...我没有指定-Xms,根据Ergonomics,初始堆的大小是1G。所以看上去是堆的动态增大(commit更多的堆)会触发FullGC?通过显式设置-Xms8G来看看, ?...两次由于Ergonomics引起的FullGC消失掉了,但是也可以看到committed heap仍然是在动态增大的,却没有再触发FullGC,因此可以确定,adaptive size policy引起的堆大小调整...试了下-XX:MaxGCPauseMillis= 和-XX:GCTimeRatio=并没有什么提升,看来这部分的Ergonomics并不适用于短进程?

1.1K10
领券