首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >G1's ParallelGCThreads

G1's ParallelGCThreads
EN

Stack Overflow用户
提问于 2018-08-22 11:55:53
回答 1查看 4.6K关注 0票数 4

最近,我开始使用jvm选项来提高性能。当我学习GC选项ParallelGCThreads时,我遇到了一个问题。

我认为ParallelGCThreads的最佳值是我的32核机器上的逻辑processors.But数,默认值是23。从甲骨文垃圾优先垃圾收集器调优中可以看出,处理器计数超过8,ParallelGCThreads的默认值是处理器的5/8。

那么,为什么是5/8而不是8/8呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-22 12:35:31

这个热点-gc-dev线程暗示,在非常大的CPU或多CPU系统上,额外线程的回报会逐渐减少,因此线性缩放因子会在8个核心以上降低。

这很可能是因为GCing本质上是内存绑定的,并且足够多的线程最终会使内存总线饱和,并且无法提供额外的内核。此外,GC线程之间的协调(工作分区)可能会变得效率更低,因为每个线程只能在堆的较小部分上工作。

无论如何,这不是一个一刀切的规则,所以你可以改变设置,测量它,并保持变化,如果你可以确认改进。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51966319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档