You are on page 1of 5

JOURNAL OF COMPUTING, VOLUME 2, ISSUE 10, OCTOBER 2010, ISSN 2151-9617

HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 76

A Dynamic Error based fair scheduling using


Two Layered Distributed Heap Sort Tree for a
Computational Grid
Archana V Mire

Abstract—Grid Computing has emerged as an important new field focusing on resource sharing. In grid computing
applications, resource management and job scheduling are the most crucial problems. In this paper, we propose a new
algorithm for fair scheduling using distributed heap sort tree for grid resource management model considering both the resource
management and job scheduling as coalition integrity. It aims at addressing the maximum computational power by organizing
resources in heap sort tree manner & fairness issue by reducing the service time error. In our model, we use a carefully
designed agent to obtain dynamic real time available computational ability of various nodes in the grid environment, so that new
job could be assigned to the node that has the largest available computational power. The algorithm assigns each task to
enough computational power to complete it within its deadline. The resources that each user gets are proportional to the user’s
weight or a share. The weight or share of a user may be defined as the user’s contribution to the infrastructure or the price he is
willing to pay for services. Scheduling of tasks is based on searching in a root of heap tree for an error called the Service time
error which fairly distributes resource among users. Fairness is defined as the proportional allocation of resources to tasks as
per their demand. All the We construct all grid computational resources into distributed two-layered Heap Sort Tree .This makes
the system be more scalable, robust, fault-tolerant and high performance. By taking advantages of agents in constructing and
reconstructing the two-layered Heap Sort Tree, this model is well fitted with the unpredictable changing grid environment

Index Terms—Root, Resource management Agent (RMA), Autonomy Heap Sort Tree (AHST), Global Heap Sort Tree (GHST)

——————————  ——————————

1 INTRODUCTION

G RID computing is an emerging computing model


that provides the ability to achieve higher through-
put by taking advantage of many network comput-
istrative domains [2] . A grid scheduler, often called re-
source broker, acts as an interface between the user and
distributed resources. It hides the complexities of the
ers. It uses virtual architecture that is able to distribute a computational grid from the user. The scheduler does not
process execution across a parallel infrastructure. Compu- have full control over the grid and it cannot assume that it
tational grids provide large-scale resource sharing, such has a global view of the grid. The single most challenging
as personal computers, clusters, MPPs, Data Base, and issue of the grid scheduler encounters is the dynamicity
online instruments, which may be cross-domain, dynamic of resources. Although a resource may be participating in
and heterogeneous [1]. Grid provides the ability to per- a grid, its main purpose is used by local users of the or-
form computations on large data sets, by breaking them ganization that it belongs to. Therefore, the load on the
down into many smaller ones, or provide the ability to resource imposes a great strain on grid scheduling. The
perform many more computations at once that would be grid scheduling consists of three stages [3]. Resource dis-
possible on a single computer, by modeling a parallel covery and filtering in the first phase, the resource selec-
division of labor between processes. In order to utilize the tion and scheduling according to the certain objective is
hybrid heterogeneous computational resources effective- the second phase and the job submission is the third
ly, resource management and job scheduling are the most phase. The third stage includes the file staging and clean-
crucial problems in grid computing systems. In a typical up. In the field of grid resource management and job
resource discovery scenario, a client retrieves information scheduling, researchers have done much valuable work.
about the set of currently available resources from an in- Recently, agent-based grid resource management has ar-
dex, queries the most interesting resources for more de- rested more and more attention in the area. Agent based
tailed information, and selects which resource to use framework for grid resource management has the poten-
based on the retrieved information. Major issues that can tial to overcome the major challenges of grid resource
be easily handled in conventional computing environ- management, including site autonomy, heterogeneous
ments become seriously challenging problems in gr- substrate, policy extensibility, and co-allocation and on-
ids mainly because a grid consists of multiple admin- line control [4]. In general, the schedulers process jobs in
order of priority, which is deter-mined based on job
———————————————— attributes such as job class and time in queue [5,6] .The
 A. V Mire is working as Asst prof Department of IT, B D C O E, Seva- motivation of this paper is to organize resources in order
