|
|
Overview |
| |
The problem of Grid resource allocation
is concerning about delivering the users distributed resources.
Currently, Managed job service in GT3 is the service to be
used to run the job on a remote resource. However, in order
to build more useful Grid, there should be added some user-friendly
resource allocation manners including resource brokering, scheduling,
monitoring, and so forth. To meet this requirement in Grid
resource management area, we designed and implemented a resource
allocation system named GRASP, which is to let users to submit
their jobs in more efficient and intelligent manner to the
Grid resources. The services of GRASP were implemented based
on the OGSI specification implementation of GT3 as well as
other services in MoreDream toolkit. |
| |
Main
Features |
| |
|
|
All services are OGSI-compliant Grid services. |
|
|
GRASP supports three kinds of job type: SINGLE,
XMPI, and HTC. SINGLE is a simple job to use only
one node. XMPI is a MPI job which can be run over
multiple resources. Lastly, HTC is a job for high
throughput computing like parametric study. |
|
|
Job could co-allocate multiple resources even
though resources are remotely distributed. |
|
|
Scheduler can automatically select resources
by resource matchmaking. |
|
|
Job could reserve resources in advance. |
|
|
Job could automatically stage in files from
SRB server and stage out the files to SRB server
via SRB enabled globus-url-copy. |
|
|
We provide JRDL (Job and Resource Description
Language) as a general language to describe a job
and user preferences required allocating resources
for the job in Grid environment. |
|
|
We bring client tools for job creating, submission,
controlling, and monitoring. They provide three
user interfaces having same functionality: a command
line interface, a graphic user interface, and web
interface. |
|
| |
|
| |
|
| |
Job
Type |
| |
| We are supporting three kinds of job type: SINGLE,
XMPI, and HTC. |
| |
|
|
SINGLE: It
is a simple job to use only one computational
node (e.g. simple script for pre/post processing). |
|
|
XMPI: It is a MPI job to use multiple resources
even though resources are remotely distributed.
Each resource could have several nodes. |
|
|
HTC: It is a job to use multiple resources
and have no communication between each of all subjobs
(e.g. parametric study). Each subjob must be SINGLE
job. |
|
| |
The
services of GRASP |
| |
 |
Job Submission Service (JSS) |
| |
JSS is a Grid service to
enable a job to submit to the resources in Grid
testbed and enable a user
to monitor the status of submitted job. We provide
JRDL language to describe the job, which is "an
atomic task" of a workflow specification
or other kinds of a complex, multi-step application.
The service has the status of job submission
and
the requested JRDL which are provided as service
data. |
| |
|
 |
Grid Scheduling Service (GSS) |
| |
GSS is a Grid service to find resources which
meet user¡¯s requirements and select resources according
to a scheduling algorithm. In order to discover
proper resources the GSS queries an information
service, GAIS in MoreDream toolkit, with resource
specification for the job. The GSS does filtering
process to choose the resources which meet minimal
requirements to execute the job.
And then, with the filtered resources, selection
is done according to the specific scheduling algorithm.
GSS applies the plug-in mechanism for scheduling
algorithms. Various scheduling algorithm can be
implemented and used by the service.
Once the selection process is done by a scheduling
plugin, the service tries reservations to the selected
resources for the time that user have specifies
in JRDL. If the reservation fails, the service
gains information about available resources from
the reservation services, does scheduling again,
and then retries reservation to the resources.
These processes are repeated until the selected
resources are confirmed with reservation IDs. |
| |
|
 |
Resource Manager Service (RMS) |
| |
RMS is a Grid service to enable subjobs to allocate
resources and be executed by the local batch scheduler
such as PBS. Resources are computational nodes
to be managed by the local batch scheduler. The
service has the statuses of subjobs which are provided
as service data. |
| |
|
 |
Resource Reservation Service (RRS) |
| |
RRS is a Grid service to manage reservation of
resources which are able to be reserved on the
Grid. A grid resource is composed of many kinds
of resources, such as CPUs and memory, storage
space, network bandwidth, special purpose instruments.
As a simple case, computing nodes of a cluster
system is a kind of a resource which can be reserved.
RRS makes a reservation to only computing nodes
of a cluster. |
| |
|
|
Job
and Resource Description Language (JRDL) |
| |
| The Globus Resource Specification Language (RSL) 2
provides a common interchange language to describe a
Grid job. However the RSL 2 does not contain user preferences
to select automatically resources for allocating the
job. Moreover the RSL 2 has no features to describe elements
required to co-allocate the job and to represent sequent
jobs. Therefore we provide the Job and Resource Description
Language (JRDL) as a general language to describe a job
and user preferences required allocating resources for
the job in Grid environment based on XML. |
| |
SRB
enabled globus-url-copy |
| |
| globus-url-copy, which is
an application of Globus toolkit, copies a file specified
by source URL to a location specified by destination
URL, using the GASS transfer API. It is used to stage
in/out files from/to storage device for executing jobs.
All protocols supported by GASS (local file, http, https,
ftp, and gsiftp) are supported. Piping to/from stdin/stdout
(setting source/dest argument = '-') is also supported.
However, it could not retrieve/save data from/to storage
not to be able to use protocol supported by GASS. The
Storage Resource Broker (SRB) is client-server middleware
that provides a uniform interface for connecting to heterogeneous
data resources over a network and accessing replicated
data sets. SRB support a lot of interfaces for data resources
including HRM, HPSS, DB2, Oracle, Illustra, ObjectStore,
ADSM, UniTree, UNIX, NTFS, and HTTP. Therefore, we modify globus-url-copy application
to support SRB protocols as well as GASS protocols for
accessing various data resources and replicated data
sets. |
| |
Client
Tools |
| |
GRASP provides client tools. They provide three user
interfaces: a command line interface (CLI), a graphic
user interface (GUI), and web interface (WI). They havingf
same functionality for creating and modifying JRDL for
a job, submitting the job to JSS, and controlling and
monitoring the job
The CLI lets you execute commands via grasprun at the shell prompt. The CLI could
be run at Linux or Windows environment. The GUI is a graphic interface based
on Java SWING, which is OS independent. The WI is a web interface based on Gridsphere
portlet. |
| |
| |
|
| |
|