首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用具有超过120 RAM的并发标记清除垃圾收集器

使用具有超过120 RAM的并发标记清除垃圾收集器
EN

Stack Overflow用户
提问于 2012-06-18 04:37:50
回答 2查看 5.3K关注 0票数 18

有没有人设法在Hotspot中使用超过120 in内存的并发标记清除垃圾收集器(UseConcMarkSweepGC)?

如果我将-ms和-mx设置为120G,JVM就可以正常启动,但是如果我将它们设置为130G,JVM就会在启动时崩溃。使用parallel和G1收集器可以很好地启动JVM (但它们也有自己的问题)。

有没有人设法将并发标记清除收集器用于超过120 to的堆?如果是这样的话,你需要做什么特别的事情吗,或者我只是在这里不走运?

JVM错误转储的堆栈如下所示:

Stack: [0x00007fbd0290d000,0x00007fbd02a0e000],  sp=0x00007fbd02a0c758,  free space=1021k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libc.so.6+0x822c0]  __tls_get_addr@@GLIBC_2.3+0x822c0
V  [libjvm.so+0x389c01]      CompactibleFreeListSpace::CompactibleFreeListSpace(BlockOffsetSharedArray*, MemRegion, bool, FreeBlockDictionary::DictionaryChoice)+0xc1
V  [libjvm.so+0x3d1ae0]  ConcurrentMarkSweepGeneration::ConcurrentMarkSweepGeneration(ReservedSpace, unsigned long, int, CardTableRS*, bool, FreeBlockDictionary::DictionaryChoice)+0x100
V  [libjvm.so+0x49d922]  GenerationSpec::init(ReservedSpace, int, GenRemSet*)+0xf2
V  [libjvm.so+0x48d0b9]  GenCollectedHeap::initialize()+0x2e9
V  [libjvm.so+0x824098]  Universe::initialize_heap()+0xb8
V  [libjvm.so+0x82657d]  universe_init()+0x7d
V  [libjvm.so+0x4cf0dd]  init_globals()+0x5d
V  [libjvm.so+0x80f462]  Threads::create_vm(JavaVMInitArgs*, bool*)+0x1e2
V  [libjvm.so+0x51fac4]  JNI_CreateJavaVM+0x74
C  [libjli.so+0x31b7]  JavaMain+0x97

为此,我向甲骨文(http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7175901)提出了一个错误,但我想知道是否有人见过它。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-29 06:03:29

这似乎已经被甲骨文接受为一个错误:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7175901

票数 3
EN

Stack Overflow用户

发布于 2012-08-08 23:40:49

也有同样的问题。我们将ms降低到140以下,这似乎是有效的。在400g时离开mx,并写了一个测试程序。

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

https://stackoverflow.com/questions/11074608

复制
相关文章

相似问题

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