Advertisement

Trace-Based Data Cache Leakage Reduction at Link Time

  • Lian Li
  • Jingling Xue
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4186)

Abstract

This paper investigates the benefits of conducting leakage energy optimisations for data caches at link time for embedded applications. We introduce an improved algorithm for identifying and constructing the traces in a binary program and present a trace-based optimisation for reducing leakage energy in data caches. Our experimental results using Mediabench benchmarks show that good leakage energy savings can be achieved at the cost of some small performance and code size penalties. Furthermore, by varying the granularity of optimisation regions, which is a tunable parameter, embedded application programmers can make the tradeoffs between energy savings and these associated costs.

Keywords

Optimisation Region Data Cache Cache Line Leakage Power Dynamic Voltage Scaling 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bala, V., Duesterwald, E., Banerjia, S.: Dynamo: a transparent dynamic optimization system. In: ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation, Vancouver, British Columbia, Canada, pp. 1–12. ACM Press, New York (2000)CrossRefGoogle Scholar
  2. 2.
    Chandrakasan, A., Bowhill, W.J., Fox, F.: Design of High-Performance Microprocessor Circuits. IEEE Press, Los Alamitos (2001)Google Scholar
  3. 3.
    Dehnert, J.C., Grant, B.K., Banning, J.P., Johnson, R., Kistler, T., Klaiber, A., Mattson, J.: The transmeta code morphing software: using speculation, recovery, and adaptive retranslation to address real-life challenges. In: 1st ACM/IEEE International Symposium on Code Generation and Optimization, pp. 15–24. IEEE Computer Society, Los Alamitos (2003)Google Scholar
  4. 4.
    Detlefs, D., Agesen, O.: Inlining of Virtual Methods. In: Guerraoui, R. (ed.) ECOOP 1999. LNCS, vol. 1628, pp. 258–278. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  5. 5.
    Fisher, J.: Trace scheduling: a technique for global microcode compaction. IEEE Transactions on Computers, 478–490 (1981)Google Scholar
  6. 6.
    Flautner, K., Kim, N.S., Martin, S., Blaauw, D., Mudge, T.: Drowsy caches: simple techniques for reducing leakage power. In: 29th annual international symposium on Computer architecture, pp. 148–157. IEEE Computer Society, Los Alamitos (2002)CrossRefGoogle Scholar
  7. 7.
    Gebotys, C.H.: Low energy memory and register allocation using network flow. In: 34th Annual Conference on Design Automation Conference, pp. 435–440. ACM Press, New York (1997)CrossRefGoogle Scholar
  8. 8.
    Hank, R.E., Hwu, W.-M., Rau, B.R.: Region-based compilation: an introduction and motivation. In: 28th ACM/IEEE International Symposium on Microarchitecture, pp. 158–168. IEEE Computer Society Press, Los Alamitos (1995)CrossRefGoogle Scholar
  9. 9.
    Kandemir, M.T., Vijaykrishnan, N., Irwin, M.J., Ye, W.: Influence of compiler optimizations on system power. In: Design Automation Conference, pp. 304–307 (2000)Google Scholar
  10. 10.
    Kim, N.S., Flautner, K., Blaauw, D., Mudge, T.: Drowsy instruction caches: leakage power reduction using dynamic voltage scaling and cache sub-bank prediction. In: Proceedings of the 35th annual ACM/IEEE international symposium on Microarchitecture, pp. 219–230. IEEE Computer Society Press, Los Alamitos (2002)Google Scholar
  11. 11.
    Lee, C., Lee, J.K., Hwang, T., Tsai, S.-C.: Compiler optimization on instruction scheduling for low power. In: 13th International Symposium on System Synthesis, Madrid, Spain, pp. 55–60. ACM Press, New York (2000)Google Scholar
  12. 12.
    Li, L., Xue, J.: A trace-based binary compilation framework for energy-aware computing. In: LCTES 2004: Proceedings of the 2004 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools, pp. 95–106. ACM Press, New York (2004)CrossRefGoogle Scholar
  13. 13.
    Lorenz, M., Wehmeyer, L., Dräger, T.: Energy aware compilation for DSPs with SIMD instructions. In: ACM SIGPLAN 2002 Conference on Languages, Compilers, and Tools for Embedded Systems, pp. 94–101. ACM Press, New York (2002)Google Scholar
  14. 14.
    Mahlke, S.A., Lin, D.C., Chen, W.Y., Hank, R.E., Bringmann, R.A.: Effective compiler support for predicated execution using the hyperblock. In: 25th ACM/IEEE International Symposium on Microarchitecture, pp. 45–54. IEEE Computer Society Press, Los Alamitos (1992)Google Scholar
  15. 15.
    Muth, R.: ALTO: A Platform for Object Code Modification. PhD thesis, The University of Arizona (1999)Google Scholar
  16. 16.
    Saputra, H., Kandemir, M., Vijaykrishnan, N., Irwin, M.J., Hu, J.S., Hsu, C.-H., Kremer, U.: Energy-conscious compilation based on voltage scaling. In: ACM SIGPLAN 2002 Conference on Languages, Compilers, and Tools for Embedded Systems, Berlin, Germany, pp. 2–11. ACM Press, New York (2002)Google Scholar
  17. 17.
    Ung, D., Cifuentes, C.: Machine-adaptable dynamic binary translation. In: ACM SIGPLAN Workshop on Dynamic and Adaptive Compilation and Optimization, pp. 41–51. ACM Press, New York (2000)CrossRefGoogle Scholar
  18. 18.
    Xie, F., Martonosi, M., Malik, S.: Compile-time dynamic voltage scaling settings: opportunities and limits. In: ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation, pp. 49–62. ACM Press, New York (2003)CrossRefGoogle Scholar
  19. 19.
    Zhang, W.: Compiler-directed data cache leakage reduction. In: IEEE Computer Society Annual Symposium on VLSI Emerging Trends in VLSI Systems Design. IEEE Computer Society, Los Alamitos (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Lian Li
    • 1
    • 2
  • Jingling Xue
    • 1
    • 2
  1. 1.Programming Languages and Compilers Group, School of Computer Science and EngineeringUniversity of New South WalesSydneyAustralia
  2. 2.National ICTAustralia

Personalised recommendations