skip to main content
research-article

Compiler-assisted preferred caching for embedded systems with STT-RAM based hybrid cache

Published:12 June 2012Publication History
Skip Abstract Section

Abstract

As technology scales down, energy consumption is becoming a big problem for traditional SRAM-based cache hierarchies. The emerging Spin-Torque Transfer RAM (STT-RAM) is a promising replacement for large on-chip cache due to its ultra low leakage power and high storage density. However, write operations on STT-RAM suffer from considerably higher energy consumption and longer latency than SRAM. Hybrid cache consisting of both SRAM and STT-RAM has been proposed recently for both performance and energy efficiency. Most management strategies for hybrid caches employ migration-based techniques to dynamically move write-intensive data from STT-RAM to SRAM. These techniques lead to extra overheads. In this paper, we propose a compiler-assisted approach, preferred caching, to significantly reduce the migration overhead by giving migration-intensive memory blocks the preference for the SRAM part of the hybrid cache. Furthermore, a data assignment technique is proposed to improve the efficiency of preferred caching. The reduction of migration overhead can in turn improve the performance and energy efficiency of STT-RAM based hybrid cache. The experimental results show that, with the proposed techniques, on average, the number of migrations is reduced by 21.3%, the total latency is reduced by 8.0% and the total dynamic energy is reduced by 10.8%.

