0

Using this script taken from this site

#!/usr/bin/ksh # Available memory memory=`prtconf | grep Memory | head -1 | awk 'BEGIN {FS=" "} {print $3}'` gb_memory=`echo "scale=2; $memory/1024" | bc -l` # Free memory pagesize=`pagesize` kb_pagesize=`echo "scale=2; $pagesize/1024" | bc -l` sar_freemem=`sar -r 1 1 | tail -1 | awk 'BEGIN {FS=" "} {print $2}'` gb_freemem=`echo "scale=2; $kb_pagesize*$sar_freemem/1024/1024" | bc -l` # Used Memory gb_usedmem=`echo "scale=2; $gb_memory-$gb_freemem" | bc -l` # Conclusion echo "Avai Mem: $gb_memory GB" echo "Free Mem: $gb_freemem GB" echo "Used Mem: $gb_usedmem GB" 

I see a lot of ram used

 Avai Mem: 7.25 GB Free Mem: .62 GB Used Mem: 6.63 GB 

With top command I see the most "ram eating" process use 144M of ram,but only 690M of ram is free,this is a little strange,even calculate the other rss process I still not understand how a system can use over 4GB of ram.

last pid: 15109; load avg: 0.08, 0.08, 0.07; up 2+00:33:21 15:25:40 88 processes: 87 sleeping, 1 on cpu CPU states: 94.4% idle, 1.3% user, 4.3% kernel, 0.0% stolen, 0.0% swap Kernel: 1031 ctxsw, 633 trap, 769 intr, 2053 syscall, 617 flt Memory: 7430M phys mem, 690M free mem, 1024M total swap, 1024M free swap PID USERNAME NLWP PRI NICE SIZE RES STATE TIME CPU COMMAND 879 root 17 59 0 209M 142M sleep 8:11 0.32% sstored 1267 root 43 59 0 129M 30M sleep 0:04 0.01% fmd 14774 root 64 59 0 90M 64M sleep 0:04 0.24% pkg.depotd 14810 root 64 59 0 90M 63M sleep 0:04 0.25% pkg.depotd 14792 root 64 59 0 87M 60M sleep 0:04 0.24% pkg.depotd 15 root 36 59 0 80M 47M sleep 1:23 0.67% svc.configd 13 root 14 59 0 39M 7272K sleep 0:07 0.01% svc.startd 1448 root 12 59 0 28M 7152K sleep 0:14 0.01% sysstatd 1483 _polkitd 6 59 0 25M 196K sleep 0:00 0.00% polkitd 1465 pkg5srv 27 59 0 24M 2228K sleep 0:00 0.00% httpd 4962 pkg5srv 27 59 0 24M 4672K sleep 0:00 0.00% httpd 1461 pkg5srv 27 59 0 24M 4032K sleep 0:00 0.00% httpd 1464 pkg5srv 27 59 0 24M 3516K sleep 0:00 0.00% httpd 1032 webservd 27 59 0 24M 3668K sleep 0:00 0.00% httpd 1045 webservd 27 59 0 24M 3484K sleep 0:00 0.00% httpd 1041 webservd 27 59 0 24M 3480K sleep 0:00 0.00% httpd 1458 pkg5srv 24 59 0 24M 4656K sleep 0:04 0.00% httpd 1012 webservd 18 59 0 23M 7620K sleep 0:04 0.00% httpd 280 root 11 59 0 23M 8360K sleep 0:00 0.00% rad 658 root 31 59 0 23M 5168K sleep 0:07 0.04% nscd 359 daemon 3 59 0 21M 4K sleep 0:00 0.00% colord 560 netadm 8 59 0 18M 4352K sleep 0:02 0.00% nwamd 838 root 3 59 0 18M 3064K sleep 0:00 0.00% zoneadmd 338 root 7 59 0 17M 10M sleep 0:02 0.00% devfsadm 4350 root 1 59 0 17M 4972K sleep 0:01 0.00% sendmail 1469 root 3 59 0 16M 3776K sleep 0:00 0.00% accounts-daemon 

p.s=there is one zone active,but..is not running

3
  • 1
    You might look at how much RAM your ZFS cache uses. If that's the cause, you'll get it back when you need it Commented Feb 23, 2018 at 15:29
  • You can use: echo ::memstat | pfexec mdb -k to easily view this. Commented Feb 23, 2018 at 19:19
  • 1
    I'm glad it's solved now, but the sstored process using lots of memory (as shown above) may be a real problem too Commented Dec 19, 2019 at 1:41

1 Answer 1

1

As @Fox noted in a comment, it may be ZFS which by default uses free memory to cache IO. There are various tweaks, but just upgrading Solaris may help as they've added a few features to help ZFS performance in Solaris 11. Ref MOS doc: Memory Management Between ZFS and Applications in Oracle Solaris 11.x (Doc ID 1663862.1) for some information and guidance.

Ref the following for some ZFS reco's outside of Oracle: https://constantin.glez.de/2010/04/28/ten-ways-to-easily-improve-oracle-solaris-zfs-filesystem-performance/#ssdread

Also, if you're using dedup on any datasets, it will use a fair amount of memory.

1
  • And i have also tuned /etc/system with max and min for ARC Commented Feb 24, 2018 at 9:47

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.