JOPI: A Java object-passing interface

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

Research output: Contribution to journalArticle

9 Citations (Scopus)

Abstract

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 (US)
Pages (from-to)775-795
Number of pages21
JournalConcurrency Computation Practice and Experience
Volume17
Issue number7-8
DOIs
StatePublished - Jun 1 2005

Fingerprint

Message passing
Java
Parallel programming
Message Passing Interface
Experiments
Object
Necessary
Heterogeneous Systems
Parallel Programs
Object Model
Parallel Programming
Complex Structure
Parallelization
Performance Measures
Object-oriented
Distributed Systems
Grid
Resources

Keywords

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

ASJC Scopus subject areas

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

Cite this

JOPI : A Java object-passing interface. / Al-Jaroodi, Jameela; Mohamed, Nader; Jiang, Hong; Swanson, David.

In: Concurrency Computation Practice and Experience, Vol. 17, No. 7-8, 01.06.2005, p. 775-795.

Research output: Contribution to journalArticle

Al-Jaroodi, Jameela ; Mohamed, Nader ; Jiang, Hong ; Swanson, David. / JOPI : A Java object-passing interface. In: Concurrency Computation Practice and Experience. 2005 ; Vol. 17, No. 7-8. pp. 775-795.
@article{9c36537fda1e4db98eaa0db0478b1911,
title = "JOPI: A Java object-passing interface",
abstract = "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.",
keywords = "Cluster, Heterogeneous systems, Java, Object-oriented systems, Object-passing, Parallel programming",
author = "Jameela Al-Jaroodi and Nader Mohamed and Hong Jiang and David Swanson",
year = "2005",
month = "6",
day = "1",
doi = "10.1002/cpe.854",
language = "English (US)",
volume = "17",
pages = "775--795",
journal = "Concurrency Computation Practice and Experience",
issn = "1532-0626",
publisher = "John Wiley and Sons Ltd",
number = "7-8",

}

TY - JOUR

T1 - JOPI

T2 - A Java object-passing interface

AU - Al-Jaroodi, Jameela

AU - Mohamed, Nader

AU - Jiang, Hong

AU - Swanson, David

PY - 2005/6/1

Y1 - 2005/6/1

N2 - 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.

AB - 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.

KW - Cluster

KW - Heterogeneous systems

KW - Java

KW - Object-oriented systems

KW - Object-passing

KW - Parallel programming

UR - http://www.scopus.com/inward/record.url?scp=18444369923&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=18444369923&partnerID=8YFLogxK

U2 - 10.1002/cpe.854

DO - 10.1002/cpe.854

M3 - Article

AN - SCOPUS:18444369923

VL - 17

SP - 775

EP - 795

JO - Concurrency Computation Practice and Experience

JF - Concurrency Computation Practice and Experience

SN - 1532-0626

IS - 7-8

ER -