Information Technology Reference
In-Depth Information
achieved very competitive speedups compared
to both Satin and ProActive, while preserving
the technical quality of the application code,
as evidenced by the values for the code metrics
discussed before.
been addressed (Li & Tahvildari, 2006). Therefore,
a similar approach could be employed to supply
the JGRIM gridification process with an extra
code transformation phase to ensure, prior to the
first step of the current version of the process, that
input applications are component-based. Similarly,
it would be interesting to handle the case when
the source code of ordinary applications is not
available for gridification. We have implemented
a tool that builds on the ideas presented in this
article, but focuses on dynamically modifying Java
bytecodes to run in parallel on a Grid. Basically,
the tool takes advantage of the facilities provided
by the Java Virtual Machine for altering classes at
runtime to adapt ordinary bytecodes to transpar-
ently run on Satin clusters.
In addition, we are working on metaservices
to leverage other state-of-the-art mechanisms for
Grid resource discovery, such as those described
in (Zhang et al., 2007), and more Grid execution
services. With regard to the former, we are cur-
rently integrating JGRIM with GMAC (Gotthelf
et al., 2008), a P2P protocol of our own that is
designed for exchanging information between the
hosts of a Grid in a scalable way. Specifically,
GMAC will serve as a mean to efficiently gather
information about the Grid resources available
for executing applications, thus providing ac-
curate metrics through the profiling interface to
application programmers. With respect to the
latter, we have already implemented a prototype
integration with Condor that is based on a Java
interface to Condor clusters 3 . Basically, this will
allow JGRIM to smoothly delegate to Condor the
execution of component operations representing
resource-intensive, coarse-grained Grid jobs.
Also, since JGRIM is essentially a technology-
agnostic gridification method, we are exploring
the viability of materializing JGRIM in other pro-
gramming languages besides Java. For example,
languages such as C++ or Python are extensively
employed for developing Grid applications. How-
ever, this will require to carefully study whether
these new languages provide support for core
CONCLUSION AND FUTURE WORK
In this article, we have presented JGRIM, a new
approach to simplify the gridification of Java
applications by hiding the complex nature of the
Grid and its services. We showed the advantages
of the approach through experimentation with
two related approaches. A distinctive feature
JGRIM is that it promotes a convenient model
for developing Grid applications that is familiar
to most Java programmers. JGRIM allows for a
better separation of application logic and Grid
code (e.g. for performing service discovery and
invocation), and makes the task of consuming
Grid services easier. Besides, custom decisions
for tuning gridified applications can be specified
separately from their logic through the use of
policies, thus letting developers to seamlessly
adapt the same application to different Grids and
distributed environments. We experimentally
showed that JGRIM simplifies gridification and
produces better Grid code without resigning per-
formance for the two aforementioned applications.
However, we will conduct more experiments to
further validate JGRIM. This will involve the
gridification of more applications on larger Grids.
We are extending JGRIM in several directions.
Since JGRIM applications can travel across differ-
ent administrative domains looking for resources
and services, security is crucial. A future research
line is to incorporate security mechanisms into
JGRIM. Another limitation arises from the as-
sumptions made for gridifying applications, as
JGRIM only accepts as input component-based
applications, which does not likely hold for all
applications. Fortunately, the problem of com-
ponentization of legacy object-oriented code has
Search WWH ::




Custom Search