gram, Wardha, Nagpur University, India. of their computing power using distributed heap Sort
technique & developing a fair scheduling algorithm
based on the service time error [7] . Most researchers
JOURNAL OF COMPUTING, VOLUME 2, ISSUE 10, OCTOBER 2010, ISSN 2151-9617
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 77
just focus their attention on one aspect of the resource 2 GRID MANAGEMENT SYSTEM
management or job scheduling, while they are a tightly
2.1 Architecture
related integrity. On the other hand, little work has been
done on scheduling jobs according to the real time availa- Architecture of the grid computing system we considered
ble computational power of the grid nodes, which may in this paper is modified architecture of the one proposed
greatly improve performance and load balance for the by Fufang Li [8]. Grid computing system is divided into
whole system. In this paper, we try to present a novel three layers as shown in fig.1 User sends request for the
agent-based dynamic grid resource management model resource through a portal which is installed on his com-
considering both the grid resource management and job puter called as application layer. The portal then sends
scheduling as coalition integrity, so as to gain good the job to the resource management system. In succession,
robust, scalability, high performance and efficiency. the grid resource management system analyses user re-
quest & identifies particular resource which is best for the

User

Application Layer
Portal

Grid resource Manage-


RMA
RMA

ment layer
RMA RMA

Resource

Resource Layer
Resource Resource Resource

Resource Resource Resource Resource

Figure 1 Grid Manaement Architecture


In model, we use a carefully designed agent named computation of the job requested by user .Grid resource
Autonomy Representation Agent by running some care- management layer schedules the job to the corresponding
fully designed little benchmarks to obtain dynamic real resource layer request is submitted to the resource & fi-
time available computational ability of various nodes in nally, the selected grid resources carry out the scheduled
the grid environment. By this way, new job could be as- job and return the result is sent back to the requestor. The
signed to the node that has the largest available computa- resource management layer is the crucial part of the
tional power, so as to improve system load ability and whole grid computing system, and it is logically com-
performance with good load balance. As is well-known posed of Resource management agents.
Heap Sort algorithm is the most efficient sorting algo- The proposed model is logically constructed as a dis-
rithm in large-scale application occasion, such as grid tributed hierarchical two-layered Heap Sort Tree, so as to
environment. By taking the advantages of agents in con- make balanced and effective job scheduling for the grid
structing and reconstructing the two-layered HST, this computing system. Every nodes of the grid computing
two-layered architecture of the model is well fitted with system has agent deployed on it called as Resource Man-
the unpredictable changing grid environment, and is ro- agement Agent (RMA). All the RMA present in one au-
bust, scalable and efficient. The rest of the paper is orga- tonomy area will take part in building lower level Auton-
nized as follows. Section 2 presents the model of Dynamic omy Heap Sort Tree where the node having maximum
grid resource management system. Section 3 gives out the computational capability will be the Root node. This root
algorithm for organizing resource in form of Two Layer of Autonomy Heap Sort Tree (AHST) node having the
heap sort tree .Section 4 gives fair scheduling scheme. highest Resource capability in autonomy area will take
Section 5 presents the analysis of the model and algo- part in building Global Heap Sort Tree (GHST) for global
rithm. Finally, in section 6, we summarize our work and autonomy grid system. Thus GHST is made up of many
points out future work we are preparing to do. distributed AHST.
JOURNAL OF COMPUTING, VOLUME 2, ISSUE 10, OCTOBER 2010, ISSN 2151-9617
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 78
2.2 Data Strucutre Used by RMA 4. Make flag bit of Root node as 1
For Data structure used by RMA is shown in Fig-2 5. When information of any of the Root node present in
other autonomy area is available add it to global
Lchild Root RI IER URL Rchild Heap sort tree.
Figure 2 data Structure for RMA
6. Submit the job to the Queue of Root of GSHT. Send
massage to the portal that it is ready to accept next
job
7. Return the result back to the calling site
Root - Represents parent of current node in heap sort
tree Since Grid model is dynamic model. It may happen
Lchild - Represents left child of the current node in heap that there exist multiple AHST & multiple GHST. Same
tree root node may belong to multiple Global heap sort tree in
Rchild - Represents right child of current node in heap that case we will just submit the job to the Root node &
tree allow it to apply its own scheduling scheme. As soon as
RI - Resource information which is the plain text, any of the job processing starts computation power of
the resources such as name of the node, CPU root node is made to 0. All the remaining jobs present in
type, frequency, Network bandwidth, Memo- queue of Root node are shifted to the child of Root node.
ry size etc.
IER - Instruction Execution Rate is computational 3.1 Fair Scheduling Scheme for Root Node
ability of the node given in terms of MIPS or The classic notion [10] of fairness in the allocation of re-
Mflops. source among multiple requesting entities with equal
URL - Universal Location Information of the resource rights to the resource but unequal demands is as follows.
so that grid systems job scheduler can submit job • The resource is allocated in order of increasing demand
to it conveniently. • No requesting task gets a share of the resource larger
Flag - Single bit field if value 1 represents root of than its demand
AHST & if 0 represents simple autonomy re- • Requesting tasks with unsatisfied demands get equal
source node shares of the resources
Tasks with a higher demand are favored against
3 CONSTRUCTION OF GHST the remaining tasks in the case of other existing algo-
rithms which mean that such tasks are given a higher
In order to obtain high performance and good load bal- priority than the others which leads to starvation that
ance, we construct the computational grid nodes into increases the completion time of tasks and no fairness is
Heap Sort Tree in both autonomy and global layer of the guaranteed. These issues are addressed by D .Lopez etal
resource management system. Both AHST and GHST is a [11] by allocating resources fairly to all tasks based on the
binary tree generated during the procedure of RMA error.
doing their heap sort .After the AHST being generated,
the node with the largest available computational ability 3.2 Service Time Error Algorithm
among the autonomy is selected to be the Root node of Proportional share scheduling for a given set of tasks
the AHST, and it is selected to represent the autonomy to have associated weights [7] or shares, and a proportional
join the GHST. In the same way after the GHST being share scheduler should allocate resources to each task in
generated, the node with the largest available computa- proportion to its respective weight. More specifically we
tional ability among the whole grid system is selected to assume that each task is assigned an integer share deter-
be the Root node of the GHST, and it is ready for the mined, for example by the user’s contribution to the grid
scheduler to submit a job to it to be fulfilled effectively infrastructure or by the price he is willing to pay for the
Algorithm services he receives. The process of scheduling is modeled
1. Add node I in Autonomy heap tree as a Root node in two steps as
2. For each neighborhood node J of node I 1) The scheduler orders the tasks in a queue
If J belongs to same autonomy area then add 2) The scheduler runs the first task in the queue for its
node J into Autonomy Heap Sort Tree time quantum, which is the maximum time interval the
If J belongs to different autonomy area then send client is allowed to run before another scheduling deci-
request to build Heap Sort Tree for that area & sion is made.
wait for Root node of that Autonomy area con- As mentioned earlier the algorithm works to-
vey information to root node of current autono- wards perfect fairness defined as an ideal state in which
my area each task has received service exactly proportional to its
3. Repeat step 2 for all adjacent nodes of the nodes weight. This algorithm is based on an error that occurs
present in tree present in same autonomy area during the service of the request. The probability that a

© 2010 Journal of Computing Press, NY, USA, ISSN 2151-9617


http://sites.google.com/site/journalofcomputing/
JOURNAL OF COMPUTING, VOLUME 2, ISSUE 10, OCTOBER 2010, ISSN 2151-9617
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 79
request has been serviced for t units of time will terminate 5. If the Ec > 0 move the job to the end of the queue
in the next dt units of time. In preemptive scheduling this then calculate the error value of the first job in
applies every time a request is scheduled to run after an the queue Ef and the next job in the queue En
interruption. We denote the proportional share of task A 6. If En >= Ef j = First job of the queue
as SA, and the time interval would be the difference of Else j = Next job in the queue
time between its arrival T1 and the execution time T2. The Else j = Current job in the queue
amount of service received by task A during the time in-
terval (T1, T2) is represented as WA (T1, T 2). If an ideal
4 EXPERIMENTAL RESULTS
system exists wherein all tasks could consume their re-
sources allocation simultaneously, then the scheduler can Root node uses fair scheduling scheme. The fair schedul-
maintain the perfect state at all intervals. However in a ing scheme is simulated on Gridsim against
time multiplexing environment it is not possible to be 1) A large set of tasks
proportionally fair at all intervals and also in the real 2) A large and varying number of processors.
world no algorithm maintains perfect fairness. The idea is Table 1 and Table 2 show the Grid Resource Infrastruc-
to quantify how close an algorithm works towards perfect ture and different workloads respectively [9].When the
fairness. Equation 1 defines the service time error [7] for a same set of data is tested for FCFS, Round Robin and the
task A ,EA (T1, T2) is the difference between the amount of proposed Service Time Error algorithm. The performance
service allocated to the task during an interval T1, T 2and is compared in terms of the average cost, Task completion
the amount of time that would have been allocated under time; Error values and the results are shown in Table 3.
an ideal scheme that maintains perfect fairness for all Fig 2 and Fig 3 depict the results in terms of task comple-
tasks over all intervals. Mathematically service time error tion time and the error values.
is represented as TABLE 1 THE GRID RESOURCES ATTRIBUTES
EA (T1, T2) = WA (T1, T2) – (T1, T2) SA/ΣSi (1) Parameters Values Notations
The computation of this error could be a positive value
which indicates that a task has received more than its Total Number of Resources 10-20 Machines
ideal share over an interval; a negative value indicates per Second
that a task have received less than what it deserves and a
zero value indicates that it has received its ideal share. Speed 200-400 Million Instructions
The main objective of the algorithm is to minimize the
Number of Processors 5-6 Processing Elements
error and reduce the completion time of the tasks. A
queue is created for each node and the tasks are placed in
the queue for execution. Each task is assigned a weight
TABLE 2 WORKLOAD ATTRIBUTES
depending on various factors depending on the infra-
structure. The tasks are ordered in the decreasing order of Parameters Values Notations
their weights. Initially when the processors are free the
Total number of jobs 100 –2000
first task in the queue is assigned to the processor for the
Length of a job 1,000 –5,000 Million Instruction(MI)
first time quantum that is fixed by the grid infrastructure. Number of processors Re- 5-6 Million Instructions
The service time error is calculated for the current task in quired Per second(MIPS)
execution Ec, the task that is in the head of the queue Ef
and also for the job that is the second task in the queue En
To determine as to which job will be given the next time TABLE 3 COMPARISON OF PERFORMANCE IN TERMS OF AVER-
quantum depends on the error value if the error is posi- AGE COST, TASK COMPLETION TIME, MAXIMUM AND MINIMUM
ERROR VALUE FOR FCFS, ROUND ROBIN AND THE SERVICE
tive then it has been given enough of resources so it is
TIME ERROR. NUMBER OF TASKS 100
moved to the end of the queue. The error values of the
Parameters Average Completion Min Max
first job and the second job in the queue are compared Cost Time Error Error
and the job that has a lower error value gets the resource
for the next time quantum. This process repeats until FCFS 236232.0 9321 -1.20000 0.899999
there are no more jobs in the queue for that node. Round Robin 210345.2 8102 -0.79999 0.83333
Error Based 210345.2 6766 -0.5 0.5
While there are tasks in the queues do
1. Assign weights to the tasks
2. Arrange the tasks in decreasing order of their TABLE 4 COMPARISON OF PERFORMANCE IN TERMS OF AVER-
AGE COST, TASK COMPLETION TIME, MAXIMUM AND MINIMUM
weights ERROR VALUE FOR FCFS, ROUND ROBIN AND THE SERVICE
3. The first task in queue is executed initially for the TIME ERROR. NUMBER OF TASKS 1000
required time quantum to the node that is avail- Parameters Average Completion Min Max
able Cost Time Error Error
4. Calculate the service time error Ec for the current
job FCFS 420452.9 8251.93 -5.46000 6.941818
Round Robin 355897.6 6169.05 -4.56765 5.636500
Error Based 311192.8 5509.62 -3.27989 3.970909
JOURNAL OF COMPUTING, VOLUME 2, ISSUE 10, OCTOBER 2010, ISSN 2151-9617
HTTPS://SITES.GOOGLE.COM/SITE/JOURNALOFCOMPUTING/
WWW.JOURNALOFCOMPUTING.ORG 80

