ScienceDirect® Home Skip Main Navigation Links
You have guest access to ScienceDirect. Find out more.
 
Home
Browse
My Settings
Alerts
Help
 Quick Search
 Search tips (Opens new window)
    Clear all fields    
Performance Evaluation
Volume 60, Issues 1-4, May 2005, Pages 5-29
Performance Modeling and Evaluation of High-Performance Parallel and Distributed Systems
 
Font Size: Decrease Font Size  Increase Font Size
 Abstract - selected
Article
Purchase PDF (1071 K)

Article Toolbox
 
 
 
Related Articles in ScienceDirect
View More Related Articles
 
View Record in Scopus
 
doi:10.1016/j.peva.2004.10.002    
How to Cite or Link Using DOI (Opens New Window)

Copyright © 2004 Elsevier B.V. All rights reserved.

Token-ordered LRU: an effective page replacement policy and its implementation in Linux systems

Purchase the full-text article



References and further reading may be available for this article. To view references and further reading you must purchase this article.

Song Jianga, 1, E-mail The Corresponding Author and Xiaodong Zhangb, Corresponding Author Contact Information, E-mail The Corresponding Author

aLos Alamos National Laboratory, Los Alamos, NM 87545, USA

bDepartment of Computer Science, College of William and Mary, Williamsburg, VA 23187, USA


Available online 17 November 2004.

Abstract

Most computer systems use a global page replacement policy based on the LRU principle to approximately select a Least Recently Used page for a replacement in the entire user memory space. During execution interactions, a memory page can be marked as LRU even when its program is conducting page faults. We define the LRU pages under such a condition as false LRU pages because these LRU pages are not produced by program memory reference delays, which is inconsistent with the LRU principle. False LRU pages can significantly increase page faults, even cause system thrashing. This poses a more serious risk in a large parallel systems with distributed memories because of the existence of coordination among processes running on individual node. In the case, the process thrashing in a single node or a small number of nodes could severely affect other nodes running coordinating processes, even crash the whole system. In this paper, we focus on how to improve the page replacement algorithm running on one node.

After a careful study on characterizing the memory usage and the thrashing behaviors in the multi-programming system using LRU replacement. we propose an LRU replacement alternative, called token-ordered LRU, to eliminate or reduce the unnecessary page faults by effectively ordering and scheduling memory space allocations. Compared with traditional thrashing protection mechanisms such as load control, our policy allows more processes to keep running to support synchronous distributed process computing. We have implemented the token-ordered LRU algorithm in a Linux kernel to show its effectiveness.

Keywords: Process thrashing; Global LRU replacement; Load control; Performance evaluation

Article Outline

1. Introduction
2. Backgrounds of thrashing protections
2.1. Local page replacement
2.2. Working set models
2.3. Load controls
2.4. Why is a lightweight thrashing prevention mechanism desired?
3. Experimental environment
3.1. Workloads
3.2. Experimental system support
3.3. Memory access behavior in dedicated environment
4. Memory performance of different types of program interactions
4.1. Performance metrics
4.2. Memory performance of program interactions
4.3. How are thrashings triggered?
5. Design and implementations of the token-ordered LRU
5.1. LRU page replacement in Linux
5.2. How is the token-ordered LRU implemented in Linux?
5.3. Objectively monitoring the usage of the token
5.4. A close look at the token-ordered LRU in program interactions
6. Performance of the token-ordered LRU
7. Other related work
8. Conclusion
Acknowledgements
References
Vitae

















Corresponding Author Contact InformationCorresponding author. Tel.: +1 757 221 3458; fax: +1 757 221 1717.
1 Tel.: +1 505 606 0308; fax: +1 505 667 1126.

Performance Evaluation
Volume 60, Issues 1-4, May 2005, Pages 5-29
Performance Modeling and Evaluation of High-Performance Parallel and Distributed Systems
 
Home
Browse
My Settings
Alerts
Help
Elsevier.com (Opens new window)
About ScienceDirect  |  Contact Us  |  Information for Advertisers  |  Terms & Conditions  |  Privacy Policy
Copyright © 2008 Elsevier B.V. All rights reserved. ScienceDirect® is a registered trademark of Elsevier B.V.