CN105005503B - Cloud computing load balancing method for scheduling task based on cellular automata - Google Patents

Cloud computing load balancing method for scheduling task based on cellular automata Download PDF

Info

Publication number
CN105005503B
CN105005503B CN201510441752.6A CN201510441752A CN105005503B CN 105005503 B CN105005503 B CN 105005503B CN 201510441752 A CN201510441752 A CN 201510441752A CN 105005503 B CN105005503 B CN 105005503B
Authority
CN
China
Prior art keywords
task
cellular
virtual machine
scheduling
individual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201510441752.6A
Other languages
Chinese (zh)
Other versions
CN105005503A (en
Inventor
冷明
孙凌宇
冷子阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201510441752.6A priority Critical patent/CN105005503B/en
Publication of CN105005503A publication Critical patent/CN105005503A/en
Application granted granted Critical
Publication of CN105005503B publication Critical patent/CN105005503B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The present invention relates to a kind of cloud computing load balancing method for scheduling task based on cellular automata, the heuristic preferential allocation strategy based on earliest finish time tries to achieve the initial solution of task scheduling;Cellular automata and greedy principle optimization task scheduling initial solution are then based on, so as to farthest shorten the latest finishing time of general assignment and improve the load-balancing performance of virtual machine.Using the cloud computing load balancing method for scheduling task based on cellular automata of the present invention, the efficiency of task scheduling is not only effectively improved, realizes the load balancing of cloud computing platform, also significantly decreases resource free time, the utilization benefit of resource is improved, there is preferable practicality.

Description

Cloud computing load balancing method for scheduling task based on cellular automata
Technical field
The present invention relates to a kind of cloud computing load balancing method for scheduling task based on cellular automata.
Background technology
Cloud computing is as the conventional arts such as Distributed Calculation, parallel computation, grid computing and network programming model, distribution The product of the new technique fusion development such as data storage technology, virtualization technology, it is the key of the Fashion of Future information industry innovation Strategic technology and means, will there is important strategic importance to China's developing new and high-tech industry.Cloud computing will be by that will calculate Task is divided on large-scale low-cost server cluster so that people can be handled using the unused resource for being distributed in various regions Complex application program, high calculating quality is obtained with extremely low cost input.
Important component of the cloud computing task scheduling as cloud computing platform, it is that the submitting user of the task is carried out rationally Efficiently to dispatch and distribute, it is substantially exactly that n separate tasks are assigned on the physical resource of m unused isomeries, So that the general assignment deadline is minimum and available resources are fully used, the efficiency of task scheduling directly influences whole cloud The overall performance and service quality of calculating platform.For example, a group task is sequentially assigned to one group of void by serial task dispatching method Plan machine, ensure that each virtual machine runs the task of identical quantity to balance the load as far as possible, but do not account for the demand and void of task Difference between plan machine.Mission Scheduling has proven to a np complete problem, in mnThe solution of individual possible task scheduling Find approximate optimal solution in space so that the execution time of general assignment and load balancing degrees are minimum, wherein perform time minimum be for Meet the service quality of user, load balancing degrees minimum is to ensure the stability of cloud environment.
The content of the invention
At present, the method for scheduling task of cloud computing has not yet been formed unified standards and norms, but important due to the problem Property, domestic and international researcher proposes the approximate optimal solution that substantial amounts of cloud computing method for scheduling task carrys out calculating task scheduling, existing The heuristic mutation operations methods such as Min-Min, Max-Min, Dynamic Programming in conventional mesh calculating, also have based on genetic algorithm, grain The intelligent dispatching methods such as swarm optimization, ant group algorithm, immune algorithm, differential evolution algorithm and tabu search algorithm.Wherein, it is traditional The Min-Min algorithms of heuristic mutation operations method use easy first and difficult later strategy, first carry out deadline short task, then perform The task of deadline length, and take Greedy strategy each priority of task to be assigned to the computing resource for performing it and completing earliest; Max-Min algorithms choose deadline most long task, preferentially on the contrary, using difficult at first and quite easy afterwards and Greedy strategy every time It is assigned to and performs the computing resource that it is completed earliest.Traditional heuristic mutation operations method is adjusted by target of earliest finish time Degree, has preferable load-balancing performance, but the actual execution time of general assignment is not minimum.Intelligent dispatching method passes through to appointing The coding of business scheduling scheme, and according to genetic algorithm, particle cluster algorithm, ant group algorithm, immune algorithm, differential evolution algorithm and taboo The intelligent algorithm thought such as searching algorithm is avoided, in mnEquilibrium establishment between the solution space Diversification and Intensification of size, The final execution time for effectively reducing task.However, intelligent dispatching method is easily absorbed in office during magnanimity task scheduling is carried out Portion's optimal solution, the effect in terms of convergence rate and load balancing have much room for improvement.Such as:The Decree of Patent Office of China in 2014 by Sun Lingyu, cold bright and hail is positive declares, and China Patent No. is:201410527189.X number《Based on TABU search and load balancing Cloud computing method for scheduling task》Patent of invention, for the defects of prior art using being based on TABU search conduct Guiding neighborhood search optimisation strategy produces candidate's switching task pair, and using the big task of greedy principle selection financial value to entering Row exchanges, and optimizes the initial solution of task scheduling, so as to farthest shorten the time span that whole task is completed.
Task scheduling only refers only to the scheduling of Meta task, i.e. phase between Meta task in cloud computing environment of the present invention Mutually independent, it dispatches the data correlation and priority constraint relationship not considered between task.In addition, dependence task is adjusted in cloud computing environment Spend, priority dependence be present between the dependence task being related to, it is desirable to which a task must receive its all predecessor tasks It could start to perform after message.Such as:The Decree of Patent Office of China in 2014 by Sun Lingyu, cold bright and hail is positive declares, China Patent No.:201410137810.1 number《Cloud computing method for scheduling task based on cellular automata and tax power Directed Hypergraph》's Patent of invention is directed to the scheduling problem of dependence task, describes the resource requirement of dependence task and rely on to close using power Directed Hypergraph is assigned System, and generate corresponding assign and weigh Directed Hypergraph file;Then the tax power Directed Hypergraph partition program based on cellular automata is started, The tax power Directed Hypergraph of generation is divided;It is last to construct dependence task subset according to the division result for assigning power Directed Hypergraph, It is mapped and dispatched by MapReduce Task Scheduling Models.The Decree of Patent Office of China in 2014 by cold bright, grandson Ling Yu and hail sun are declared, and China Patent No. is:201410136320.X number《Based on multilevel partitioning and assign power Directed Hypergraph Cloud computing method for scheduling task》Patent of invention be directed to dependence task scheduling problem, using assign power Directed Hypergraph description appoint The resource requirement of business and dependence, and generate corresponding assign and weigh Directed Hypergraph file;Then start and be based on multilevel partitioning Tax power Directed Hypergraph partition program, the tax of generation power Directed Hypergraph is divided;Last drawing according to tax power Directed Hypergraph Divide result construction task subset, it is mapped and dispatched by MapReduce Task Scheduling Models.In addition, in 2014 Patent Office of state bulletin by Sun Lingyu, cold bright and hail is positive declares, China Patent No. is:201410136337.5 number《Cloud computing The task core value calculating method based on node attribute function in environment》Patent of invention be directed to China Patent No. Knot Searching problem in 201410136320.X in the tax power Directed Hypergraph partition process of multilevel partitioning, is had using tax power Mathematical modeling is carried out to the task in cloud computing environment to hypergraph, describes resource requirement and the dependence of task, and generate phase The tax power Directed Hypergraph file answered, is then started the core value calculation procedure for assigning power Directed Hypergraph, is deposited using the internal memory for improving compression Storage form is stored to assigning power Directed Hypergraph, and the core value of node is calculated based on node attribute function, by the core of all nodes Value result is stored in tax power Directed Hypergraph core value file.
It is an object of the invention to for insufficient existing for prior art, there is provided a kind of cloud computing based on cellular automata Load Balancing Task Scheduling method, solve the optimization problem for performing time and load balancing under cloud computing environment in task scheduling, The time span of task completion is effectively shortened, the reasonable utilization of cloud computing resources is realized, is provided efficiently for cloud computing Task Scheduling Mechanism.To reach above-mentioned purpose, design of the invention is as follows.
First, with Cellular Automaton Theory, analysis modeling, structure have been carried out for cloud computing load balancing Mission Scheduling Build corresponding cellular Automation Model.The task that cellular corresponds in Mission Scheduling, cellular numbering i ∈ { 1,2 ..., n }. The weights of i-th cellular correspond to total command length of i-th of task.The state of i-th of cellular corresponds to i-th of task institute J-th of virtual machine of distribution, the numbering j ∈ { 1,2 ..., m } of virtual machine.Whether the taboo state of i-th of cellular shows the cellular Permission is exchanged.
2nd, on the basis of the formalized description of the Load Balancing Task Scheduling problem under cloud computing environment, advised by dynamic The formalizing deduction for the method for drawing obtains the heuristic preferential allocation strategy on earliest finish time, and is tried to achieve and appointed based on the allocation strategy The initial solution of business scheduling.
3rd, the characteristics of handling complication system problem by cellular Automation Model -- according to the simple local of microscopic individual Self-organizing interaction mechanism describes macrosystem entirety complex behavior, builds cellular corresponding to cloud computing Mission Scheduling Automaton model, optimize the initial solution of task scheduling.Candidate is produced by each cellular of searching loop and exchanges cellular pair, and is used The big cellular of greedy principle selection financial value improves to swapping while the execution time of task scheduling initial solution is optimized Load-balancing performance.
According to above-mentioned inventive concept, the technical proposal of the invention is realized in this way:It is a kind of based on cellular automata Cloud computing load balancing method for scheduling task, it is characterised in that comprise the following steps that.
Step 1, class types degree is analyzed, and inputs the task that user submits under cloud computing environment, and carry out type and class to it The analysis of degree, determine the parallelization degree and feature of task.
Step 2, proceeding graininess decomposes, and is total to according to the parallelization degree and feature of user task, and the resource of cloud computing The peculiar properties such as the method for salary distribution are enjoyed, user task is decomposed according to proceeding graininess rank.
Step 3, resource characteristicses are analyzed, according to peculiar properties such as the resource-sharing methods of salary distribution of cloud computing, after decomposition Task carries out resource characteristicses analysis.
Step 4, task scheduling initial solution is solved, according to the analysis result to task resource characteristic, establishes and describes its resource Demand model, and then the heuristic preferential allocation strategy based on earliest finish time tries to achieve the initial solution of task scheduling.
Step 5, optimize task scheduling initial solution, task scheduling initial solution optimized based on cellular automata and greedy principle, Shorten the latest finishing time of general assignment and improve the load-balancing performance of virtual machine, obtain the optimization solution of task scheduling.
Step 6, duty mapping is dispatched, and by MapReduce Task Scheduling Models, the optimization solution to task scheduling is reflected Penetrate and dispatch, realize that the task in cloud computing environment is submitted and performed, the effectively load and shortening of balanced cloud computing platform The time span that whole task is completed.
In above-mentioned step 4, the heuristic preferential allocation strategy based on earliest finish time solves task scheduling The step of initial solution, is as follows.
Step 4.1, assignment instructions length and virtual machine the execute instruction bar number per second provided based on Resources requirement model, meter Expected execution time of the n task on virtual machine set VM m virtual machine in set of tasks T is calculated, obtains n × m expection Time matrix C is performed, wherein expected perform time CijThe time that i-th of task performs on j-th of virtual machine is represented, equal to The command length of i task divided by the execute instruction bar number per second of j-th of virtual machine.
Step 4.2, initialize m virtual machine present load array vt [1..m] be zero, i.e., start distribution task it The present load of preceding any virtual machine is zero.
Step 4.3, each task in sequential access set of tasks T, heuristic preferential point based on earliest finish time With strategy, k-th of task will be distributed on the virtual machine with earliest finish time successively, until all task distribution knots The initial solution of task scheduling is obtained after beam.
In above-mentioned step 5, described the step of task scheduling initial solution is optimized based on cellular automata and greedy principle It is as follows.
Step 5.1, cellular Automation Model corresponding to Mission Scheduling is built, wherein cellular corresponds in task scheduling Task, the weights of i-th of cellular correspond to total command length of i-th of task;Each cellular is traveled through, according to task scheduling Initial solution, sets the state of cellular, i.e., the state of i-th cellular corresponds to the virtual machine that i-th of task is distributed.
Step 5.2, loop initialization counter COUNT is 0;It is each first based on cellular automata evolutionary model searching loop Born of the same parents produce candidate and exchange cellular pair, and based on the big cellular of greedy principle selection financial value to swapping, until meeting to develop Stop condition (the execution time or cycle counter COUNT that can not reduce general assignment reach given threshold).
In above-mentioned step 4.3, the heuristic preferential allocation strategy based on earliest finish time is by k-th of task It is as follows to distribute to step on the virtual machine with earliest finish time.
Step 4.3.1, according to the present load array vt [1..m] and expected execution time matrix C of m virtual machine, calculate Go out k-th of task tkDistribution is to the corresponding time span makespan of each virtual machine, wherein the time span of j-th of virtual machine For the present load array vt [j] and k-th of task t of j-th of virtual machinekIn the execution time sum of j-th of virtual machine.
Step 4.3.2, the heuristic preferential allocation strategy based on earliest finish time, find out the virtual of time span minimum Machine vmx
Step 4.3.3, distribution task tkTo virtual machine vmx, update vmxVirtual machine load vt [x] is x-th of virtual machine Present load array vt [x] and k-th of task tkIn the execution time c of x-th of virtual machinekxSum.
It is described big based on cellular automata evolutionary model and greedy principle selection financial value in above-mentioned step 5.2 Task is as follows to swapping step.
Step 5.2.1, the taboo array tabu [1..n] of n cellular of initialization is zero, that is, allows all cellulars to be handed over Change.
Step 5.2.2, each cellular is traveled through, read current cellular clTaboo state;If current cellular clTaboo mark Will is 1, then shows that it does not allow to be exchanged, skip step 5.2.3,5.2.4,5.2.5,5.2.6 and 5.2.7, continue cycling through and hold Row step 5.2.2 travels through next cellular;Otherwise cellular c is shownlPermission is exchanged, modification cellular clTaboo mark tabu [l] =1, perform step 5.2.3.
Step 5.2.3, read current cellular clState, judge the load vm of distributed virtual machinemWhether it is more than average negative Carry;If greater than average load, then in the load array vt of m virtual machine, the minimum virtual machine vm of load is found outyAssign Give virtual machine vmn;If less than equal to average load, the maximum virtual machine vm of load is found outxIt is assigned to virtual machine vmn;Calculate Go out virtual machine vmnIn it is all allow the cellulars that are exchanged exchanged with current cellular after financial value.
Step 5.2.4, select to exchange the maximum candidate of financial value to (c using greedy principlel,ck), if cellular is to (cl, ck) current financial value be more than 0, then exchange cellular to (cl,ck);Otherwise cellular is exchanged to (c with certain probabilityl,ck)。
Step 5.2.5, cellular is exchanged to (cl,ck), i.e. cellular ckExchanged to virtual machine vmmUpper execution and cellular clHanded over Shift to virtual machine vmnUpper execution;Change cellular ckTaboo mark tabu [k]=1.
Step 5.2.6, update vmmVirtual machine loads vt [m]=vt [m]+ckm-clm
Step 5.2.7, update vmnVirtual machine loads vt [n]=vt [n]+cln-ckn
The present invention compared with prior art, has following obvious prominent substantive distinguishing features and remarkable advantage.
1st, the efficiency of task scheduling is improved.
The cloud computing load balancing method for scheduling task based on cellular automata of the present invention, solves cloud meter to a certain degree Calculate the optimization problem for performing time and load balancing under environment in task scheduling.For cloud computing load balancing Mission Scheduling Corresponding cellular Automation Model is proposed, the task that cellular corresponds in Mission Scheduling, the weights of cellular, which correspond to, appoints Total command length of business, the state of cellular correspond to the virtual machine that task is distributed.The financial value that cellular is introduced to exchange is general Read, the big cellular of financial value is selected to swapping using greedy principle, is optimizing the execution time of task scheduling initial solution Improve load-balancing performance simultaneously, so as to be effectively improved the efficiency of task scheduling, shorten the time span of task completion, The reasonable utilization of cloud computing resources is realized, efficient Task Scheduling Mechanism is provided for cloud computing.Cloud computing load balancing task Dispatch the calculating of initial solution and optimize the key link as cloud computing Task Scheduling Mechanism, its result is to whole cloud computing environment Operational efficiency have important influence, resource free time can be efficiently reduced, improve the utilization benefit of resource.
By being combined below to the example of cloud computing load balancing method for scheduling task of the present invention based on cellular automata The description of its accompanying drawing, it will be further appreciated that the purpose of the present invention, specific structural features and advantage.
Fig. 1 is the flow chart of the cloud computing load balancing method for scheduling task based on cellular automata.
Fig. 2 is the flow chart that the heuristic preferential allocation strategy based on earliest finish time solves task scheduling initial solution.
Fig. 3 is the stream to swapping based on the big task of cellular automata evolutionary model and greedy principle selection financial value Cheng Tu.
Embodiment
In order to be more clearly understood that the cloud computing load balancing method for scheduling task of the invention based on cellular automata Technology contents, especially exemplified by following instance describe in detail.
Flow chart such as Fig. 1 institutes of the cloud computing load balancing method for scheduling task based on cellular automata of the present embodiment Show.Under cloud computing environment, the task 101 of input user's submission, the analysis 102 of type and class degree is carried out to user task, really Determine the parallelization degree and feature of task;According to the parallelization degree and feature of user task, and the resource-sharing of cloud computing The peculiar properties such as the method for salary distribution, decomposition 103 is carried out according to proceeding graininess rank to user task;And then the task after decomposition is entered Row resource characteristicses analysis 104;According to the analysis result to task resource characteristic, establish and describe its resource requirement, and then based on most The heuristic preferential allocation strategy of early deadline tries to achieve the initial solution 105 of task scheduling;It is former based on cellular automata and greed Then optimize task scheduling initial solution, shorten the latest finishing time of general assignment and improve the load-balancing performance of virtual machine, obtain The optimization solution 106 of task scheduling;By MapReduce Task Scheduling Models, the optimization solution to task scheduling is mapped and adjusted Degree 107;In cloud computing environment, the task that scheduling is completed is submitted with performing 108, completed so as to effectively shorten whole task Time span and balanced cloud computing platform load.
Disclosure sets forth the related definition of the Load Balancing Task Scheduling problem under cloud computing environment is as follows.
Define 1:Assuming that under cloud computing environment, user submits set of the breakdown of operation into n task, and between task mutually Independent, it is dispatched without the concern for the data correlation and priority constraint relationship between task, defines set of tasks T={ t1,…, ti,…,tn, wherein tiFor i-th of task resolving into, (i=1,2 ..., n), n is the task quantity after decomposing, and i-th Task tiTotal command length be MIi
Define 2:Assuming that under cloud computing environment, task scheduling is participated in the set for having m virtual resource, and virtual resource passes through Virtual machine mode provides, i.e., virtual resource is the virtual machine in cloud computing cluster.Define virtual machine set VM={ vm1,…, vmj,…,vmm, wherein vmjFor j-th resources of virtual machine, (j=1,2 ..., m), m is virtual machine quantity, and j-th of virtual machine vmjInstruction execution speed (execute instruction bar number per second) be MIPSj
Define 3:Assuming that the task quantity n after decomposing is not less than resources of virtual machine quantity m (n >=m), each task can only divide One virtual machine of dispensing performs, and can only perform a task in one virtual machine of certain time period, it is impossible to while perform multiple Task.The matrix that expected execution time C of the n different task schedulings to m different virtual machines is a n × m is defined, Wherein CijRepresent i-th of task tiIn j-th of virtual machine vmjThe time of upper execution, and cij=MIi/MIPSj, that is, when being expected to perform Between CijFor task tiTotal command length MIiDivided by virtual machine vmjExecute instruction bar number MIPS per secondj
Define 4:Define n different task T={ t1,…,ti,…,tnIt is dispatched to m different virtual machine VM= {vm1,…,vmj,…,vmmOn all possible task allocative decision collection beDefine X and represent task allocative decision collectionIn A kind of allocative decision, i.e., one n × m matrix.Wherein, xijIt is expressed as task tiWith virtual machine vmjThe relations of distribution, and xij∈ { 0,1 },I ∈ { 1,2 ..., n }, j ∈ { 1,2 ..., m }.I.e. if task tiDistribution is in virtual machine vmjOn hold OK, then xij=1, otherwise xij=0.
Define 5:For certain task allocative decision X, the present load vt of virtual machine is defined(k-1)jFor (preceding k- under current state The state that 1 task is assigned), distribute to j-th of virtual machine vmjAll required by task perform the time, i.e.,Define k-th of task tkDistribution is in j-th of virtual machine vmjOn time span makespankjTo appoint Be engaged in tkIn vmjThe earliest finish time of upper execution, i.e. makespankj=vt(k-1)j+ckj
Define 6:For certain task allocative decision X, the supported V T of virtual machine is definedjTo distribute to j-th of virtual machine vmjInstitute There is the expection deadline of task, i.e.,
Define 7:The average load that n different task is dispatched on m different virtual machine is defined, equal to n Total command length of task divided by m virtual machine instructions perform speed it is cumulative and, i.e. general assignment optimal finish time
Define 8:For certain task allocative decision X, the load balancing degrees of virtual machine are definedLoad balancing degrees LBXNumerical value is smaller, shows in cloud computing system between each virtual machine Load is more balanced.
Define 9:For n different task T={ t1,…,ti,…,tnIt is dispatched to m different virtual machine VM= {vm1,…,vmj,…,vmmMission Scheduling be to find allocative decision X so that the task of virtual machine in the allocative decision Latest finishing time is earliestThe most long processing time of each virtual machine is most short in other wordsAnd load balancing degrees LBXIt is minimum.
According to defining 9, the Mission Scheduling that m different virtual machine is assigned to for n different task is to seek Look for allocative decision so that most long processing time TS (n, m) of virtual machine is most short and load balancing degrees LBXIt is minimum.When only When having the scheduling problem of task,When there is the scheduling problem of k-1 task,
Theorem 1:For the scheduling problem of k task, it is assumed that k-th of task tkDistribute to z-th of virtual machine vmz, i.e. z Individual virtual machine vmzTime span makespankz=vt(k-1)z+ckz, andThen meet to pass Push away relation
Prove:Understood by defining 9 TS (k, the m) definition provided,
It can be obtained by theorem 1, k-th of task tkThe virtual machine vm with earliest finish time will be distributed toz, i.e., complete earliest The heuristic preferential allocation strategy of time.
The heuristic preferential allocation strategy based on earliest finish time of the present embodiment solves the stream of task scheduling initial solution Journey figure is as shown in Fig. 2 step is as follows.
A01, assignment instructions length and virtual machine the execute instruction bar number per second provided based on Resources requirement model, calculate and appoint It is engaged in expected execution time of the n task on virtual machine set VM m virtual machine in set T, obtains n × m expected execution Time matrix C, wherein expected perform time CijThe time that i-th of task performs on j-th of virtual machine is represented, equal to i-th The execute instruction bar number per second of the command length of task divided by j-th of virtual machine.
A02, the present load array vt [1..m] of m virtual machine of initialization is zero, that is, is starting the predecessor of distribution task The present load of what virtual machine is zero.
Each task in A03, sequential access set of tasks T simultaneously performs step A04, A05 and A06, successively by kth Task will be distributed on the virtual machine with earliest finish time, until all task distribution obtain task scheduling after terminating Initial solution.
A04, according to the present load array vt [1..m] and expected execution time matrix C of m virtual machine, calculate kth Individual task tkDistribution is to the corresponding time span makespan of each virtual machine, wherein the time span of j-th of virtual machine is jth The present load array vt [j] and k-th of task t of individual virtual machinekIn the execution time sum of j-th of virtual machine.
A05, the heuristic preferential allocation strategy based on earliest finish time, find out the minimum virtual machine vm of time spanx
A06, distribution task tkTo virtual machine vmx, update vmxVirtual machine load vt [x] is that x-th of the current of virtual machine is born Carry array vt [x] and k-th of task tkIn the execution time c of x-th of virtual machinekxSum.
Define 10:For certain allocative decision X, it is assumed that vmxFor the virtual machine that load is maximum, vmyFor the virtual of load minimum Machine, i.e.,Assuming that k-th of cellular ckIt is dispensed on virtual machine vmxOn hold OK, l-th of cellular clIt is dispensed on virtual machine vmyUpper execution, i.e. xkx=1 and xly=1.As cellular ckWith cellular clSwap, That is cellular ckExchanged to virtual machine vmyUpper execution and cellular clExchanged to virtual machine vmxUpper execution, virtual machine vmxBefore exchange The execution time difference afterwards is referred to as the cellular to (cl,ck) exchange financial value gain (k, l)=ckx-clx
The task big based on cellular automata evolutionary model and greedy principle selection financial value of the present embodiment is to handing over The flow chart changed is as shown in figure 3, step is as follows.
The taboo array tabu [1..n] of n task is zero in B01, initialization task set T, that is, allows all tasks Exchanged.
B02, each cellular is traveled through, read current cellular clTaboo state;If current cellular clTaboo be masked as 1, Then show that it does not allow to be exchanged, skip step B03, B04, B05, B06 and B07, it is next to continue cycling through execution step B02 traversals Individual cellular;Otherwise cellular c is shownlPermission is exchanged, modification cellular clTaboo mark tabu [l]=1, perform step B03.
B03, read current cellular clState, judge the load vm of distributed virtual machinemWhether average load is more than;Such as Fruit is more than average load, then in the load array vt of m virtual machine, finds out the minimum virtual machine vm of loadyIt is assigned to void Plan machine vmn;If less than equal to average load, the maximum virtual machine vm of load is found outxIt is assigned to virtual machine vmn;Calculate void Plan machine vmnIn it is all allow the cellulars that are exchanged exchanged with current cellular after financial value.
B04, select to exchange the maximum candidate of financial value to (c using greedy principlel,ck), if cellular is to (cl,ck) Current financial value is more than 0, then exchanges cellular to (cl,ck);Otherwise cellular is exchanged to (c with certain probabilityl,ck)。
B05, cellular is exchanged to (cl,ck), i.e. cellular ckExchanged to virtual machine vmmUpper execution and cellular clExchanged to void Plan machine vmnUpper execution;Change cellular ckTaboo mark tabu [k]=1.
B06, update vmmVirtual machine loads vt [m]=vt [m]+ckm-clm
B07, update vmnVirtual machine loads vt [n]=vt [n]+cln-ckn

Claims (1)

1. a kind of cloud computing load balancing method for scheduling task based on cellular automata, it is characterised in that comprise the following steps that:
Step 1, class types degree is analyzed, and inputs the task that user submits under cloud computing environment, and type and class degree are carried out to it Analysis, determine the parallelization degree and feature of task;
Step 2, proceeding graininess decomposes, according to the resource-sharing point of the parallelization degree and feature of user task, and cloud computing With mode peculiar property, user task is decomposed according to proceeding graininess rank;It is separate between task after decomposition, and The data correlation and priority constraint relationship between task are not considered;
Step 3, resource characteristicses are analyzed, and according to the resource-sharing method of salary distribution peculiar property of cloud computing, the task after decomposition is entered Row resource characteristicses are analyzed;
Step 4, task scheduling initial solution is solved, according to the analysis result to task resource characteristic, establishes and describes its resource requirement Model, and then the heuristic preferential allocation strategy based on earliest finish time tries to achieve the initial solution of task scheduling;
Step 5, optimize task scheduling initial solution, based on cellular automata and greedy principle optimization task scheduling initial solution, shorten The latest finishing time of general assignment and the load-balancing performance for improving virtual machine, obtain the optimization solution of task scheduling;
Step 6, duty mapping dispatch, by MapReduce Task Scheduling Models, the optimization solution to task scheduling carry out mapping and Scheduling, realize that the task in cloud computing environment is submitted and performed, effectively the load of balanced cloud computing platform and shortening are whole The time span that task is completed;
In above-mentioned step 4, it is initial that the heuristic preferential allocation strategy based on earliest finish time tries to achieve task scheduling The step of solution, is as follows;
Step 4.1, assignment instructions length and virtual machine the execute instruction bar number per second provided based on Resources requirement model, calculate and appoint Business setTInnIndividual task is in virtual machine setVM'smThe expected execution time on individual virtual machine, obtainn×mExpected execution Time matrixC,It is wherein expected to perform time CijRepresent theiIndividual task isjThe time performed on individual virtual machine, equal toiIt is individual The command length of task divided byjThe execute instruction bar number per second of individual virtual machine;
Step 4.2, the present load array of m virtual machine is initializedvt[1..m] be zero, that is, starting the predecessor of distribution task The present load of what virtual machine is zero;
Step 4.3, sequential access set of tasksTIn each task, the heuristic preferential distribution plan based on earliest finish time Slightly, successively by thekIndividual task will be distributed on the virtual machine with earliest finish time, until after all task distribution terminate Obtain the initial solution of task scheduling;
In above-mentioned step 5, described the step of optimizing task scheduling initial solution based on cellular automata and greedy principle, is as follows;
Step 5.1, cellular Automation Model corresponding to Mission Scheduling is built, wherein cellular corresponds to appointing in task scheduling Business, the weights of i-th of cellular correspond to total command length of i-th of task;Each cellular is traveled through, according to the initial of task scheduling Solution, sets the state of cellular, i.e., the state of i-th cellular corresponds to the virtual machine that i-th of task is distributed;
Step 5.2, loop initialization counter COUNT is 0;Based on each cellular of cellular automata evolutionary model searching loop Produce candidate and exchange cellular pair, and based on the big cellular of greedy principle selection financial value to swapping, until meeting that evolution stops Only condition, i.e., the execution time or cycle counter COUNT that can not reduce general assignment reach given threshold;
In above-mentioned step 4.3, the heuristic preferential allocation strategy based on earliest finish time is by thekIndividual task distribution It is as follows to step on the virtual machine with earliest finish time;
Step 4.3.1, foundationmThe present load array of individual virtual machinevt[1..m] and expected execution time matrixC, calculatekIndividual taskt k Distribute to the corresponding time span of each virtual machinemakespan, wherein thejThe time span of individual virtual machine is thejThe present load array of individual virtual machinevt[j] and thekIndividual taskt k jThe execution time sum of individual virtual machine;
Step 4.3.2, the heuristic preferential allocation strategy based on earliest finish time, find out the minimum virtual machine of time spanvm x
Step 4.3.3, distribute taskt k To virtual machinevm x , renewalvm x Virtual machine loadsvt[x] for thexIndividual virtual machine it is current Load arrayvt[x] and thekIndividual taskt k xThe execution time of individual virtual machinec kx Sum;
In above-mentioned step 5.2, the cellular big based on cellular automata evolutionary model and greedy principle selection financial value It is as follows to swapping step;
Step 5.2.1, initializationnThe taboo array of individual cellulartabu[1..n] be zero, that is, allow all cellulars to be exchanged;
Step 5.2.2, each cellular is traveled through, read current cellular c l Taboo state;If current cellular c l Taboo be masked as 1, then show that it does not allow to be exchanged, skip step 5.2.3,5.2.4,5.2.5,5.2.6 and 5.2.7, continue cycling through and perform step Rapid 5.2.2 travels through next cellular;Otherwise cellular c is shown l Permission is exchanged, modification cellular c l Taboo marktabu[l]=1, Perform step 5.2.3;
Step 5.2.3, read current cellular c l State, judge the load of distributed virtual machinevm m Whether average load is more than; If greater than average load, then existmThe load array of individual virtual machinevtIn, find out the minimum virtual machine of loadvm y It is assigned to Virtual machinevm n ;If less than equal to average load, the maximum virtual machine of load is found outvm x It is assigned to virtual machinevm n ;Calculate Virtual machinevm n In all allow the cellular c that are exchanged k With current cellular c l Financial value after exchange;
Step 5.2.4, select to exchange the maximum candidate of financial value to (c using greedy principle l , c k ), if cellular is to (c l , c k ) Current financial value be more than 0, then exchange cellular to (c l , c k );Otherwise cellular is exchanged to (c with certain probability l , c k );
Step 5.2.5, cellular is exchanged to (c l , c k ), i.e. cellular c k Exchanged to virtual machinevm m Upper execution and cellular c l Exchanged To virtual machinevm n Upper execution;Change cellular c k Taboo marktabu[k]=1;
Step 5.2.6, renewalvm m Virtual machine loadsvt[m]=vt[m]+c km -c lm
Step 5.2.7, renewalvm n Virtual machine loadsvt[n]=vt[n]+c ln -c kn
In above-mentioned step 5.2.3, cellular c that described permission is exchanged k With current cellular c l Financial value after exchange calculates Method:As cellular c k With cellular c l When swapping, cellular c k Exchanged to virtual machinevm y Upper execution and cellular c l Exchanged to void Plan machinevm x Upper execution, virtual machinevm x The execution time difference before and after exchanging is the cellular to (c l , c k ) exchange financial value.
CN201510441752.6A 2015-07-26 2015-07-26 Cloud computing load balancing method for scheduling task based on cellular automata Expired - Fee Related CN105005503B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510441752.6A CN105005503B (en) 2015-07-26 2015-07-26 Cloud computing load balancing method for scheduling task based on cellular automata

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510441752.6A CN105005503B (en) 2015-07-26 2015-07-26 Cloud computing load balancing method for scheduling task based on cellular automata

Publications (2)

Publication Number Publication Date
CN105005503A CN105005503A (en) 2015-10-28
CN105005503B true CN105005503B (en) 2017-12-01

Family

ID=54378183

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510441752.6A Expired - Fee Related CN105005503B (en) 2015-07-26 2015-07-26 Cloud computing load balancing method for scheduling task based on cellular automata

Country Status (1)

Country Link
CN (1) CN105005503B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105808334B (en) * 2016-03-04 2016-12-28 山东大学 A kind of short optimization of job system and method for MapReduce based on resource reuse
CN107329815B (en) * 2017-06-26 2020-08-04 浙江工业大学 BP-Tabu search-based cloud task load balancing scheduling method
CN112148445A (en) * 2020-09-09 2020-12-29 倍智智能数据运营有限公司 Distributed task scheduling method based on big data technology
CN112187891B (en) * 2020-09-16 2022-06-10 国网浙江省电力有限公司信息通信分公司 Load optimization method and device of edge computing node set based on multiple services
CN116629190B (en) * 2023-07-21 2023-11-03 西安智多晶微电子有限公司 FPGA layout method based on cellular automaton and tabu search

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028302B2 (en) * 2002-04-24 2006-04-11 Hewlett-Packard Development Company, L.P. System and method for automatically tuning a multiprocessor computer system
CN103885839A (en) * 2014-04-06 2014-06-25 孙凌宇 Cloud computing task scheduling method based on multilevel division method and empowerment directed hypergraphs
CN103902374A (en) * 2014-04-08 2014-07-02 冷明 Cellular automation and empowerment directed hypergraph based cloud-computing task scheduling method
CN103957573A (en) * 2014-04-24 2014-07-30 电子科技大学 CAF routing method based on cellular automaton

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028302B2 (en) * 2002-04-24 2006-04-11 Hewlett-Packard Development Company, L.P. System and method for automatically tuning a multiprocessor computer system
CN103885839A (en) * 2014-04-06 2014-06-25 孙凌宇 Cloud computing task scheduling method based on multilevel division method and empowerment directed hypergraphs
CN103902374A (en) * 2014-04-08 2014-07-02 冷明 Cellular automation and empowerment directed hypergraph based cloud-computing task scheduling method
CN103957573A (en) * 2014-04-24 2014-07-30 电子科技大学 CAF routing method based on cellular automaton

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
云环境下基于禁忌搜索的负载均衡任务调度优化算法;孙凌宇等;《小型微型计算机系统》;20150930;第36卷(第9期);第1948-1952页 *
云计算负载均衡任务调度问题的元胞自动机模型研究;冷明等;《小型微型计算机系统》;20161031;第37卷(第10期);第2212-2216页 *

Also Published As

Publication number Publication date
CN105005503A (en) 2015-10-28

Similar Documents

Publication Publication Date Title
CN105159762B (en) Heuristic cloud computing method for scheduling task based on Greedy strategy
CN104331321B (en) Cloud computing task scheduling method based on tabu search and load balancing
Kaur et al. Container-as-a-service at the edge: Trade-off between energy efficiency and service availability at fog nano data centers
CN105005503B (en) Cloud computing load balancing method for scheduling task based on cellular automata
Lin et al. Fast GA-based project scheduling for computing resources allocation in a cloud manufacturing system
Tao et al. FC-PACO-RM: a parallel method for service composition optimal-selection in cloud manufacturing system
Cai et al. APPM: adaptive parallel processing mechanism for service function chains
CN103729246B (en) Method and device for dispatching tasks
CN100576177C (en) Bidirectional grade gridding resource scheduling method based on the QoS constraint
CN106371924B (en) A kind of method for scheduling task minimizing MapReduce cluster energy consumption
US8527988B1 (en) Proximity mapping of virtual-machine threads to processors
CN102254246A (en) Workflow managing method and system
CN107329815A (en) A kind of cloud task load equalization scheduling method searched for based on BP Tabu
CN109491761A (en) Cloud computing multiple target method for scheduling task based on EDA-GA hybrid algorithm
CN102937918A (en) Data block balancing method in operation process of HDFS (Hadoop Distributed File System)
CN108427602B (en) Distributed computing task cooperative scheduling method and device
Li et al. A wholistic optimization of containerized workflow scheduling and deployment in the cloud–edge environment
Geng et al. A task scheduling algorithm based on priority list and task duplication in cloud computing environment
CN106502790A (en) A kind of task distribution optimization method based on data distribution
Rodrigues et al. Network-aware container scheduling in multi-tenant data center
Zhou et al. Deep reinforcement learning-based algorithms selectors for the resource scheduling in hierarchical cloud computing
WO2021115082A1 (en) Job scheduling method and job scheduling apparatus
Chen et al. Multi-task mapping and resource allocation mechanism in software defined sensor networks
Zhao et al. A parallel-batch multi-objective job scheduling algorithm in edge computing
CN115086249B (en) Cloud data center resource allocation method based on deep reinforcement learning

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20171201

Termination date: 20180726

CF01 Termination of patent right due to non-payment of annual fee