Abstract

In the context of heterogeneous networks, like clusters of workstations, the design of programming and execution environments aims to automatically adapt execution to fluctuations that may appear in the execution of distributed and parallel Java applications. ADAJ, Adaptive Distributed Applications in Java, addresses this problem, dealing with both parallelism and distribution features. Ease of programming is achieved through an object and method parallelism paradigm. The trade-off between transparency of such a parallelism expression and efficiency is solved by application redeployment, meant to maintain a good performance level. This is the purpose of the load balancing in ADAJ, a dynamic and transparent tool at the middleware level, which exploits information issued from observation of the application, in order to consider both object activity and communication patterns. Communications generate attraction relations between objects and this article presents the evaluation of the load balancing mechanism for a type of asynchronous applications in which the communication aspect is important.

Highlights

  • Heterogeneous systems rise two kinds of problems for distributed applications

  • Java homogenises the heterogeneous platforms through its virtual machine (JVM): issues of operating systems, word size or endianness disappear

  • We present the approach of a dynamic and transparent intraapplication load balancing strategy in ADAJ and its evaluation on a concrete application

Read more

Summary

INTRODUCTION

Heterogeneous systems rise two kinds of problems for distributed applications. The first aspect concerns transparency: applications should be designed as transparently as possible of the heterogeneity of available resources (CPU, memory, operating system). Java homogenises the heterogeneous platforms through its virtual machine (JVM): issues of operating systems, word size or endianness disappear Another layer of abstrac-tion, the resource consumption, is missing. The dynamic load balancing scheme in ADAJ (Adaptive Distributed Applications in Java) is a transparent tool at the middleware level which makes the execution reactive to irregularities in the evolution of the application and to changes in the resource availabilities. This adaptability requires the use of a monitoring tool, concurrent with the execution of an application, and not prior to it.

LOAD BALANCING SCHEME
OBSERVATION MECHANISM OF RELATIONS
EXPLOITING OBSERVATION INFORMATION
TECHNICAL ISSUES
EXPERIMENTAL RESULTS
CONCLUSION
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call