z-logo
open-access-imgOpen Access
Compiler optimizations for Java aglets in distributed data intensive applications
Author(s) -
Abhishek Singh,
Santosh Pande
Publication year - 2002
Publication title -
smartech repository (georgia institute of technology)
Language(s) - English
Resource type - Conference proceedings
ISBN - 1-58113-445-2
DOI - 10.1145/508791.508809
Subject(s) - computer science , compiler , serialization , programmer , schedule , java , node (physics) , optimizing compiler , distributed computing , parallel computing , overhead (engineering) , carry (investment) , programming language , operating system , structural engineering , engineering , finance , economics
Code migration in light of distributed data intensive computing poses interesting compilation issues. In this work, we first define a small extension to the aglet model to allow data distribution. In our aglet program, data is distributed over the network using annotations (this is similar to High Performance Fortran (HPF) where the programmer specifies data distributions through annotations). We analyze the program using the annotations and use the 'owner computes' rule to determine where a given computation should take place. The compiler then schedules the aglet through the network and also determines the data it should carry during its migration. Determining efficient schedule of the aglet and which data to carry during migration poses interesting issues.We propose two strategies to optimize the aglet schedule. The first strategy called Take All Live Data: (TALD) attempts to carry all the live definitions of variables from a given node when visited. The second strategy Take Only Needed Data (TOND) attempts to carry only those definitions whose uses are in the destination node. The goal of the first strategy is to minimize the number of migrations which are expensive due to high serialization overheads The second strategy aims to minimize bandwidth consumption during a migration. This could significantly reduce the communication overhead due to minimal amount of data carried during each migration. We have implemented both the strategies in the Jikes compiler from IBM. We have evaluated it on a distributed database application and show benefits of both the strategies on large and small databases. The results show that strategies generated by our compiler analysis reduce the overheads and improve execution time.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom