skip to main content
10.1145/2482767.2482786acmconferencesArticle/Chapter ViewAbstractPublication PagescfConference Proceedingsconference-collections
research-article

Performance analysis and predictability of the software layer in dynamic binary translators/optimizers

Published:14 May 2013Publication History

ABSTRACT

Dynamic Binary Translators and Optimizers (DBTOs) have been established as a common architecture during the last years. They are used in many different systems, such as emulation, instrumentation tools and innovative HW/SW co-designed microarchitectures. Although many researchers worked on characterizing and reducing the emulation overhead, there are no published results that explain how the DBTO behaves from the microarchitectural prospective and how its behavior may be predicted based on high-level, guest application statistics. Such results are important for guiding design decisions and system optimization.

In this paper we study the DBTO as an independent application by dividing its functionality into modules. We show that the behavior of the DBTO is not constant at all. The contribution of the different modules in the total overhead, the overhead itself, the microarchitectural interaction with the emulated application and the microarchitectural profile of the different modules changes significantly based on the emulated application. This result comes in contrast to numerous papers that consider this behavior constant and exclude the DBTO from the simulation. Throughout this paper we detail this variance, we quantify it and we explain the reasons behind it.

The insights presented in this work can be exploited towards the design of more efficient DBTOs and their early performance evaluation.

References

  1. MediaBench II Benchmark (http://euler.slu.edu/fritts/mediabench/).Google ScholarGoogle Scholar
  2. Quick EMUlation tool (http://www.qemu.org/).Google ScholarGoogle Scholar
  3. Rosetta (http://www.apple.com/asia/rosetta/).Google ScholarGoogle Scholar
  4. Standard Performance Evaluation Corporation. SPEC CPU2006 Benchmarks. (http://www.spec.org/cpu2006/).Google ScholarGoogle Scholar
  5. A. Aho and J. Ullman. Principles of Compiler Design. Addison-Wesley, 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. E. Altman et al. BOA: The Architecture of a Binary Translation Processor. IBM Research Report RC, 2000.Google ScholarGoogle Scholar
  7. M. Annavaram et al. The Fuzzy Correlation between Code and Performance Predictability. In Proceedings of the International Symposium on Microarchitecture (MICRO), 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. V. Bala, E. Duesterwald, and S. Banerjia. Dynamo: A Transparent Dynamic Optimization System. In Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation (PLDI), 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. M. Blackburn et al. Wake Up and Smell the Coffee: Evaluation Methodology for the 21st Century. Commun. ACM, 51(8):83--89, August 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. E. Borin and Y. Wu. Characterization of DBT overhead. In Proceedings of the IEEE International Symposium on Workload Characterization (IISWC), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. L. Breiman, J. H. Freidman, R. O. Olshen, and C. J. Stone. Classification and Regression Trees. Kluwer Publishers, 1984.Google ScholarGoogle Scholar
  12. D. Bruening, T. Garnett, and S. Amarasinghe. An Infrastructure for Adaptive Dynamic Optimizations. In Proceedings of the International Symposium on Code Generation and Optimization (CGO), 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. A. Chernoff and R. Hookway. DIGITAL FX!32 running 32-bit applications on alpha NT. In Proceedings of the USENIX Windows NT Workshop, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. D. Daly and H. W. Cain. Cache Restoration for Highly Partitioned Virtualized Systems. In Proceedings of High Performance Computer Architecture (HPCA), 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. J. C. Dehnert et al. The Transmeta Code Morphing Software: Using Speculation, Recovery, and Adaptive Retranslation to Address Real-Life Challenges. In Proceedings of the International Symposium on Code generation and optimization (CGO), 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. K. Ebcioglu and E. R. Altman. DAISY: Dynamic Compilation for 100% Architectural Compatibility. SIGARCH Comput. Archit. News, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. A. Georges, L. Eeckhout, and D. Buytaert. Java Performance Evaluation through Rigorous Replay Compilation. SIGPLAN Not., October 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. A. Guha, K. Hazelwood, and M. L. Soffa. Balancing Memory and Performance through Selective Flushing of Software Code Caches. In Proceedings of the International Symposium on Compilers Architectures and Synthesis for Embedded Systems (CASES), 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. J. D. Hiser and D. Williams et al. Evaluating Indirect Branch Handling Mechanisms in Software Dynamic Translation Systems. In Proceedings of the International Symposium on Code Generation and Optimization (CGO), 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. A. Klaiber. The Technology Behind the Crusoe Processors. White paper, January 2000.Google ScholarGoogle Scholar
  21. K. Krewell. Transmeta Gets More Efficeon. Micro-processor Report, 2003.Google ScholarGoogle Scholar
  22. T. Lindholm and F. Yellin. Java Virtual Machine Specification. Addison-Wesley, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. C. Luk et al. Pin: Building Customized Program Analysis Tools with Dynamic Instrumentation. In Proceedings of the Programming language design and implementation (PLDI), 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. S. Muchnick. Advanced Compiler Design and Implementation. Morgan Kaufmann, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. IBM Microelectronics Division Research Triangle Park NC. The PowerPC 440 Core. White Paper, 1999.Google ScholarGoogle Scholar
  26. N. Nethercote. Dynamic Binary Analysis and Instrumentation. PhD Dissertation, 1999.Google ScholarGoogle Scholar
  27. D. Pavlou, A. Brankovic, R. Kumar, M. Gregori, K. Stavrou, E. Gibert, and A. Gonzalez. DARCO: Infrastructure for Research on HW/SW co-designed Virtual Machines. In Proceedings of the 4th Workshop on Architectural and Microarchitectural Support for Binary Translation, held in conjuction with ISCA-38 (AMAS-BT), 2011.Google ScholarGoogle Scholar
  28. D. Pavlou, A. Brankovic, R. Kumar, K. Stavrou, E. Gibert, and A. Gonzalez. Quantitative Characterization of the Software Layer of a HW/SW Co-Designed Processor. Technical report, 2012.Google ScholarGoogle Scholar
  29. D. Pavlou, E. Gibert, F. Latorre, and A. Gonzalez. DDGacc: Boosting Dynamic DDG-based Binary Optimizations through Specialized Hardware Support. In Proceedings of the ACM SIGPLAN/SIGOPS conference on Virtual Execution Environments (VEE), 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. K. Scott, N. Kumar, S. Velusamy, B. Childers, J. Davison, and M. Soffa. Retargetable and Reconfigurable Software Dynamic Translation. In Proceedings of the International Symposium on Code Generation and Optimization (CGO), 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. S. Sridhar, J. S. Shapiro, and P. P. Bungale. HDTrans: A Low-Overhead Dynamic Translator. SIGARCH Comput. Archit. News, March 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. P. F. Sweeney et al. Using hardware performance monitors to understand the behavior of Java applications. In Proceedings of the conference on Virtual Machine Research And Technology Symposium - Volume 3, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. G. R. Uh, R. Cohn, B. Yadavalli, R. Peri, and R. Ayyagari. Analyzing Dynamic Binary Instrumentation Overhead. In Proceedings of the Workshop on Binary Instrumentation and Application, 2006.Google ScholarGoogle Scholar
  34. T. Y. Yeh, P. Faloutsos, S. J. Patel, and G. Reinmann. ParallAX: An Architecture for Real-Time Physics. In Proceedings of the International Symposium on Computer Architecture (ISCA), 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Performance analysis and predictability of the software layer in dynamic binary translators/optimizers

    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
    • Published in

      cover image ACM Conferences
      CF '13: Proceedings of the ACM International Conference on Computing Frontiers
      May 2013
      302 pages
      ISBN:9781450320535
      DOI:10.1145/2482767

      Copyright © 2013 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 14 May 2013

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      CF '13 Paper Acceptance Rate26of49submissions,53%Overall Acceptance Rate240of680submissions,35%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader