Advertisement

Reducing Energy Consumption of Data Transfers Using Runtime Data Type Conversion

  • Michael Bromberger
  • Vincent Heuveline
  • Wolfgang Karl
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9637)

Abstract

Reducing the energy consumption of today’s microprocessors, for which Approximate Computing (AC) is a promising candidate, is an important and challenging task. AC comprises approaches to relax the accuracy of computations in order to achieve a trade-off between energy efficiency and an acceptable remaining quality of the results. A high amount of energy is consumed by memory transfers. Therefore, we present an approach in this paper that saves energy by converting data before transferring it to memory. We introduce a static approach that can reduce the energy up to a factor of 4. We evaluate different methods to get the highest possible accuracy for a given data width. Extending this approach by a dynamic selection of different storage data types improves the accuracy for a 2D Fast Fourier Transformation by two orders of magnitude compared to the static approach using 16-bit data types, while still retaining the reduction in energy consumption. First results show that such a conversion unit can be integrated in low power processors with negligible impact on the power consumption.

Keywords

Energy reduction Approximate computing Data type conversion 

Notes

Acknowledgements

The work was mainly performed during a HiPEAC internship at Movidius, Ireland. Special thanks to Fergal Connor and David Moloney. Additionally, this work was also funded by the Klaus Tschira Foundation.

References

  1. 1.
    Alvarez, C., Corbal, J., Valero, M.: Fuzzy memoization for floating-point multimedia applications. IEEE Trans. Comput. 54(7), 922–927 (2005)CrossRefGoogle Scholar
  2. 2.
    Avinash, L., Enz, C.C., Palem, K.V., Piguet, C.: Designing energy-efficient arithmetic operators using inexact computing. J. Low Power Electron. 9(1), 141–153 (2013)CrossRefGoogle Scholar
  3. 3.
    Baek, W., Chilimbi, T.M.: Green: a framework for supporting energy-conscious programming using controlled approximation. In: ACM Sigplan Notices, vol. 45, pp. 198–209. ACM (2010)Google Scholar
  4. 4.
    Borkar, S., Chien, A.A.: The future of microprocessors. Commun. ACM 54(5), 67–77 (2011)CrossRefGoogle Scholar
  5. 5.
    Chippa, V., Chakradhar, S., Roy, K., Raghunathan, A.: Analysis and characterization of inherent application resilience for approximate computing. In: DAC, pp. 1–9, May 2013Google Scholar
  6. 6.
    Citron, D., Feitelson, D.G.: Hardware Memoization of Mathematical and Trigonometric Functions. Hebrew University of Jerusalem, Technical report (2000)Google Scholar
  7. 7.
    Esmaeilzadeh, H., Sampson, A., Ceze, L., Burger, D.: Neural acceleration for general-purpose approximate programs. In: MICRO, pp. 449–460 (2012)Google Scholar
  8. 8.
    Hardkernel.: Odriod-XU. http://odroid.com/dokuwiki/doku.php?id=en: odroid-xu. Accessed 03 May 2015
  9. 9.
    Hennelly, B., Kelly, D., Pandey, N., Monaghan, D.: Zooming algorithms for digital holography. J. Phys: Conf. Ser. 206(1), 012027 (2010)Google Scholar
  10. 10.
    Horowitz, M.: Computing energy problem: and what we can do about it. In: Keynote, International Solid-State Circuits Conference, February 2014. https://www.futurearchs.org/sites/default/files/horowitz-ComputingEnergyISSCC.pdf. Accessed 03 May 2015
  11. 11.
    Liu, S., Pattabiraman, K., Moscibroda, T., Zorn, B.: Flikker: saving DRAM refresh-power through critical data partitioning. In: ASPLOS, March 2011Google Scholar
  12. 12.
    Lucas, J., Alvarez-Mesa, M., Andersch, M., Juurlink, B.: Sparkk: Quality-scalable approximate storage in DRAM. In: The Memory Forum, June 2014Google Scholar
  13. 13.
  14. 14.
    Nelson, J., Sampson, A., Ceze, L.: Dense approximate storage in phase-change memory. In: ASPLOS (2011)Google Scholar
  15. 15.
    Parallela Project: Parallela board. http://www.parallella.org/board/. Accessed 03 May 2015
  16. 16.
    Samadi, M., Lee, J., Jamshidi, D.A., Hormati, A., Mahlke, S.: SAGE: self-tuning approximation for graphics engines. In: MICRO, pp. 13–24 (2013)Google Scholar
  17. 17.
    Sampson, A., Dietl, W., Fortuna, E., Gnanapragasam, D., Ceze, L., Grossman, D.: Enerj: approximate data types for safe and general low-power computation. In: ACM SIGPLAN Notices, vol. 46, pp. 164–174. ACM (2011)Google Scholar
  18. 18.
    Sampson, A., Nelson, J., Strauss, K., Ceze, L.: Approximate Storage in Solid-state Memories. In: Proceedings of the MICRO, MICRO-46, pp. 25–36. ACM, New York (2013)Google Scholar
  19. 19.
    San Miguel, J., Enright Jerger, N.: Load value approximation: approaching the ideal memory access latency. In: WACAS (2014)Google Scholar
  20. 20.
    Sardashti, S., Wood, D.A.: Decoupled compressed cache: exploiting spatial locality for energy-optimized compressed caching. In: MICRO, pp. 62–73 (2013)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Michael Bromberger
    • 1
    • 2
  • Vincent Heuveline
    • 2
  • Wolfgang Karl
    • 1
  1. 1.Karlsruhe Institute of TechnologyKarlsruheGermany
  2. 2.Heidelberg Institute of Theoretical StudiesHeidelbergGermany

Personalised recommendations