Thrashing: its causes and prevention

  title={Thrashing: its causes and prevention},
  author={Peter J. Denning},
  booktitle={AFIPS '68 (Fall, part I)},
  • P. Denning
  • Published in AFIPS '68 (Fall, part I) 9 December 1968
  • Computer Science
A particularly troublesome phenomenon, thrashing, may seriously interfere with the performance of paged memory systems, reducing computing giants (Multics, IBM System 360, and others not necessarily excepted) to computing dwarfs. The term thrashing denotes excessive overhead and severe performance degradation or collapse caused by too much paging. Thrashing inevitably turns a shortage of memory space into a surplus of processor time. 

Figures from this paper

Swap Fairness for Thrashing Mitigation

An accounting layer that forces swap fairness among processes competing for main memory is proposed, which 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.

Evaluation of desktop operating systems under thrashing conditions

An evaluation of some commodity desktop operating systems under thrashing conditions is presented and the performance data about memory management available in each system and the mechanisms available to collect it is identified.

Process mayagement in a paging macmie

This paper investigates algorithms for managing processes and controlling their entry into the multiprogramming set in a virtual memory environment and proposes and evaluates several algorithms for process activation and deactivation.

Swap Token: Rethink the Application of the LRU Principle on Paging to Remove System Thrashing

The mechanism identifies false LRU pages to avoid use of the LRU principle on these pages, in order to remove thrashing, and it is shown that the mechanism introduces little overhead to program executions, and its implementations on Linux (and Unix) systems are straightforward.

Measurement criteria for virtual memory paging rules

An analytic and a simulation model expose serious deficiencies of a well known definition of a “bad replacement” in virtual memory computer systems and indicates that simulation techniques appear to have advantages over probabilistic models.

On the Performance Enhancement of Paging Systems Through Program Analysis and Transformations

It is possible to improve the paging performance of a program by applying transformations to the source program that improve data access locality, including automation of these transformations, and a number of such transforms are presented.

Experimental data on page replacement algorithm

Paged VM systems could provide a productive means to run large programs on small main memory, if proper techniques are employed, and one of the most influential of these is the choice of an efficient page replacement algorithm (RA) to minimize page traffic between the different levels of memory.

A short theory of multiprogramming

  • P. Denning
  • Computer Science
    MASCOTS '95. Proceedings of the Third International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems
  • 1995
The findings of the 1970s are unearth, which may be of interest to operating system designers and system administrators of the 1990s about how to construct a self-regulating multiprogrammed virtual memory operating system that delivers near-optimal throughput.

A fresh look at memory hierarchy management

  • J. Chapin
  • Computer Science
    Proceedings. The Sixth Workshop on Hot Topics in Operating Systems (Cat. No.97TB100133)
  • 1997
This paper discusses potential operating system modifications and proposes a new metric, the system memory cycles per instruction ( system MCPI) of a process, which can be used to evaluate these modifications.

OS-Assisted Task Preemption for Hadoop

This work introduces a new task preemption primitive for Hadoop, that allows tasks to be suspended and resumed exploiting existing memory management mechanisms readily available in modern operating



Comment on multiprogramming under a page on demand strategy

It has been brought to my attention that Figure 5 in my paper is not consistent with Figure 2 in the paper, but the curve corresponds to the cumulative measure given in the latter.

Effects of scheduling on file memory operations

It is clear that the demand placed on the file memory system is extraordinarily heavy; and it is essential that every part of the computing system interacting with file memory do so smoothly and efficiently.

Microprogamming under a page on demand strategy

A model of multiprogramming for a particular computer system using a page on demand strategy is developed and performance is predicted when user programs are typical of those arising from an interactive time sharing environment.

Dynamic program behavior under paging

In May, 1965, System Development Corporation (SDC) proposed to do some research to study program organization with respect to dynamic program behavior. Further, the proposal suggested that simulation

Dynamic program behavior under paging

In May, 1965, System Development Corporation (SDC) proposed to do some research to study program organization with respect to dynamic program behavior. Further, the proposal suggested that simulation

A Study of Replacement Algorithms for Virtual-Storage Computer

One of the basic limitations of a digital computer is the size of its available memory; an approach that permits the programmer to use a sufficiently large address range can accomplish this objective, assuming that means are provided for automatic execution of the memory-overlay functions.

Steps toward a general-purpose time-sharing system using large capacity core storage and TSS/360

It is our desire at the Carnegie-Mellon University Computation Center to provide to the university community a general-purpose computer utility capable of supporting the wide range of academic and