Monitoring Paging and Swapping


 
Thread Tools Search this Thread
Operating Systems Solaris Monitoring Paging and Swapping
# 1  
Old 10-15-2018
Monitoring Paging and Swapping

Hi all,


This might sound silly but i am trying to determine if i have sufficient memory or not.
My definition of sufficient memory = no swapping + no paging to physical swap file.

I know i can use vmstat to monitor swapping and paging and using the SR column as well.

But wouldn't it be extremely direct if i were to just use
Code:
swap -l

and make sure my "free" = "blocks"

I am sorry if i am over-simplifying things...Smilie

p.s. i am on Solaris 11.3 SRU 32.4


Regards
Noob
# 2  
Old 10-15-2018
Take a look at this thread paying particular attention to jlliagre's post.

How the free memory threshold?
This User Gave Thanks to hicksd8 For This Post:
# 3  
Old 10-16-2018
Swapping unused stuff is okay. So swap -l is no good.
Frequent/continued swapping is not good. So vmstat measurement with a large interval makes sense.
--
The ZFS ARC cache has been found too aggressive. Should be limited in /etc/system.
See this article
This User Gave Thanks to MadeInGermany For This Post:
# 4  
Old 10-16-2018
Quote:
Originally Posted by javanoob
My definition of sufficient memory = no swapping + no paging to physical swap file.
Notice that, depending on which OS and which set of tuning parameters you use, there are two possible swap strategies: early swap allocation and late swap allocation. Late swap allocation means that swap is only used when the physical memory runs out. Early swap allocation means that as soon as a program is started as much swap is allocated as it might use once it is indeed swapped out. In such a case you would see paging activity and swap allocation immediately even if there is no swap really being used yet.

Late swap allocation is used predominantly these days but, for instance, in AIX prior to version 5.1 early swap allocation was the default. One regularly saw swap usage of 70%-80% even if the system had sufficient RAM installed. Only using vmstat would then tell you if you are in trouble or not.

For a long-term monitoring you can use vmstat with a high interval but you also can configure sar to tailor it to your needs (you may want to get some other usage statistics from it too). See the man page of sar for details.

I hope this helps.

bakunin
This User Gave Thanks to bakunin For This Post:
# 5  
Old 10-16-2018
Quote:
Originally Posted by javanoob
My definition of sufficient memory = no swapping + no paging to physical swap file.
Solaris never swap (i.e. swap out a whole process memory) unless there is a severe shortage of RAM.

I agree significant pagination can strongly degrade performance but paginating once no more used pages (e.g. from some unused files written in /tmp or any tmpfs based file system) improves performance compared to keeping them in RAM.

The fact some of the swap area is used is not necessarily a symptom of RAM shortage.
This User Gave Thanks to jlliagre For This Post:
# 6  
Old 10-16-2018
Hi all,



Thank you for all the feedback.
Please pardon me for my ignorance.


1) I am seeing recommendations of doing vmstat with a large interval - why do we need do use a large interval ? How is that different from doing multiple counts with short intervals ?
.e.g. vmstat 10 2 vs vmstat 1 10 ?


2) When there is a physical memory shortage, and memory need to be page out, will this piece of memory that is paged out will resides on the physical swap volume ?
If so, why isn't swap -l an accurate way of saying if there is a memory shortage ?


is it because sometimes paging unused memory out is healthy and necessary -> so we cannot just determine that memory is insufficient base on physical swap-space being used - is my understanding correct ?


3) However, can we also directly say, if my swap -l always display 'free' = 'blocks', it definitely means i have sufficient memory, because nothing is paged nor swaped to physical swap - right ?


Regards,
Noob

Last edited by javanoob; 10-16-2018 at 10:03 AM.. Reason: clarity
# 7  
Old 10-16-2018
Quote:
Originally Posted by javanoob
1) I am seeing recommendations of doing vmstat with a large interval - why do we need do use a large interval ? How is that different from doing multiple counts with short intervals ?
.e.g. vmstat 10 2 vs vmstat 1 10 ?
Some statistics are absolute, in that case a short interval will allow to show transient events that would be missed otherwise. Some other statistics are counters, and vmstat will show their average changing rate. In that case, whatever the interval, the average will be correct but of course you would still miss variations in that rate with a long sampling interval.

