SUSE上的jvm堆限制

kmbjn2e3  于 2022-11-07  发布在  其他
关注(0)|答案(4)|浏览(154)

我希望您能帮助我解决SUSE和JDK 1.4.x的问题:我的suse是PAE启用与15 gb的内存。不幸的是jvm不能分配超过1900 Mb的堆大小。所以java -xmx 2048 m给我一个错误。似乎你有同样的问题,你解决了吗?我希望如此:)
谢谢米开朗基罗

iovurdzv

iovurdzv1#

JVM被限制为单个连续的内存块,因此,尽管您可以通过关闭您并不真正需要的进程来从系统中多调整几MB,但看到大幅度增加的唯一方法是升级到带有64位JRE的64位操作系统。

**更新:**有一个关于Stack Overflow的相关问题,有一些不错的答案:What is the Maximum Java Heap Space for SuSE Linux

yfjy0ee7

yfjy0ee72#

在JDK1.4中,我认为你运气不好。它是一个32位的JVM,句号。你需要更新到一个更新的Java版本。

8wigbo56

8wigbo563#

您应该可以使用-mx 1960 m,但实际上不能使用2GB。您可能需要读取http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4435069
运行多个JVM来解决这个“限制”(但是,为什么需要这么大的堆大小呢?)
或者更新到Java1.5,以达到32位JVM的理论上的4GB限制,实际上可能要低得多(请参见http://forums.sun.com/thread.jspa?threadID=5207549&start=15)。

6psbrbz9

6psbrbz94#

只是几个更新:- 在这台SUSE机器上(其中jvm堆最大大小是1960 m),我可以分配3.6Gb的堆,每个堆有几个10 Mb的malloc(C编程)。所以我听起来很奇怪。-在另一个RH 4上,使用相同的jdk1.4.2,我可以分配:/usr/local/jdks/j2sdk1.4.2_16/bin/java -Xmx 2648 m成功!!你知道我在这个RH 4上的真实的RAM吗?只有1024 Mb!!!-SUSE 9和RH 4都启用了PAE(我很容易更改RAM设置,因为我使用VMWare)。
所以这似乎是一个与SUSE有关的问题。

相关问题