Abstract. A basic prerequisite for parallel programming is a good communication API. The recent i n terest in using Java for scienti c and engineering application has led to several international e orts to produce a message passing interface to support parallel computation. In this paper we describe and then discuss the syntax, functionality and performance of one such i n terface, mpiJava, an object-oriented Java i n terface to MPI. We rst discuss the design of the mpiJava API and the issues associated with its development. We then move on to brie y outline the steps necessary to 'port' mpiJava onto a range of operating systems, including Windows NT, Linux and Solaris. In the second part of the paper we present and then discuss some performance measurements made of communications bandwidth and latency to compare mpiJava on these systems. Finally, we summarise our experiences and then brie y mention work that we plan to undertake.
Several Java bindings of the Message Passing Interface standard, MPI, have been developed recently. Message buffers have usually been restricted to arrays with elements of primitive type. We discuss use of the Java object serialization model for marshalling general communication data in MPI. This approach is compared with a Java transcription of the standard MPI derived datatype mechanism.We describe an implementation of the mpiJaua interface to MPI incorporating automatic object serialization.Benchmark results show that the current JDK implementation of serialization is (not unexpectedly)probably not fast. enough for high performance applications.Means of solving this problem are discussed.
We examine the creation of peer-to-peer Grids in which autonomous Grid components ("Gridlets") may be federated into dynamic Grid collections. We examine two important aspects of these systems: federated security and autonomic considerations. As we discuss, both may be implemented using a messaging system as a substrate. Messaging systems provide the means of bridging Gridlet realms, organizing access control areas, and providing autonomic building blocks like discovery, reliability, resilience, and robustness of the peer-to-peer Grid..
The paper research is concerned with enabling parallel, high-performance computation-in particular development of scientific software in the network-aware programming language, Java. Traditionally, this kind of computing was done in Fortran. Arguably, Fortran is becoming a marginalized language, with limited economic incentive for vendors to produce modern development environments, optimizing compilers for new hardware, or other kinds of associated software expected of by today's programmers. Hence, Java looks like a very promising alternative for the future.The paper will discuss in detail a particular environment called HPJava. HPJava is the environment for parallel programming-especially data-parallel scientific programming-in Java. Our HPJava is based around a small set of language extensions designed to support parallel computation with distributed arrays, plus a set of communication libraries. A high-level communication API, Adlib, is developed as an application level communication library suitable for our HPJava. This communication library supports collective operations on distributed arrays. We include Java Object as one of the Adlib communication data types. So we fully support communication of intrinsic Java types, including primitive types, and Java object types. 166 S.B. Lim et al.
The paper begins by considering what a Grid Computing Environment might be, why it is demanded, and how the authors' HPspmd programming fits into this picture. We then review our HPJava environment 1 as a contribution towards programming support for High-Performance GridEnabled Environments. Future grid computing systems will need to provide programming models. In a proper programming model for grid-enabled environments and applications, high performance on multi-processor systems is a critical issue. We describe the features of HPJava, including run-time communication library, compilation strategies, and optimization schemes. Through experiments, we compare HPJava programs against FORTRAN and ordinary Java programs. We aim to demonstrate that HPJava can be used "anywhere"-not only for high-performance parallel computing, but also for grid-enabled applications.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.