Abstract
Phase-Change Memory (PCM) has the potential to replace DRAM as the primary memory technology due to its non-volatility, scalability, and high energy efficiency. However, the adoption of PCM will require technological solutions to surmount some deficiencies of PCM, such as writes requiring significantly more energy and time than reads. One way to limit the number of writes is by adopting a last-level cache replacement policy that is aware of the asymmetric nature of PCM read/write costs. We first develop a cache replacement algorithm, Asymmetric Landlord (AL), and show that it is theoretically optimal in that it gives the best possible guarantee on relative error. We also propose an algorithm Variable Aging (VA), which is a variation of AL. We have carried out a simulation analysis comparing the algorithms LRU, N-Chance, AL, and VA. For benchmarks that are a mixture of reads and writes, VA is comparable or better than N-Chance, even for the best choice of N, and uses at least 11% less energy than LRU. For read dominated benchmarks, we find that AL and VA are comparable to LRU, while N-Chance (using the N that was best for benchmarks that were a mixture of reads and writes) uses at least 20% more energy.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Lee, B.C., Ipek, E., Mutlu, O., Burger, D.: Architecting phase change memory as a scalable dram alternative. In: 36th International Symposium on Computer Architecture, ISCA, pp. 2–13 (2009)
Li, D., Vetter, J.S., Marin, G., McCurdy, C., Cira, C., Liu, Z., Yu, W.: Identifying opportunities for byte-addressable non-volatile memory in extreme-scale scientific applications. In: 26th IEEE International Parallel and Distributed Processing Symposium, IPDPS, pp. 945–956 (2012)
Zhou, P., Zhao, B., Yang, J., Zhang, Y.: A durable and energy efficient main memory using phase change memory technology. In: 36th International Symposium on Computer Architecture, ISCA, pp. 14–23 (2009)
Qureshi, M.K., Karidis, J.P., Franceschini, M., Srinivasan, V., Lastras, L., Abali, B.: Enhancing lifetime and security of pcm-based main memory with start-gap wear leveling. In: 42nd Annual IEEE/ACM International Symposium on Microarchitecture, MICRO, pp. 14–23 (2009)
Cho, S., Lee, H.: Flip-n-write: a simple deterministic technique to improve pram write performance, energy and endurance. In: 42nd Annual IEEE/ACM International Symposium on Microarchitecture, MICRO, pp. 347–357 (2009)
Ferreira, A.P., Zhou, M., Bock, S., Childers, B.R., Melhem, R.G., Mossé, D.: Increasing pcm main memory lifetime. In: Design, Automation and Test in Europe, DATE, pp. 914–919 (2010)
Chen, S., Gibbons, P.B., Nath, S.: Rethinking database algorithms for phase change memory. In: Fifth Biennial Conference on Innovative Data Systems Research, CIDR, pp. 21–31 (2011)
Ferreira, A.P., Childers, B.R., Melhem, R.G., Mossé, D., Yousif, M.: Using pcm in next-generation embedded space applications. In: IEEE Real-Time and Embedded Technology and Applications Symposium, RTAS, pp. 153–162 (2010)
Qureshi, M.K., Srinivasan, V., Rivers, J.A.: Scalable high performance main memory system using phase-change memory technology. In: 36th International Symposium on Computer Architecture, ISCA, pp. 24–33 (2009)
Hay, A., Strauss, K., Sherwood, T., Loh, G.H., Burger, D.: Preventing pcm banks from seizing too much power. In: 44th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO, pp. 186–195 (2011)
Young, N.E.: On-line file caching. In: Ninth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA, pp. 82–86 (1998)
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, Part I. LNCS, vol. 6346, pp. 195–206. Springer, Heidelberg (2010)
Fiat, A., Karp, R.M., Luby, M., McGeoch, L.A., Sleator, D.D., Young, N.E.: Competitive paging algorithms. J. Algorithms 12(4), 685–699 (1991)
McGeoch, L.A., Sleator, D.D.: A strongly competitive randomized paging algorithm. Algorithmica 6(6), 816–825 (1991)
Bansal, N., Buchbinder, N., Naor, J.: Randomized competitive algorithms for generalized caching. In: 40th Annual ACM Symposium on Theory of Computing, STOC, pp. 235–244 (2008)
Adamaszek, A., Czumaj, A., Englert, M., Räcke, H.: An o(log k)-competitive algorithm for generalized caching. In: Twenty-Third Annual ACM-SIAM Symposium on Discrete Algorithms, SODA, pp. 1681–1689 (2012)
Park, S.Y., Jung, D., Kang, J.U., Kim, J., Lee, J.: Cflru: a replacement algorithm for flash memory. In: International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, CASES, pp. 234–241 (2006)
Sleator, D.D., Tarjan, R.E.: Amortized efficiency of list update rules. In: 16th Annual ACM Symposium on Theory of Computing, STOC, pp. 488–492 (1984)
Joo, Y., Niu, D., Dong, X., Sun, G., Chang, N., Xie, Y.: Energy- and endurance-aware design of phase change memory caches. In: Design, Automation and Test in Europe, DATE, pp. 136–141 (2010)
Magnusson, P.S., Christensson, M., Eskilson, J., Forsgren, D., Hållberg, G., Högberg, J., Larsson, F., Moestedt, A., Werner, B.: Simics: A full system simulation platform. Computer 35, 50–58 (2002)
Henning, J.L.: Spec cpu 2006 benchmark descriptions. SIGARCH Comput. Archit. News 34, 1–17 (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Barcelo, N., Zhou, M., Cole, D., Nugent, M., Pruhs, K. (2012). Energy Efficient Caching for Phase-Change Memory. In: Even, G., Rawitz, D. (eds) Design and Analysis of Algorithms. MedAlg 2012. Lecture Notes in Computer Science, vol 7659. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-34862-4_5
Download citation
DOI: https://doi.org/10.1007/978-3-642-34862-4_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-34861-7
Online ISBN: 978-3-642-34862-4
eBook Packages: Computer ScienceComputer Science (R0)