Java Performance for Scientific Applications on LLNL Computer Systems [electronic resource]
Languages in use for high performance computing at the laboratory--Fortran (f77 and f90), C, and C++--have many years of development behind them and are generally considered the fastest available. However, Fortran and C do not readily extend to object-oriented programming models, limiting their capa...
Saved in:
Online Access: |
Online Access (via OSTI) |
---|---|
Corporate Author: | |
Format: | Government Document Electronic eBook |
Language: | English |
Published: |
Washington, D.C. : Oak Ridge, Tenn. :
United States. Department of Energy ; distributed by the Office of Scientific and Technical Information, U.S. Department of Energy,
2002.
|
Subjects: |
Summary: | Languages in use for high performance computing at the laboratory--Fortran (f77 and f90), C, and C++--have many years of development behind them and are generally considered the fastest available. However, Fortran and C do not readily extend to object-oriented programming models, limiting their capability for very complex simulation software. C++ facilitates object-oriented programming but is a very complex and error-prone language. Java offers a number of capabilities that these other languages do not. For instance it implements cleaner (i.e., easier to use and less prone to errors) object-oriented models than C++. It also offers networking and security as part of the language standard, and cross-platform executables that make it architecture neutral, to name a few. These features have made Java very popular for industrial computing applications. The aim of this paper is to explain the trade-offs in using Java for large-scale scientific applications at LLNL. Despite its advantages, the computational science community has been reluctant to write large-scale computationally intensive applications in Java due to concerns over its poor performance. However, considerable progress has been made over the last several years. The Java Grande Forum [1] has been promoting the use of Java for large-scale computing. Members have introduced efficient array libraries, developed fast just-in-time (JIT) compilers, and built links to existing packages used in high performance parallel computing. |
---|---|
Item Description: | Published through SciTech Connect. 05/10/2002. "ucrl-id-148317" Kapfer, C; Wissink, A. |
Physical Description: | PDF-FILE: 15 ; SIZE: 0.2 MBYTES pages. |