Comparative Study for Catch Prefetching Algorithms
DOI:
https://doi.org/10.61841/5x70nn39Keywords:
Catch Prefetching, Instruction Prefetching, Data Prefetching, Miss Rate, Hit RateAbstract
There are many techniques that have been proposed to decrease memory latency, such as caches, locality optimizations, pipelining, out-of-order execution, and multithreading. Another such technique is called prefetching. Prefetching brings data or instructions closer to the processor before it is needed so that the processor will not have to stall and wait for the data, thereby reducing the cache miss rate and decreasing memory access latency. In this paper we have implemented one data prefetching algorithm called Next-N-Line and three different instruction prefetching algorithms: Next Line, Target-Line, and Wrong-Path. These algorithms were implemented using a simulator created by the University of California San Diego. We compared the results of these four simulations and tested different parameters, as we will show later. Our goal in this paper is to compare the effects of data prefetching with no prefetching. These results will also help to decide which algorithm has the lowest average memory access time, miss rate, and run time among the three instruction prefetching algorithms that we implemented.
Downloads
References
[1] Patterson, R.H., Gibson, G.A., Ginting, E., Stodolsky, D., and Zelenka, J., 1995, December. Informed prefetching and caching. In Proceedings of the fifteenth ACM symposium on operating systems principles (pp. 79-95).
[2] Huizinga, D.M. and Desai, S., 2000, March. Implementation of informed prefetching and caching in Linux. In Proceedings International Conference on Information Technology: Coding and Computing (Cat. No. PR00540) (pp. 443-448). IEEE.
[3] Zelenka, J., 1995. Informed prefetching and caching. In Proceedings of the.
[4] Tomkins, A., Patterson, R.H., and Gibson, G., 1997. Informed multi-process prefetching and caching. ACM SIGMETRICS Performance Evaluation Review, 25(1), pp. 100-114.
[5] Pierce, J. and Mudge, T., 1996, December. Wrong-path instruction prefetching. In Proceedings of the 29th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 29 (pp. 165-175). IEEE.
[6] Luk, C.K. and Mowry, T.C., 1998, December. Cooperative prefetching: Compiler and hardware support for effective instruction prefetching in modern processors. In Proceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture (pp. 182-193). IEEE.
[7] Dahlgren, F., Dubois, M., and Stenstrom, P., 1993, August. Fixed and adaptive sequential prefetchinging in shared-memory multiprocessors. In 1993 International Conference on Parallel Processing-ICPP'93 (Vol. 1, pp. 56-63). IEEE.
[8] Lipasti, M.H., Schmidt, W.J., Kunkel, S.R., and Roediger, R.R., 1995, December. SPAID: Software prefetching in pointer- and call-intensive environments. In Proceedings of the 28th Annual International Symposium on Microarchitecture (pp. 231-236). IEEE.
[9] Cherng, C. and Ladner, R.E., 2005. Cache-efficient simple dynamic programming. In Discrete Mathematics and Theoretical Computer Science (pp. 49-58). Discrete Mathematics and Theoretical Computer Science.
[10] Tang, Y., You, R., Kan, H., Tithi, J.J., Ganapathi, P., and Chowdhury, R.A., 2015, January. Cache-oblivious wavefront: improving parallelism of recursive dynamic programming algorithms without losing cache efficiency. In Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (pp. 205-214).
[11] Thomas H. Cormen, Leiserson, C.E., Rivest, R.L., and Stein, C., 2001. Introduction to Algorithms (Vol. 5, pp. 2-2). Cambridge: MIT Press.
Downloads
Published
Issue
Section
License
Copyright (c) 2020 AUTHOR

This work is licensed under a Creative Commons Attribution 4.0 International License.
You are free to:
- Share — copy and redistribute the material in any medium or format for any purpose, even commercially.
- Adapt — remix, transform, and build upon the material for any purpose, even commercially.
- The licensor cannot revoke these freedoms as long as you follow the license terms.
Under the following terms:
- Attribution — You must give appropriate credit , provide a link to the license, and indicate if changes were made . You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
Notices:
You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation .
No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.