{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,9]],"date-time":"2026-01-09T23:15:12Z","timestamp":1768000512922,"version":"3.49.0"},"reference-count":41,"publisher":"Oxford University Press (OUP)","issue":"1","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2006,1,1]]},"DOI":"10.1093\/comjnl\/bxh140","type":"journal-article","created":{"date-parts":[[2005,10,15]],"date-time":"2005-10-15T00:25:11Z","timestamp":1129335911000},"page":"42-61","source":"Crossref","is-referenced-by-count":3,"title":["Caching and prefetching algorithms for programs with looping reference patterns"],"prefix":"10.1093","volume":"49","author":[{"given":"Gianluca","family":"Dini","sequence":"first","affiliation":[]},{"given":"Giuseppe","family":"Lettieri","sequence":"additional","affiliation":[]},{"given":"Lanfranco","family":"Lopriore","sequence":"additional","affiliation":[]}],"member":"286","published-online":{"date-parts":[[2005,10,14]]},"reference":[{"key":"key\n\t\t\t\t20171011183117_B1","unstructured":"Johnson, T. and Shasha, D. (1994) 2Q: a low overhead high performance buffer management replacement algorithm. In Proc. Twentieth Int. Conf. on Very Large Data Bases, Santiago, Chile, September 12\u201315, pp. 439\u2013450. Morgan Kaufmannn, San Mateo, CA."},{"key":"key\n\t\t\t\t20171011183117_B2","doi-asserted-by":"crossref","unstructured":"Lee, D., Choi, J., Kim, J.-H., Noh, S. H., Min, S. L., Cho, Y. and Kim, C. S. (1999) On the existence of a spectrum of policies that subsumes the least recently used (LRU) and least frequently used (LFU) policies. Perf. Eval. Rev., 27, 134\u2013143","DOI":"10.1145\/301464.301487"},{"key":"key\n\t\t\t\t20171011183117_B3","doi-asserted-by":"crossref","unstructured":"O'Neil, E. J., O'Neil, P. E. and Welkum, G. (1993) The LRU-K page replacement algorithm for database disk buffering. ACM SIGMOD Record, 22, 297\u2013306","DOI":"10.1145\/170036.170081"},{"key":"key\n\t\t\t\t20171011183117_B4","doi-asserted-by":"crossref","unstructured":"Smaragdakis, Y., Kaplan, S. and Wilson, P. (1999) EELRU: simple and effective adaptive page replacement. Perform. Eval. Rev., 27, 122\u2013133","DOI":"10.1145\/301464.301486"},{"key":"key\n\t\t\t\t20171011183117_B5","unstructured":"Megiddo, N. and Modha, D. S. (2003) ARC: a self-tuning, low overhead replacement cache. In Proc. Second USENIX Conf. on File and Storage Technologies (FAST 03), San Francisco, CA, March 31\u2013April 2, pp. 115\u2013130. USENIX Association, Berkeley, CA."},{"key":"key\n\t\t\t\t20171011183117_B6","unstructured":"Bansal S. and Modha, D. S. (2004) CAR: clock with adaptive replacement. Proc. Third USENIX Conf. on File and Storage Technologies (FAST 04), San Francisco, CA, March 31\u2013April 2, pp.187\u2013200. USENIX Association, Berkeley, CA."},{"key":"key\n\t\t\t\t20171011183117_B7","unstructured":"Choi, J., Noh, S. H., Min, S. L. and Cho, Y. (1999) An implementation study of a detection-based adaptive block replacement scheme. In Proc. 1999 USENIX Annual Technical Conf., Monterey, CA, June 6\u201311, pp. 239\u2013252. USENIX Association, Berkeley, CA."},{"key":"key\n\t\t\t\t20171011183117_B8","doi-asserted-by":"crossref","unstructured":"Choi, J., Noh, S. H., Min, S. L. and Cho, Y. (2000) Towards application\/file-level characterization of block references: a case for fine-grained buffer management. Perf. Eval. Rev., 28, 286\u2013295.","DOI":"10.1145\/345063.339424"},{"key":"key\n\t\t\t\t20171011183117_B9","doi-asserted-by":"crossref","unstructured":"Faloutsos, C., Ng, R. and Sellis, T. (1995) Flexible and adaptable buffer management techniques for database management systems. IEEE Trans. Comput., 44, 546\u2013560","DOI":"10.1109\/12.376169"},{"key":"key\n\t\t\t\t20171011183117_B10","unstructured":"Kim, J. M., Choi, J., Kim, J., Noh, S. H., Min, S. L., Cho, Y. and Kim, C. S. (2000) A low-overhead high performance unified buffer management scheme that exploits sequential and looping references. In Proc. Fourth USENIX Symp. on Operating System Design and Implementation, San Diego, CA, October 22\u201325, pp. 119\u2013134. USENIX Association, Berkeley, CA."},{"key":"key\n\t\t\t\t20171011183117_B11","unstructured":"Gniady, C., Butt, A. R. and Hu, Y. C. (2004) Program counter based pattern classification in buffer caching. In Proc. Sixth USENIX Symp. on Operating Systems Design and Implementation, San Francisco, CA, December 6\u20138, pp. 395\u2013408. USENIX Association, Berkeley, CA."},{"key":"key\n\t\t\t\t20171011183117_B12","unstructured":"Shalicky, T. LASPack Reference Manual. Available at http:\/\/www.tu-dresden.de\/mwism\/skalicky\/laspack\/laspack.html."},{"key":"key\n\t\t\t\t20171011183117_B13","doi-asserted-by":"crossref","unstructured":"Pasquale, B. K. and Polyzos, G. C. (1993) A static analysis of I\/O characteristics of scientific applications in a production workload. In Proc. 1993 ACM\/IEEE Conf. on Supercomputing, Portland, OR, November 15\u201319, pp. 388\u2013397. IEEE Computer Soceity Press, Los Alamitos, CA.","DOI":"10.1145\/169627.169759"},{"key":"key\n\t\t\t\t20171011183117_B14","doi-asserted-by":"crossref","unstructured":"Glass, G. and Cao, P. (1997) Adaptive page replacement based on memory reference behavior. Perf. Eval. Rev., 25, 115\u2013126","DOI":"10.1145\/258623.258681"},{"key":"key\n\t\t\t\t20171011183117_B15","doi-asserted-by":"crossref","unstructured":"Patterson, R. H. and Gibson, G. A. (1994) Exposing I\/O concurrency with informed prefetching. Proc. Third Int. Conf. on Parallel and Distributed Information Systems, Austin, TX, September 28\u201330, pp. 7\u201316. IEEE Computer Society Press, Los Alamitos, CA.","DOI":"10.1109\/PDIS.1994.331737"},{"key":"key\n\t\t\t\t20171011183117_B16","doi-asserted-by":"crossref","unstructured":"Huizinga, D. M. and Desai, S. (2000) Implementation of informed prefetching and caching in Linux. Proc. Int. Conf. on Information Technology: Coding and Computing, Las Vegas, NV, March 27\u201329, pp. 443\u2013448. IEEE Computer Soceity, Los Alamitos, CA.","DOI":"10.1109\/ITCC.2000.844268"},{"key":"key\n\t\t\t\t20171011183117_B17","doi-asserted-by":"crossref","unstructured":"Albers, S., Garg, N. and Leonardi, S. (2000) Minimizing stall time in single and parallel disk systems. J. ACM, 47, 969\u2013986","DOI":"10.1145\/355541.355542"},{"key":"key\n\t\t\t\t20171011183117_B18","doi-asserted-by":"crossref","unstructured":"Kaplan, S. F., McGeoch, L. A. and Cole, M. F. (2002) Adaptive caching for demand prepaging. In Proc. Third Int. Symp. on Memory Management, Berlin, Germany, June 20\u201321, pp. 114\u2013126. ACM Press New York, NY.","DOI":"10.1145\/512429.512445"},{"key":"key\n\t\t\t\t20171011183117_B19","doi-asserted-by":"crossref","unstructured":"Patterson, R. H., Gibson, G. A., Ginting, E., Stodolsky, D. and Zelenka, J. (1995) Informed prefetching and caching. Oper. Syst. Rev., 29, 79\u201395","DOI":"10.1145\/224057.224064"},{"key":"key\n\t\t\t\t20171011183117_B20","doi-asserted-by":"crossref","unstructured":"Patterson, R. H., Gibson, G. A. and Satyanarayanan, M. (1993) A status report on research in transparent informed prefetching. Oper. Syst. Rev., 27, 21\u201334","DOI":"10.1145\/155848.155855"},{"key":"key\n\t\t\t\t20171011183117_B21","doi-asserted-by":"crossref","unstructured":"Cao, P., Felten, E. W., Karlin, A. R. and Li, K. (1995) A study of integrated prefetching and caching strategies. In Proc. ACM SIGMETRICS Joint Int. Conf. on Measurement and Modeling of Computer Systems, Ottawa, Ontario, Canada, May 15\u201319, pp. 188\u2013197. ACM Press New York, NY.","DOI":"10.1145\/223587.223608"},{"key":"key\n\t\t\t\t20171011183117_B22","doi-asserted-by":"crossref","unstructured":"Dini, G., Lettieri, G. and Lopriore, L. (2000) An overview of Ulisse, a distributed single address space system. In Kirby, G. N. C., Dearle, A. and Sj\u00f8berg D. I. K. (eds) Proc. Ninth Int. Workshop on Persistent Object Systems: Design, Implementation, and Use, POS-9, Lillehammer, Norway, September 6\u20138, LNCS, 2135, 215\u2013227. Springer-Verlag GmbH, Berlin.","DOI":"10.1007\/3-540-45498-5_19"},{"key":"key\n\t\t\t\t20171011183117_B23","doi-asserted-by":"crossref","unstructured":"Lopriore, L. (2002) Access control mechanisms in a distributed, persistent memory system. IEEE Trans. Parall. Distr. Syst., 13, 1066\u20131083","DOI":"10.1109\/TPDS.2002.1041883"},{"key":"key\n\t\t\t\t20171011183117_B24","unstructured":"Dahlin, M. D., Wang, R. Y., Anderson, T. E. and Patterson, D. A. (1994) Cooperative caching: using remote client memory to improve file system performance. In Proc. First USENIX Symp. on Operating Systems Design and Implementation, Monterey, CA, November 14\u201317, pp. 267\u2013280. USENIX Association, Berkeley, CA."},{"key":"key\n\t\t\t\t20171011183117_B25","doi-asserted-by":"crossref","unstructured":"Feeley, M. J., Morgan, W. E., Pighin, F. H., Karlin, A. R., Levy, H. M. and Thekkath, C. A. (1995) Implementing global memory management in a workstation cluster. Oper. Syst. Rev., 29, 201\u2013212.","DOI":"10.1145\/224057.224072"},{"key":"key\n\t\t\t\t20171011183117_B26","unstructured":"Franklin, M. J., Carey, M. J. and Livny, M. (1992) Global memory management in client-server DBMS architectures. In Proc. 18th Int. Conf. on Very Large Data Bases, Vancouver, BC, Canada, August 23\u201327, pp. 596\u2013609. Morgan Kaufmannn, San Mateo, CA."},{"key":"key\n\t\t\t\t20171011183117_B27","doi-asserted-by":"crossref","unstructured":"Voelker, G. M., Anderson, E. J., Kimbrel, T., Feeley, M. J., Chase, J. S., Karlin, A. R. and Levy, H. M. (1998) Implementing cooperative prefetching and caching in a globally-managed memory system. Perform. Eval. Rev.,26, 33\u201343.","DOI":"10.1145\/277858.277869"},{"key":"key\n\t\t\t\t20171011183117_B28","doi-asserted-by":"crossref","unstructured":"Belady, L. A. (1966) A study of replacement algorithms for virtual storage computers. IBM Syst. J., 5, 78\u2013101","DOI":"10.1147\/sj.52.0078"},{"key":"key\n\t\t\t\t20171011183117_B29","doi-asserted-by":"crossref","unstructured":"Cao, P., Felten, E. W., Karlin, A. R. and Li, K. (1996) Implementation and performance of integrated application-controlled file caching, prefetching, and disk scheduling. ACM Trans. Comput. Syst., 14, 311\u2013343","DOI":"10.1145\/235543.235544"},{"key":"key\n\t\t\t\t20171011183117_B30","unstructured":"Lumb, C. R., Schindler, J. and Ganger, G. R. (2002) Freeblock scheduling outside of disk firmware. In Proc. USENIX Conf. on File and Storage Technologies (FAST 02), Monterey, CA, January 28\u201330, USENIX Ass., pp. 275\u2013288"},{"key":"key\n\t\t\t\t20171011183117_B31","doi-asserted-by":"crossref","unstructured":"Shenoy, P. J., Goyal, P., Rao, S. S. and Vin, H. M. (1998) Symphony: an integrated multimedia file system. In Proc. ACM\/SPIE Multimedia Computing and Networking 1998, San Jose, CA, January 26\u201328, pp. 124\u2013138. SPIE\u2014International Society for Optical Engineering.","DOI":"10.1117\/12.298415"},{"key":"key\n\t\t\t\t20171011183117_B32","unstructured":"Bartoli, A., Dini, G. and Lopriore, L. (2001) Application-controlled memory management in a single address space environment. Int. J. Softw. Tools Technol. Transfer, 3, 235\u2013245."},{"key":"key\n\t\t\t\t20171011183117_B33","doi-asserted-by":"crossref","unstructured":"Cox, M. and Ellsworth, D. (1997) Application-controlled demand paging for out-of-core visualization. In Proc. Conf. on Visualization'97, Phoenix, AZ, October 19\u201324, pp. 235\u2013244. IEEE, New York, NY.","DOI":"10.1109\/VISUAL.1997.663888"},{"key":"key\n\t\t\t\t20171011183117_B34","doi-asserted-by":"crossref","unstructured":"Harty, K. and Cheriton, D. R. (1992) Application-controlled physical memory using external page-cache management. SIGPLAN Notices, 27, 187\u2013197","DOI":"10.1145\/143371.143511"},{"key":"key\n\t\t\t\t20171011183117_B35","doi-asserted-by":"crossref","unstructured":"Krueger, K., Loftesness, D., Vahdat, A. and Anderson, T. E. (1993) Tools for the development of application-specific virtual memory management. ACM SIGPLAN Notices, 28, 48\u201364.","DOI":"10.1145\/167962.165867"},{"key":"key\n\t\t\t\t20171011183117_B36","doi-asserted-by":"crossref","unstructured":"Brown, A. D. and Mowry, T. C. (2001) Compiler-based I\/O prefetching for out-of-core applications. ACM Trans. Comput. Syst., 19, 111\u2013170","DOI":"10.1145\/377769.377774"},{"key":"key\n\t\t\t\t20171011183117_B37","doi-asserted-by":"crossref","unstructured":"Mitra, T., Yang, C.-K. and Chiueh, T. (2000) Application-specific file prefetching for multimedia programs. In Proc. Int. Conf. on Multimedia and Expo, New York, NY, July 30\u2013August 2, pp. 459\u2013462. IEEE, Piscataway, NJ.","DOI":"10.1109\/ICME.2000.869638"},{"key":"key\n\t\t\t\t20171011183117_B38","unstructured":"Chang, F. and Gibson, G. A. (1999) Automatic I\/O hint generation through speculative execution. In Proc. Third Symp. on Operating Systems Design and Implementation, New Orleans, LA, February 22\u201325, pp. 1\u201314. USENIX Association, Berkeley, CA."},{"key":"key\n\t\t\t\t20171011183117_B39","doi-asserted-by":"crossref","unstructured":"Kimbrel, T., Tomkins, A., Patterson, R. H., Bershad, B., Cao, P., Felten, E. W., Gibson, G. A., Karlin, A. R. and Li, K. (1996) A trace-driven comparison of algorithms for parallel prefetching and caching. ACM Oper. Syst. Rev., 30, 19\u201334","DOI":"10.1145\/248155.238737"},{"key":"key\n\t\t\t\t20171011183117_B40","doi-asserted-by":"crossref","unstructured":"Vellanki, V. and Chervenak, A. L. (1999) A cost-benefit scheme for high performance predictive prefetching. In Proc. SCC99 Conf. on High Performance Networking and Computing, Portland, OR, November 14\u201319, ACM, New York, NY.","DOI":"10.1145\/331532.331582"},{"key":"key\n\t\t\t\t20171011183117_B41","doi-asserted-by":"crossref","unstructured":"Yeh, T., Long, D. D. E. and Brandt, S. A. (2001) Performing file prediction with a program-based successor model. In Proc. Ninth Int. Symp. on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, Cincinnati, OH, August 15\u201318, pp. 193\u2013202, IEEE Computer Society Press, Los Alamitos, CA.","DOI":"10.1109\/MASCOT.2001.948869"}],"container-title":["The Computer Journal"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/academic.oup.com\/comjnl\/article-pdf\/49\/1\/42\/1161829\/bxh140.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,4,10]],"date-time":"2020-04-10T08:58:20Z","timestamp":1586509100000},"score":1,"resource":{"primary":{"URL":"http:\/\/academic.oup.com\/comjnl\/article\/49\/1\/42\/418981\/Caching-and-prefetching-algorithms-for-programs"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005,10,14]]},"references-count":41,"journal-issue":{"issue":"1","published-online":{"date-parts":[[2005,10,14]]},"published-print":{"date-parts":[[2006,1,1]]}},"URL":"https:\/\/doi.org\/10.1093\/comjnl\/bxh140","relation":{},"ISSN":["1460-2067","0010-4620"],"issn-type":[{"value":"1460-2067","type":"electronic"},{"value":"0010-4620","type":"print"}],"subject":[],"published-other":{"date-parts":[[2006,1]]},"published":{"date-parts":[[2005,10,14]]}}}