Characteristics of program localities
- 1 May 1976
- journal article
- Published by Association for Computing Machinery (ACM) in Communications of the ACM
- Vol. 19 (5) , 285-294
- https://doi.org/10.1145/360051.360227
Abstract
The term “locality” has been used to denote that subset of a program's segments which are referenced during a particular phase of its execution. A program's behavior can be characterized in terms of its residence in localities of various sizes and lifetimes, and the transitions between these localities. In this paper the concept of a locality is made more explicit through a formal definition of what constitutes a phase of localized reference behavior, and by a corresponding mechanism for the detection of localities in actual reference strings. This definition provides for the existence of a hierarchy of localities at any given time, and the reasonableness of the definition is supported by examples taken from actual programs. Empirical data from a sample of production Algol 60 programs is used to display distributions of locality sizes and lifetimes, and these results are discussed in terms of their implications for the modeling of program behavior and memory management in virtual memory systems.Keywords
This publication has 7 references indexed in Scilit:
- The performance enhancement of descriptor-based virtual memory systems through the use of associative registersPublished by Association for Computing Machinery (ACM) ,1975
- Improving locality by critical working setsCommunications of the ACM, 1974
- Measurements of the virtual memory demands of Algol-60 programs (Extended Abstract)Published by Association for Computing Machinery (ACM) ,1974
- Experiments with program localityPublished by Association for Computing Machinery (ACM) ,1972
- An empirical study of FORTRAN programsSoftware: Practice and Experience, 1971
- Program restructuring for virtual memoryIBM Systems Journal, 1971
- A study of replacement algorithms for a virtual-storage computerIBM Systems Journal, 1966