Experimental results on the paging behavior of numerical programs

Traces of numerical programs are used to examine their behavior in a paged virtual memory system. The working set policy is used for the replacement algorithm. It is found that the behavior of such programs is different from the behavior of other types of programs like compilers and system programs. These differences are most significant in the lifetime curves and the space-time cost curves. All programs examined showed ill-behavior. Moreover, the space-time costs of executing these programs are very sensitive to the choice of the control parmater, the window size. Our measurements show that approximations based on the common practice of using virtual time instead of real time in generating statistics are often inaccurate. The “primary knee criterion” of optimizing the space-time cost did not hold for some programs. The parameter-real memory and the real memory-fault rate anomalies show significantly in all but one of the seventeen programs examined.

[1]  Domenico Ferrari,et al.  The Improvement of Program Behavior , 1976, Computer.

[2]  Alan P. Batson,et al.  Characteristics of program localities , 1976, CACM.

[3]  Peter J. Denning,et al.  Working Sets Past and Present , 1980, IEEE Transactions on Software Engineering.

[4]  Kishor S. Trivedi Prepaging and Applications to Array Algorithms , 1976, IEEE Transactions on Computers.

[5]  W. ABU-SUFAH,et al.  Automatic program transformations for virtual memory computers * , 1899, 1979 International Workshop on Managing Requirements Knowledge (MARK).

[6]  Kishor S. Trivedi On the Paging Performance of Array Algorithms , 1977, IEEE Transactions on Computers.

[7]  James L. Elshoff Some programming techniques for processing multi-dimensional matrices in a paging environment , 1974, AFIPS '74.

[8]  David A. Padua,et al.  Some Results on the Working Set Anomalies in Numerical Programs , 1982, IEEE Transactions on Software Engineering.

[9]  Edward G. Coffman,et al.  Organizing matrices and matrix operations for paged memory systems , 1969, Commun. ACM.

[10]  Richard Thomas Simon The modeling of virtual memory systems. , 1979 .

[11]  Alan Jay Smith,et al.  Bibliography on paging and related topics , 1978, OPSR.

[12]  Harold S. Stone,et al.  DMIN: An Algorithm for Computing the Optimal Dynamic Allocation in a Virtual Memory Computer , 1981, IEEE Transactions on Software Engineering.

[13]  Duncan H. Lawrie,et al.  On the Performance Enhancement of Paging Systems Through Program Analysis and Transformations , 1981, IEEE Transactions on Computers.

[14]  Lawrence Douglas Rogers,et al.  Optimal paging-strategies and stability considerations for solving large linear-systems. , 1973 .

[15]  Edward S. Davidson,et al.  A Comparison of Dynamic and Static Virtual Memory Allocation Algorithms , 1981, IEEE Transactions on Software Engineering.

[16]  Peter J. Denning,et al.  The Operational Analysis of Queueing Network Models , 1978, CSUR.

[17]  Irving L. Traiger,et al.  Evaluation Techniques for Storage Hierarchies , 1970, IBM Syst. J..

[18]  Mark A. Franklin,et al.  Anomalies with variable partition paging algorithms , 1978, CACM.

[19]  Patrice Burgevin,et al.  Characteristics and models of program behaviour , 1976, ACM '76.

[20]  P.J. Denning,et al.  Multiprogrammed memory management , 1975, Proceedings of the IEEE.

[21]  Gordon Scott Graham A study of program and memory policy behaviour. , 1976 .

[22]  Kevin Comerford Kahn Program behavior and load dependent system performance. , 1976 .

[23]  D. J. Kuck,et al.  The Use and Performance of Memory Hierarchies: A Survey , 1970 .

[24]  R. S. Fabry,et al.  MIN—an optimal variable-space page replacement algorithm , 1976, CACM.

[25]  Peter J. Denning,et al.  The working set model for program behavior , 1968, CACM.

[26]  Ilkka J. Haikala,et al.  Methodology and empirical results of program behaviour measurements , 1980, PERFORMANCE '80.