我工作在Windows 2003服务器(64位)与8 GB RAM上。我怎样才能提高堆内存最大?我现在用的是-Xmx1500m标志增加堆大小设置为1500 MB。我可以增加堆存储器的物理内存75%(6 GB堆)?

有帮助吗?

解决方案

可以提高到4GB在32位系统上。如果你是一个64位系统上,你可以飞得更高。没有必要担心,如果您选择不正确,如果你问5克在32位系统的Java会抱怨无效值并退出。

正如其他人公布,使用CMD行标志 - 例如

java -Xmx6g myprogram

您可以键入java -X获得完整列表(或接近完整列表,反正)。

其他提示

可以通过使用命令行选项来增加由JVM分配的堆大小 在这里,我们有3种选择

-Xms<size>        set initial Java heap size
-Xmx<size>        set maximum Java heap size
-Xss<size>        set java thread stack size

java -Xms16m -Xmx64m ClassName

在上面的行中,我们可以设置最小堆到16MB和最大堆64MB

在一个32位的JVM,理论上可以设置最大堆大小是4GB。要使用更大的堆大小,你需要使用一个64位JVM。尝试以下方法:

  

的java -Xmx6144M -d64

在-d64标记是重要的,因为这告诉JVM在64位模式下运行。

有可能增加由JVM在eclipse直接分配的堆大小 在Eclipse IDE转到

运行---->运行配置---->参数

输入-Xmx1g(它用于设置最大大小等Xmx256m或Xmx1g ......米 - > MB克---> GB)

的java -d64 -Xms512m -Xmx4g的HelloWorld

其中, -d64:将启用64位JVM -Xms512m:将设定的初始堆大小为512 MB -Xmx4g:将设置最大堆大小为4 GB (这里的java文件的名称是:HelloWorld.java)

  

我可以增加堆存储器75%   的物理存储器(6GB堆)。

当然可以。事实上,可以增加至超过的物理内存量,如果要

无论是一个好主意,做这个要看怎么回事多少您的系统上运行。特别是,如果当前显著运行的应用程序和服务的“工作组”超出了可用的物理内存,您的系统容易“捶打”,花费了大量的时间移动虚拟内存页面与磁盘。净效果是,该系统得到可怕缓慢。

可以通过传递JVM参数增加堆大小的 -Xms 和<强> -Xmx 象下面这样:

有关JAR文件:

java -jar -Xms4096M -Xmx6144M jarFilePath.jar

有关Java文件:

 java -Xms4096M -Xmx6144M ClassName

在上面的参数增加的 InitialHeapSize(-Xms)以4GB(4096 MB)和 MaxHeapSize(-Xmx)以6GB(6144 MB)。

但是,在杨代堆大小将保持相同,并且所述附加HEAPSIZE将被添加到旧代堆大小。为均衡杨根堆和旧根堆的大小,使用 -XX:NewRatio = 1 -XX:-UseAdaptiveSizePolicy PARAMS

java -jar -Xms4096M -Xmx6144M -XX:NewRatio=1 -XX:-UseAdaptiveSizePolicy pathToJarFile.jar

-XX:NewRatio =老根堆大小:杨根堆大小(你可以用这个比例得到您想要的比玩)

请使用以下命令来更改堆大小6GB

export JAVA_OPTS="-Xms6144m -Xmx6144m -XX:NewSize=256m -XX:MaxNewSize=356m -XX:PermSize=256m -XX:MaxPermSize=356m"

此只能与Java的64位版本。进入控制面板,然后单击上的Java图标。上Java控制面板的小窗口,单击Java菜单栏上,然后点击按钮view

如果您有两个Java平台,禁用Java的早期版本,然后点击运行参数的文本字段,并写-Xmx1024m或小于RAM大小。不要增加堆的大小等于RAM否则你的系统将崩溃。

有几个人指出了堆大小与-Xms-Xms的JVM选项的具体答案。我想指出的是,这是不是对JVM内存选项的唯一类型。特别是如果你是克服流动堆栈,那么你会希望通过增加像-Xss8m额外的选项来增加堆栈的大小。

有关此问题,的类似-Xms2g -Xmx6g -Xss8m JVM选项将是一个解决方案。

我的谷歌就如何增加JVM内存带我到这个解决方案,以及解决方案并不具有大量内存分配的工作搜索我分享这些信息。一旦我想通了什么具体的设置是对的,我能谷歌如何增加堆栈大小,发现失踪PARAM。 :)希望这样可以节省别人的时间,因为它会的我节省了大量的时间。 :)

是。你可以。

可以增加堆内存到物理存储器(6 GB堆)或更高75%。

由于您使用的是64位的,你可以增加你的堆大小为所需量。如果你正在使用32位被限制为4GB。

$ java -Xms512m -Xmx6144m JavaApplication

设定你与初始堆尺寸为512MB和最大堆大小以6GB。

希望它有助于..:)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top