5 CONCLUSION [9] Daphnelopez, s. v. kasmir raja “A dynamic error based fair


scheduling algorithm for a computational grid”, Journal of
In this paper we have proposed a scheduling algorithm Theoretical and Applied Information Technology ,2009
for the Grid environment that could be used to schedule a [10] S. Keshav, An Engineering Approach to Computer Networks
task to a nearly largest computing power resource in a Reading Mass: Addison- Wesley, 1997
fair way. This algorithm will outperform the results in [11] D.Lopez and Rasika, “A Service Time Error Algorithm for a
Computational Grid”, Proc. Int’l conf.
terms of Cost, completion time and the error. Information
of distributed resources will be maintained in distributed Archana V. Mire BE(CTECH)-2002, MTech(CSE)-2008 , Worked
Heap Sort Tree .Information of distributed resources as a lecturer at RKNEC Nagpur (India) , AEC UPTU(India),
within one autonomy area will be maintained in form of GHRCE Nagpur University (India), SVPCET, Nagpur University.
Currently she is working as Asst Prof & heading department of
Autonomy Heap Sort Tree. Whenever a new request for Information Technology at Bapurao Deshmukh college of Engi-
resource comes on portal, Root node of all these Autono- neering Sevagram under Nagpur University (India). She is
my Heap Sort Tree takes part in construction of GHST. member of many national & international societies such as
ISTE, IAENG, and IACSIT. She is on the editorial board of inter-
Request is forwarded to corresponding root node of nation journel IJCEE. She has published papers in national &
Global Heap Sort Tree. If Queue of Root Node already internation conferences such as NCET 2007, ICICT2010 on Iris
consists of some request we apply fair scheduling policy recognition. She has organized & participated in many work-
to decide which job will be executed on Root node Re- shops &STTP.
maining jobs are shifted to the child of Root Node. In par-
ticular, the algorithm allocates the tasks to the available
processors so that no requesting task gets a share of the
resource larger than its demand and requesting tasks
with unsatisfied demands get equal shares of the re-
sources. It also guarantees that all tasks are considered for
execution. This algorithm can be integrated in the existing
Grid computing systems to improve the task allocation.

REFERENCES
[1] Ian Foster and Carl Kesselman, “The Grid: Blueprint for a New
Computing Infrastructure,” Elsevier Inc., Singapore, Second
Edition, 2004.
[2] F. Berman, A. Chien, K. Cooper, J. Dongarra, I.Foster, D. Gan-
non, L. Johnsson, K. Kennedy, C. Kesselman, J. Mellor-
Crummey, D. Reed, L.Torczon, and R. Wolski, “The GrADS
project:Software Support for High-Level Grid Application De-
velopment,” Int’l J. High Performance Computing applications,
vol. 15, no. 4, pp. 327- 344, Winter, 2001.
[3] Junwei Cao, Daniel P. Spooner, James D. Turner, Stephen A.
Jarvis, Darren J. Kerbyson, Subhash Saini, and Graham R.
Nudd, “Agent-based Resource Management for Grid Compu-
ting”, Proceedings of the 2nd IEEE/ACM International Sympo-
sium on Cluster Computing and the Grid (CCGRID’02), 21-24
May 2002 Page(s): 350 - 350
[4] Huaglory Tianfield, “Towards Agent Based Grid Resource
Management”, IEEE International Symposium on Cluster
Computing and the Grid 2005 (CCGrid 2005), 9-12 May 2005,
Page(s): 590 – 597.
[5] David Jackson. New issues and new capabilities in HPC sche-
duling with the Maui scheduler.
http://www.linuxclustersinstitute.org/Linux-HPC-
Revolution/ Archive/PDF01/Jackson\_Utah.pdf.
[6] David B. Jackson, Quinn Snell, and Mark J. Clement. Core algo-
rithms of the Maui scheduler. In International Workshop on Job
Scheduling Strategies for Parallel Processing, Lec-tures in com-
puter Science, pages 87{102, London, UK, 2001. Springer-
Verlag.
[7] Jason Nieh Chris Vaill, Hua Zhong, “Virtual Time Round Rob-
in: An O (1) Proportional Share Scheduler”, Proc. of the 2001
Usenix Technical Annual Technical Conference, Boston, USA,
2001
[8] Fufang Li, Deyu Qi, Limin Zhang, Xianguang Zhang, and Zhili
Zhang “Research on Novel Dynamic Resource Management
and Job Scheduling in Grid Computing”, Proceedings of the
First International Multi-Symposiums on Computer and Com-
putational Sciences (IMSCCS'06)

You might also like