Re: page replacement and page reclaiming

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Further in-depth understanding can be pursued here:

http://linux-mm.org/PageReplacementTesting

Linux implements an LRU based page replacement algorithm. Although
simple, it is suboptimal for a wide range of important workloads.

At the present moment there are a few experimental implementations of
advanced replacement algorithms being developed and discussed.

This page attempts to detail known LRU deficiencies, along with
benchmarks to highlight them.

In addition to benchmarks, UMass has a Trace Repository, with
CPU/memory, network and I/O traces. This can be useful to unit-test
replacement algorithms, free from interference by other parts of the
OS.

http://linux-mm.org/AdvancedPageReplacement

The list head for the LRU list (implementing page replacement) is
active_list and inactive_list, as declared in page_alloc.c (this is
the so-called Pagecache).   Page replacement of the pagecache (which
page to discard or pageout) is done in kswapd.

As for page reclamation, it involved the swapping out pages from the
inactive list.    (chap 11 of Mel Gorman's Understanding VM book),
implemented by kswapd - based on the LRU list.

Effectively, reclamation is a subset of page replacement.   Proper
defined boundary between the two is not given anywhere, so discussion
of its differences is not important.   But more important are standard
terms like PageCache, PageReplacement Policy etc.

Just my personal opinions :-).

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux