submitting four/eight independent applications instead of a single application with
four/eight concurrent threads. Since Globus Toolkit specifications maintain GRAM
job submitting only for backward compatibility issues, this first case is not preferred
for further use.
For case 2), we used only the WS-GRAM approach and we have manually started
the LAM daemon prior to running the service. The job submitting worked as
expected. The grid service performed accurate monitoring only after appropriate
security settings have been employed: the methodClientStartJob method of the grid
service must be configured to run with user credentials instead of the default container
credentials.
This run proves one of the main advantages of our service. We do not limit the
development of parallel applications only to MPICH-G2.
The MPI application that we have used for tests required some specific
configuration files. A usual scenario for running MPI-based Grid applications that
require file upload and/or file download. Since MPI-based applications have poor or
no support for interacting with Grid services, the user had to manually upload various
configuration and input files. In our case the Instance service connects directly to the
ReliableFileTransfer service and transfers any needed files between the client and the
MPI application. This shows a second advantage of our service: the service, acting as
a job wrapper, may interact with various other Grid services before or after submitting
the MPI job.
5 Conclusions and Further Research
The present paper describes a new way of combining Java Grid applications with MPI
based parallel applications into a Factory/Instance grid service. The need for such a
grid service is derived from the fact that current grid middleware support for MPI
based parallel applications do not fully use MPI 2.0 standard. Also, MPICH-G2 or
other MPI standard implementations do not allow for a direct connection between
parallel applications and middleware grid services (such as OGSA-DAI or
ReliableFileTransfer service).
The tests we performed using a specific console client have demonstrated the
usefulness of the presented model in managing multiple resources, as well as a good
interaction with several grid services delivered with Globus Toolkit 4 middleware
(services such as ReliableFileTransfer or ManagedJobFactoryService). The tests have
shown that correct use of WS-GRAM RSL scripts combined with appropriate security
settings for the corresponding grid service prove useful in embedding MPI based
parallel applications within grid services.
Aside from the two major advantages pointed out in section 4, we would also like
to point out another plus for our model. The service’s Resource specifies the MPI
modules it uses in a static manner. While this is not the preferred method for a general
wrapper application, it has the advantage of not submitting foreign, unchecked code
on our Grid system.
We are currently investigating means of pipe-lining specific application logs with
Java applications in order to increase the level of detail for grid job status. A positive
result would achieve better job management through the grid services.
15