A Comparative Study of Set Associative Memory Mapping Algorithms and Their Use for Cache and Main Memory
- 1 March 1978
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. SE-4 (2), 121-130
- https://doi.org/10.1109/tse.1978.231482
Abstract
Set associative page mapping algorithms have become widespread for the operation of cache memories for reasons of cost and efficiency. We show how to calculate analytically the effectiveness of standard bit-selection set associative page mapping or random mapping relative to fully associative (unconstrained mapping) paging. For two miss ratio models, Saltzer's linear model and a mixed geometric model, we are able to obtain simple, closed-form expressions for the relative LRU fault rates. We also experiment with two (infeasible to implement) dynamic mapping algorithms, in which pages are assigned to sets either in an LRU or FIFO manner at fault times, and find that they often yield significantly lower miss ratios than static algorithms such as bit selection. Trace driven simulations are used to generate experimental results and to verify the accuracy of our calculations. We suggest that as electronically accessed third-level memories composed of electron-beam tubes, magnetic bubbles, or charge-coupled devices become available, algorithms currently used only for cache paging will be applied to main memory, for the same reasons of efficiency, implementation ease, and cost.Keywords
This publication has 13 references indexed in Scilit:
- A Modified Working Set Paging AlgorithmIEEE Transactions on Computers, 1976
- Charge-coupled devices for memory applicationsPublished by Association for Computing Machinery (ACM) ,1975
- A semiconductor nonvolatile electron beam accessed mass memoryProceedings of the IEEE, 1975
- Magnetic bubbles—An emerging new memory technologyProceedings of the IEEE, 1975
- Principles of Optimal Page ReplacementJournal of the ACM, 1971
- Evaluation techniques for storage hierarchiesIBM Systems Journal, 1970
- The working set model for program behaviorCommunications of the ACM, 1968
- Structural aspects of the System/360 Model 85, II: The cacheIBM Systems Journal, 1968
- A study of replacement algorithms for a virtual-storage computerIBM Systems Journal, 1966
- An algorithm for the machine calculation of complex Fourier seriesMathematics of Computation, 1965