A priority based job scheduling algorithm using IBA and EASY ...

0 downloads 0 Views 387KB Size Report
Bareilly, India [email protected]. Abstract-- Job scheduling (JS) is one of the most important issues in a Cloud system. The objective of job schedulers in.
2015 International Conference on Advances in Computer Engineering and Applications (ICACEA) IMS Engineering College, Ghaziabad, India

A Priority Based Job Scheduling Algorithm Using IBA and EASY Algorithm for Cloud Metaschedular Kalka Dubey

Mohit Kumar

Mayank Arya Chandra

ABV-Indian Institute of Information Technology and Management Gwalior, India [email protected]

Indian Institute of Technology Roorkee, India [email protected]

MJP Rohilkhand University Bareilly, India [email protected]

architecture

Abstract-- Job scheduling (JS) is one of the most important issues in a Cloud system. The objective of job schedulers in cloud computing is to meet users' requirements and optimize the utilization of cloud resources. To achieve better QoS with high resource utilization in a cloud environment, an improved backfill algorithm (IBA) using balanced spiral (BS) method can be used. Results show that IBA minimizes resource idleness up to a great extent. However, IBA does not provide support for handling job priority and QoS. We need an algorithm to maximize the resource utilization while considering priority.

x The request for jobs completion is submitted by the cloud users to metascheduler. x All the jobs are received by metascheduler and according to availability of free nodes decision for scheduling is made by querying the cloud cluster. Mapping between cloud cluster and cloud users is done by the metascheduler. x Finally, local scheduler executes jobs at cloud cluster

Keywords- Balanced spiral; Cloud computing; Improved backfill algorithm (IBA); job scheduling

I.

INTRODUCTION

Cloud computing [2] is one of the most significant technology of our time. The main idea behind cloud computing is to compete in a similar way as using some utility, such as electricity. Customers, such as large enterprises or small businesses are attracted towards cloud because of its features and characteristics. The core concept of cloud computing is to reduce the processing burden on users. Job scheduling is one of the important issues in cloud computing system. The objective of job scheduling system in cloud computing is meeting the customer requirement while maximizing utilization of cloud resources. In cloud computing there are two types of schedulers, first global or metascheduler and second local scheduler. Users submit their jobs to metascheduler and the metascheduler distributes jobs to the Virtual machines in the cloud, according to the system information [1]. After that the local scheduler distributes jobs to the processing elements. A cloud may have multiple data centers. A data center is a set of multiple scalable resources. Resources may be Software, hardware, infrastructure or platform. Every data center may have one or more virtual machines (VM). Virtual machine contains many processing elements. These processing elements are responsible for executing the user jobs.

Fig.1. Metascheduler Architecture II.

RELATED WORK

The main aim of the job scheduling algorithm is, to meet the requirements of users and maximize resource utilization. Several algorithms for job scheduling have been already proposed, which are also applicable for cloud computing. Generally used simple algorithm for job scheduling is first-come- first-serve (FCFS)[6][10]. In FCFS algorithm the first job is selected from the job pool, and job allocates

Fig.1 shows the architecture of the cloud metascheduler.There is three main components in this 978-1-4673-6911-4/15/$31.00©2015 IEEE

66

2015 International Conference on Advances in Computer Engineering and Applications (ICACEA) IMS Engineering College, Ghaziabad, India suitable resources. In other words we can say that jobs are III. PROPOSED WORK selected for allocating resources according to their order of Job scheduling is one of the important issues in cloud arrival. computing. The main objective of a job scheduling

algorithm is to meet the requirements of the users as well as maximize the resource utilization. The proposed scheme, using IBA and EASY Backfill algorithm is an attempt to achieve high resource utilization as well as to meet the requirements of user considering priority of jobs. The other algorithms, which we have discussed in Literature Review section, either failed to maximize resource utilization or did not consider the priority of jobs.

Resources are not fully utilized in the FCFS algorithm. A large job in the top of waiting queue may cause the under utilization of the other free resource. So we need some efficient job scheduling algorithm to overcome this problem. Shortest Job First scheduling (SJF)[7] in which, we select the shortest job from the waiting queue for allocating the resources. But SJF has the problem of starvation. If there are a large number of small jobs in waiting queue, then large jobs may wait for a very long time to be allocated resources. This may lead to starvation for large jobs. Another scheduling algorithm is the Longest Job First(LJF)[7] in which the longest job allocates the resources for job completion. This strategy also has the problem of starvation.

A. Architecture of proposed model In our proposed approach, the users submit their jobs (which are to be executed) along with processing elements (PEs) needed, and jobs priority. These jobs are passed to a multi-level queue component. This component puts jobs in a priority queue (here q1, q2… qn are n queues), on the basis of jobs priority. n is the number of priorities. Same priority jobs are placed in the same priority queue, one after another as per FCFS (first-come-first-serve) for that particular queue.

The job scheduling algorithms discussed above may not fully utilize the cloud resources. For full utilization of cloud resources, an efficient algorithm called a backfill scheduling algorithm, on the basis of FCFS has been proposed [6]. To achieve better QoS and high resource utilization in a cloud environment; an improved backfill algorithm (IBA)using balanced spiral (BS) method, also has been proposed[3].

In our proposed approach, the users submit their jobs (which are to be executed) along with processing elements (PEs) needed, and jobs priority. These jobs are passed to a multi-level queue component. This component puts jobs in a priority queue (here q1, q2 . qn are n queues), on the basis of jobs priority. n is the number of priorities. Same priority jobs are placed in the same priority queue, one after another as per FCFS (first-come-first-serve) for that particular queue.

$OJRULWKP,%$  6RUW WKH MREV DFFRUGLQJ WR WKH UHTXLUHGQXPEHURI3(̓V  3ODFH WKH ODUJHVW MRE LQ WKH ODVWSRVLWLRQ

For further optimizing the resource utilization, the resultant job sequence is passed to an EASY backfill component, where EASY backfilling algorithm is applied to the resultant job sequence which in turn gives out a final resultant job sequence. Fig. 3 shows the architecture of our proposed method.

 3ODFHWKHVHFRQGODUJHVWMRELQ WKHULJKWVLGHRIWKHSRRO  7KHQFKHFNIRUWKHQHVWMRE GR XQWLO DOO WKH MREV DUH ILQLVKHG  D ,I WKH VXP RI OHIW SRRO  VXP RI ULJKW SRRO WKHQ SXW WKH MRE LQ WKH OHIW SRRO RWKHUZLVHLQWKHULJKWSRRO  &RQFDWHQDWH ERWK WKH OHIW SRRO Fig.2. Improved Backfilling Algorithm (IBA)[3] Results show that, IBA minimizes resource use gaps up to a large extent, this simple algorithm gives the same priority to all the jobs. In a real scenario, users submit jobs with different priorities. Some jobs are normal jobs while others are important jobs. Hence we need a scheduling algorithm, which schedules jobs according to their priority, while maximizing resource utilization.

Fig.3. Architecture of proposed method B. Description of the algorithm Before describing the proposed algorithm, we have made the following assumptions:-

67

2015 International Conference on Advances in Computer Engineering and Applications (ICACEA) IMS Engineering College, Ghaziabad, India 6. The job sequence produced after 5 the step is the x Jobs are independent of each other. final and an optimal job sequence. x Jobs submitted to the system, must have their processing elements (PEs) need and priority C. An example to show how the proposed model works known in advance. We have taken 9 jobs with their PE requirement and x For analysis and result, job execution time for priority and showing overall working on the proposed model each job is taken as constant. TABLE I The process of proposed algorithm is as follows: 9 JOB SET WITH PE REQUIRMENT AND PRIORITY 1. Users submit jobs, its PEs requirement and priority.

Jobs J1 J2 J3

PE Required 1 2 3

Priority 1 2 3

J4

4

2

3. After putting all the jobs into their respective queues. IBA is applied on every queue separately.

J5

5

3

J6

6

1

4. All the sequences so obtained are then merged to produce a resultant job sequence.

J7

7

3

J8 J9

8 9

1 2

2. On the basis of priorities, the proposed model will place jobs into respective priority queues. For every priority the system has a separate priority queue.

5. Now the EASY backfill algorithm is applied to the resultant job sequence, so as to maximize the resource utilization.

Fig.5. Over-all working of Proposed Model

Fig.4. Flow Chart of the proposed method Fig.6. Processor distribution of jobs

68

IV.

2015 International Conference on Advances in Computer Engineering and Applications (ICACEA) IMS Engineering College, Ghaziabad, India units). RESULT AND DISCUSSION

We have Used CloudSim toolkit [5], to simulate our proposed model. CloudSim Contains classes which need to be inherited according to the requirements. To simulate our proposed model, we inherited VmAllocationPolicy Class.

Analyzing the above three experimental results, we conclude that our proposed model is better than FCFS and EASY, but little inferior to IBA. However, IBA does not consider the priorities of the jobs. Thus, in such scenarios where priorities are to be considered, our proposed model shows to work better than other scheduling algorithms.

Performance of the proposed model is evaluated on the basis of two measures x

