ing decision.
Our main contributions in this paper are two fold-
ers. First, we use temporal decomposition to reduce
the complicated grid workflow scheduling problem
to simplified the scheduling of sub-workflow (paral-
lel tasks), which is easier to solve and realized. Sec-
ondly, we propose an efficient on-line scheduling al-
gorithm for the decomposed sub-workflows. By using
a QoS bidding mechanism, this scheduling algorithm
can find the near-minimum cost decision without vio-
lations of QoS constraints.
This paper is organized as follows. In Section 2,
we present some important existing grid workflow
scheduling heuristics. Section 3 presents the system
model used in this work. Our proposal is introduced
in Section 4. Section 5 presents some simulation re-
sults which demonstrate the effectiveness of our pro-
posal. Finally, we conclude this work paper in Sec-
tion 6.
2 WORKFLOW
DECOMPOSITION
One possible method for solving NP-complete prob-
lem is to divide a big problem into some small
problems, since the computation complexity de-
creases dramatically with the problem size. Thus
the approach of decomposition of workflow struc-
ture is an attractive approach for solving grid
workflow scheduling problem. There are two
different approaches to de-compose the workflow
structure– “space decomposition” and “level decom-
position”(Deelman et al., 2004). “Space decompo-
sition” divides the workflow into some parts accord-
ing to the workflow structure and relationships be-
tween tasks. For example, Yu(Yu et al., 2005) di-
vides workflow into independent branches and syn-
chronization tasks, and schedules these branches or
synchronization tasks separately. A synchronization
task is defined as a task with multiple preceding tasks
or succeeding tasks, while the task with only one or
less preceding task and succeeding task is called sim-
ple task. A branch contains a series of simple tasks
executed sequentially between two synchronization
tasks. The decomposition result of “space decompo-
sition” is highly dependent on the workflow structure.
For example, there are many synchronization tasks in
a workflow with small number of serial tasks. The
scheduling for synchronization task is far from opti-
mal since only one task has been considered.
A simple “level decomposition” method has been
proposed in(Deelman et al., 2004) . In such decompo-
sition method, the abstract workflow is decomposed
into some sub-workflows, which consist of tasks with
the same level (determined by the execution depen-
dency) in the abstract workflow structure. The new
sub-workflows will be submitted to a scheduler, and
the scheduler will make decision based on all tasks
in a sub-workflow together instead of individual task.
“Level decomposition” is too simple to support com-
plicated workflow components, such as loop task.
Another shortcoming of “level decomposition” is that
the next-level sub-workflow will not start to execute
until all tasks in previous-level sub-workflow have
been completed.
3 SYSTEM MODELS
In this paper, we adopt the definition of grid workflow
as an abstract representation of application running on
grid networks. Grid workflow is a set of tasks that are
executed on multi-sited grid resources in a specific
pre-defined order(Yu and Buyya, 2005). Grid tasks
are the atomic level components in the grid workflow.
These components are independently executed on lo-
cal grid resources. The abstract grid tasks may rep-
resent various application components, such as MPI
tasks which can execute on multiple processors. Thus,
these tasks have various QoS requirements, which
could be satisfied by choosing good schedules with
appropriate resource mapping. The typical QoS met-
rics used in grid networks includes(Cardoso et al.,
2004): time (deadline), cost (budget), and reliability.
As the basic and most important performance metric,
“time” refers to the finish time of whole workflow ex-
ecution. The usage of grid resources will be charged
by the resource owner, if the resource does not belong
to the user submitting the workflow. Furthermore, the
cost of managing workflow in grid system should also
be paid born by the users. The execution of grid tasks
is depend on the availability and reliability of the re-
sources. For example, when a resource leaves the grid
system, all tasks running on it will fail and should be
re-executed on another resource.
3.1 Qos Bid Model
Suppose there are M distributed resources in the sys-
tem. All resources support resource conservation with
a limited amount of processing capacity. The capaci-
ties of resources are represented by {c
i
}, i = 1, . . . , M,
which may have different definitions (e.g. number
of processors, CPU cycles, memory size). These re-
sources are shared among the end-users with different
QoS requirements. There is a local agent (LA) for
each resource as shown in Figure 1.
ICEIS 2007 - International Conference on Enterprise Information Systems
442