Internatonal Symposum on Computers & Informatcs (ISCI 2015) Cloud testng schedulng based on mproved ACO Yang Zheng 1,2 a, Lzh Ca *2,3 b, Shdong Huang 4,c, Jawen Lu 1,d and Pan Lu 5,e 1 College of Informaton Scence & Engneerng of East Chna Unversty of Scence and Technology, Shangha 200237, Chna, 2 Shangha Key Laboratory of Computer Software Evaluatng & Testng, Shangha 201112, Chna 3 Shangha Industral Technology Insttute, Jnsu Road, Shangha 201206, Chna 4 Department of Computer Scence and Technology of Xnyang Normal Unversty, Henan 464000, Chna 5 College of Computer Engneerng and Scence, Shangha Busness School, Shangha 201400, Chna a sunoryang@163com, b clz@sscstnshcn, c lovehushouzan@163com, d 1184407232@qqcom, e panl008@163com Abstract Resources schedulng plays an mportant role n Cloud testng The completon tme for the entre testng wors n Cloud testng and the cost of Cloud servces could both reduce a lot through good schedulng strateges Ths paper manly focuses on the dependences between testng tass and proposes ACO_TD(ACO based on testng tas dependences) ACO_TD not only possesses advantages of ACO, but also maes up shortcomngs of ACO such as slow convergence and easy fallng nto local optmzaton CloudSm s used for smulaton experment, and ACO_TD has acqured faster executon speed and better load balancng of VM compared wth RR, GA and ACO n experment The advantages of ACO_TD become more and more obvous as the scale of testng tass n Cloud grows Keywords: Cloud, Cloud testng, VM, ACO, CloudSm Introducton Wth the contnuous development of Cloud computng technology [1], software testng has been confronted wth unprecedented challenges [2] In the process of tradtonal software testng, users often need to nstall software, set up 2015 The authors - Publshed by Atlants Press 569
testng envronment and test product accordng to test manual or test procedure Cloud computng not only allows users to share cloud resources wth mnmum cost, but also overcomes shortcomngs of tradtonal software testng such as expensve cost of testng tools, lmted testng capablty and complex operatons for settng up testng envronment Users needn't to set up testng envronment, and could fnsh testng wor through dstrbuted computng Durng Cloud testng, users would get testng results after submttng testng scrpts to Cloud platform The Cloud platform selects approprate VM schedulng strateges whch would drectly affect the effcency Cloud testng The schedulng n Cloud testng s actually to select a sutable dynamc combnaton whch used to allocate VM to testng tas The features of ACO [3,4] such as parallel dstrbuton and flexblty, mae t sutable to solve schedulng problems n Cloud testng [5,6] A lot of scholars have already studed testng tas schedulng n Cloud so far Zuo et al [7] proposed advanced Mn-Mn algorthm based on pre-classfcaton, tang the computng ablty and communcatons of resources nto consderaton Zhang et al [8] presented a groupng and polymorphc ACO, whch dvded ants nto groups on basc of functon and reduced the average completon tme Ths paper has a further study about ACO's mechansm [9], analyses the specal features of testng tas schedulng n Cloud and proposes ACO_TD whch s based on ACO and testng tas dependences Secton 2 descrbes VM schedulng and testng tas dependences n Cloud testng Secton 3 descrbes how to schedule VM by ACO_TD Secton 4 shows the advantages of ACO_TD through smulaton experments Secton 5 summarzes the wor of ths paper and plans on the future wor Schedulng n Cloud testng 1) VM schedulng n Cloud testng Cloud testng s on the basc of Cloud computng, whch has many features such as hgh relablty, large scale, vrtualzaton, versatlty and on-demand servces Users could get relevant testng reports after submttng testng tass to the deployed testng envronment Approprate VM schedulng strateges would be necessary when there're several testng tass watng n the queue or n executon VM schedulng usually s an mportant part of Cloud testng whose essence s a nd of NP-complete problem The goal of VM schedulng generally s to fnsh testng wor wthn expected tme, acqure hgh utlzaton of VM and get hgh throughput of Cloud testng The process of VM schedulng n Cloud testng s descrbed as shown n Fg 1 After users submt testng tass, the Cloud platform would allocate VM for tass accordng to selected schedulng strategy The completon tme usually determnes resource cost because Cloud servces charge n a "pay as you go" way Therefore, good VM schedulng strategy not only mproves effcency but also reduces cost 570
User Lst Tas Lst Vrtual Machnes Data Center User 1 User 2 User tas 1 tas 2 tas 3 tas 4 tas m VM 1 Vm2 VM 3 VM 4 VM n Host 1 Host 2 Host 3 Host s Fg 1 Tas schedulng model n Cloud testng 2) Descrpton of testng tas dependences n Cloud testng In addton to approprate VM schedulng strateges, dependences between testng tass also affect testng effcency Durng tradtonal software testng, test dependences have a great nfluence on collaboraton and decomposton of tass Smlarly, testng tas dependences n Cloud testng would nfluence the testng effcency a lot If the dependences between testng tass have been taen nto consderaton, the number of schedulng VM would reduce and the effcency of Cloud testng would mprove In Cloud testng, the dependences betweentas andtas could be dvded nto the followng two types: (1) Sngle dependency tas 1 tas tas tas n Fg 2 One-on-One dependency relatonshp between testng tass Sngle dependency s One-on-One dependency, whch means there's a one-to-one match between tas and tas In Fg 2, each testng tas (except the frst tas and the last tas) has a precursor and a subsequent, and has a drect nfluence on other testng tass The outcome of tas s nput oftas, and tas depends ontas (2) Multple dependences Multple dependences often refer to several testng tass, whch usually could be dvded nto three categores: a) One-to- Many dependency tas +1 tas tas +2 tas +n 571
Fg 3 One-to-Many dependency relatonshp between testng tass In Fg 3, tas s the precursor of tas ( = + 1, + 2,, + n), and tas won t be executed untl tas s over The outcome of nput oftas, and tas depends on b) Many-to-One dependency tas 1 tas tas s tas 2 Accpet outcome Flter and export result tas n+1 tas n Data process Fg 4 Many-to-One relatonshp between testng tass In Fg 4, tas ( = 1,2,, n) s the precursor of n 1 and tas n + 1 won t be executed untl tas s over The outcome of tas +, andtas + 1 depends ontas nput of n 1 n c) Many-to-Many dependency tas +, tas s tas 1 Accpet outcome Flter and export result tas 1 tas 2 Data process tas 2 tas m Accpet outcome Flter and export result tas n Fg 5 Many-to-Many relatonshp between testng tass tas = m s the precursor In Fg 5, ( 1, 2,, ) of tas ( 1,2,, n) = and tas won t be executed untltas s over Therefore, tas depends ontas, and the length oftas restrcts the start executon tme of tas Through the descrpton of testng tas dependences, we could nfer that the dependences between testng tass play an mportant role durng the Cloud testng A lot of resources could be saved once these dependences have been consdered about 572
VM schedulng based on ACO_TD 1) Problem descrpton Suppose there re n testng tass and m VMs n Cloud testng MatrxTDD n ns used to descrbe the dependency relatonshp between testng tass shown as Eq 1 VM s exclusve and unshared, and would not be reallocated untl the testng tass fnsh or fal TDD 1, tas depends ontas = 0, tas s ndependent of tas (1) The expected completon tme matrx ETC descrbes how long tas runs on vm, shown as Eq 2 VM schedulng manly ntends to set up mappng between testng tas and VM Apart from tang advantages of testng tas dependences, ths paper also maes use of ACO's global optmzaton to search for best mappng n the process of schedulng ETC n m ETC11 ETC1 m = ETC n1 ETC nm (2) 2) Descrpton of ACO_TD The fnal result of combnatoral optmzaton by ACO s to select sutable VM for each testng tas The soluton could be s = { X1, X2, X n }, and X stands for decson varable The number of testng tass s n, and the doman of X s a set of ( tas, vm ) whch turns to be the Cartesan product of { tas1, tas2,, tas } and { vm1, vm2,, vm m } ( tas, vm ) means n allocatng vm to tas The process of VM schedulng by ACO_TD could be descrbed as follows and Fg 6 shows the flow chart Step1: Intalze the pheromone matrx The ntalzed pheromone value s related to VM computng capacty(mips), networ bandwdth, the length of testng tass, etc shown as Eq 3 Users ntalze TDD n naccordng to the dependences between testng tass 10 τ = ( * mnetc ) 0 m 1 m = 0 573
(3) Step2: Calculate the probablty of allocatng vm to tas at the moment of t(s) Accordng to TDD n n, search tas whch tas depends on If tas exsts, then allocate VM used bytas to tas ; else calculate the probablty accordng to Eq 4 c stands for the total mnmum executon tme by VM, andη stands for VM computng ablty If the current calculaton tme s mnmum, then set t as bestexecutontme a β [ c ( t)] *[ h ( t)] a β p [ c ( t)] *[ ( t)] = h,( allowed ) Allowed 0, otherwse (4) Step3: Update pheromone Pheromone update n ths paper ncludes global update and local update a) Local pheromone update Ants update local pheromone from ( tas, vm) to ( tas+ 1, vm+ 1) accordng to Eq 5, when ants allocate VM for testng tas t ( t ) = (1 ρ) t ( t) + ρ t 1 0 (5) b) Global pheromone update Ants would update the global pheromone accordng Eq 6, when all the testng tass have been executed L stands for the entre executon tme got by ant, and Q s a constant, shown n Eq 7 m ( new) = (1 ) ( old) + = 1 τ ρ τ τ (6) t Q th, f the ant chooses ( Tas, Vm ) = L 0, otherwse (7) 574
Step4: Start the next cycle untl the number of cycles reaches the maxmum The VM schedulng descrbed n ths paper s manly to allocate exclusve VM to testng tass Those testng tass wth dependency would get the same VM The VM resources would be reallocated when all the testng tass have been executed Expermental Results and Dscusson In order to verfy the effect on VM schedulng by ACO_TD, ths paper selects CloudSm [10] for smulaton DataCenter, Cloudlet, VM and auxlary classes have been used to smulate computng resources, networ resources, testng tass and VM resources DataCenterBroer has also been used to construct dfferent allocaton algorthms n the smulaton envronment Table 1 shows the parameters confguraton for smulaton platform Users customze TDD accordng to the dependences between testng tass, and ntalze TDD on the basc of tas dependences Table 1 Parameters confguraton for testng tass n smulaton experment VM VM(MIPS) Cloudlet Number Cloudlet length Ant Number 6 600-2000 20 400-5000 5 300 6 600-2000 40 400-5000 15 300 6 600-2000 60 400-5000 25 300 6 600-2000 80 400-5000 35 300 Table 2 Parameters confguraton for ACO Parameter Type Value Inspraton factor α α = 10 Expectaton nspraton factor β β = 50 Pheromone volatlzaton factor ρ ρ = 05 Pheromone densty Q Q = 50 Iteraton Number The algorthms selected durng experment nclude RR(Round-Robn Schedulng), GA(greedy algorthm), ACO and ACO_TD Accordng to the wor of DRamesh et al [11], the parameters n the experment could be set as shown n Table 2 These four algorthms share the same smulaton envronment, cloudlets and VM resources In order to get far testng result, the result n the experment s the mean value of 10 experment results Fg7 shows the comparson among these algorthms, when cloudlets rse from 20 to 80 575
Fg 7 Executon tme for testng tass schedulng In Fg 7, the advantage of ACO_TD becomes more and more obvous as the amount of testng tass ncreases The convergence of ACO s an mportant factor that nfluences the schedulng effectveness and restrcts the schedulng speed as the amount of testng tass ncrease Tass dependences mae up such shortcomngs and avod gettng nto local optmzaton ACO_TD also taes feedbac to update pheromone densty and mproves effcency Fg 8 Comparson of VMs' load balance among four algorthms 576
Fg 8 shows load balancng of 6 VMs when the number of testng tass reaches 60 In Fg 8, the load balancng s worst for RR GA selects VM accordng to testng tass current stuaton and searches for local optmal soluton nstead of global optmal soluton Therefore, the load balancng of VM s not well at tmes ACO treats an allocaton as an obect for search and obtans good load balancng of VM However, ACO's convergence restrcts ts ablty whle ACO_TD taes advantages of testng tass dependences to overcome ths wea pont Concluson In order to reasonably execute testng tass n Cloud testng, the mnmum executon tme and load balance of VM should both be taen nto account In reference to the study of ACO durng these years, ths paper proposes to tae testng tas dependences nto consderaton In ths paper, an allocaton for tas was treated as a search obect, and ACO_TD has got good results In the process of experment, CloudSm has been used for smulaton to compare performance among dfferent algorthms ncludng RR, GA, ACO and ACO-TD The experment results have shown the advantage of ACO_TD, whch executes testng tass wthn mnmum tme and acqures good load balancng of VM However, the testng tas dependences would not only affect the total executon tme, but also nfluence the convergence If testng tas dependences change a lot, then the effcency of ACO_TD would also change Thus, ACO_TD stll could be mproved greatly n the future Acnowledgements Ths wor was fnancally supported by Program of Shangha Subect Chef Scentst (13XD1421800), STCSM Proect (14511106804, 13511505303 and 13DZ0500700), Shangha Natural Scence Fund (13ZR1429600), Natonal Natural Scence Foundaton (6127097), and Foundaton of Shangha Commttee of Scence and Technology (14YF1412700) References [1] Fox A, Grffth R, Joseph A, et al Above the clouds: A Bereley vew of cloud computng[j] Dept Electrcal Eng and Comput Scences, Unversty of Calforna, Bereley, Rep UCB/EECS, 2009, 28: 13 [2] Collard R Performance nnovatons, testng mplcatons[j] Software Test & Performance Magazne, 2009, 6(8): 19-20 [3] A Colorn, M Dorgo, and V Manezzo, "Dstrbuted optmzaton by ant colones," n Proceedngs of the frst European conference on artfcal lfe, 1991, pp 134-142 [4] A Colorn, M Dorgo, and V Manezzo, "An Investgaton of some Propertes of an``ant Algorthm''," n PPSN, 1992, pp 509-520 577
[5] Wang Tanqng, Xe Jun, Zeng Zhou Study of grd resource schedulng strategy based on ant colony algorthm[j] Computer Engneerng & Desgn, 2007, 28(15): 3611-3612 [6] Zha Ynghua, Yang Jngl Tas schedulng n Cloud Computng based on mproved ant colony optmzaton[j] Computer Engneerng & Desgn, 2013, 34(5): 1716-1719 [7] ZUO Lyun, ZUO Lffeng Cloud computng schedulng optmzaton algorthm based on reservaton category[j] Computer Engneerng & Desgn, 2012, 33(4): 1357-1361 [8] ZHANG Chunyan, LIU Qngln,MENG Ke Tas allcaton based on ant colony optmzaton n cloud computng [J] Journal of Computer Applcaton, 2012, 32(5):1418-1420 [9] Dorgo M, Brattar M, Stutzle T Ant colony optmzaton[j] Computatonal Intellgence Magazne, IEEE, 2006, 1(4): 28-39 [10] Calheros R N, Ranan R, Beloglazov A, et al CloudSm: a toolt for modelng and smulaton of cloud computng envronments and evaluaton of resource provsonng algorthms[j] Software: Practce and Experence, 2011, 41(1): 23-50 [11] Duan H, Ma G, Lu S Expermental study of the adustable parameters n basc ant colony optmzaton algorthm[c]//evolutonary Computaton, 2007 CEC 2007 IEEE Congress on IEEE, 2007: 149-156 578