JOIN: the implementation of a Java-based massively parallel grid

  • Authors:
  • Eduardo Javier Huerta Yero;Fabiano de Oliveira Lucchese;Francisco Sérgio Sambatti;Miriam von Zuben;Marco Aurélio Amaral Henriques

  • Affiliations:
  • Av. Theodureto de Almeida Camargo, Jd. Nossa Senhora Auxiliadora, Campinas, Sã Paulo, Brazil and School of Electrical and Computer Engineering, State University of Campinas, São Paulo, B ...;School of Electrical and Computer Engineering, State University of Campinas, São Paulo, Brazil;School of Electrical and Computer Engineering, State University of Campinas, São Paulo, Brazil and Western Paraná State University, Cascavel, Brazil;School of Electrical and Computer Engineering, State University of Campinas, São Paulo, Brazil;School of Electrical and Computer Engineering, State University of Campinas, São Paulo, Brazil

  • Venue:
  • Future Generation Computer Systems - Special issue: Parallel computing technologies
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents JOIN, a Java-based software platform to construct massively parallel grids capable of executing large parallel applications. The system is designed to be scalable by allowing computers in the grid to be separated in independent sets (called groups) which are managed independently and collaborate using a logical interconnection topology. JOIN provides advanced fault tolerance capabilities that allow it to withstand failures both in computers executing parallel tasks and in computers managing the groups. The parallel applications executing in the system are formally specified using a rigorously defined application model. JOIN uses a dynamic, flexible scheduling algorithm that adapts to changes in resource availability and replicates parallel tasks for fault tolerance. The platform provides an authentication/access control mechanism based on roles which is embedded in the inner parts of the system. The software architecture is based on the concept of services, which are independent pieces of software that can be combined in several ways, providing the flexibility needed to adapt to particular environments. JOIN has been successfully used to implement and execute several parallel applications, such as DNA sequencing, Monte Carlo simulations and a version of the Traveling Salesman Problem.