Optimizing Java-Specific Overheads: Java at the Speed of C? | SpringerLink
Skip to main content

Optimizing Java-Specific Overheads: Java at the Speed of C?

  • Conference paper
  • First Online:
High-Performance Computing and Networking (HPCN-Europe 2001)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2110))

Included in the following conference series:

Abstract

Manta is a highly optimizing compiler that translates Java source code to binary executables. In this paper, we discuss four Java-specific code optimizations and their impact on application performance. We assess the execution time of three application kernels, comparing Manta with the IBM JIT 1.3.0, and with C-versions of the codes, compiled with GCC. With all three kernels, Manta generates faster code than the IBM JIT. With two kernels, the Manta versions are even faster than their C counterparts.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
¥17,985 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
JPY 3498
Price includes VAT (Japan)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
JPY 11439
Price includes VAT (Japan)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
JPY 14299
Price includes VAT (Japan)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. G. Antoniu, L. Bougé, P. Hatcher, M. MacBeth, K. McGuigan, and R. Namyst. The Hyperion system: Compiling multithreaded Java bytecode for distributed execution. Parallel Computing, 2001. To appear.

    Google Scholar 

  2. B. Blanchet. Escape Analysis for Object Oriented Languages. Application to Java. In Proc. OOPSLA’99, pages 20–34, Denver, CO, Nov. 1999.

    Google Scholar 

  3. R. Bodik, R. Gupta, and V. Sarkar. ABCD: Eliminating Array Bounds Checks on Demand. In Proc. ACM SIGPLAN 2000 Conference on Programming Language Design and Implementation (PLDI 2000), pages 321–333, Vancouver, BC, June 2000.

    Google Scholar 

  4. M. Burke, J.-D. Choi, S. Fink, D. Grove, M. Hind, V. Sarkar, M. Serrano, V.C. Sreedhar, H. Srinivasan, and J. Whaley. The Jalape~no Dynamic Optimizing Compiler for Java. In ACM 1999 Java Grande Conference, pages 129–141, San Francisco, CA, June 1999.

    Google Scholar 

  5. J. Choi, M. Gupta, M. Serrano, V. Sreedhar, and S. Midkiff. Escape Analysis for Java. In Proc. OOPSLA’99, pages 1–19, Denver, CO, Nov. 1999.

    Google Scholar 

  6. J. Dolby. Automatic inline allocation of objects. In Proc. 1997 ACM SIGPLAN Conf. on Programming Language Design and Implementation, pages 7–17, June 1997.

    Google Scholar 

  7. R. Fitzgerald, T. Knoblock, E. Ruf, B. Steensgard, and D. Tarditi. Marmot: An optimizing compiler for Java. Technical report 33, Microsoft Research, 1999.

    Google Scholar 

  8. J. Maassen, T. Kielmann, and H.E. Bal. Parallel Application Experience with Replicated Method Invocation. Concurrency and Computation: Practice and Experience, 2001.

    Google Scholar 

  9. J. Maassen, R. van Nieuwpoort, R. Veldema, H.E. Bal, and A. Plaat. An Efficient Implementation of Java’s Remote Method Invocation. In Seventh ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP’99), pages 173–182, Atlanta, GA, May 1999.

    Google Scholar 

  10. S. Muchnick. Advanced Compiler Design and Implementation. Morgan Kaufmann Publishers, 1997.

    Google Scholar 

  11. M. Serrano, R. Bordawekar, S. Midkiff, and M. Gupta. Quicksilver: A Quasi-Static Compiler for Java. In Proc. OOPSLA’00, pages 66–82, Minneapolis, MN, Oct. 2000.

    Google Scholar 

  12. V. Seshadri. IBM High Performance compiler for Java. AIXpert Magazine, Sept. 1997. http://www.developer.ibm.com/library/aixpert.

  13. R.V. van Nieuwpoort, T. Kielmann, and H.E. Bal. Satin: Efficient Parallel Divide-and-Conquer in Java. In Proc. Euro-PAR 2000, number 1900 in Lecture Notes in Computer Science, pages 690–699, Munich, Germany, Aug. 2000. Springer.

    Chapter  Google Scholar 

  14. B.-S. Yang, S.-M. Moon, S. Park, J. Lee, S. Lee, J. Park, Y.C. Chung, S. Kim, K. Ebcioğlu, and E. Altman. LaTTe: A Java VM Just-in-Time Compiler with Fast and Efficient Register Allocation. In Proc. Int. Conf. on Parallel Architectures and Compilation Techniques (PACT’99), 1999.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Veldema, R.S., Kielmann, T., Bal, H.E. (2001). Optimizing Java-Specific Overheads: Java at the Speed of C?. In: Hertzberger, B., Hoekstra, A., Williams, R. (eds) High-Performance Computing and Networking. HPCN-Europe 2001. Lecture Notes in Computer Science, vol 2110. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48228-8_78

Download citation

  • DOI: https://doi.org/10.1007/3-540-48228-8_78

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42293-8

  • Online ISBN: 978-3-540-48228-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics