我正在查看在Linux服务器上运行的JVM的配置.我跑的时候
java -XX:+PrintFlagsFinal | less | grep -iE 'MaxRam'
这似乎基本上打印出JDK知道的每个参数
我知道了
uint64_t MaxRAM = 137438953472 {pd product}
但我似乎无法在这面旗帜上找到太多文件.
我发现“{pd product}”表示“平台相关产品:官方支持的内部JVM选项”
任何人都知道这个参数的确切含义,或者我可以在哪里更详细地阅读特定于平台的JVM标志?
其他详细信息:
Java -version:
.
java version “1.6.0_35”
Java(TM) SE Runtime Environment (build 1.6.0_35-b10)
Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01, mixed mode)
uname -a
Linux [SERVERNAME] 2.6.32-431.17.1.el6.x86_64 #1 [DATE] x86_64 x86_64 x86_64 GNU/Linux
解决方法:
Default Heap Size
Unless the initial and maximum heap sizes are specified on the command line, they are calculated based on the amount of memory on the machine. The proportion of memory to use for the heap is controlled by the command-line options InitialRAMFraction and MaxRAMFraction
[…]
The value of MaxRAM is platform-dependent.
参考The Java Virtual
机器规范堆的大小可以根据JVM的实现而改变.
The heap may be of a fixed size or may be expanded as
required by the computation and may be contracted if a larger heap becomes
unnecessary. The memory for the heap does not need to be contiguous.
A Java Virtual Machine implementation may provide the programmer or the user control
over the initial size of the heap, as well as, if the heap can be dynamically expanded or
contracted, control over the maximum and minimum heap size.
标签:java,linux,jvm
来源: https://codeday.me/bug/20190528/1171781.html