Resource utilization

x

Processing time

V.

CONCLUSION AND FUTURE WORK

Priority Based Job Scheduling using IBA and EASY backfilling algorithm is proposed to resolve the problems which exist in the other backfilling and job scheduling strategies. As per simulation results, we can say that as compared to other algorithms the proposed algorithm enhanced the resource utilization. This work mainly discusses about, a job scheduling algorithm based on priority, IBA and EASY backfilling strategy for cloud computing. It integrates the advantages of priority and backfilling strategy, therefore increases the job scheduling efficiency of the system to a certain extent, as well as systems resource utilization rate.

We compare the simulation results for our proposed model with the results for other job scheduling strategies, i.e., FCFS, EASY, and IBA. Resource utilization is measured as Resource Utilization = Resource Used / Total Resources

We simulated our proposed model on CloudSim simulator, assuming that all the jobs have been submitted before the start. In real scenarios jobs may keep on coming. As a future work, we propose to provide fairness for low priority jobs when high priority jobs keep on coming. One of the ways to achieve fairness in such systems is to use the concept of aging, i.e., after some particular time increase the priority of low priority jobs. We also propose to improve our algorithm to accommodate jobs of different execution time requirements. REFERENCES [1]

M. Peixoto, M. Santana, J. Estrella T. Tavares, B. Kuehne, and R. Santana, “A metascheduler architecture to provide QoS on the cloud computing”, in Telecommunications (ICT), IEEE International Conference on, pp. 650 657, april 2010.

[2]

Y. Singh, M A Chandra, C Rawal , “Approach of Cloud Computing towards Environmental Sustainability,” Discovery, Volume 15, Number 41, April 9, 2014. A. Suresh and P. Vijayakarthick, “Improving scheduling of backfill algorithm using balanced spiral method for cloud metascheduler,” in recent treands in information Technology (ICRTIT), International Conference on, pp. 624 –627, june 2011. S. Yi, Z. Wang, S. Ma, Z. Che, F. Liang, and Y. Huang “Combinational backfilling for parallel job scheduling,” in Education Technology and computer (IECTC) vol 2. pp.v2-116,june 2010. R. Buyya, R. Ranjan, and R. Calheiros, “Modeling and simulation of scalable cloud computing environments and the cloudsim toolkit:challenges and opportunities”, in High Performance Computing Simulation, International Conference on, pp. 1 –11, june 2009. X. Xu and N. Ye, “Minimization of job waiting time variance on Identical parallel machine”, Systems, Man, and Cybernetics, Part C:Applications and reviews, , IEEE Transactions on, vol. 37, pp. 917927,sept 2007. J. Yang and Z. Chen, “Cloud computing research and security issues “, in Computational Intelligence and Software Engineering(CiSE), International conference on, pp.1-3 2010.

[3]

[4]

[5]

[6]

Fig.7. Comparison of utilization rate and processing time [7]

Assumptions for all the three experiments: processing time of all the jobs is same. (Here we have taken it as 3 time

69

2015 International Conference on Advances in Computer Engineering and Applications (ICACEA) IMS Engineering College, Ghaziabad, India [12] A. Tripathi and A. Mishra, “Cloud computing security considerations,” in signal Processing, Communications and Computing, IEEE, International Conference on, pp. 1–5, 2011. [13] S. Ghanbari and M. Othman, “A priority based job scheduling algorithm in cloud computing ,” Procedia Engineering, vol. 50, no. 0, pp. 778 – 785,International Conference on Advances science and Contemporary Engineering 2012. [14] J. A. Mu’alem and D. Feitelson, “Utilization, predictability,workload and user runtime estimates in scheduling the ibm sp2 with backfilling,” in parallel and Distributed Systems, IEEE Transactions, on parallel and distributed systems, vol.12, no.6, june 2001.

[8]

T. Ma and R. Buyya, “Critical-path and priority based algorithms for scheduling workflows with parameter sweep tasks on global grids,”in SBAC-PAD, International Symposium on, pp. 251–258, 2005. [9] P. Gupta and N. Rakesh, “Different job scheduling methodologies for web application and web server in a cloud computing environment,”in ICETET, International Conference on,pp. 569 572,2010. [10] D. G. Feitelson, U. Schwiegelshohn, and L. Rudolph,“Parallel job scheduling-a status report,” in In Lecture Notes in Computer Science pp. 1–16, Springer-Verlag, 2004. [11] W. Liu, “Research on cloud computing security problem and strategy,” in consumer electronics , Communications and Networks (CECNet), International Conference on, pp. 1216–1219, 2012.

70