Improving Compilation of Java Scientific Applications

نویسندگان

  • Zoran Budimlic
  • Mackale Joyner
  • Ken Kennedy
چکیده

Java is a high productivity object-oriented programming language that is rapidly gaining popularity in high-performance application development. One major obstacle to its broad acceptance is its mediocre performance when compared to Fortan or C, especially if the developers use object-oriented features of the language extensively. Previous work in improving the performance of object-oriented, high-performance, scientific Java applications consisted of high level compiler optimization and analysis strategies, such as class specialization and object inlining. This paper extends prior work on object inlining by improving the analysis and developing new code transformation techniques to further improve the performance of high performance applications written in high-productivity, object-oriented style. Two major impediments to effective object inlining are object and array aliasing and binary method invocations. This paper implements object and array alias strategies to address the aliasing problem while utilizing an idea from Telescoping Languages to address the binary method invocation problem. Application runtime gains of up to 20% result from employing these techniques. These improvements should further increase the scientific community’s acceptance of the Java programming language in the development of high-performance, high-productivity, scientific applications.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Loop Transformations in the Ahead-of-Time Optimization of Java Bytecode

Loop optimizations such as loop unrolling, unfolding and invariant code motion have long been used in a wide variety of compilers to improve the running time of applications. In this paper we present a series of experimental results detailing the effect these techniques have on the running time of Java applications following ahead of time optimization. We also detail the optimization tools and ...

متن کامل

Improving Continuation-Powered Method-Level Speculation for JVM Applications

Most applications running on the Java Virtual Machine (JVM) make extensive use of dynamic object-oriented programming features such as inheritance, polymorphism, and encapsulation. This makes them very hard or even impossible to analyze statically, defeating most of the automatic parallelization research done so far for traditional computeheavy scientific applications. In this paper, we propose...

متن کامل

Practical Experiences with Java Compilation

The Java programming language and the underlying virtual machine model have introduced new complexities for compilation. Various approaches ranging from just in time (JIT) compilation to ahead of time (AOT) compilation are being explored with the aim of improving the performance of Java programs. The hurdles facing the achievement of high performance in Java and the strengths and weaknesses of ...

متن کامل

Exploring Performance Improvement for Java-based Scientific Simulations that use the Swarm Toolkit

There has been growing interest for using the Java programming language in scientific and engineering applications. This is because Java offers several features, which other traditional languages (C, C++, and FORTRAN) lack, including portability, garbage collection mechanism, built-in threads, and the RMI mechanism. However, the historic poor performance of Java stops it from being widely used ...

متن کامل

An Experimental Evaluation of JAVA JIT Technology

Interpreted languages are widely used due to ease to use, portability, and safety. On the other hand, interpretation imposes a significance overhead. Just-inTime (JIT) compilation is a popular approach to improving the runtime performance of languages such as Java. We compare the performance of a JIT compiler with a traditional compiler and with an emulator. We show that the compilation overhea...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • IJHPCA

دوره 21  شماره 

صفحات  -

تاریخ انتشار 2007