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