Skip to main content
Log in

An analysis of prepaging

Eine Analyse des Prepagings

  • Published:
Computing Aims and scope Submit manuscript

Abstract

Prepaging is advocated as a technique to reduce the excessive page traffic due to the changes in the phases of execution of a program. Common prepaging techniques are surveyed. It is advocated that the phase transition behavior cannot be adequately predicted based either on the spatial contiguity or on the observation of the past behavior. Prepaging advice generated by the programmer or the compiler is presented as a technique for the prediction of the phase transition behavior. To simplify the generation of the prepaging advice, the processes of the extraction of the phase transition behavior and the scheduling of the page transfers are decoupled. This, in turn, dictates the need for controlled prepaging, which is discussed next.

A performance comparison of a sequential prepaging scheme and a user-aided prepaging scheme is carried out. The relative space-time product is presented as a measure of the effectiveness of a prepaging scheme. The effect of prepaging on system throughput is studied using a cyclic queuing model.

Zusammenfassung

Dieser Bericht plädiert für Prepaging als eine Technik, die den übermäßig großen Seiten-Austausch-Verkehr während des Umschaltens zwischen zwei Phasen eines Programmes reduzieren kann. Es wird angeführt, daß sich das Verhalten während eines Phasenüberganges weder gestützt auf räumliche Kontinuität noch auf Beobachtung des vergangenen Verhaltens voraussagen läßt. Als Lösung werden von Programmierer oder Compiler erzeugte Prepaging-Hinweise angeboten. Um das Erstellen solcher Hinweise zu erleichtern, werden die Vorgänge zum Erkennen des Übergangsverhaltens und zur Seitenverwaltung voneinander gelöst. Dies fordert wiederum eine kontrollierte Prepaging-Technik, die im folgenden besprochen wird.

