skip to main content
research-article

A lifetime aware buffer assignment method for streaming applications on DRAM/PRAM hybrid memory

Published:21 March 2013Publication History
Skip Abstract Section

Abstract

This article proposes a lifetime aware buffer assignment method for streaming applications like multimedia specified in a synchronous dataflow (SDF) graph on a DRAM/PRAM hybrid memory in which the endurance of PRAM is limited. We determine whether buffers are assigned to DRAM or PRAM to minimize the writing frequency of PRAM. To solve the problems, we formulate them using Answer Set Programming. Experimental results show that the proposed approach increases the PRAM lifetime by 63% compared with no optimization, and shows the tradeoff between PRAM and DRAM size to guarantee a lifetime constraint.

References

  1. Bhattacharyya, S. S. and Lee, E. A. 1994. Memory management for dataflow programming of multi rate signal processing algorithms. IEEE Trans. Signal Process. 42, 5. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bhattacharyya, S. S., Murthy, P. K., and Lee, E. A. 1999. Synthesis of embedded software from synchronous dataflow specifications. VLSI Signal Process. 21, 151--166. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Chang, L. 2007. On efficient wear leveling for large-scale flash-memory storage systems. In Proceedings of SAC'07. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Chang, Y., Hsieh, J., and Kuo, T. 2007. Endurance enhancement of flash-memory storage systems: An efficient static wear leveling design. In Proceedings of DAC 07. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Che, W. and Chatha, K. 2011a. Compilation of stream programs onto scratch- pad memory based embedded multicore processors through retiming. In Proceedings of the Design Automation Conference. 122--127. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Che, W. and Chatha, K. 2011b. Scheduling of stream programs onto SPM enhanced processors with code overlay. In Proceedings of IEEE/ACM Symposium on Embedded Systems and Real-time Multimedia.Google ScholarGoogle Scholar
  7. Cho, S. and Lee, H. 2009. Flip-N-Write: A simple deterministic technique to improve PRAM write performance, energy and endurance. In Proceedings of MICRO 09. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Dhiman, G., Ayoub, R., and Rosing, T. 2009. PDRAM: A hybrid PRAM and DRAM main memory system. In Proceedings of DAC 09. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T., and Schneider, M. 2011. Potassco: The Potsdam answer set solving collection. AI Com. 24, 2, 105--124. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Hu, J., Xue, C. J., Tseng, W., He, Y., Qiu, M., and Sha, E. H.-M. 2010. Reducing write activities on non-volatile memories in embedded CMPs via data migration and recomputation. In Proceedings of DAC 10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Kandemir, M., Chen, G., Li, F., and Demirkiran, I. 2005. Using data replication to reduce communication energy on chip multiprocessors. In Proceedings of ASP-DAC 05. 769--772. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Ko, M., Murthy, P. K., and Bhattacharyya, S. S. 2007. Beyond single appearance schedules: efficient DSP software synthesis using recursive procedure calls. ACM Trans. Embed. Computer Syst. 6, 2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Kryder, M. H., and Kim, C. S. 2009. After hard drives-what comes next?. IEEE Trans. Magnet. 45, 10, 3406--3413.Google ScholarGoogle ScholarCross RefCross Ref
  14. Lee, E. A. 1987. Static scheduling of synchronous data flow programs for digital signal processing. IEEE Trans. Computers. 14, 590--35. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Lee, K. and Orailoglu, A. 2008. Application specific non-volatile primary memory for embedded systems. In Proceedings of CODES+ISSS 08. 31--36. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Mangalagiri, P., Yanamandra, A., Xie, Y., Vijaykrishnan, N., Irwin, M. J., Sarpatwari, K., and Karim, O. O. A. 2008. A low-power phase change memory based hybrid cache architecture. In Proceedings of GLSVLSI 08. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Oh, H., Dutt, N., and Ha, S. 2006. Memory optimal single appearance schedule with dynamic loop count for synchronous dataflow graphs. In Proceedings of Asia and South Pacific Design Automation Conference. 24--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Oh, H. and Ha, S. 2004. Fractional rate dataflow model for efficient code synthesis. J. VLSI Signal Process. 37, 41--51.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Qureshi, M. K., Srinivasan, V., and Rivers, J. A. 2009. Scalable high performance main memory system using phase-change memory technology. In Proceedings of ISCA 09. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Sung, W. and Ha, S. 2000. Memory efficient software synthesis using mixed coding style from dataflow graph. IEEE Trans. VLSI Syst. 8, 522--526. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Xue, C. J., Zhang, Y., Chen, Y., Sun, G., Yang, J. J., and Li, H. 2011. Emerging non-volatile memories: opportunities and challenges. In Proceedings of CODES+ISSS 11. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A lifetime aware buffer assignment method for streaming applications on DRAM/PRAM hybrid memory

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!