References

  1. http://www.arm.com/products/processors/cortex-r/index.php.Google ScholarGoogle Scholar
  2. http://cache.freescale.com/files/32bit/doc/ref_manual/e300coreRM.pdf.Google ScholarGoogle Scholar
  3. http://www.samsung.com/global/business/semiconductor/products/fusionmemory/Products_NcPRAM.html.Google ScholarGoogle Scholar
  4. http://www2.renesas.com/micro/en/product/vr/legacy.html.Google ScholarGoogle Scholar
  5. B. Calder, C. Krintz, S. John, and T. Austin. Cache-conscious data placement. In Proceedings of the eighth international conference on Architectural support for programming languages and operating systems, ASPLOS-VIII, pages 139--149, New York, NY, USA, 1998. ACM. ISBN 1-58113-107-0. doi: http://doi.acm.org/10.1145/291069.291036. URL http://doi.acm.org/10.1145/291069.291036. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. X. Dong, X. Wu, G. Sun, Y. Xie, H. Li, and Y. Chen. Circuit and microarchitecture evaluation of 3d stacking magnetic ram (mram) as a universal memory replacement. In Proceedings of the 45th annual Design Automation Conference, DAC '08, pages 554--559, New York, NY, USA, 2008. ACM. ISBN 978-1-60558-115-6. doi: http://doi.acm.org/10.1145/1391469.1391610. URL http://doi.acm.org/10.1145/1391469.1391610. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. M. Guthaus, J. Ringenberg, D. Ernst, T. Austin, T. Mudge, and R. Brown. Mibench: A free, commercially representative embedded benchmark suite. In Workload Characterization, 2001. WWC-4. 2001 IEEE International Workshop on, pages 3--14, dec. 2001. doi: 10.1109/WWC.2001.990739. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. J. Hu, C. Xue, Q. Zhuge, W.-C. Tseng, and E.-M. Sha. Towards energy efficient hybrid on-chip scratch pad memory with non-volatile memory. In Design, Automation Test in Europe Conference Exhibition (DATE), 2011, pages 1--6, march 2011.Google ScholarGoogle Scholar
  9. A. Jadidi, M. Arjomand, and H. Sarbazi-Azad. High-endurance and performance-efficient design of hybrid cache architectures through adaptive line replacement. In Proceedings of the 17th IEEE/ACM international symposium on Low-power electronics and design, ISLPED '11, pages 79--84, Piscataway, NJ, USA, 2011. IEEE Press. ISBN 978-1-61284-660-6. URL http://dl.acm.org/citation.cfm?id=2016802.2016827. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. C. Lattner and V. Adve. Llvm: A compilation framework for lifelong program analysis & transformation. In Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization, CGO '04, pages 75--, Washington, DC, USA, 2004. IEEE Computer Society. ISBN 0-7695-2102-9. URL http://dl.acm.org/citation.cfm?id=977395.977673. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. B. C. Lee, E. Ipek, O. Mutlu, and D. Burger. Architecting phase change memory as a scalable dram alternative. In Proceedings of the 36th annual international symposium on Computer architecture, ISCA '09, pages 2--13, New York, NY, USA, 2009. ACM. ISBN 978-1-60558-526-0. doi: http://doi.acm.org/10.1145/1555754.1555758. URL http://doi.acm.org/10.1145/1555754.1555758. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. Li, C. Xue, and Y. Xu. Stt-ram based energy-efficiency hybrid cache for cmps. In VLSI and System-on-Chip (VLSI-SoC), 2011 IEEE/IFIP 19th International Conference on, pages 31--36, oct. 2011. doi: 10.1109/VLSISoC.2011.6081626.Google ScholarGoogle ScholarCross RefCross Ref
  13. Y. Li, A. Abousamra, R. Melhem, and A. K. Jones. Compiler-assisted data distribution for chip multiprocessors. In Proceedings of the 19th international conference on Parallel architectures and compilation techniques, PACT '10, pages 501--512, New York, NY, USA, 2010. ACM. ISBN 978-1-4503-0178-7. doi: http://doi.acm.org/10.1145/1854273.1854335. URL http://doi.acm.org/10.1145/1854273.1854335. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. T. Liu, Y. Zhao, C. Xue, and M. Li. Power-aware variable partitioning for dsps with hybrid pram and dram main memory. In Design Automation Conference (DAC), 2011 48th ACM/EDAC/IEEE, pages 405--410, june 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C.-K. Luk, R. Cohn, R. Muth, H. Patil, A. Klauser, G. Lowney, S. Wallace, V. J. Reddi, and K. Hazelwood. Pin: building customized program analysis tools with dynamic instrumentation. In Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation, PLDI '05, pages 190--200, New York, NY, USA, 2005. ACM. ISBN 1-59593-056-6. doi: 10.1145/1065010.1065034. URL http://doi.acm.org/10.1145/1065010.1065034. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. N. Muralimanohar, R. Balasubramonian, and N. Jouppi. Optimizing nuca organizations and wiring alternatives for large caches with cacti 6.0. In Proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 40, pages 3--14, Washington, DC, USA, 2007. IEEE Computer Society. ISBN 0-7695-3047-8. doi: http://dx.doi.org/10.1109/MICRO.2007.30. URL http://dx.doi.org/10.1109/MICRO.2007.30. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. E. Petrank and D. Rawitz. The hardness of cache conscious data placement. Nordic J. of Computing, 12:275--307, June 2005. ISSN 1236--6064. URL http://dl.acm.org/citation.cfm?id=1145884.1145889. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. M. K. Qureshi, V. Srinivasan, and J. A. Rivers. Scalable high performance main memory system using phase-change memory technology. In Proceedings of the 36th annual international symposium on Computer architecture, ISCA '09, pages 24--33, New York, NY, USA, 2009. ACM. ISBN 978-1-60558-526-0. doi: http://doi.acm.org/10.1145/1555754.1555760. URL http://doi.acm.org/10.1145/1555754.1555760. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. S. Sarkar and D. M. Tullsen. Compiler techniques for reducing data cache miss rate on a multithreaded architecture. In Proceedings of the 3rd international conference on High performance embedded architectures and compilers, HiPEAC'08, pages 353--368, Berlin, Heidelberg, 2008. Springer-Verlag. ISBN 3-540-77559-5, 978-3-540-77559-1. URL http://dl.acm.org/citation.cfm?id=1786054.1786087. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. G. Sun, X. Dong, Y. Xie, J. Li, and Y. Chen. A novel architecture of the 3d stacked mram l2 cache for cmps. In High Performance Computer Architecture, 2009. HPCA 2009. IEEE 15th International Symposium on, pages 239--249, feb. 2009. doi: 10.1109/HPCA.2009.4798259.Google ScholarGoogle ScholarCross RefCross Ref
  21. X. Wu, J. Li, L. Zhang, E. Speight, R. Rajamony, and Y. Xie. Hybrid cache architecture with disparate memory technologies. In Proceedings of the 36th annual international symposium on Computer architecture, ISCA '09, pages 34--45, New York, NY, USA, 2009. ACM. ISBN 978-1-60558-526-0. doi: http://doi.acm.org/10.1145/1555754.1555761. URL http://doi.acm.org/10.1145/1555754.1555761. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Y. Wu and J. R. Larus. Static branch frequency and program profile analysis. In Proceedings of the 27th annual international symposium on Microarchitecture, MICRO 27, pages 1--11, New York, NY, USA, 1994. ACM. ISBN 0-89791-707-3. doi: http://doi.acm.org/10.1145/192724.192725. URL http://doi.acm.org/10.1145/192724.192725. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. W. Zhang and T. Li. Exploring phase change memory and 3d die-stacking for power/thermal friendly, fast and durable memory architectures. In Proceedings of the 2009 18th International Conference on Parallel Architectures and Compilation Techniques, pages 101--112, Washington, DC, USA, 2009. IEEE Computer Society. ISBN 978-0-7695-3771-9. doi: 10.1109/PACT.2009.30. URL http://dl.acm.org/citation.cfm?id=1636712.1637751. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. P. Zhou, B. Zhao, J. Yang, and Y. Zhang. A durable and energy efficient main memory using phase change memory technology. In Proceedings of the 36th annual international symposium on Computer architecture, ISCA '09, pages 14--23, New York, NY, USA, 2009. ACM. ISBN 978-1-60558-526-0. doi: http://doi.acm.org/10.1145/1555754.1555759. URL http://doi.acm.org/10.1145/1555754.1555759. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Compiler-assisted preferred caching for embedded systems with STT-RAM based hybrid cache

      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

      • Published in

        cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 47, Issue 5
        LCTES '12
        MAY 2012
        152 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/2345141
        Issue’s Table of Contents
        • cover image ACM Conferences
          LCTES '12: Proceedings of the 13th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools and Theory for Embedded Systems
          June 2012
          153 pages
          ISBN:9781450312127
          DOI:10.1145/2248418

        Copyright © 2012 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 12 June 2012

        Check for updates

        Qualifiers

        • research-article

      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!