Ein sequentielles und ein benutzergestütztes Prepaging-Schema werden verglichen. Das relative Raum-Zeit-Produkt dient als maß für die Wirksamkeit. Die Auswirkung von Prepaging auf den System-Durchsatz wird an einem Warteschlangenmodell untersucht.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Madison, A. W., Batson, A. P.: Characteristics of program localities. CACM19, 285–294 (1976).

    Google Scholar 

  2. Denning, P. J., Graham, G. S.: Multiprogrammed memory management. Proc. IEEE63, 924–939 (1975).

    Google Scholar 

  3. Graham, G. S.: A study of program and memory policy behavior. CSRG Tech. Rep., May 1977, University of Toronto.

  4. Spirn, J. R.: Program behavior: Models and measurements. New York: Elsevier-North Holland 1977.

    Google Scholar 

  5. Smith, A. J.: A modified working set paging algorithm. IEEE Trans. Comput.C-25, 907–914 (1976).

    Google Scholar 

  6. Denning, P. J.: On modeling program behavior. Proc. AFIPS SJCC40, 937–944 (1972).

    Google Scholar 

  7. Greenberg, M. L.: An algorithm for drum storage management in time sharing systems. Proc. Third ACM Symp. on Operating Systems Principles, October 1971.

  8. Organick, E. I.: The multics system: An examination of its structure. Cambridge, Mass: The MIT Press, 1972.

    Google Scholar 

  9. Baer, J. L., Sager, G. R.: Dynamic improvement of locality in virtual memory systems. IEEE Trans. on Soft Eng.SE-2, 54–62 (1976).

    Google Scholar 

  10. Smith, A. J.: Sequential program prefetching in memory hierarchies. (Submitted for publication.)

  11. Joseph, M.: An analysis of paging and program behavior. The Computer Journal13, 48–54 (1970).

    Google Scholar 

  12. Smith, A. J.: Sequentiality and prefetching in data base systems. IBM Research Report RJ 1743, March 1976.

  13. Choy, D. M.: A graphical tool for the evaluation of prepaging and of paging with non-uniform pages. IBM Research Report RJ 1789, May 1976.

  14. Madnick, S. E.: Storage hierarchy systems. Mass. Inst. Technol. Cambridge, Tech. Rep. MAC-TR-107, 1973.

  15. Bennett, B. T., Franaszek, P. A.: Cache memory with prefetching of data by priority. IBM Technical Disclosure Bulletin18, 4231–4232 (1976).

    Google Scholar 

  16. Lorin, H.: Parallelism in hardware and software: Real and apparent concurrency. Englewood Cliffs, N. J.: Prentice-Hall 1972.

    Google Scholar 

  17. Hintz, R. G., Tate, D. P.: Control data STAR-100 processor design. Proc. IEEE COMPCON,1972.

  18. Watson, W. J.: The TI ASC, a highly modular and flexible supercomputer architecture. Proc. AFIPS FJCC,41, 221–229 (1972).

    Google Scholar 

  19. Keller, R. M.: Look-ahead processor. Computing Surveys7, 177–195 (1975).

    Google Scholar 

  20. Denning, P. J.: Virtual memory. Computing Surveys2, 153–189 (1970).

    Google Scholar 

  21. Trivedi, K. S.: On the paging performance of array algorithms. IEEE Trans. Comput.C-26, 938–947 (1977).

    Google Scholar 

  22. Sayre, D.: Is automatic folding of programs efficient enough to displace manual? CACM12, 656–660 (1969).

    Google Scholar 

  23. Morrison, J. E.: User program performance in virtual storage systems. IBM Sys. J.1973, 216–237.

  24. Trivedi, K. S.: Prepaging and applications to array algorithms. IEEE Trans. Comput.C-25, 915–921 (1976).

    Google Scholar 

  25. Trivedi, K. S.: Prepaging and applications to the STAR-100 computer. Proc. Symp. High Performance Computer and Algorithm Organization, Champaign, Ill., April 1977.

  26. Coffman, E. G., Jr., Denning, P. J.: Operating system theory. Englewood Cliffs, N. J.: Prentice-Hall 1973.

    Google Scholar 

  27. Kleinrock, L.: Queuing systems, Vol. I. New York: Wiley Interscience, 1975.

    Google Scholar 

  28. Belady, L. A.: A study of replacement algorithms for a virtual storage computer. IBM Syst. J.5, 78–101 (1966).

    Google Scholar 

  29. Chu, W. W., Opderbeck, H.: The page fault frequency replacement algorithm Proc. AFIPS FJCC.1972, 597–609.

  30. Prieve, B. G., Fabry, R. S.: VMIN — an optimal variable-space page replacement algorithm. CACM19, 295–297 (1976).

    Google Scholar 

  31. Trivedi, K. S.: PWS: An optimal variable prepaging algorithm. (Submitted for publication, July 1977.)

  32. Gold, D. E., Kuck, D. J.: A model for masking rotational latency by dynamic disc allocation. CACM17, 278–288 (1974).

    Google Scholar 

  33. Control data corporation STAR-100 hardware reference manual, St. Paul, Minn.

  34. Wilkinson, J. H., Reinsch, C.: Linear algebra. Berlin-Heidelberg-New York: Springer 1971.

    Google Scholar 

  35. Kuehner, C., Randell, B.: Demand paging in perspective. Proc. AFIPS SJCC32, 1011–1018 (1968).

    Google Scholar 

  36. Buzen, J. P.: Fundamental operational laws of computer system performance. Acta Informatica7, 167–182 (1976).

    Google Scholar 

  37. Aho, A. V., Denning, P. J., Ullman, J. D.: Principles of optimal page replacement. JACM18, 80–93 (1971).

    Google Scholar 

  38. Sekino, A.: Performance evaluation of multiprogrammed time-shared computer systems. MIT Project MAC Report TR-103, Cambridge, Mass., 1972.

  39. IBM system/370 system summary. IBM Corporation Order No. GA22-7001.

Download references

Author information

Authors and Affiliations

Authors

Additional information

This work was supported in part by the National Science Foundation Grant No. US NSF MCS 76-24417.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Trivedi, K.S. An analysis of prepaging. Computing 22, 191–210 (1979). https://doi.org/10.1007/BF02243562

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02243562

Keywords

Navigation