I have a system with 12GB memory, but vmstat and echo ::memstat | mdb -k
show different free memory. For example, vmstat shows about 7GB free memory
while ::memstat shows 10GB free memory.
If I try to run java with 8GB heap size, it will fail to malloc such big
heap.

intel7# prtconf | more
System Configuration:  Sun Microsystems  i86pc
Memory size: 12277 Megabytes
System Peripherals (Software Nodes):
....

intel7# vmstat 2
 kthr      memory            page            disk          faults      cpu
 r b w   swap  free  re  mf pi po fr de sr rm s0 s1 --   in   sy   cs us sy
id
 5 0 0 7588092 5866084 8 163 7  6 18  0 124 -20625 12 -0 0 3205 194187 50279
10 3 87
 0 0 0 7935004 6799272 7 45  0  0  0  0  0  0  9  0  0  431  228  390  0  0
100
 0 0 0 7934852 6799140 0  5  0  0  0  0  0  0  0  0  0  417  236  341  0  0
100

intel7# echo ::memstat | mdb -k
Page Summary                Pages                MB  %Tot
------------     ----------------  ----------------  ----
Kernel                     212183               828    7%
Anon                        33023               128    1%
Exec and libs                3643                14    0%
Page cache                 166522               650    5%
Free (cachelist)             5892                23    0%
Free (freelist)           2719571             10623   87%

Total                     3140834             12268
Physical                  3140833             12268

intel7# java -d64 -Xms8g -Xmx8g -version
Error occurred during initialization of VM
Could not reserve enough space for object heap

Thanks Zhihui
_______________________________________________
opensolaris-discuss mailing list
opensolaris-discuss@opensolaris.org

Reply via email to