0 evaluări0% au considerat acest document util (0 voturi)
110 vizualizări6 pagini
Cloud Computing is a well-liked computing
model to support on demand services. With the use of
Internet technologies, scalable resources are delivered as a
service to external customers. Scheduling in cloud is
responsible for selection of best suitable resources for task
execution, by considering some static and dynamic
parameters and restrictions of tasks into consideration.
The user’s perspective of efficient scheduling may be based
on parameters like task completion time or task execution
cost etc. Both service providers and service consumers like
to ensure that resources are utilized efficiently to do their
best capacity. Both service providers and service
consumers like to ensure that resources are utilized
efficiently to do their best capacity. In this, we propose a
scheduling algorithm which addresses the major challenges
in cloud scheduling. Scheduling of jobs is done in two steps
by considering parameters like deadline, cost, profit,
response time, waiting time, turnaround time etc. Two-
Level Scheduling technique is used for both scheduling and
re-scheduling of jobs. Scheduling is done by considering
deadline, waiting time parameters. Re-Scheduling is based
on cost/profit parameters. Greedy approach is applied in
both the levels to optimise the scheduling. Finally the
simulation is carried out and its efficiency is analysed with
existing scheduling algorithms.
Titlu original
Deadline – Cost Based Job Scheduling Using
Greedy Approach in a Multi-Layer
Environment
Cloud Computing is a well-liked computing
model to support on demand services. With the use of
Internet technologies, scalable resources are delivered as a
service to external customers. Scheduling in cloud is
responsible for selection of best suitable resources for task
execution, by considering some static and dynamic
parameters and restrictions of tasks into consideration.
The user’s perspective of efficient scheduling may be based
on parameters like task completion time or task execution
cost etc. Both service providers and service consumers like
to ensure that resources are utilized efficiently to do their
best capacity. Both service providers and service
consumers like to ensure that resources are utilized
efficiently to do their best capacity. In this, we propose a
scheduling algorithm which addresses the major challenges
in cloud scheduling. Scheduling of jobs is done in two steps
by considering parameters like deadline, cost, profit,
response time, waiting time, turnaround time etc. Two-
Level Scheduling technique is used for both scheduling and
re-scheduling of jobs. Scheduling is done by considering
deadline, waiting time parameters. Re-Scheduling is based
on cost/profit parameters. Greedy approach is applied in
both the levels to optimise the scheduling. Finally the
simulation is carried out and its efficiency is analysed with
existing scheduling algorithms.
Cloud Computing is a well-liked computing
model to support on demand services. With the use of
Internet technologies, scalable resources are delivered as a
service to external customers. Scheduling in cloud is
responsible for selection of best suitable resources for task
execution, by considering some static and dynamic
parameters and restrictions of tasks into consideration.
The user’s perspective of efficient scheduling may be based
on parameters like task completion time or task execution
cost etc. Both service providers and service consumers like
to ensure that resources are utilized efficiently to do their
best capacity. Both service providers and service
consumers like to ensure that resources are utilized
efficiently to do their best capacity. In this, we propose a
scheduling algorithm which addresses the major challenges
in cloud scheduling. Scheduling of jobs is done in two steps
by considering parameters like deadline, cost, profit,
response time, waiting time, turnaround time etc. Two-
Level Scheduling technique is used for both scheduling and
re-scheduling of jobs. Scheduling is done by considering
deadline, waiting time parameters. Re-Scheduling is based
on cost/profit parameters. Greedy approach is applied in
both the levels to optimise the scheduling. Finally the
simulation is carried out and its efficiency is analysed with
existing scheduling algorithms.
Deadline Cost Based Job Scheduling Using Greedy Approach in a Multi-Layer Environment S.Selvi 1 , R. Maheswari 2 , Dr.B.Kalaavathi 3 1 Asst. Professor, Department of CSE, Angel College of Engineering and Technology, India 2 PG Scholar, Department of CSE, Angel College of Engineering and Technology, India
3 Professor/Head, K.S.R. Institute for Engineering and Technology, Tiruchengode, India ABSTRACT-- Cloud Computing is a well-liked computing model to support on demand services. With the use of Internet technologies, scalable resources are delivered as a service to external customers. Scheduling in cloud is responsible for selection of best suitable resources for task execution, by considering some static and dynamic parameters and restrictions of tasks into consideration. The users perspective of efficient scheduling may be based on parameters like task completion time or task execution cost etc. Both service providers and service consumers like to ensure that resources are utilized efficiently to do their best capacity. Both service providers and service consumers like to ensure that resources are utilized efficiently to do their best capacity. In this, we propose a scheduling algorithm which addresses the major challenges in cloud scheduling. Scheduling of jobs is done in two steps by considering parameters like deadline, cost, profit, response time, waiting time, turnaround time etc. Two- Level Scheduling technique is used for both scheduling and re-scheduling of jobs. Scheduling is done by considering deadline, waiting time parameters. Re-Scheduling is based on cost/profit parameters. Greedy approach is applied in both the levels to optimise the scheduling. Finally the simulation is carried out and its efficiency is analysed with existing scheduling algorithms.
Keywords -- Scheduling, deadline, cost/profit, two-level scheduling, re-scheduling, priority scheduling, greedy approach. I. INTRODUCTION The term Cloud is the default symbol of internet in diagrams and Computing which means computation, coordination logic, Storages etc. Cloud computing environment serves and satisfies user requirements as Pay-Per use basis.
CLOUD computing is a computing paradigm in which different computing resources such as infrastructure, platforms, and software applications are made accessible over the Internet to remote user as services. Cloud computing becomes visible in a way that
provides on-demand resources to the users, so as to precede locally available computational power, delivering new computing resources whenever necessary. The Cloud computing environment provides resources dynamically whenever, wherever demanded by the user. The resource is utilized by the user without having enough knowledge about the technical details involved in the resource provider. Cloud computing becomes visible in a way that provides on-demand resources to the users, so as to precede locally available computational power, delivering new computing resources whenever necessary. With the use of computing resources (hardware and software) that are delivered as a service over a network, it provisioned and released with minimal management effort; dynamically scalable infrastructure for computation, application hosting, content storage and delivery The basic idea of cloud computing is that reuse of IT facilities, ease of organize the services with very low expenses and constant operational expenses leading to variable pricing schemes and reduced opportunity costs. It leverages the economies for both services providers and users of the cloud. The projected benefits of cloud computing are very compelling both from a cloud consumer as well as a cloud services provider perspective. SCHEDULING
Scheduling is that allocating resources to the needed jobs, allocating resources according to the budget constraints, etc., in cloud environment. There are many types of scheduling algorithms available in cloud computing. To achieve high performance, efficient use of resources, best system throughput, budget constraints, Quality of Service (QoS) etc., should be considered. Job scheduling algorithms in cloud computing can be categorized into two main groups; Batch Mode Heuristic scheduling Algorithms (BMHA) and Online Mode Heuristic Algorithms (OMHA). International Journal of Computer Trends and Technology (IJCTT) volume 11 number 2 May 2014 ISSN: 2231-2803 http://www.ijcttjournal.org Page75
Prioritization: Priority means providing the importance for the tasks or jobs or work based on some criteria. Jobs are collected in a queue. All collected jobs are scheduled based on the parameters like deadline and profit or cost constraint is our work to done. Multi-Layer Cloud Computing: Multi layer cloud computing consists of various layers like resource layer, User layer and service layer. The top layer is Cloud user layer, the middle level layer is Service layer (SaaS) and the bottom layer is Resource layer (IaaS).At the low layers, such as the IaaS resource layer, the IaaS provider has to allocate cloud resources to SaaS providers in an optimal manner. At the top layer, multiple cloud users need SaaS services, which are provisioned by multiple SaaS providers.
In Batch mode heuristic algorithm, Jobs are queued and collected into a set when they arrive in the system. The scheduling process starts only after a fixed period of time. By OMHA jobs are scheduled immediately they arrive to the system. By DMHA jobs or resources processing depends upon the previous one [1] . II. RELATED WORK The multi-layer optimization problem can be decomposed into three sub problems: cloud computing resource allocation problem, SaaS service provisioning problem, and user QoS maximization problem. The proposed algorithm decomposes the global optimization problem of cloud computing into three sub-problems via an iterative algorithm [2].Dynamic Resource Provisioning Algorithm by making cost and deadline as a constraints. It is able to maximize the no. of applications execution under budget and deadlines [3]. The SaaS providers aim at minimizing the payment of using VMs from cloud providers, and wants to maximize the profit earned through serving the SaaS users requests. Optimal cloud resource provisioning algorithm (OCRP) is an economic based algorithm, which includes optimization at resource and application level [4]. Synthetic Heuristics Algorithm for Independent Task Scheduling (SHIS), with goal oriented operations such as, making initial population, dual step evaluation and running the tasks by considering load balancing and quality of service, achieves the optimize makespan. The SHIS proposed algorithm, in addition to parameters such as resource access rate, quality of service and load balancing and gains an optimal solution by genetic algorithm [5]. The overall performance of cloud computing, with the deadline constraint and improve the profit of service providers. For the scheduling model, a solving method based on multi- objective genetic algorithm (MO-GA) is designed and the research is focused on encoding rules, crossover operators, selection operators and the method of sorting Pareto solutions [6]. The service-level scheduling deals with the Task-to-Service assignment where tasks of individual workflow instances are mapped to cloud services in the global cloud markets based on their functional and non-functional QoS requirements; the task-level scheduling deals with the optimization of the Task-to-VM (virtual machine) assignment in local cloud data centres where the overall running cost of cloud workflow systems will be minimized given the satisfaction of QoS constraints for individual tasks [7]. An optimization has been introduced to increase the average utilization on a single host. Several hosts are available to execute the users virtual desktops. A cost- based allocation algorithm has been presented that aims to maximize the quality of the service both for the customers and the service provider. To further optimize the quality of the service, a reallocation algorithm has been proposed to rebalance the virtual desktops among the available hosts after a busy period [8]. A Framework is presented that provides efficient green enhancements within a scalable Cloud computing architecture. Using power-aware scheduling techniques, variable resource management, live migration, and a minimal virtual machine design, overall system efficiency will be vastly improved in a data centre based Cloud with minimal performance overhead [9]. The use of cloud resources for a class of adaptive applications, where there could be application-specific flexibility in the computation that may be desired. Within (fixed time-limit and resource budget these) constraints, such adaptive applications need to maximize their Quality of Service (QoS), more International Journal of Computer Trends and Technology (IJCTT) volume 11 number 2 May 2014 ISSN: 2231-2803 http://www.ijcttjournal.org Page76
precisely, the value of an application-specific benefit function, by dynamically changing adaptive parameters. The design supports dynamic adaptation for applications in a cloud computing environment with the key component feedback control based dynamic resource provisioning algorithm[10]. Here they provides a unified resource allocation framework for networked clouds, we first formulate the optimal networked cloud mapping problem as a mixed integer programming (MIP) problem, indicating objectives related to cost efficiency of the resource mapping procedure, while abiding by user requests for QoS-aware virtual resources. A method for the efficient mapping of resource requests onto a shared substrate interconnecting various islands of computing resources, and adopt a heuristic methodology to address the problem[11]. An efficient resource allocation scheme for grid computing marketplace, here ad hoc grid users can buy usage of memory and CPU from grid resource providers. The ad hoc grid user agents purpose to obtain the optimized quality of service to accomplish their tasks on time with a given budget, and the goal of grid resource providers as profit maximization. Using adhoc grid resource allocation algorithm is to maximize the global utility of the ad hoc grid system which are beneficial for both grid users and grid resource providers [12].
III. PROPOSED FRAMEWORK The scheduling of tasks in cloud real-time systems has attracted by many. The demands for more complex real-time applications, which have high computational need, are done with timing constraint. The first objective is to check the performance of the turn-around activities by calculating the delay and waiting time for completing particular activity. In most real-time applications, computational complexity is a challenging factor. Priority based scheduling algorithm is used to check the time taken for turn-around activities. Evolutionary algorithms can solve often complex problems. The third objective is to report penalty by using objective function. This function has been used for providing penalty for sub-optimal solutions.
Fig. 2 Working of job scheduling
Working Architecture
Yes G r e e d y
S c h e d u l i n g
G r e e d y
S c h e d u l i n g
No J obs arrived Parameter: Deadline Process: Scheduling Schedule jobs having minimum TAT and update the resources Jobs grouped & queued Iteration: For all Jobs, ComputeTAT = WT+(TL/RPP)
For all jobs in the list Update the resource status till Resource Capacity <=Length of jobs scheduled Parameter:Cost Process:Priority Scheduling Get the resource list - Schedule jobs to resources End International Journal of Computer Trends and Technology (IJCTT) volume 11 number 2 May 2014 ISSN: 2231-2803 http://www.ijcttjournal.org Page77
Jobs Grouping: Job or task grouping means collection of components on the basis of certain behaviour or attribute. Incoming jobs are collected and it is queued continuously. Once the jobs are queued it is grouped together and scheduled according to the deadline constraint. In the proposed framework jobs are scheduled twice and then it is allocated to the resources to use it efficiently. First scheduling step is done on the basis of deadline constraints. With the result of first scheduling, the next is priority scheduling is done on the basis of Maximum profit or minimum cost. Priority Based Scheduling: In priority based scheduling algorithm, each process is assigned and the higher priority processes are scheduled before the lower priority processes. At any point of time, the process having the highest priority among all the ready processes is scheduled first. In case two processes are having the same priority, they are executed in the first come first serve order. The priority scheduling may be either pre-emptive or non-pre- emptive. The choice is made whenever a new process enters the ready queue while some process is executing. If the newly arrived process has the higher priority than the currently running process, the pre-emptive priority scheduling algorithm pre-empts the currently running process and allocates CPU to the new process. On the other hand, non-pre-emptive scheduling algorithm allows the currently running process to complete its execution and the new process has to wait for the CPU. Our proposed work which composes two steps for these scheduling. First step is that, the collected jobs are ordered according to the deadline based constraints. The result of above step is inputted to the next scheduling algorithm. In this step, priority scheduling is done based on minimum resource cost.
Deadline Constrained Based - To improve the completion time of tasks greedy algorithm is used with aim of minimizing the turnaround task of individual tasks, resulting in an overall improvement of completion time. Turnaround Time = Resource Waiting Time + Job Length / Processing Power of Resource
Minimum Cost Based - The resource with minimum cost is selected and tasks are scheduled on it until its capacity is supported. After scheduling each task the resource status is updated accordingly. Thus the selection of task and target resource is sequential once they are prioritized according to user needs. Cost of Job = (Job length / Processing Power of Resource) * Resource Cost
The jobs list is rearranged with tasks arranged in ascending order of deadline in order to execute the task with minimum time constraint first. The cost based tasks are prioritized on the basis of task profit in descending order. This is appreciable as tasks with higher profit can be executed on minimum cost based machine to give maximum profit.
Greedy Allocation: Greedy algorithm is suitable for dynamic heterogeneous resource environment connected to the scheduler through homogeneous communication environment [4]. Greedy approach is one of the approaches used to solve the job scheduling problem. According to the greedy approach -A greedy algorithm always makes the choice that looks best at that moment. That is, it makes a locally optimal choice in the hope that this choice will lead to a globally optimal solution" [5]. Deadline Constrained Based - To improve the completion time of tasks greedy algorithm is used with aim of minimizing the turnaround task of individual tasks, resulting in an overall improvement of completion time. IV. SIMULATION RESULTS The CloudSim toolkit is used to simulate heterogeneous resource environment and the communication environment. CloudSim(2.1.1) simulator is used to verify the correctness of proposed algorithm. The experiments are performed with Sequential assignment which is default in CloudSim and the proposed algorithm. The jobs arrival is Uniformly Randomly Distributed to get generalized scenario. The performance report about the result is shown here.
Fig. 3 Analysis of Various Algorithms International Journal of Computer Trends and Technology (IJCTT) volume 11 number 2 May 2014 ISSN: 2231-2803 http://www.ijcttjournal.org Page78
Fig. 4 Average Resource Usage comparisons The above graphs which shows analysis of the various algorithms like First Comes First Serve (FCFS), Round Robin (RR) and Priority algorithms shown in Figure 3. Likewise, figure 4 shows about the Average Resource Usage of CPU for various numbers of processes. According to this the performance of the proposed algorithm implemented and it is executed. V. CONCLUSION As the cloud environment possesses different challenges over resource management, greedy scheduling technique allocates the jobs to the resources based on priority, deadline and cost. Multi-Layer optimization in service oriented cloud computing is to optimize the utility function of cloud computing, subject to resource constraints of an IaaS provider at the resource layer, service provisioning constraints of a SaaS provider at the service layer and user QoS(Quality of Service) constraints of cloud users at application layer, respectively. IaaS providers ensure that, the resources are utilized efficiently and to their best capacity so that resource potential is not left idle. The tasks from users are collected on the basis of considering some parameters and it is optimized globally. Two- Level Scheduling technique is used for scheduling and re-scheduling. Greedy technique is used to select the resources on the basis of task constraints. Finally an evaluation of proposed framework with existing techniques was conducted by means of resource cost, resource utilization, job arrival time and priority. Finally the simulation is carried out and its efficiency is analysed with existing scheduling algorithms. VI. REFERENCES [1] Maheswari.R, Selvi.S, A Survey on scheduling algorithms in cloud computing , International Journal of Engineering Research & Technology (IJERT), Vol. 2, Issue 10, October 2013 [2] Li chunlin, Li Layuan : Multi-Layer Resource Management in Cloud Computing Springer Science+Business Media New York 2013 [3] Naimisha S Trivedi,Devyaniba S Chudasama,Dynamic Resource Provisioning for Deadline and Budget Constrained Application in Cloud Environment, Int.J.Computer Technology & Applications,Vol 4 (3),462-465, May-June 2013 [4] Chunlin Li La Yuan Li, Optimal resource provisioning for cloud computing Environment, Published online: 25 April 2012 Springer Science+Business Media, LLC 2012 [5] ArashGhorbanniaDelavar, Yalda Aryan, A Synthetic Heuristic Algorithm for Independent Task Scheduling in Cloud Systems, IJCSI International Journal of Computer Science Issues, Vol. 8, Issue 6, No 2, November 2011 [6] Jing Liu, Xing-GuoLuo, Xing-Ming Zhang, Fan Zhang and Bai-Nan Li, Job Scheduling Model for Cloud Computing Based on Multi-Objective Genetic Algorithm, IJCSI International Journal of Computer Science Issues, Vol. 10, Issue 1, No 3, January 2013 [7] ZhangjunWu, Xiao Liu,ZhiweiNi,Dong Yuan, Yun Yang, A market-oriented hierarchical scheduling strategy in cloud workflow systems , Springer Science+Business Media, LLC 2011. [8] Lien Deboosere, Bert Vankeirsbilck, Pieter Simoens, Filip De Turck, Bart Dhoedt, Piet Demeester Efficient resource management for virtual desktop cloud computing Published online: 15 February 2012 Springer Science+Business Media, LLC 2012. [9] Andrew J. Younge, Gregor von Laszewski, Lizhe Wang, Sonia Lopez-Alarcon, Warren Carithers,Efficient Resource Management for Cloud Computing Environments, [10] Qian Zhu, GaganAgrawal, Resource provisioning with budget constraints for adaptive applications in cloud environment, ACM [11] ChrysaPapagianni, ArisLeivadeas, SymeonPapavassiliou, VasilisMaglaris, Cristina Cervello Pastor, and Alvaro Monje, On the optimal allocation of virtual resources in cloud computing networks, IEEE Transactions on computers, Vol. 62, No. 6, June 2013. [12] Chunlin Li,Layuan Li, An efficient resource allocation for maximizing benefit of users and resource providers in ad hoc grid environment,Published online: 25 May 2011, Springer Science+Business Media, LLC 2011
International Journal of Computer Trends and Technology (IJCTT) volume 11 number 2 May 2014 ISSN: 2231-2803 http://www.ijcttjournal.org Page79
AUTHORS BIOGRAPHY
1 Mrs. S. Selvi, pursuing her Ph.D in the area of cloud computing. She has received her B.E degree in Computer Science and Engineering from Anna University, Chennai. She completed her M.E. degree in computer science and engineering from Anna University, Chennai. Her area of interest includes Cloud computing, Network security and Compiler design. She has published 8 papers in national conferences and 3 papers in international conferences. She has attended 6 national workshops, 1 seminar and 1 FDP program from various colleges. Also, she has organized 3 workshops, 3 Seminars, 2 guest lectures, 1 symposium and 1 national conference on various topics. Also she published papers in 3 journals.
2 Mrs. R. Maheswari has received B.E. degree in Computer Science and Engineering from Anna University, Coimbatore and pursuing her M.E. degree in Computer Science and Engineering from Anna University, Chennai. She has published 3 papers in national conferences. She has presented 3 papers in technical symposiums. She has attended 3 Seminars and 5 workshops. She is one of the University rank holder during the year 2007-2011. She has secured centum in Java and Digital principals and system design. She has undergone training in MIT- FOSS Club for a period of 7 days. She is a member of MISTE. She has undergone in- plant training for 15 days in several organizations.
3 Mrs. Dr. B. Kalaavathi received B.E. (Computer Science and Engineering) degree in 1993 from Bharathiyar University, M.Tech from Pondicherry University in 2000 and Ph.D from Periyar University in 2010. She is currently working as a Professor/Head in the Department of CSE in K.S.R. Institute for Engineering and Technology,Tiruchengode. She has about 19 years of experience in teaching. She is a member of CSI & ISTE INDIA. Her current areas of interest include Mobile Computing, Data Structures and Algorithms Analysis