FastMPJ: A Scalable and Efficient Java Message-Passing Library
Source: Universidade da Coruna
The performance and scalability of communications are key for HPC applications in current multi-core era. Despite the significant benefits (e.g., productivity, multithreading) of Java for parallel programming, its poor communications support has hindered its adoption in HPC. This paper presents FastMPJ, an efficient Message-Passing in Java (MPJ) library, boosting Java for HPC by: providing high performance shared memory communications using threads; taking full advantage of high-speed networks to provide low-latency and high bandwidth communications; including a scalable collective library with topology aware primitives, automatically selected at runtime; avoiding Java data buffering overheads through zero-copy protocols; and implementing the most widely extended MPI-like Java binding for a highly productive development.