Skip to main content

Swap Fairness for Thrashing Mitigation

  • Conference paper
Software Architecture (ECSA 2013)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7957))

Included in the following conference series:

Abstract

The swap mechanism allows an operating system to work with more memory than available RAM space, by temporarily flushing some data to disk. However, the system sometimes ends up spending more time swapping data in and out of disk than performing actual computation. This state is called thrashing. Classical strategies against thrashing rely on reducing system load, so as to decrease memory pressure and increase global throughput. Those approaches may however be counterproductive when tricked into advantaging malicious or long-standing processes. This is particularily true in the context of shared hosting or virtualization, where multiple users run uncoordinated and selfish workloads.

To address this challenge, we propose an accounting layer that forces swap fairness among processes competing for main memory. It ensures that a process cannot monopolize the swap subsystem by delaying the swap operations of abusive processes, reducing the number of system-wide page faults while maximizing memory utilization.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Aho, A.V., Denning, P.J., Ullman, J.D.: Principles of optimal page replacement. Journal of the ACM 18(1), 80–93 (1971)

    Article  MathSciNet  MATH  Google Scholar 

  2. Alderson, A.: Thrashing in a multiprogrammed paging system. Technical report, University of Newcastle (1972)

    Google Scholar 

  3. Denning, P.J.: Thrashing: its causes and prevention. In: 1968 Fall Joint Computer Conference, pp. 915–922. ACM (1968)

    Google Scholar 

  4. Denning, P.J.: The working set model for program behavior. Commun. ACM 11(5), 323–333 (1968)

    Article  MathSciNet  MATH  Google Scholar 

  5. Goichon, F., Salagnac, G., Frnot, S.: Swap fairness for thrashing mitigation. Technical report, INRIA (2013)

    Google Scholar 

  6. Hewlett-Packard. HP-UX 11i Version 3: serialize(1) (2010)

    Google Scholar 

  7. Iyer, S.: Advanced memory management and disk scheduling techniques for general-purpose operating systems. PhD thesis, Rice University (2005)

    Google Scholar 

  8. Jiang, S., Zhang, X.: TPF: a dynamic system thrashing protection facility. Software: Practice and Experience 32, 295–318 (2002)

    Article  MATH  Google Scholar 

  9. Jiang, S., Zhang, X.: Token-ordered LRU: An effective page replacement policy and its implementation in Linux systems. Perform. Eval. 60(1-4), 5–29 (2005)

    Article  Google Scholar 

  10. Morris, J.B.: Demand paging through utilization of working sets on the MANIAC II. Commun. ACM 15(10), 867–872 (1972)

    Article  Google Scholar 

  11. Reuven, M., Wiseman, Y.: Medium-term scheduler as a solution for the thrashing effect. Computer J. 49(3), 297–309 (2006)

    Article  Google Scholar 

  12. Rodriguez-Rosell, J., Dupuy, J.-P.: The design, implementation, and evaluation of a working set dispatcher. Commun. ACM 16(4), 247–253 (1973)

    Article  Google Scholar 

  13. Stanovich, M.J., Baker, T.P., Wang, A.I.: Throttling on-disk schedulers to meet soft-real-time requirements. In: Real-Time and Embedded Technology and Applications Symposium, RTAS 2008 (2008)

    Google Scholar 

  14. Wu, J., Brandt, S.: Storage access support for soft real-time applications. In: Real-Time and Embedded Technology and Applications Symposium, RTAS 2004 (2004)

    Google Scholar 

  15. Yu, Y.J., Shin, D.I., Eom, H., Yeom, H.Y.: NCQ vs. I/O scheduler: Preventing unexpected misbehaviors. ACM Transactions Storage 6(1), 2 (2010)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Goichon, F., Salagnac, G., Frénot, S. (2013). Swap Fairness for Thrashing Mitigation. In: Drira, K. (eds) Software Architecture. ECSA 2013. Lecture Notes in Computer Science, vol 7957. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39031-9_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-39031-9_27

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-39030-2

  • Online ISBN: 978-3-642-39031-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics