Skip to main content

On Variants of File Caching

  • Conference paper
Automata, Languages and Programming (ICALP 2011)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6755))

Included in the following conference series:

Abstract

In the file caching problem, the input is a sequence of requests for files out of a slow memory. A file has two attributes, a retrieval cost and an integer size. It is required to maintain a cache of size k, bringing each file, which is not present in the cache at the time of request, from the slow memory into the cache. This incurs a cost equal to the retrieval cost of the file. Well-known special cases include paging (all costs and sizes are equal to 1), the cost model which is also known as weighted paging (all sizes are equal to 1), the fault model (all costs are equal to 1) and the bit model (the cost of a file is equal to its size).

We study two online variants of the problem, caching with bypassing and caching with rejection. If bypassing is allowed, a miss for a file still results in an access to this file in the slow memory, but its subsequent insertion into the cache is optional. In the model with rejection, together with each request for a file, the algorithm is informed with a rejection penalty of the request. When a file which is not present in the cache is requested, the algorithm must either bring the file into the cache, paying the retrieval cost of the file, or reject the file, paying the rejection penalty of the request. The goal function is the sum of total rejection penalty and the total retrieval cost.

We design deterministic and randomized algorithms for both problems. The competitive ratios of these randomized algorithms match the best known results for caching. In the deterministic case, it is known that a (k + 1)-competitive algorithm for caching with bypassing exists, and this is best possible. In contrast, we present a lower bound of 2k + 1 on the competitive ratio of any deterministic algorithm for the variant with rejection, which holds already for paging. We design a (2k + 2)-competitive algorithm for caching with rejection, and a different (2k + 1)-competitive algorithm , which is applicable for paging, the bit model and the cost model.

This research was partially supported by the TÁMOP-4.2.2/08/1/2008-0008 program of the Hungarian National Development Agency.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Achlioptas, D., Chrobak, M., Noga, J.: Competitive analysis of randomized paging algorithms. Theoretical Computer Science 234(1-2), 203–218 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  2. Albers, S., Arora, S., Khanna, S.: Page replacement for general caching problems. In: Proc. of the 10th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 1999), pp. 31–40 (1999)

    Google Scholar 

  3. Bansal, N., Buchbinder, N., Naor, J.: Towards the randomized k-server conjecture: A primal-dual approach. In: Proc. of the 21st Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2010), pp. 40–55 (2010)

    Google Scholar 

  4. Bansal, N., Buchbinder, N., Naor, S.: A primal-dual randomized algorithm for weighted paging. In: Proc. of the 48th Annual IEEE Symposium on Foundations of Computer Science (FOCS 2007), pp. 507–517 (2007)

    Google Scholar 

  5. Bansal, N., Buchbinder, N., Naor, S.: Randomized competitive algorithms for generalized caching. In: Proc. of the 40th Annual ACM Symposium on Theory of Computing, STOC 2008 (2008)

    Google Scholar 

  6. Bar-Noy, A., Bar-Yehuda, R., Freund, A., Naor, J., Schieber, B.: A unified approach to approximating resource allocation and scheduling. Journal of the ACM 48(5), 1069–1090 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  7. Bartal, Y., Leonardi, S., Marchetti-Spaccamela, A., Sgall, J., Stougie, L.: Multiprocessor scheduling with rejection. SIAM Journal on Discrete Mathematics 13(1), 64–78 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  8. Belady, L.A.: A study of replacement algorithms for a virtual-storage computer. IBM Systems Journal 5(2), 78–101 (1966)

    Article  Google Scholar 

  9. Blum, A., Burch, C., Kalai, A.: Finely-competitive paging. In: Proc. of the 40th Annual IEEE Symposium on Foundations of Computer Science (FOCS 1999), pp. 450–458 (1999)

    Google Scholar 

  10. Cao, P., Irani, S.: Cost-aware www proxy caching algorithms. In: Proc. of the USENIX Symposium on Internet Technologies and Systems, pp. 193–206 (1997)

    Google Scholar 

  11. Chrobak, M., Karloff, H.J., Payne, T.H., Vishwanathan, S.: New results on server problems. SIAM Journal on Discrete Mathematics 4(2), 172–181 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  12. Chrobak, M., Woeginger, G.J., Makino, K., Xu, H.: Caching is hard – even in the fault model. In: de Berg, M., Meyer, U. (eds.) ESA 2010. LNCS, vol. 6346, pp. 195–206. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  13. Cohen, E., Kaplan, H.: Caching documents with variable sizes and fetching costs: An LP-based spproach. Algorithmica 32(3), 459–466 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  14. Dósa, G., He, Y.: Bin packing problems with rejection penalties and their dual problems. Information and Computation 204(5), 795–815 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  15. Epstein, L.: Bin packing with rejection revisited. Algorithmica 56(4), 505–528 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  16. Epstein, L., Levin, A., Woeginger, G.J.: Graph coloring with rejection. Journal of Computer and System Sciences 77(2), 439–447 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  17. Epstein, L., Noga, J., Woeginger, G.J.: On-line scheduling of unit time jobs with rejection: minimizing the total completion time. Operetions Research Letters 30(6), 415–420 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  18. Fiat, A., Karp, R.M., Luby, M., McGeoch, L.A., Sleator, D.D., Young, N.: Competitive paging algorithms. Journal of Algorithms 12, 685–699 (1991)

    Article  MATH  Google Scholar 

  19. Goemans, M.X., Williamson, D.P.: A general approximation technique for constrained forest problems. SIAM Journal on Computing 24(2), 296–317 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  20. Irani, S.: Page replacement with multi-size pages and applications to web caching. Algorithmica 33(3), 384–409 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  21. Karlin, A., Manasse, M., Rudolph, L., Sleator, D.D.: Competitive snoopy caching. Algorithmica 3, 79–119 (1988)

    Article  MathSciNet  MATH  Google Scholar 

  22. Manasse, M.S., McGeoch, L.A., Sleator, D.D.: Competitive algorithms for server problems. Journal of Algorithms 11(2), 208–230 (1990)

    Article  MathSciNet  MATH  Google Scholar 

  23. McGeoch, L.A., Sleator, D.D.: A strongly competitive randomized paging algorithm. Algorithmica 6(6), 816–825 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  24. Nagy-György, J., Imreh, C.: Online scheduling with machine cost and rejection. Discrete Applied Mathematics 155(18), 2546–2554 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  25. Seiden, S.S.: Preemptive multiprocessor scheduling with rejection. Theoretical Computer Science 262(1), 437–458 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  26. Sleator, D.D., Tarjan, R.E.: Amoritzed efficiency of list update and paging rules. Communications of the ACM 28, 202–208 (1985)

    Article  MathSciNet  Google Scholar 

  27. Young, N.E.: The k-server dual and loose competitiveness for paging. Algorithmica 11(6), 525–541 (1994)

    Article  MathSciNet  Google Scholar 

  28. Young, N.E.: On-line file caching. Algorithmica 33(3), 371–383 (2002)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Epstein, L., Imreh, C., Levin, A., Nagy-György, J. (2011). On Variants of File Caching. In: Aceto, L., Henzinger, M., Sgall, J. (eds) Automata, Languages and Programming. ICALP 2011. Lecture Notes in Computer Science, vol 6755. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22006-7_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-22006-7_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-22005-0

  • Online ISBN: 978-3-642-22006-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics