# Online Scheduling for Cloud Computing and Different Service Levels

Save this PDF as:

Size: px
Start display at page:

## Transcription

3 ceptance and allocation of a job to a machine, we use the preemptive earliest due date first (preemptive EDD) algorithm to generate a solution for this allocation and for each machine separately Note that the preemptive EDD algorithm exclusively assigns the machine to a job at any given time while in practice, resources of a machine may be assigned to different jobs in parallel, for instance, if the machine is a multicore processor Nevertheless, the preemptive EDD algorithm is well suited for our purpose as it is easy to apply and yields an optimal solution for the 1 prmp,r j,online L max problem, see Pinedo [6] In general, the lateness L j of job J j in schedule S is defined to be max{c j d j, 0} Then, we have L max = max j {L j } Remember that for all machine schedules in our problems, L max =0must hold as no job can be late Furthermore, the preemptive EDD algorithm produces a non-delay (greedy) schedule and therefore does not delay the use of resources to the future when yet unknown jobs may need them IV A SINGLE SERVICE LEVEL AND A SINGLE MACHINE First, we address a simple scenario with a single service level S I and a single machine, abbreviated SSL-SM The results of this scenario are useful for more realistic scenarios This scenario is a special case of hard real-time scheduling A Bounds for SSL-SM For SSL-SM, Das Gupta and Palis [3] have already presented an upper bound for the competitive factor In order to consider practical IaaS environments, we introduce a minimal possible processing time > 0 and the maximal possible processing time of any submitted job, that is, we assume that the provider sets some limits on the processing time of a job Furthermore, we allow rational slack factors but restrict the granularity such that either = or pmin hold Except for and, Theorem 1 is very similar to Theorem 2 of the paper by Das Gupta and Palis and uses the same proof idea Nevertheless, we repeat the proof as we are using a similar concept in later sections Theorem 1: c V 1 (1 pmin ) 1 holds for SSL-SM with service level S I Proof: The adversary submits at time r 0 = 0 a job J 0 with processing time p 0 = IfJ 0 is not accepted then the adversary does not submit any other job resulting in c V =0 If job J 0 is accepted and if holds then the adversary immediately submits another job J fi with r fi = 0 p fi = ( ) d fi = ( ) d 0 = If job J fi is not accepted then the adversary does not submit any additional job and we have c V = (( ) ) ( ) Subsequently, we assume that job J fi is accepted If = holds, we simply delete the terms corresponding to job J fi Next, the adversary submits identical jobs J j with 1 j and r j = 0 p j = d j = >d fi One job J j with 1 j must be rejected as we have p 0 + p fi + = +( ) + = + = d 1 + = = d fi + However, in an optimal schedule, job J 0 will be rejected and jobs J 1 to J fi are accepted as they can all complete in time Therefore, we have c V (( 1) + ) = 1 (1 1 ) The combination of the three options yields c V max{0, = 1 (1 ) ( ), 1 (1 1 ) 1 } B Algorithm for SSL-SM For SSL-SM, Das Gupta and Palis [3] proposed a simple algorithm that we call greedy acceptance This algorithm accepts every new job if this job and all previously accepted jobs can be completed in time Theorem 2 is similar to the Theorem 3 in the paper of Das Gupta and Palis [3] and shows that the competitive factor of greedy acceptance matches the upper bound of Theorem 1 for unrestricted processing times However, we only have a single fixed slack factor while Das Gupta and Palis allow arbitrary stretch factors as long as they exceed a minimum value As our problem is a special case of the hard real-time problem, we can use a simpler proof whose idea will also be used in later sections Theorem 2: Greedy acceptance has the competitive factor 1 1 for SSL-SM with service level S I Proof: Let us consider the interval [0, max j d j ) This interval is partitioned into a sequence of intervals such that each interval [a, e) consists of a subinterval [a, b) without 1063

4 any idle time in the schedule (non-idle subinterval), and a completely idle subinterval [b, e) Any completely idle interval starting at time 0 is ignored as there is no job that can be executed within this interval due to our greedy acceptance policy and the non-delay property of a preemptive EDD schedule Consider an arbitrary interval [a, e) as defined above Assume a job J 0 with a r 0 <C max C max is the end of the schedule at the time when J 0 is submitted Clearly, C max b holds r 0 + p 0 < C max + p 0 p 0 < C max r 0 1 p 0 < (C max r 0 ) (1) 1 is a necessary condition to reject job J 0 Note that Condition 1 is not sufficient as preemption may allow acceptance of J 0 although the condition is not valid Due to Condition 1, a job J 1 with a r 1 C max b and deadline d 1 > r 1 +(C max r 1 ) 1 = C max 1 r 1 1 is not rejected by greedy acceptance Hence, there cannot be any larger non-idle subinterval in interval [a, e) than interval f [a, max{e, b I 1 a 1 }) for any acceptance policy As this result holds for all intervals, we have c V (G SSL-SM ) b b a 1 a 1 a = 1 =1 1 V A SINGLE SERVICE LEVEL AND MULTIPLE MACHINES Next, we extend the infrastructure to many identical machines while there is still only a single service level Das Gupta and Palis [3] have shown that the upper bound of the single machine model also holds for the parallel identical machine model Therefore, we only sketch an alternative simple proof for our special case of a single slack factor Theorem 3: c V 1 1 holds for SSL-PM with service level S I if the ratio between the largest and the smallest processing time of a job can be arbitrarily large Proof: Let us consider only jobs that are submitted at time 0 However, remember that the provider must decide whether a job is accepted before he learns about the next job If at least one job is allocated to each machine then the adversary submits m jobs with a sufficiently large processing time p and deadline p Only 1 of these jobs can be executed on each machine resulting in c V δ with δ 0 for p, see Theorem 1 Therefore, our algorithm must keep at least one machine idle and guarantee c V > 1 1 using only the remaining m 1 machines We repeatedly apply the same argument to the remaining machines until we end up with a single machine causing a contradiction to Theorem 1 If the processing times of the jobs are restricted then we cannot apply the proof concept of Das Gupta and Palis However, we can obtain a slightly larger upper bound for SSL-PM with restricted processing times f Corollary 4: c V I 1+ (1 holds for SSL-PM pmax ) with service level S I and its integer slack factor < pmax Proof: At time 0, the adversary submits identical (small) jobs with processing time until k jobs have been accepted for some given integer k<mor m jobs have been submitted Note that of these small jobs can be executed on each machine If less than k of these small jobs are accepted then the adversary does not submit any additional jobs resulting in c V < k m (2) Otherwise the adversary immediately submits m (large) jobs with processing time and release date 0 of the large jobs can be allocated to a machine that does not execute any small job while only 1 of these jobs can be assigned to any other machine Therefore, at most m k large jobs can be accepted while in the optimal schedule all small jobs are rejected and all large jobs are accepted This results in c V (m k) + k m = m k + k m m (3) Together, Inequalities 2 and 3 produce c V min{ k m, m k m + k m } For k = 1+ (1 m, the right hand sides of ) pmax Inequalities 2 and 3 have the same expression and we obtain c V 1+ (1 pmin ) A Algorithm for SSL-PM Greedy acceptance has the same competitive factor for SSM-SM and SSL-PM, see [3] It is open whether an algorithm can exploit a possible restriction of processing times Although the result is known, we provide an extension of the proof of Theorem 1 to the parallel identical machine model as we need this proof later in Section VII 1064

5 Theorem 5: Greedy acceptance has the competitive factor 1 1 for SSL-PM with service level S I Proof: We use the same approach as in the proof of Theorem 2 Again the schedule interval [0, max j d j ) is partitioned into several intervals Whenever a job starts on an idle machine, a new interval starts Therefore, within such an interval, it is not possible that an completely idle subinterval is followed by a non-idle subinterval on any machine, that is, for a machine i, an interval [a, e) can either be a non-idle interval (b i = e) or a completely idle interval (b i = a) or a non-idle subinterval [a, b i ) followed by a completely idle subinterval [b i,e) Consider an arbitrary interval [a, e) as defined above, and assume that job J 0 is submitted at time r 0 with a r 0 <b i for all machines i and that job J 0 is rejected We know from the proof of Theorem 2 that the proof is not affected by distinguishing between the non-idle subinterval at time r 0 and at the final non-idle subinterval Therefore, we only consider the final values b i r 0 + p 0 < b i + p 0 p 0 < b i r 0 1 p 0 < (b i r 0 ) 1 (b i a) 1 (4) must hold for all machines to reject job J 0 Due to Condition 4, a job J 1 with d 1 > r 1 +(b i r 1 ) 1 = b i 1 r 1 1 for at least one machine i is not rejected by greedy acceptance Due to a r 1, there cannot be any larger non-idle subinterval in interval [a, e) than interval f [a, max{e, min i {b i } I 1 a 1 }) As this result holds for all intervals, we have see the proof of Theorem 2 c V (G SSL-PM ) 1 1, VI MULTIPLE SERVICE LEVELS AND A SINGLE MACHINE In general, IaaS providers offer several service levels In our model, these levels differ in their slack factors and the price for one processing time unit Contrary to the hard real-time problem, we use a fixed number of service levels and slack factors Additionally, our service level include the unit price Note that our claims only refer to two different service levels S I and S II We always require 1 < <I < and >I for the slack factors and the price values, respectively Sometimes, additional restrictions are introduced In most cases, an extension to more than two service levels is possible but will lead to increased complexity without providing additional insights In this section, we restrict ourselves again to a single machine This scenario is abbreviated MSL-SM A Bounds for MSL-SM For each service level, we can use Theorem 1 to determine an upper bound for the competitive factor Clearly, the smallest of these upper bounds is an upper bound for the competitive factor for MSL-SM Furthermore, we can determine an even stronger upper bound for some slack factors As in Section IV-A, we assume that pmin holds for the slack factor of service level S I Corollary 6: } I c V max{ ( 1), ui holds for MSL-SM with two service levels S I and S II, and I < 2 Proof: The proof is similar to the proof of Theorem 1 The adversary submits at time r 0 = 0 a job J 0 with processing time p 0 = and service level S II IfJ 0 is not accepted then the adversary does not submit any other job resulting in c V = 0 (5) Otherwise the adversary immediately submits another job J 1 with service level S II and r 1 = 0 p 1 = ( 1) d 1 = I ( 1) d 0 = I If job J 1 is not accepted then the adversary does not submit any additional job and we have c V I = ( 1) I ( 1) (6) Otherwise the adversary submits a last job J 2 with service level S I and r 2 = 0 p 2 = d 2 = Note that the relation d 2 d 1 = ( I ( 1)) > 0 I < 1 x holds As the function x 1 =1 1 x 1 is decreasing for x>1, wehaved 2 >d 1 due to 1 < <I < 2 and =2 Therefore, job J 2 must be rejected due to p 0 + p 1 + p 2 = +( 1) + = + > max{d 1,d 2 } = d

6 However, in an optimal schedule, job J 0 will be rejected and jobs J 1 and J 2 complete in time Therefore, we have (( 1) + ) I c V ( 1) I + = 1+ pmin (7) 1+ ui I The combination of the three Inequalities 5, 6, and 7 yields } I c V max {0, ( 1), ui For unrestricted processing times, we have c V 1 1+ ui I u = 1 II 1+ ui I < 1 1 < 1 1 I due to >I and 1 < <I Therefore, the bound of Corollary 6 is tighter than the bounds of Theorem 1 for the scenario with two service levels and <I < 2 Note that the result of Theorem 1 is obtained for = I This relation between the Theorem 1 and Corollary 6 suggests that the bound of Corollary 6 also holds for all values of and I However, this problem is still open Note that the determination of such a bound becomes more complex for I > 2 Then the scenario of Corollary 6 comprises at least three jobs with service level S II : Job J 0, job J fii, and jobs J 1 to J fii Therefore, the number of options for the determination of an upper bound for the competitive factor increases B Algorithm for MSL-SM First, we evaluate the performance of the repeatedly used greedy acceptance algorithm for multiple service levels Corollary 7: Greedy acceptance has the competitive factor uii (1 1 ) for MSL-SM with service levels S I and S II Proof: The proof is similar to the proof of Theorem 2 It uses the same definitions for the intervals [a, e), [a, b), and [b, e) However, subinterval [a,b) may contain jobs with different service levels Let job J 0 be a job with service level S I that is submitted at time r 0 with a r 0 <b Note that Condition 1 in the proof of Theorem 2 is also a necessary condition for job rejection in this proof In the worst case, there is an optimal schedule such that interval [a, e) contains a non-idle subinterval [a, b + b a 1 ), in which only jobs with service level S I are executed while the algorithm only allocates jobs with service level S II to J j (I -h II ) p j r j C j r j +h II p j r j +I p j ->time Figure 2 Possible Delay of a Job with Service Level S II due to the Acceptance Factor the interval [a, b) Therefore, we have c V (G MSL-SM ) I ( ) = I (1 1 ) The competitive factor of Corollary 7 is tight for greedy allocation if the processing times are unrestricted, see Example 8 But contrary to SSL-SM and SSL-PM, a comparison between Corollaries 6 and 7 indicates that the competitive factor of greedy allocation may not be tight in general Example 8: Let and I be integers At time 0, I identical jobs with service level S II and processing time p 1 = are submitted Greedy acceptance accepts all jobs as their deadline d 1 = I p is identical to their total processing time Immediately afterwards, identical jobs with service level S I, processing time p 2 =, and release date 0 are submitted Due to d 2 = <d 1 +p 2, we accept any jobs with service level S I resulting in the ratio (fi 1) pmax+ɛ I (( 1) + ɛ) I = I ( 1) I ɛ + Therefore, we consider a different algorithm called Restricted acceptance for MSL-SM This algorithm uses an acceptance factor h II 1 and only accepts a job J j with service level S II only if d i C i h II p i holds for all jobs J i with service level S II and d i d j Here, C i denotes the completion time of job J i in the preemptive EDD schedule after the inclusion of job J i Intuitively, we replace the slack factor I by h II I when deciding whether to accept a new job with service level S II, while the original slack factor is active when a job with service level S I is submitted Consider a job J j with service level S II that completes at time C j in a schedule that does not execute any job with service level S I after time r j This job can always be delayed for at least time p j (I h II ) (C j r j ) fii hii h II by jobs with service level S I, see Fig

7 Corollary 9: Restricted acceptance has the competitive factor min{ hii 1 fi 1 I, hii I (1 uii )} for MSL-SM with service levels S I and S II, and h II <I (1 1 ) Proof: Again the proof uses the same basic concept and the same definitions of intervals [a, e), [a, b), [a, C max), and [b, e) as in the proof of Theorem 2 First, we consider an instance in which only jobs with service level S II are submitted Assume a job J 0 with a r 0 <C max r 0 + p 0 h II < C max r 0 + p 0 p 0 < C max r 0 h II 1 p 0 I < (C max I r 0 ) (8) h II 1 is a necessary condition to reject J 0 Due to Condition 8, a r 0, and C max b, no other acceptance policy can generate a larger non-idle subinterval in interval [a, e) than I h II 1 interval [a, max{e, a +(b a) }) Therefore, in a schedule that contains only jobs with service level S II,we have c V (R MSL-SM ) h II 1 (9) I Now, we consider a job J 1 with service level S I and a r 1 b Let us further assume that in the present schedule, all jobs in interval [r 1,b) must not complete later than d 1 as job parts that can be executed after d 1 can be ignored with respect to job J 1 Moreover, jobs with service level S I occupy periods with a total length of g in interval [a, b), see Inequalities 10 (b r 0 ) fii h II p 0 < b r 0 + p 0 + g (10) b r 0 p 0 hii I g > p 0 ( (1 h II ) 1) I (11) is a necessary condition to reject J 1 Note that the use of h II is only beneficial if g in Condition 11 is positive This yields h II <I (1 1 ) Using the same arguments as in the proof of Theorem 2, we have c V (R MSL-SM ) g + I (p 0 ( 1) g) min g p 0 = g ( I )+I p 0 ( 1) min g p h II (1 I ) I (12) if at least one job with service level S I is submitted and rejected in the interval Inequalities 12 and 9 together yield the claim of the corollary Note that we cannot easily decide whether Inequality 12 or Inequality 9 is stronger Let us compare the results of Corollaries 7 and 9 with the help of an example Example 10: Let us assume a scenario with two service levels S I and S II, and =10, I =1, =2, I =6, and h II = 2 < (1 1 2 ) 6 Greedy acceptance has the 1 competitive factor 10 (1 1 2 )= 1 20 while the competitive factor for restricted acceptance is min{ = 1 6, ( )= 1 5 } = 1 6 VII MULTIPLE SERVICE LEVELS AND MULTIPLE MACHINES In this section, we address the scenario MSL-PM with different service levels and parallel identical machines MSL-PM closely matches real IaaS installations that typically comprise many machines to support scalability To efficiently exploit this large number of machines, the IaaS provider needs many independent customers In order to improve flexibility, different service levels are offered To analyze algorithms for MSL-PM, we use the results obtained in Sections VI and V First, we address greedy allocation As in Section VI, we restrict ourselves to two different service levels although the results can be generalized at the cost of increased complexity Corollary 11: Greedy acceptance has the competitive factor uii (1 1 ) for MSL-PM with service levels S I and S II Proof: The proof uses Theorem 5 and Corollary 7 The proof of Theorem 5 extends the interval definitions from a single machine to multiple machines It shows that greedy allocation cannot benefit from multiple machines as required interval properties must hold for each property separately For each machine, we apply the proof of Corollary 7 Moreover, we can extend Example 8 to show that the competitive factor of Corollary 11 is tight for greedy allocation However, we can give some service levels a high priority on some machines to obtain a better result More specifically, jobs with service level S I can be allocated to every machine while jobs with service level S II can only be allocated to some machines, that is, we use machine eligibility constraints with a so called hierarchical server topology or grade of service, see Bar-Noy et al [2] We name this algorithm Eligible acceptance A similar approach has also been used in the context of scheduling parallel jobs in a grid, see Tchernykh et al [8] Theorem 12: Eligible acceptance has the competitive factor 1 1 I 1+ 1 f 1 II 1 f 1 I I for MSL-PM with services levels S I and S II Proof: Jobs with service level S II can only be allocated to k selected machines Then we obtain c V (E MSL-PM ) k m (1 1 ), (13) I 1067

8 due to Theorem 5 In the worst case, a large number of jobs with service level S I are submitted just after the jobs with service level S II The jobs with service level S I are only allocated to their exclusive set of m k machines while on the other k machines, their execution is prevented due to the jobs with service level S II Using Theorem 5 for m k machines and Corollary 7 for the remaining k machines, we have c V (E MSL-PM ) (k I +(m k) ) ( 1) m (14) For k = m I 1 1 uii and a sufficiently large m such that k is an integer, the right hand sides onequalities 13 and 14 yield the same result c V (E MSL-PM ) 1 1 I I 1 1 uii Again, we can use an extension of Example 8 to show that the competitive factor of Theorem 12 is tight for eligible acceptance The competitive factor of eligible acceptance together with a suitable selection of k, see Theorem 12, is always larger than the competitive factor of conventional greedy acceptance, see Corollary 11, as uii < 1 < 1 1 I always 1 1 holds In the following example, we use the values of Example 10 Example 13: Let us assume a scenario with two service levels S I and S II, and = 10, I = 1, = 2, I =6, and m =77 According to Theorem 12, we select 77 k = a competitive factor 30 =30 Then eligible acceptance achieves 77 ( This competitive factor is better than the competitive factor 1 5 of restricted acceptance applied to all machines, see Example 10 )= 25 many other online scheduling problems, the transfer from the single machine model to the parallel identical machine model results in a worse competitive factor Therefore, this result represents a benefit of parallelism that corresponds to similar claims in practice REFERENCES [1] S K Baruah and J R Haritsa, Scheduling for Overload in Real-Time Systems, IEEE Transaction on Computers, 46 (9) , 1997 [2] A Bar-Noy, A Freund, and S Naor, On-line load balancing in a hierarchical server topology, SIAM Journal on Computing, 2 (31) , 2002 [3] B Das Gupta and M A Palis, Online Real-time Preemptive Scheduling of Jobs with Deadlines on Multiple Machines, Journal of Scheduling, Special Issue on Efficient Scheduling Algorithms, 4 (6), , 2001 [4] L Epstein, J Noga, and G J Woeginger, On-line Scheduling of Unit Time Jobs with Rejection: Minimizing the Total Completion Time, Operations Research Letters, 30 (6), , 2002 [5] P Patel, A Ranabahu, and A Sheth, Service Level Agreement in Cloud Computing, Cloud Workshops at the International Conference on Object Oriented Programming, Systems, Languages and Applications OOPSLA09, Orlando, Florida, 2009 [6] M Pinedo, Scheduling: Theory, Algorithms, and Systems, 2nd ed, Prentice-Hall, New Jersey, 2002 [7] D Sleator and R Tarjan, Amortized Efficiency of List Update and Paging Rules, Communications of the ACM 28 (2), , 1985 [8] A Tchernykh, U Schwiegelshohn, R Yahyapour, and N Kuzjurin, On-line hierarchical job scheduling on grids with admissible allocation, Journal of Scheduling, 13 (5), , 2010 [9] V Yarmolenko and R Sakellariou, An Evaluation of Heuristics for SLA Based Parallel Job Scheduling, Proceedings of 20th International Parallel and Distributed Processing Symposium IPDPS 06, Rhodes Island, 2006 VIII CONCLUSION Based on the models in hard real-time scheduling, we have introduced a simple model for service level based job allocation and scheduling We have discussed scenarios with a single or many identical machines For these scenarios, we have presented some upper bounds of competitive factors and simple algorithms including their performance evaluation with competitive analysis It is particularly interesting that a most realistic scenario with two service levels and parallel identical machines has a better competitive factor than the otherwise same scenario using only a single machine In 1068

### Objective Criteria of Job Scheduling Problems. Uwe Schwiegelshohn, Robotics Research Lab, TU Dortmund University

Objective Criteria of Job Scheduling Problems Uwe Schwiegelshohn, Robotics Research Lab, TU Dortmund University 1 Jobs and Users in Job Scheduling Problems Independent users No or unknown precedence constraints

### How to Design a Job Scheduling Algorithm

How to Design a Job Scheduling Algorithm Uwe Schwiegelshohn Robotics Research Institute, TU Dortmund University, 44221 Dortmund, Germany http://www.irf.tu-dortmund.de Abstract. We discuss the components

### Competitive Analysis of On line Randomized Call Control in Cellular Networks

Competitive Analysis of On line Randomized Call Control in Cellular Networks Ioannis Caragiannis Christos Kaklamanis Evi Papaioannou Abstract In this paper we address an important communication issue arising

### Establishing a Mobile Conference Call Under Delay and Bandwidth Constraints

Establishing a Mobile Conference Call Under Delay and Bandwidth Constraints Amotz Bar-Noy Computer and Information Science Department Brooklyn College, CUNY, New York Email: amotz@sci.brooklyn.cuny.edu

### Scheduling Single Machine Scheduling. Tim Nieberg

Scheduling Single Machine Scheduling Tim Nieberg Single machine models Observation: for non-preemptive problems and regular objectives, a sequence in which the jobs are processed is sufficient to describe

### Bi-Objective Online Scheduling with Quality of Service for IaaS Clouds

Bi-Objective Online Scheduling with Quality of Service for IaaS Clouds Andrei Tchernykh 1, Luz Lozano 1, Uwe Schwiegelshohn 2, Pascal Bouvry 3, Johnatan E. Pecero 3, Sergio Nesmachnow 4 1 CICESE Research

### The Relative Worst Order Ratio for On-Line Algorithms

The Relative Worst Order Ratio for On-Line Algorithms Joan Boyar 1 and Lene M. Favrholdt 2 1 Department of Mathematics and Computer Science, University of Southern Denmark, Odense, Denmark, joan@imada.sdu.dk

### Decentralized Utility-based Sensor Network Design

Decentralized Utility-based Sensor Network Design Narayanan Sadagopan and Bhaskar Krishnamachari University of Southern California, Los Angeles, CA 90089-0781, USA narayans@cs.usc.edu, bkrishna@usc.edu

### Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration

Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration 1 Harish H G, 2 Dr. R Girisha 1 PG Student, 2 Professor, Department of CSE, PESCE Mandya (An Autonomous Institution under

### WORKFLOW ENGINE FOR CLOUDS

WORKFLOW ENGINE FOR CLOUDS By SURAJ PANDEY, DILEBAN KARUNAMOORTHY, and RAJKUMAR BUYYA Prepared by: Dr. Faramarz Safi Islamic Azad University, Najafabad Branch, Esfahan, Iran. Workflow Engine for clouds

### Scheduling Real-time Tasks: Algorithms and Complexity

Scheduling Real-time Tasks: Algorithms and Complexity Sanjoy Baruah The University of North Carolina at Chapel Hill Email: baruah@cs.unc.edu Joël Goossens Université Libre de Bruxelles Email: joel.goossens@ulb.ac.be

### Ronald Graham: Laying the Foundations of Online Optimization

Documenta Math. 239 Ronald Graham: Laying the Foundations of Online Optimization Susanne Albers Abstract. This chapter highlights fundamental contributions made by Ron Graham in the area of online optimization.

### Online Scheduling with Bounded Migration

Online Scheduling with Bounded Migration Peter Sanders, Naveen Sivadasan, and Martin Skutella Max-Planck-Institut für Informatik, Saarbrücken, Germany, {sanders,ns,skutella}@mpi-sb.mpg.de Abstract. Consider

### A class of on-line scheduling algorithms to minimize total completion time

A class of on-line scheduling algorithms to minimize total completion time X. Lu R.A. Sitters L. Stougie Abstract We consider the problem of scheduling jobs on-line on a single machine and on identical

### 2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

### SLA-based Admission Control for a Software-as-a-Service Provider in Cloud Computing Environments

SLA-based Admission Control for a Software-as-a-Service Provider in Cloud Computing Environments Linlin Wu, Saurabh Kumar Garg, and Rajkumar Buyya Cloud Computing and Distributed Systems (CLOUDS) Laboratory

### Classification - Examples

Lecture 2 Scheduling 1 Classification - Examples 1 r j C max given: n jobs with processing times p 1,...,p n and release dates r 1,...,r n jobs have to be scheduled without preemption on one machine taking

### Minimizing the Number of Machines in a Unit-Time Scheduling Problem

Minimizing the Number of Machines in a Unit-Time Scheduling Problem Svetlana A. Kravchenko 1 United Institute of Informatics Problems, Surganova St. 6, 220012 Minsk, Belarus kravch@newman.bas-net.by Frank

### Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

Real-Time Scheduling (Part 1) (Working Draft) Insup Lee Department of Computer and Information Science School of Engineering and Applied Science University of Pennsylvania www.cis.upenn.edu/~lee/ CIS 41,

### Dynamic Resource Allocation in Software Defined and Virtual Networks: A Comparative Analysis

Dynamic Resource Allocation in Software Defined and Virtual Networks: A Comparative Analysis Felipe Augusto Nunes de Oliveira - GRR20112021 João Victor Tozatti Risso - GRR20120726 Abstract. The increasing

Load balancing of temporary tasks in the l p norm Yossi Azar a,1, Amir Epstein a,2, Leah Epstein b,3 a School of Computer Science, Tel Aviv University, Tel Aviv, Israel. b School of Computer Science, The

### Ecient approximation algorithm for minimizing makespan. on uniformly related machines. Chandra Chekuri. November 25, 1997.

Ecient approximation algorithm for minimizing makespan on uniformly related machines Chandra Chekuri November 25, 1997 Abstract We obtain a new ecient approximation algorithm for scheduling precedence

### Completion Time Scheduling and the WSRPT Algorithm

Completion Time Scheduling and the WSRPT Algorithm Bo Xiong, Christine Chung Department of Computer Science, Connecticut College, New London, CT {bxiong,cchung}@conncoll.edu Abstract. We consider the online

### Power Management in Cloud Computing using Green Algorithm. -Kushal Mehta COP 6087 University of Central Florida

Power Management in Cloud Computing using Green Algorithm -Kushal Mehta COP 6087 University of Central Florida Motivation Global warming is the greatest environmental challenge today which is caused by

Aperiodic Task Scheduling Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2014 年 11 月 19 日 These slides use Microsoft clip arts. Microsoft copyright

### Fairness in Routing and Load Balancing

Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria

### Competitive Analysis of QoS Networks

Competitive Analysis of QoS Networks What is QoS? The art of performance analysis What is competitive analysis? Example: Scheduling with deadlines Example: Smoothing real-time streams Example: Overflow

### Common Approaches to Real-Time Scheduling

Common Approaches to Real-Time Scheduling Clock-driven time-driven schedulers Priority-driven schedulers Examples of priority driven schedulers Effective timing constraints The Earliest-Deadline-First

### A(L) denotes the makespan of a schedule produced by algorithm A for scheduling the list L of jobs, and opt(l) denotes the corresponding makespan of so

Semi-online scheduling with decreasing job sizes Steve Seiden Jir Sgall y Gerhard Woeginger z October 29, 1998 Abstract We investigate the problem of semi-online scheduling jobs on m identical parallel

### Introducción a Calendarización en Sistemas Paralelas, Grids y Nubes

CICESE Research Center Ensenada, Baja California Mexico Introducción a Calendarización en Sistemas Paralelas, Grids y Nubes Dr. Andrei Tchernykh CICESE Centro de Investigación Científica y de Educación

### Analysis of Approximation Algorithms for k-set Cover using Factor-Revealing Linear Programs

Analysis of Approximation Algorithms for k-set Cover using Factor-Revealing Linear Programs Stavros Athanassopoulos, Ioannis Caragiannis, and Christos Kaklamanis Research Academic Computer Technology Institute

### Integrating job parallelism in real-time scheduling theory

Integrating job parallelism in real-time scheduling theory Sébastien Collette Liliana Cucu Joël Goossens Abstract We investigate the global scheduling of sporadic, implicit deadline, real-time task systems

### Offline sorting buffers on Line

Offline sorting buffers on Line Rohit Khandekar 1 and Vinayaka Pandit 2 1 University of Waterloo, ON, Canada. email: rkhandekar@gmail.com 2 IBM India Research Lab, New Delhi. email: pvinayak@in.ibm.com

Multi-Robot Task Scheduling Yu ("Tony") Zhang Lynne E. Parker Distributed Intelligence Laboratory Electrical Engineering and Computer Science Department University of Tennessee, Knoxville TN, USA IEEE

### Motivated by applications in the manufacturing and service industries, we consider two

Quotation for Orders with Availability Intervals and Lead-Time Sensitive Revenues Pinar Keskinocak R. Ravi Sridhar Tayur School of Industrial and Systems Engineering, Georgia Institute of Technology, Atlanta,

### Profit Maximization and Power Management of Green Data Centers Supporting Multiple SLAs

Profit Maximization and Power Management of Green Data Centers Supporting Multiple SLAs Mahdi Ghamkhari and Hamed Mohsenian-Rad Department of Electrical Engineering University of California at Riverside,

### Approximation Algorithms

Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

### Run-time Resource Management in SOA Virtualized Environments. Danilo Ardagna, Raffaela Mirandola, Marco Trubian, Li Zhang

Run-time Resource Management in SOA Virtualized Environments Danilo Ardagna, Raffaela Mirandola, Marco Trubian, Li Zhang Amsterdam, August 25 2009 SOI Run-time Management 2 SOI=SOA + virtualization Goal:

Scheduling Sporadic Tasks with Shared Resources in Hard-Real- Systems Kevin Jeffay * University of North Carolina at Chapel Hill Department of Computer Science Chapel Hill, NC 27599-3175 jeffay@cs.unc.edu

### How Useful Is Old Information?

6 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 11, NO. 1, JANUARY 2000 How Useful Is Old Information? Michael Mitzenmacher AbstractÐWe consider the problem of load balancing in dynamic distributed

### Lecture Notes 12: Scheduling - Cont.

Online Algorithms 18.1.2012 Professor: Yossi Azar Lecture Notes 12: Scheduling - Cont. Scribe:Inna Kalp 1 Introduction In this Lecture we discuss 2 scheduling models. We review the scheduling over time

### A Comparison of General Approaches to Multiprocessor Scheduling

A Comparison of General Approaches to Multiprocessor Scheduling Jing-Chiou Liou AT&T Laboratories Middletown, NJ 0778, USA jing@jolt.mt.att.com Michael A. Palis Department of Computer Science Rutgers University

### A Near-linear Time Constant Factor Algorithm for Unsplittable Flow Problem on Line with Bag Constraints

A Near-linear Time Constant Factor Algorithm for Unsplittable Flow Problem on Line with Bag Constraints Venkatesan T. Chakaravarthy, Anamitra R. Choudhury, and Yogish Sabharwal IBM Research - India, New

### Introduction to Scheduling Theory

Introduction to Scheduling Theory Arnaud Legrand Laboratoire Informatique et Distribution IMAG CNRS, France arnaud.legrand@imag.fr November 8, 2004 1/ 26 Outline 1 Task graphs from outer space 2 Scheduling

### Journal of Computer and System Sciences

Journal of Computer and System Sciences 78 (2012) 1280 1299 Contents lists available at SciVerse ScienceDirect Journal of Computer and System Sciences www.elsevier.com/locate/jcss SLA-based admission control

### A binary search algorithm for a special case of minimizing the lateness on a single machine

Issue 3, Volume 3, 2009 45 A binary search algorithm for a special case of minimizing the lateness on a single machine Nodari Vakhania Abstract We study the problem of scheduling jobs with release times

Load Balancing Backtracking, branch & bound and alpha-beta pruning: how to assign work to idle processes without much communication? Additionally for alpha-beta pruning: implementing the young-brothers-wait

### The Conference Call Search Problem in Wireless Networks

The Conference Call Search Problem in Wireless Networks Leah Epstein 1, and Asaf Levin 2 1 Department of Mathematics, University of Haifa, 31905 Haifa, Israel. lea@math.haifa.ac.il 2 Department of Statistics,

### Approximated Distributed Minimum Vertex Cover Algorithms for Bounded Degree Graphs

Approximated Distributed Minimum Vertex Cover Algorithms for Bounded Degree Graphs Yong Zhang 1.2, Francis Y.L. Chin 2, and Hing-Fung Ting 2 1 College of Mathematics and Computer Science, Hebei University,

### Single machine models: Maximum Lateness -12- Approximation ratio for EDD for problem 1 r j,d j < 0 L max. structure of a schedule Q...

Lecture 4 Scheduling 1 Single machine models: Maximum Lateness -12- Approximation ratio for EDD for problem 1 r j,d j < 0 L max structure of a schedule 0 Q 1100 11 00 11 000 111 0 0 1 1 00 11 00 11 00

### Real Time Scheduling Basic Concepts. Radek Pelánek

Real Time Scheduling Basic Concepts Radek Pelánek Basic Elements Model of RT System abstraction focus only on timing constraints idealization (e.g., zero switching time) Basic Elements Basic Notions task

### An improved on-line algorithm for scheduling on two unrestrictive parallel batch processing machines

This is the Pre-Published Version. An improved on-line algorithm for scheduling on two unrestrictive parallel batch processing machines Q.Q. Nong, T.C.E. Cheng, C.T. Ng Department of Mathematics, Ocean

### CS 840 Fall 2016 Self Organizing Linear Search

CS 840 Fall 2016 Self Organizing Linear Search We will consider searching under the comparison model Binary tree lg n upper and lower bounds This also holds in average case Updates also in O(lg n) Linear

### An Efficient Checkpointing Scheme Using Price History of Spot Instances in Cloud Computing Environment

An Efficient Checkpointing Scheme Using Price History of Spot Instances in Cloud Computing Environment Daeyong Jung 1, SungHo Chin 1, KwangSik Chung 2, HeonChang Yu 1, JoonMin Gil 3 * 1 Dept. of Computer

### Minimum Makespan Scheduling

Minimum Makespan Scheduling Minimum makespan scheduling: Definition and variants Factor 2 algorithm for identical machines PTAS for identical machines Factor 2 algorithm for unrelated machines Martin Zachariasen,

### Compositional Real-Time Scheduling Framework with Periodic Model

Compositional Real-Time Scheduling Framework with Periodic Model INSIK SHIN and INSUP LEE University of Pennsylvania It is desirable to develop large complex systems using components based on systematic

### Modeling and Optimization of Resource Allocation in Cloud

1 / 40 Modeling and Optimization of Resource Allocation in Cloud PhD Thesis Proposal Atakan Aral Thesis Advisor: Asst. Prof. Dr. Tolga Ovatman Istanbul Technical University Department of Computer Engineering

### University Dortmund. Robotics Research Institute Information Technology. Job Scheduling. Uwe Schwiegelshohn. EPIT 2007, June 5 Ordonnancement

University Dortmund Robotics Research Institute Information Technology Job Scheduling Uwe Schwiegelshohn EPIT 2007, June 5 Ordonnancement ontent of the Lecture What is ob scheduling? Single machine problems

### A o(n)-competitive Deterministic Algorithm for Online Matching on a Line

A o(n)-competitive Deterministic Algorithm for Online Matching on a Line Antonios Antoniadis 2, Neal Barcelo 1, Michael Nugent 1, Kirk Pruhs 1, and Michele Scquizzato 3 1 Department of Computer Science,

### Commonly Used Approaches to Real-Time Scheduling

Integre Technical Publishing Co., Inc. Liu January 13, 2000 8:46 a.m. chap4 page 60 C H A P T E R 4 Commonly Used Approaches to Real-Time Scheduling This chapter provides a brief overview of three commonly

### This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination.

IEEE/ACM TRANSACTIONS ON NETWORKING 1 A Greedy Link Scheduler for Wireless Networks With Gaussian Multiple-Access and Broadcast Channels Arun Sridharan, Student Member, IEEE, C Emre Koksal, Member, IEEE,

### Dynamic Priority Scheduling. Priority-Driven Scheduling. Schedulable Utilization of FIFO

Dynamic Priority Scheduling Static-priority: Rate Monotonic (RM): The shorter the period, the higher the priority. [Liu+Layland 73] Deadline Monotonic (DM): The shorter the relative deadline, the higher

### Classification - Examples -1- 1 r j C max given: n jobs with processing times p 1,..., p n and release dates

Lecture 2 Scheduling 1 Classification - Examples -1-1 r j C max given: n jobs with processing times p 1,..., p n and release dates r 1,..., r n jobs have to be scheduled without preemption on one machine

### Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths

Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths Satyajeet S. Ahuja, Srinivasan Ramasubramanian, and Marwan Krunz Department of ECE, University of Arizona, Tucson,

### Multi-service Load Balancing in a Heterogeneous Network with Vertical Handover

1 Multi-service Load Balancing in a Heterogeneous Network with Vertical Handover Jie Xu, Member, IEEE, Yuming Jiang, Member, IEEE, and Andrew Perkis, Member, IEEE Abstract In this paper we investigate

### A Service Revenue-oriented Task Scheduling Model of Cloud Computing

Journal of Information & Computational Science 10:10 (2013) 3153 3161 July 1, 2013 Available at http://www.joics.com A Service Revenue-oriented Task Scheduling Model of Cloud Computing Jianguang Deng a,b,,

### A Constant-Approximate Feasibility Test for Multiprocessor Real-Time Scheduling

Algorithmica manuscript No. (will be inserted by the editor) A Constant-Approximate Feasibility Test for Multiprocessor Real-Time Scheduling Vincenzo Bonifaci Alberto Marchetti-Spaccamela Sebastian Stiller

### Optimizing the Cost for Resource Subscription Policy in IaaS Cloud

Optimizing the Cost for Resource Subscription Policy in IaaS Cloud Ms.M.Uthaya Banu #1, Mr.K.Saravanan *2 # Student, * Assistant Professor Department of Computer Science and Engineering Regional Centre

### Approximation Algorithms. Scheduling. Approximation algorithms. Scheduling jobs on a single machine

Approximation algorithms Approximation Algorithms Fast. Cheap. Reliable. Choose two. NP-hard problems: choose 2 of optimal polynomial time all instances Approximation algorithms. Trade-off between time

### Partitioned real-time scheduling on heterogeneous shared-memory multiprocessors

Partitioned real-time scheduling on heterogeneous shared-memory multiprocessors Martin Niemeier École Polytechnique Fédérale de Lausanne Discrete Optimization Group Lausanne, Switzerland martin.niemeier@epfl.ch

### Optimal Online-list Batch Scheduling

Optimal Online-list Batch Scheduling Jacob Jan Paulus a,, Deshi Ye b, Guochuan Zhang b a University of Twente, P.O. box 217, 7500AE Enschede, The Netherlands b Zhejiang University, Hangzhou 310027, China

### ENERGY-EFFICIENT TASK SCHEDULING ALGORITHMS FOR CLOUD DATA CENTERS

ENERGY-EFFICIENT TASK SCHEDULING ALGORITHMS FOR CLOUD DATA CENTERS T. Jenifer Nirubah 1, Rose Rani John 2 1 Post-Graduate Student, Department of Computer Science and Engineering, Karunya University, Tamil

### An Evaluation of Self-adjusting Binary Search Tree Techniques

SOFTWARE PRACTICE AND EXPERIENCE, VOL. 23(4), 369 382 (APRIL 1993) An Evaluation of Self-adjusting Binary Search Tree Techniques jim bell and gopal gupta Department of Computer Science, James Cook University,

### CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER

CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER To provide the transparency of the system the user space is implemented in software as Scheduler. Given the sketch of the architecture, a low overhead scheduler

### Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses

Overview of Real-Time Scheduling Embedded Real-Time Software Lecture 3 Lecture Outline Overview of real-time scheduling algorithms Clock-driven Weighted round-robin Priority-driven Dynamic vs. static Deadline

### A Power Efficient QoS Provisioning Architecture for Wireless Ad Hoc Networks

A Power Efficient QoS Provisioning Architecture for Wireless Ad Hoc Networks Didem Gozupek 1,Symeon Papavassiliou 2, Nirwan Ansari 1, and Jie Yang 1 1 Department of Electrical and Computer Engineering

### 1.1 Related work For non-preemptive scheduling on uniformly related machines the rst algorithm with a constant competitive ratio was given by Aspnes e

A Lower Bound for On-Line Scheduling on Uniformly Related Machines Leah Epstein Jir Sgall September 23, 1999 lea@math.tau.ac.il, Department of Computer Science, Tel-Aviv University, Israel; sgall@math.cas.cz,

### COMPLEX EMBEDDED SYSTEMS

COMPLEX EMBEDDED SYSTEMS Real-Time Scheduling Summer Semester 2012 System and Software Engineering Prof. Dr.-Ing. Armin Zimmermann Contents Introduction Scheduling in Interactive Systems Real-Time Scheduling

### International Journal of Advance Research in Computer Science and Management Studies

Volume 3, Issue 6, June 2015 ISSN: 2321 7782 (Online) International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online

### MIP-Based Approaches for Solving Scheduling Problems with Batch Processing Machines

The Eighth International Symposium on Operations Research and Its Applications (ISORA 09) Zhangjiajie, China, September 20 22, 2009 Copyright 2009 ORSC & APORC, pp. 132 139 MIP-Based Approaches for Solving

### Job Scheduling Techniques for Distributed Systems with Heterogeneous Processor Cardinality

Job Scheduling Techniques for Distributed Systems with Heterogeneous Processor Cardinality Hung-Jui Chang Jan-Jan Wu Department of Computer Science and Information Engineering Institute of Information

### Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems

Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems Ingo Sander ingo@kth.se Liu: Chapter 7 IL2212 Embedded Software 1 Outline l System Model and Assumptions l Scheduling Aperiodic Jobs l

### A Numerical Study on the Wiretap Network with a Simple Network Topology

A Numerical Study on the Wiretap Network with a Simple Network Topology Fan Cheng and Vincent Tan Department of Electrical and Computer Engineering National University of Singapore Mathematical Tools of

### Elementary Number Theory We begin with a bit of elementary number theory, which is concerned

CONSTRUCTION OF THE FINITE FIELDS Z p S. R. DOTY Elementary Number Theory We begin with a bit of elementary number theory, which is concerned solely with questions about the set of integers Z = {0, ±1,

Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

### MODULAR ARITHMETIC. a smallest member. It is equivalent to the Principle of Mathematical Induction.

MODULAR ARITHMETIC 1 Working With Integers The usual arithmetic operations of addition, subtraction and multiplication can be performed on integers, and the result is always another integer Division, on

### Online lookahead on parameter learning algorithms for data acknowledgment and scheduling problems

University of Szeged Department of Computer Algorithms and Artificial Intelligence Online lookahead on parameter learning algorithms for data acknowledgment and scheduling problems Summary of the Ph.D.

### On-line machine scheduling with batch setups

On-line machine scheduling with batch setups Lele Zhang, Andrew Wirth Department of Mechanical Engineering The University of Melbourne, VIC 3010, Australia Abstract We study a class of scheduling problems

### Cost Optimization of Virtual Machine Provisioning in Federated IaaS Clouds

SUPERCOMPUTING IN MÉXICO 2014 Cost Optimization of Virtual Machine Provisioning in Federated IaaS Clouds Fermin A. Armenta-Cano and A. Tchernykh are with Ramin Yahyapour Jarek Nabrzyski Abstract. Keywords.

### Evaluation of Job-Scheduling Strategies for Grid Computing

Evaluation of Job-Scheduling Strategies for Grid Computing Volker Hamscher 1, Uwe Schwiegelshohn 1, Achim Streit 2, and Ramin Yahyapour 1 1 Computer Engineering Institute, University of Dortmund, 44221

### International Journal of Emerging Technology & Research

International Journal of Emerging Technology & Research A Study Based on the Survey of Optimized Dynamic Resource Allocation Techniques in Cloud Computing Sharvari J N 1, Jyothi S 2, Neetha Natesh 3 1,

### Quantum Support for Multiprocessor Pfair Scheduling in Linux

Quantum Support for Multiprocessor fair Scheduling in Linux John M. Calandrino and James H. Anderson Department of Computer Science, The University of North Carolina at Chapel Hill Abstract This paper

### Change Management in Enterprise IT Systems: Process Modeling and Capacity-optimal Scheduling

Change Management in Enterprise IT Systems: Process Modeling and Capacity-optimal Scheduling Praveen K. Muthusamy, Koushik Kar, Sambit Sahu, Prashant Pradhan and Saswati Sarkar Rensselaer Polytechnic Institute

### Job Scheduling in a Distributed System Using Backfilling with Inaccurate Runtime Computations

2010 International Conference on Complex, Intelligent and Software Intensive Systems Job Scheduling in a Distributed System Using Backfilling with Inaccurate Runtime Computations Sofia K. Dimitriadou Department

### CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory Allan Borodin November 15, 2012; Lecture 10 1 / 27 Randomized online bipartite matching and the adwords problem. We briefly return to online algorithms

### Near Sheltered and Loyal storage Space Navigating in Cloud

IOSR Journal of Engineering (IOSRJEN) e-issn: 2250-3021, p-issn: 2278-8719 Vol. 3, Issue 8 (August. 2013), V2 PP 01-05 Near Sheltered and Loyal storage Space Navigating in Cloud N.Venkata Krishna, M.Venkata

### I. GROUPS: BASIC DEFINITIONS AND EXAMPLES

I GROUPS: BASIC DEFINITIONS AND EXAMPLES Definition 1: An operation on a set G is a function : G G G Definition 2: A group is a set G which is equipped with an operation and a special element e G, called

### A Novel Approach for Efficient Load Balancing in Cloud Computing Environment by Using Partitioning

A Novel Approach for Efficient Load Balancing in Cloud Computing Environment by Using Partitioning 1 P. Vijay Kumar, 2 R. Suresh 1 M.Tech 2 nd Year, Department of CSE, CREC Tirupati, AP, India 2 Professor