JOPI: A Java object-passing interface

Jameela Al-Jaroodi, Nader Mohamed, Hong Jiang, David Swanson

Research output: Contribution to journalArticlepeer-review

9 Citations (Scopus)


Recently there has been an increasing interest in developing parallel programming capabilities in Java to harness the vast resources available in clusters, grids and heterogeneous networked systems. In this paper, we introduce a Java object-passing interface (JOPI) library. JOPI provides Java programmers with the necessary functionality to write object-passing parallel programs in distributed heterogeneous systems. JOPI provides a Message Passing Interface (MPI)-like interface that can be used to exchange objects among processes. In addition to the well-known benefits of the object-oriented development model, using objects to exchange information in JOPI is advantageous because it facilitates passing complex structures and enables the programmer to isolate the problem space from the parallelization problem. The run-time environment for JOPI is portable, efficient and provides the necessary functionality to deploy and execute parallel Java programs. Experiments were conducted on a cluster system and a collection of heterogeneous platforms to measure JOPI's performance and compare it with MPI. The results show good performance gains using JOPI.

Original languageEnglish
Pages (from-to)775-795
Number of pages21
JournalConcurrency and Computation: Practice and Experience
Issue number7-8
Publication statusPublished - 2005
Externally publishedYes


  • Cluster
  • Heterogeneous systems
  • Java
  • Object-oriented systems
  • Object-passing
  • Parallel programming

ASJC Scopus subject areas

  • Software
  • Theoretical Computer Science
  • Computer Networks and Communications
  • Computer Science Applications
  • Computational Theory and Mathematics


Dive into the research topics of 'JOPI: A Java object-passing interface'. Together they form a unique fingerprint.

Cite this