Swappiness and Virtual Memory Management

Peter Arremann loony at loonybin.org
Thu Apr 28 03:19:23 UTC 2005


On Wednesday 27 April 2005 23:06, Ow Mun Heng wrote:
> Yes.. this is on a laptop with a 5400rpm drive. Though I know that it is
> an issue, the friend running on FreeBSD on a thinkpad X40 doesn't see
> this issue when getting > 700MB in swap. If I hit like 200MB in swap,
> I'm already thrashing. Moving from Evo to Firefox is a wait as it swaps
> in/out.
Are they doing similar work? Same apps and all? how big is the memory 
footprint of the same app on the different OSes? What applications are you 
running?

> > Other than that, yes FreeBSD I can agree acts a little nicer when it
> > comes to swapping - but in all honesty, the difference is so little that
> > you really have to test the system and create the swapping on purpose and
> > then time the apps to notice any difference.
>
> How much that is true I can't tell but what I do know is the difference
> is noticeable in the sense of the word. It just feels slower on Linux
> rather than on BSD.
>
> I've seen one other poster that mentioned it's cause linux pushes around
> 4k for every read of the swap and thus makes things slower.
Paging is CPU dependent. the CPU contains a memory management unit (MMU) that 
is responsible for deciding which page (hence the name paging) is where in 
main memory or if it is not available. If a page is requested that is not 
currently in memory a trap occurs, the OS paging process is invoked and it 
loads the correct page... Then there is a process that marks pages to be 
paged out and if you try to allocate memory and are below the min free (or 
your OSes equiv of that variable) then some pages are written to disk (data) 
or are simply discarded (executables). 
Either way, the page size is the same - 4k or 4m on i386, 8k on traditional 
sparc... hardware, not OS dependent. 

Peter.




More information about the fedora-list mailing list