Memory Missing ?

Hello All,

I have oracle running on Solaris 5.10 SPARC 64bit.
Physical memory is 16Gb.

 NPROC USERNAME  SWAP   RSS MEMORY      TIME  CPU
   114 oraprd     13G   13G    82% 513:25:53 0.4%
    46 root      180M  225M   1.4% 149:13:33 0.1%
     6 daemon     42M   45M   0.3%  14:01:59 0.0%

the above prstat -t shows the usage is 13g+225m+45m ~= 14g
So, there should be 2Gb left free isn't it ?

But top command says only 888m is free.

top

CPU states: 97.3% idle,  1.3% user,  1.4% kernel,  0.0% iowait,  0.0% swap
Memory: 16G phys mem, 888M free mem, 16G swap, 16G free swap

vmstat

 0 0 0 15267768 907448 389 1304 0 4 4 0  0  0  0  0  0 1791 6466 2342  1  1 98

Could someone help me figure out where the memory has gone ?
Are there some memory consuming processes which are not shown in prstat ?

TIA,
John

What says:

kstat -n system_pages

Hi,

 kstat -n system_pages
module: unix                            instance: 0
name:   system_pages                    class:    pages
        availrmem                       461413
        crtime                          66.127922396
        desfree                         15917
        desscan                         25
        econtig                         71303168
        fastscan                        139873
        freemem                         113888
        kernelbase                      16777216
        lotsfree                        31834
        minfree                         7958
        nalloc                          35809032
        nalloc_calls                    14227
        nfree                           25497809
        nfree_calls                     9262
        nscan                           0
        pagesfree                       113888
        pageslocked                     1541317
        pagestotal                      2037418
        physmem                         2042666
        pp_kernel                       297263
        slowscan                        100
        snaptime                        11914951.224096

TIA,
John

2.2 GB (pp_kernel =297263) is used by the kernel. Is isn't shown by prstat as the kernel isn't a process.

Is pp_kernel in Kbytes ? How did you come to the conclusion that the kernel takes 2.2 Gb ?

TIA,
John

These values represent a number of pages. On x86, page size is 4K while on SPARC, it is 8K.

if you are using zfs then that is where its at. zfs caches the memory. download the arcstat.pl script from here if you are.