Pages

Translate

Tuesday, 26 June 2018

Java in the High Performance Computing arena: Research, practice and experience

Abstract

The rising interest in Java for High Performance Computing (HPC) is based on the appealing features of this language for programming multi-core cluster architectures, particularly the built-in networking and multithreading support, and the continuous increase in Java Virtual Machine (JVM) performance. However, its adoption in this area is being delayed by the lack of analysis of the existing programming options in Java for HPC and thorough and up-to-date evaluations of their performance, as well as the unawareness on current research projects in this field, whose solutions are needed in order to boost the embracement of Java in HPC.
This paper analyzes the current state of Java for HPC, both for shared and distributed memory programming, presents related research projects, and finally, evaluates the performance of current Java HPC solutions and research developments on two shared memory environments and two InfiniBand multi-core clusters. The main conclusions are that: (1) the significant interest in Java for HPC has led to the development of numerous projects, although usually quite modest, which may have prevented a higher development of Java in this field; (2) Java can achieve almost similar performance to natively compiled languages, both for sequential and parallel applications, being an alternative for HPC programming; (3) the recent advances in the efficient support of Java communications on shared memory and low-latency networks are bridging the gap between Java and natively compiled applications in HPC. Thus, the good prospects of Java in this area are attracting the attention of both industry and academia, which can take significant advantage of Java adoption in HPC.

Highlights

► Java is an emerging option for High Performance Computing on multi-core clusters. ► Java can achieve almost similar performance to natively compiled languages. ► Current state of Java for HPC, both for shared and distributed memory programming. ► Performance evaluation of Java message-passing and Java threads on multi-core clusters. ► Java is an alternative to HPC programming as it obtains comparable scalability results.

No comments:

Post a Comment

Solutions For Agricultural Problems In Pakistan:

1:     Feudalism should be abolished and lands should be allotted to poor farmers. This will enhance the productivity and per acre yield of...