fgy*_*ica 5 java heap heap-memory
在大多数情况下,当我看到有关使用-Xms和-xmxJVM参数设置Java堆大小的示例时,人们会使用以下两种幂:
128m, 512m, 1024m, etc.
Run Code Online (Sandbox Code Playgroud)
真的有原因吗?这在某种程度上对JVM性能有好处吗?还是仅仅因为程序员倾向于喜欢2的幂而这样做?(或者因为默认值是64m?)
PS当然,我知道您可以使用任何想要的数字(-Xmx666)。但是人们倾向于使用2的幂。
我不知道为什么其他人这样做,但对我来说,a)惯例以 2 的幂为单位给出 RAM 大小,因为内存模块使用它,并且 b)我知道内存中 2 的所有幂直到 65536,所以它是不需要额外的努力来做到这一点。
但从操作系统/内存的角度来看,使用 2 的幂来分配兆字节没有任何影响。如果我们讨论的是较小的大小(例如 511 或 512 字节),那么操作系统的内存管理子系统将对这些值进行舍入。但操作系统没有针对兆字节进行轮询。
| 归档时间: |
|
| 查看次数: |
1496 次 |
| 最近记录: |