Advertisement

Performance Issues for Multi-language Java Applications

  • Paul Murray
  • Todd Smith
  • Suresh Srinivas
  • Matthias Jacob
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1800)

Abstract

The Java programming environment is increasingly being used to build large-scale multi-language applications. Whether these applications combine Java with other languages for legacy reasons, to address performance concerns, or to add Java functionality to preexisting server environments, they require correct and efficient native interfaces. This paper examines current native interface implementations, presents performance results, and discusses performance improvements in our IRIX Java Virtual Machine and Just-In-Time Compiler that have sped up native interfacing by significant factors over previous releases.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    J. Gosling, B. Joy, and G. Steele. The Java Language Specification. Addison-Wesley, 1996.Google Scholar
  2. 2.
  3. 3.
    Matt Welsh and David Culler. Jaguar: Enabling Efficient Communication and I/O from Java. In Concurrency: Practice and Experience, Special Issue on Java for High-Performance Applications, December 1999. http://ninja.cs.berkeley.edu/pubs/pubs.html.
  4. 4.
    Glenn Judd, Mark Clement, Quinn Snell, and Vladimir Getov. Design Issues for Efficient Implementation of MPI in Java. In Proceedings of the ACM 1999 Java Grande Conference, June 1999.Google Scholar
  5. 5.
    Sun Microsystems, Inc. Java Native Interface Specification. http://java.sun.com/products/jdk/1.2/docs/guide/jni/index.html.
  6. 6.
    NaturalBridge. BulletTrain™ Optimizing Compiler and Runtime for JVM Bytecodes. http://www.naturalbridge.com/.
  7. 7.
    Tower Technologies. TowerJ3.0: A New Generation Native Java Compiler and Runtime Environment. http://www.towerj.com.
  8. 8.
    SGI JDK 3.1.1 (based on Sun’s JDK 1.1.6). http://www.sgi.com/Products/Evaluation/#jdk_3.1.1.
  9. 9.
    Java2 Software Development Kit v 1.2.1 for SGI IRIX. http://www.sgi.com/developers/devtools/languages/java2.html.
  10. 10.
    Blackdown JDK port of Sun’s Java Developer’s Toolkit to Linux. http://www.blackdown.org/.
  11. 11.
    IBM Developer Kit and Runtime Environment for Linux, Java Technology Edition, Version 1.1.8. http://www.ibm.com/java/jdk/118/linux/index.html.
  12. 12.
    IBM’s Java Technology Presentations. http://www.developer.ibm.com/java/jbdays.html.
  13. 13.
    Chi-Chao Chang and Thorsten von Eicken. Interfacing Java with the Virtual Interface Architecture. In Proceedings of the ACM 1999 Java Grande Conference, June 1999.Google Scholar
  14. 14.
    Dennis Gannon and F. Berg et. al. Java RMI Performance and Object Model Interoperability: Experiments with Java/HPC++. Concurrency: Practice and Experience, 10:941–946, 1998.CrossRefGoogle Scholar
  15. 15.
    Vladimir Getov, Susan Flynn-Hummel, and Sava Mintchev. High-Performance Parallel Programming in Java: Exploiting Native Libraries. In Proceedings of the ACM 1998 Java Grande Conference, June 1998.Google Scholar
  16. 16.
    H. Casanova, J. Dongarra, and D. M. Doolin. Java Access to Numeric Libraries. Concurrency: Practice and Experience, 9:1279–1291, Nov 1997.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Paul Murray
    • 1
  • Todd Smith
    • 1
  • Suresh Srinivas
    • 1
  • Matthias Jacob
    • 2
  1. 1.Silicon Graphics, Inc.Mountain View
  2. 2.Princeton UniversityPrinceton

Personalised recommendations