JIT’99 pp 48-57 | Cite as

A Closer Look at Inter-library Dependencies in Java-Software

  • Michael Thies
Conference paper
Part of the Informatik aktuell book series (INFORMAT)

Zusammenfassung

Optimizing Just-in-Time compilation of Java programs depends on information gained from state-of-the-art program analysis techniques. To avoid extensive analysis at program execution time, analysis results for libraries can be precomputed statically and then combined dynamically at runtime. This paper provides evidence that such a hybrid approach would in fact work well for larger programs. We have implemented a compositional variant of method side-effects analysis, which has been applied to three real world Java libraries. The dependency structure of the results and its meaning for compositional analysis is discussed. In addition the library interfaces exploited by specific client programs are examined.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    A. Azevedo, J. Hummel, D. Kol son. and A. Nicolau. Annotating the Java Bytecodes in Support of Optimization. ACM 1997 Workshop on Java for Science and Engineering Computation, Las Vegas, Nevada, June 1997.Google Scholar
  2. 2.
    Lars R. Clausen. A Java bytecode optimizer using side-effect analysis. In Concurrency Practice and Experience, 9(11): 1031–1045, November 1997.Google Scholar
  3. 3.
    Markus Dahm. Byte Code Engineering with the JavaClass API. Technical Report B-17–98, Freie Universität Berlin, Institut für Informatik, May 1999. http://www.inf.fu-berlin.de/-dahm.JavaClass
  4. 4.
    James Gosling, Bill Joy, and Guy Steele. The Java Language Specification. In The Java Series. Addison-Wesley, 1996.MATHGoogle Scholar
  5. 5.
    Urs Hölzle, Ole Agesen. Dynamic vs. Static Optimization Techniques for Object-Oriented Languages. In Theory and Practice of Object Systems, 1(3), 1996. Google Scholar
  6. 6.
    Shlomit S. Ifergan, Yoelle S. Maarek, and Sigalit Ur. Xeena: another alphaWorks technology, http://www.alphaworks.ibm. com/tech/xeena.
  7. 7.
    Tim Lindholm, Frank Yellin. The Java Virtual Machine Specification. In The Java Series. Addison-Wesley, 1996.Google Scholar
  8. 8.
    Bilha Mendelson, Sara Porat, Matt Greenwood, and Doron Cohen. TOAD: another alphaWorks technology, http://www. alphaworks. ibm. com/tech/toad.
  9. 9.
    Netbeans, Inc. Welcome to NetBeans. http://www. netbeans. com.
  10. 10.
    Sara Porat, Bilha Mendelsoh, and Irina Shapira. Sharpening Global Static Analysis to Cope with Java. CASCON98, Ontario, December 1998. Google Scholar
  11. 11.
    Sun Microsystems, Inc. Java(TM) Foundation Classes, http:// www. Javasoft. com/products/jfc.Google Scholar
  12. 12.
    Michael Thies, Uwe Kastens. Statische Analyse von Bibliotheken als Grundlage dynamischer Optimierung. In JIT’98 Java-Informations-Tage 1998, Springer, November 1998. Google Scholar
  13. 13.
    Michael Thies. Static compositional analysis of libraries in support of dynamic optimization. Technischer Bericht, Reihe Informatik, University of Paderborn, August 1999.Google Scholar
  14. 14.
    XML Technology Group. XML Parser for Java: another alphaWorks technology, http://www.alphaworks.ibm.com/tech/xml.

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Michael Thies
    • 1
  1. 1.Fachbereich 17Universität-GH PaderbornPaderbornGermany

Personalised recommendations