[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.5555/776261.776269acmconferencesArticle/Chapter ViewAbstractPublication PagescgoConference Proceedingsconference-collections
Article

Coupling on-line and off-line profile information to improve program performance

Published: 23 March 2003 Publication History

Abstract

In this paper, we describe a novel execution environment for Java programs that substantially improves execution performance by incorporating both on-line and off-line profile information to guide dynamic optimization. By using both types of profile collection techniques, we are able to exploit the strengths of each constituent approach: profile accuracy and low overhead.Such coupling also reduces the negative impact of these approaches when each is used in isolation. On-line profiling introduces overhead for dynamic instrumentation, measurement, and decision making. Off-line profile information can be inaccurate when program inputs for execution and optimization differ from those used for profiling. To combat these drawbacks and to achieve the benefits from both online and off-line profiling, we developed a dynamic compilation system (based on JikesRVM) that makes use of both. As a result, we are able improve Java program performance by 9% on average, for the programs studied.

References

[1]
B. Alpern, C. R. Attanasio, J. J. Barton, M. G. Burke, P.Cheng, J.-D. Choi, A. Cocchi, S. J. Fink, D. Grove, M. Hind, S. F. Hummel, D. Lieber, V. Litvinov, M. F. Mergen, T. Ngo, J. R. Russell, V. Sarkar, M. J. Serrano, J. C. Shepherd, S. E. Smith, V. C. Sreedhar, H. Srinivasan, and J. Whaley. The Jalapeño Virtual Machine. IBM Systems Journal, 39(1):211--221, 2000.
[2]
M. Arnold, S. Fink, D. Grove, M. Hind, and P. Sweeney. Adaptive optimization in the jalapeño jvm. In ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA), Oct. 2000.
[3]
M. Arnold and B. Ryder. A Framework for Reducing the Cost of Instrumented Code. In ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), June 2001.
[4]
A. Azevedo, A. Nicolau, and J. Hummel. Java Annotation-Aware Just-ln-Time Compilation System. In ACM Java Grande Conference, pages 142--151, June 1999.
[5]
M. Burke, J. Choi, S. Fink, D. Grove, M. Hind, V. Sarkar, M. Serrano, V. Shreedhar, H. Srinivasan, and J. Whaley. The Jalapeño Dynamic Optimizing Compiler for Java. In ACM Java Grande Conference, pages 129--141, June 1999.
[6]
M. Cierniak, G. Lueh, and J. Stichnoth. Practicing JUDO: Java Under Dynamic Optimizations. In Proceedings of the ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation, pages 13--26, June 2000.
[7]
S. M. Inc. The Java Hotspot Virtual Machine White Paper. http://java.sun.com/products/hotspot/docs/whitepaper/Java_HotSpot_WP_Final_%4_30_01.html.
[8]
J. Jones and S. Kamin. Annotating Java Class Files with Virtual Registers for Performance. Journal of Concurrency: Practice and Experience, 12(6):389--406, May 2000.
[9]
C. Krintz and B. Calder. Using Annotation to Reduce Dynamic Optimization Time. In Proceedings of the ACM SIGPLAN 2001 Conference on Programming Language Design and Implementation, pages 156--167, June 2001.
[10]
C. Krintz, B. Calder, and U. Hözle. Reducing Transfer Delay Using Java Class File Splitting and Prefetching. In ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA), pages 276--291, Nov. 1999.
[11]
C. Krintz, B. Calder, H. Lee, and B. Zorn. Overlapping Execution with Transfer Using Non-Strict Execution for Mobile Programs. In Eigth International Conference on Architectural Support for Programming Languages and Operating Systems, pages 159--169, Oct. 1998.
[12]
T. Lindholm and F. Yellin. The Java Virtual Machine Specification. Addison-Wesley, 1997.
[13]
Open Runtime Platform (orp) from Intel Corporation. http://intel.com/research/mrl/orp.
[14]
P. Pominville, F. Qian, R. Vallee-Rai, L. Hendren, and C. Verbrugge. A Framework for Optimizing Java Using Attributes. In Proceedings of IBM Centre for Advanced Studies Conference (CASCON), pages 152--168, 2000. http://www.sable.mcgill.ca/publications.
[15]
SpecJVM'98 Benchmarks. http://www.spec.org/osg/jvm98.
[16]
T. Suganuma, T. Ogasawara, M. Takeuchi, T. Yasue, M. Kawahito, K. Ishizaki, H. Komatsu, and T. Nakatani. Overview of the IBM Java Just-in-Time Compiler. IBM Systems Journal, 39(1):175--193, 2000.

Cited By

View all
  • (2021)HHVM jump-startProceedings of the 2021 IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO51591.2021.9370314(340-350)Online publication date: 27-Feb-2021
  • (2019)Crystal GazerProceedings of the ACM on Measurement and Analysis of Computing Systems10.1145/3322205.33110803:1(1-27)Online publication date: 26-Mar-2019
  • (2017)MicroJITProceedings of the 27th Annual International Conference on Computer Science and Software Engineering10.5555/3172795.3172812(140-150)Online publication date: 6-Nov-2017
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
CGO '03: Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
March 2003
349 pages
ISBN:076951913X

Sponsors

Publisher

IEEE Computer Society

United States

Publication History

Published: 23 March 2003

Check for updates

Qualifiers

  • Article

Conference

CGO03
Sponsor:

Acceptance Rates

Overall Acceptance Rate 312 of 1,061 submissions, 29%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2021)HHVM jump-startProceedings of the 2021 IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO51591.2021.9370314(340-350)Online publication date: 27-Feb-2021
  • (2019)Crystal GazerProceedings of the ACM on Measurement and Analysis of Computing Systems10.1145/3322205.33110803:1(1-27)Online publication date: 26-Mar-2019
  • (2017)MicroJITProceedings of the 27th Annual International Conference on Computer Science and Software Engineering10.5555/3172795.3172812(140-150)Online publication date: 6-Nov-2017
  • (2017)Integrating Profile Caching into the HotSpot Multi-Tier Compilation SystemProceedings of the 14th International Conference on Managed Languages and Runtimes10.1145/3132190.3132210(105-118)Online publication date: 27-Sep-2017
  • (2015)Server-side type profiling for optimizing client-side JavaScript enginesACM SIGPLAN Notices10.1145/2936313.281671951:2(140-153)Online publication date: 21-Oct-2015
  • (2015)Server-side type profiling for optimizing client-side JavaScript enginesProceedings of the 11th Symposium on Dynamic Languages10.1145/2816707.2816719(140-153)Online publication date: 21-Oct-2015
  • (2013)Exploring single and multilevel JIT compilation policy for modern machines 1ACM Transactions on Architecture and Code Optimization10.1145/2541228.254122910:4(1-29)Online publication date: 1-Dec-2013
  • (2011)JIT compilation policy for modern machinesACM SIGPLAN Notices10.1145/2076021.204812646:10(773-788)Online publication date: 22-Oct-2011
  • (2011)JIT compilation policy for modern machinesProceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications10.1145/2048066.2048126(773-788)Online publication date: 22-Oct-2011
  • (2011)A method-based ahead-of-time compiler for android applicationsProceedings of the 14th international conference on Compilers, architectures and synthesis for embedded systems10.1145/2038698.2038704(15-24)Online publication date: 9-Oct-2011
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media