Monday, April 23rd,
9 AM - 4 PM
High Performance Computing in Java: Compiler, Language, and Application Solutions
Jose E. Moreira, Manish Gupta, and Sam Midkiff
IBM T.J. Watson Research Center
WHO SHOULD ATTEND
This tutorial is of interest to those developing computationally intensive applications in Java, with particular emphasis on engineering and scientific applications. The tutorial is also relevant to those developing high performance Java environments (compilers and/or virtual machines) and high performance Java libraries.
15% Introductory | 65% Intermediate | 20% Advanced
As high performance numerical computing embraces the object-oriented paradigm, the use of Java for such applications is gaining interest. Although Java has many attractive features - reliability, portability, well defined floating point semantics and a growing programmer base - the performance of current commercial implementations in numerical applications is still an impediment to a wider adoption of Java. In this tutorial we describe how (1) standard libraries and currently proposed Java extensions can help in both achieving high performance and writing more maintainable code; and (2) compilers can be improved to provide near-Fortran performance. The proposals of the Java Grande Forum Numerics Working Group, which include a true multidimensional array package, complex arithmetic, and new floating point semantics, will be discussed. Compiler technologies to be addressed include array bounds and null pointer check optimizations, alias analysis techniques, semantic expansion of standard classes, and the interplay of static and dynamic models of computation. Throughout the tutorial the impact of the technology under discussion on compiler writers, language designers, and application developers will be described.
Manish Gupta is a Research Staff Member and Manager, High Performance Programming Environments, at the IBM Thomas J. Watson Research Center. He received a B.Tech. degree in Computer Science from the Indian Institute of Technology, Delhi, in 1987, an M.S. from Ohio State University in 1988, and a Ph.D. in Computer Science from the University of Illinois in 1992.
Samuel P. Midkiff received a B.S. degree in computer science in 1983 from the University of Kentucky, and M.S. and Ph.D. degrees in computer science from the University of Illinois at Urbana-Champaign in 1986 and 1992, respectively. Dr. Midkiff is a Research Staff Member in the High Performance Programming Environments Department at the IBM Thomas J. Watson Research Center and an Adjunct Assistant Professor at the University of Illinois, Urbana-Champaign.
Jose E. Moreira received B.S. degrees in physics and electrical engineering in 1987 and an M.S. degree in electrical engineering in 1990, all from the University of Sao Paulo, Brazil. He received his Ph.D. degree in electrical engineering from the University of Illinois at Urbana-Champaign in 1995. Dr. Moreira is a Research Staff Member in the High Performance Programming Environments Department at the IBM Thomas J. Watson Research Center.