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 PDFInfo
- 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
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
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.
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)
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)
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 |
-
2015
- 2015-07-26 CN CN201510441752.6A patent/CN105005503B/en not_active Expired - Fee Related
Patent Citations (4)
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)
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 |