Quote:
2) When there is a physical memory shortage, and memory need to be page out, will this piece of memory that is paged out will resides on the physical swap volume ?
This is true for anonymous pages, but pages that are backed by files would be paged out elsewhere, or just dropped if unchanged.
Quote:
If so, why isn't swap -l an accurate way of saying if there is a memory shortage ?
There is no clear definition of what a RAM shortage is. Beware not to confuse RAM and (virtual) memory. You can have a memory shortage with the swap area untouched and plenty of RAM reported to be free. On the opposite, your RAM might be undersized even while the swap area is untouched.

Quote:
is it because sometimes paging unused memory out is healthy and necessary -> so we cannot just determine that memory is insufficient base on physical swap-space being used - is my understanding correct ?
It is never strictly necessary, but a good idea for the system to free resources wasted otherwise.

Quote:
3) However, can we also directly say, if my swap -l always display 'free' = 'blocks', it definitely means i have sufficient memory, because nothing is paged nor swapped to physical swap - right ?
Yes, although as I previously wrote, performance might be better with more RAM in that case.
These 2 Users Gave Thanks to jlliagre For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Swapping lines

Hi there, I have a text that I'm trying to format into something more readable. However, I'm stuck in the last step. I've searched and tried things over the internet with no avail. OS: Mac After parsing the original text that I won't put here, I managed to get something like this, but this... (8 Replies)
Discussion started by: Kibou
8 Replies

2. Solaris

Swapping

Hi Guys I am using SPARC-T4 (chipid 0, clock 2998 MHz), SunOS 5.10 Generic_150400-38 sun4v. How do I see if the server was doing some swapping like yesterday? I had a java application error with java.lang.OutOfMemoryError, now I want to check if the server was not doing some swapping at... (4 Replies)
Discussion started by: Phuti
4 Replies

3. Shell Programming and Scripting

Swapping fields

Hallo Team, This is the command that i am running : grep ",Call Forward Not Reachable" *2013* this is the output that i am getting (i did a head -10 but the files can be more than 1000) ... (8 Replies)
Discussion started by: kekanap
8 Replies

4. Shell Programming and Scripting

Swapping three lines

I have some text: <date>some_date</date> <text>some_text</text> <name>some_name<name> and I want to transform it to smthng like that: some_name on some_date: some_text I've tried sed: sed 's/<text>\(.*\)<\/text> <name>\(.*\)<\/name>/\2 - \1/' but it says unterminated... (13 Replies)
Discussion started by: dsjkvf
13 Replies

5. UNIX for Dummies Questions & Answers

Swapping in VI editor

Hi, I am attempting to replace several similar words with another word in vi. Here is what I have written for the script: 3dTcat -prefix SuperBrik_4WAY_HRF ../JULY10_2007A/results2TENT/stats.JULY10_2007A+tlrc ../JULY10_2007G/results2TENT/stats.JULY10_2007G+tlrc... (1 Reply)
Discussion started by: Jahn
1 Replies

6. UNIX for Advanced & Expert Users

virtual memory management, swapping paging

can anybody explain me the concepts virtual memory mangement, swapping and paging? although i roughly know what they are , i need more solid distinction between them, and also i want to figure out the relations between them? do you have any well-defined definitons for this concepts? (2 Replies)
Discussion started by: gfhgfnhhn
2 Replies

7. SuSE

Swapping

Hello! Why does my SuSE GNU/Linux machine swap? I have a Gig of ram, currently 14MBs of free RAM, 724MB - buffers and caches... That is 685MB of cached RAM, then kernel really should'nt have to swap, It should release cached memory in my thinkin... It has only swaped 3MB's but still,... (3 Replies)
Discussion started by: Esaia
3 Replies

8. UNIX for Dummies Questions & Answers

how to get swapping info

Hi How can I determine if swapping is occuring on a server. Thanks, Leo (2 Replies)
Discussion started by: leo
2 Replies

9. Filesystems, Disks and Memory

Paging and Swapping

Hi Guys: Would like to know how to check system swapping and paging and some theory on how they function. I am an oracle dba and my environment is 8171 on AIX 433. We have a 1GB of RAM on the box and I am educating myself to see how much more SGA can be accommodated on the box and what are the... (2 Replies)
Discussion started by: ST2000
2 Replies

10. UNIX for Advanced & Expert Users

Excessive Paging&Swapping!

Hi all! Working on Oracle v8i/9i on Unix Sun Solaris v8.0. I am experiencing excessive paging & Swapping.Would like to know the cause. I guess:could be due to inappropriate setting of Unix Kernel Parameters... Please correct me if I am wrong! Thanks&Regards, Amit. (5 Replies)
Discussion started by: Amitstora
5 Replies
Login or Register to Ask a Question