A cloud workflow scheduling method with dynamic deadlines and reliability constraints

By dynamically updating task deadlines and introducing reliability constraints, and combining variable neighborhood descent and simulated annealing algorithms to adjust the task scheduling sequence, the flexibility and reliability issues of workflow scheduling methods in cloud computing environments are solved, achieving energy consumption optimization and improved task success rate.

CN121387550BActive Publication Date: 2026-05-26GUANGDONG UNIV OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
GUANGDONG UNIV OF TECH
Filing Date
2025-10-29
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

Existing workflow scheduling methods in cloud computing environments suffer from problems such as a lack of flexibility in task deadline allocation, difficulty in balancing energy consumption optimization and reliability, and a tendency for task scheduling sequence adjustments to fall into local optima.

Method used

A scheduling method with dynamic deadlines and reliability constraints is adopted. By dynamically updating task deadlines, introducing reliability constraints, and combining variable neighborhood descent and simulated annealing algorithms to adjust the task scheduling sequence, an optimized scheduling scheme is generated.

Benefits of technology

It improves the flexibility of task scheduling, reduces the risk of workflow deadline defaults, reduces task failure rate and energy consumption, and enhances the overall optimization effect of task scheduling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121387550B_ABST
    Figure CN121387550B_ABST
Patent Text Reader

Abstract

This invention discloses a cloud workflow scheduling method with dynamic deadlines and reliability constraints, comprising: Step 1, obtaining the task set, workflow deadlines, and workflow reliability constraints of the workflow; Step 2, calculating the upward sorting value of each task in the task set, arranging the tasks in descending order according to the upward sorting value, and generating an initial task scheduling sequence; Step 3, determining the dynamic deadlines of the tasks to be scheduled based on the initial task scheduling sequence; Step 4, determining the target reliability constraints of the tasks to be scheduled based on the initial task scheduling sequence; Step 5, arranging the virtual machines in descending order to form a candidate queue; traversing the virtual machines and their idle time slots in the candidate queue, and assigning the tasks to be scheduled to the idle time slots; Step 6, determining whether there are any unscheduled tasks. If so, returning to Step 3 and repeating the process; if not, adjusting the task scheduling sequence based on the variable neighborhood descent algorithm and the simulated annealing algorithm to complete the cloud workflow scheduling.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of cloud computing scheduling technology, and in particular relates to a cloud workflow scheduling method with dynamic deadlines and reliability constraints. Background Technology

[0002] Currently, research on workflow scheduling in cloud computing environments mainly focuses on energy consumption optimization. Existing methods generally employ Dynamic Voltage and Frequency Scaling (DVFS) technology to reduce energy consumption by lowering the operating frequency of virtual machines. A typical algorithm framework usually includes modules such as deadline partitioning, task scheduling sequence construction, virtual machine allocation, and DVFS adjustment. Although these methods have achieved some success in reducing energy consumption, they still have significant shortcomings: First, most methods assign static deadlines to each task in the workflow during the task pre-scheduling phase and keep them unchanged during subsequent scheduling, resulting in a lack of flexibility in deadline allocation and difficulty in adapting to dynamic changes during task scheduling. Second, excessively reducing the operating frequency of virtual machines by relying on DVFS technology can significantly increase the transient failure rate of virtual machines, reduce the task execution success rate, and thus trigger frequent task retries, leading to an increase in energy consumption instead of a decrease. Finally, the task scheduling sequence has a significant impact on the optimization objective, but existing scheduling sequence adjustment methods based on Variable Neighborhood Descent (VND) have limited ability to explore the solution space, are prone to getting trapped in local optima, and are difficult to obtain a globally optimal scheduling scheme. Summary of the Invention

[0003] To address the aforementioned technical problems, this invention proposes a cloud workflow scheduling method with dynamic deadlines and reliability constraints. This method can solve the problems of existing workflow scheduling methods in cloud computing environments, such as the lack of flexibility in task deadline allocation, the difficulty in balancing energy consumption optimization and reliability, and the tendency for task scheduling sequence adjustments to fall into local optima.

[0004] To achieve the above objectives, this invention provides a cloud workflow scheduling method with dynamic deadlines and reliability constraints, comprising:

[0005] Step 1: Obtain the workflow's task set, workflow deadline, and workflow reliability constraints;

[0006] Step 2: Calculate the upward sorting value of each task in the task set, and arrange the tasks in descending order according to the upward sorting value to generate an initial task scheduling sequence;

[0007] Step 3: Based on the initial task scheduling sequence, determine the dynamic deadline of the tasks to be scheduled;

[0008] Step 4: Based on the initial task scheduling sequence, determine the target reliability constraints of the tasks to be scheduled according to the actual reliability of the scheduled tasks and the pre-allocated reliability of the unscheduled tasks.

[0009] Step 5: Sort the virtual machines in descending order to form a candidate queue; traverse the virtual machines and their idle time slots in the candidate queue, select the idle time slots that can accommodate the execution of the scheduled tasks and meet the dynamic deadline and target reliability constraints, and assign the scheduled tasks to the idle time slots.

[0010] Step 6: Determine if there are any unscheduled tasks. If so, return to Step 3 and repeat the process. If not, adjust the task scheduling sequence based on the variable neighborhood descent algorithm and the simulated annealing algorithm to generate an optimized task scheduling sequence and complete the cloud workflow scheduling.

[0011] Optionally, determining the dynamic deadline for the tasks to be scheduled based on the initial task scheduling sequence includes:

[0012] Based on the initial task scheduling sequence and the average instruction execution speed, the average predecessor data transfer time, and the average local data transfer time of all virtual machines at the highest frequency, the execution time, the earliest start time, and the earliest completion time of each task are estimated, and the workflow relaxation time is calculated in conjunction with the workflow deadline.

[0013] Update the earliest completion time of the task to be scheduled and the workflow relaxation time based on the scheduling results of the already scheduled tasks to determine the dynamic deadline of the task to be scheduled.

[0014] Optionally, determining the dynamic deadline for the task to be scheduled includes:

[0015]

[0016] in, The dynamic deadline for tasks to be scheduled. The earliest time to complete the task. This is the upward sorting value of the tasks to be scheduled. For the currently scheduled tasks, The estimated execution time for the task. This represents the average local data transfer time. This is the relaxation time for the workflow.

[0017] Optionally, determining the target reliability constraints for the tasks to be scheduled includes:

[0018]

[0019] in, For the target reliability constraints of the tasks to be scheduled. For scheduled tasks Reliability, For global workflow reliability constraints, For pre-allocated reliability, It is the product of the actual reliability of the first i-1 scheduled tasks. The product of the pre-allocation reliability of the unscheduled tasks from i+1 to n.

[0020] Optionally, sorting the virtual machines in descending order to form a candidate queue includes:

[0021] Using the ratio of instruction execution speed to power consumption at the highest operating frequency of the virtual machine as an energy efficiency indicator, the virtual machines are sorted in descending order to form a candidate queue.

[0022] The energy efficiency indicators are:

[0023]

[0024] in, For energy efficiency indicators, The maximum instruction execution speed of the l-th virtual machine on the j-th host is given by [the given information]. Let be the power of the l-th virtual machine on the j-th host at its highest operating frequency.

[0025] Optionally, the idle time slots that can accommodate the execution of the tasks to be scheduled and satisfy the dynamic deadline and target reliability constraints include:

[0026] Traverse the virtual machine's idle time slots in ascending order of time, and determine whether the duration of the corresponding time slot is not less than the estimated execution time of the task to be scheduled, whether the completion time of the task in the time slot does not exceed the dynamic deadline, and whether the reliability of the task at the virtual machine's running frequency corresponding to the time slot is not lower than the target reliability constraint. If all conditions are met, then the idle time slot is determined to be a qualified idle time slot.

[0027] Optionally, the task scheduling sequence is adjusted based on the variable neighborhood descent algorithm and the simulated annealing algorithm to generate an optimized task scheduling sequence, thereby completing the cloud workflow scheduling, including:

[0028] Set the initial solution S, the neighborhood index k, and the maximum number of neighbors. Initial temperature T0 and cooling coefficient α;

[0029] when At that time, the current optimized scheduling sequence is perturbed in the k-th neighborhood to generate a new scheduling sequence, wherein the perturbation is randomly selected. The task nodes are swapped in order, where the two tasks in each pair belong to the same level, i.e., tasks at the same level.

[0030] Calculate the difference between the total energy consumption of the workflow corresponding to the new scheduling sequence and the total energy consumption of the workflow corresponding to the currently optimized scheduling sequence; if the total energy consumption corresponding to the new scheduling sequence is smaller, update the optimized scheduling sequence to the new scheduling sequence and reset the neighborhood serial number k = 1; if the total energy consumption corresponding to the new scheduling sequence is larger, generate a random number r within the interval [0, 1]; if r < exp(-Δ / T), update the optimized scheduling sequence to the new scheduling sequence and reset the neighborhood serial number k = 1; if r ≥ exp(-Δ / T), increase the neighborhood serial number , where T is the current temperature;

[0031] Update the temperature according to T = α·T, and finally until k > , the algorithm ends, and the finally optimized task scheduling sequence is obtained.

[0032] Optionally, the same-level tasks are tasks with the same level in the directed acyclic graph composed of tasks, where include:

[0033]

[0034] where,[[]] represents the set of predecessor tasks of task , is the level where task is located, is the predecessor task of task .

[0035] Compared with the prior art, the present invention has the following advantages and technical effects:

[0036] (1) The present invention proposes dynamic deadline division. During the task pre-scheduling process, adjust the deadlines of subsequent tasks according to the scheduling results of the scheduled tasks, improve the flexibility of deadline allocation, and reduce the risk of workflow deadline default.

[0037] (2) The present invention introduces workflow reliability constraints and distributes them to each task. During the task pre-scheduling process, adjust the reliability constraints of the tasks to be scheduled according to the scheduling results of the scheduled tasks, and control the operating frequency of the virtual machines accordingly, avoiding the increase in task failure rate caused by excessive frequency reduction, thereby reducing the additional energy consumption brought by task retry.

[0038] (3) Based on the task scheduling sequence adjustment of variable neighborhood descent and simulated annealing, generate a new scheduling sequence by exchanging the order of the same-level task nodes to construct a perturbed solution. Even if the perturbed solution is inferior to the current solution, it is accepted with a certain probability, effectively jumping out of the local optimum and improving the global energy consumption optimization effect. Description of the Drawings

[0039] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:

[0040] Figure 1 This is a flowchart of a cloud workflow scheduling method with dynamic deadlines and reliability constraints according to an embodiment of the present invention;

[0041] Figure 2 This is a schematic diagram illustrating the allocation of virtual machine idle time slots according to an embodiment of the present invention;

[0042] Figure 3 This is a schematic diagram of task scheduling sequence adjustment according to an embodiment of the present invention. Detailed Implementation

[0043] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.

[0044] It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.

[0045] This embodiment proposes a cloud workflow scheduling method with dynamic deadlines and reliability constraints, such as... Figure 1 As shown, the specific steps include:

[0046] Step 1: Obtain the workflow's task set, workflow deadline, and workflow reliability constraints;

[0047] Step 2: Calculate the upward sorting value of each task in the task set, and sort the tasks in descending order according to the upward sorting value to generate the initial task scheduling sequence;

[0048] Step 3: Based on the initial task scheduling sequence, determine the dynamic deadline of the tasks to be scheduled;

[0049] Step 4: Based on the initial task scheduling sequence, determine the target reliability constraints for the tasks to be scheduled according to the actual reliability of the scheduled tasks and the pre-allocated reliability of the unscheduled tasks.

[0050] Step 5: Sort the virtual machines in descending order to form a candidate queue; traverse the virtual machines and their idle time slots in the candidate queue, select the idle time slots that can accommodate the execution of the scheduled tasks and meet the dynamic deadline and target reliability constraints, and assign the scheduled tasks to the idle time slots.

[0051] Step 6: Determine if there are any unscheduled tasks. If so, return to Step 3 and repeat the process. If not, adjust the task scheduling sequence based on the variable neighborhood descent algorithm and the simulated annealing algorithm to generate an optimized task scheduling sequence and complete the cloud workflow scheduling.

[0052] Specifically, this embodiment makes the following improvements based on the existing technology: First, a dynamic deadline update mechanism is introduced, which allocates deadlines to tasks to be scheduled based on already scheduled tasks, making deadline division more flexible and reducing the risk of workflow deadline default; Second, reliability constraints are introduced to avoid increasing the task execution failure rate due to excessive reduction of virtual machine running frequency caused by DVFS technology, thereby reducing the additional energy consumption caused by task retries; Finally, the simulated annealing (SA) algorithm is integrated into the task scheduling sequence adjustment method based on variable neighborhood descent, which accepts inferior solutions with a certain probability, enhances the solution space exploration capability, effectively avoids getting trapped in local optima, and thus improves the global optimization effect.

[0053] This embodiment considers the workflow scheduling problem in a single data center environment, where the data center consists of several heterogeneous virtual machines (VMs). The workflow contains multiple tasks. Among them, the task The total number of instructions is The complex dependencies between tasks form a Directed Acyclic Graph (DAG). During execution, each task is assigned to a virtual machine, and the virtual machine's operating frequency determines the task's execution time, energy consumption, and reliability. Specifically: First, task execution energy consumption is determined by the virtual machine's power and execution time; a higher virtual machine operating frequency increases power but speeds up instruction execution and shortens task execution time. Second, task reliability is affected by the virtual machine's transient failure rate, which varies at different operating frequencies, with a higher transient failure rate at lower frequencies. The goal of this embodiment is to meet the workflow deadline constraints. and reliability constraints Minimize the total energy consumption of workflow execution under the premise of... .

[0054] Considering the complexity of the problem, this embodiment makes the following assumptions:

[0055] (1) The bandwidth of the data center remains stable during data transmission, without considering fluctuations.

[0056] (2) When the virtual machine runs at a certain frequency, its instruction execution speed, transient failure rate and power are all considered as fixed values ​​and fluctuations are not considered.

[0057] (3) Each virtual machine can only execute one task at a time, and each task can only be executed on one virtual machine.

[0058] (4) If the task fails to execute due to a transient failure of the virtual machine, it must be re-executed until it is completed.

[0059] (5) The execution of each task in the workflow is independent of each other.

[0060] Resource Model:

[0061] Data center by host Composition, including the host configuration Taiwan Heterogeneous Virtual Machine The higher the operating frequency of a virtual machine, the faster its instruction execution speed, the greater its power consumption, and the lower its transient failure rate. For virtual machines... Its maximum instruction execution speed is measured as Each virtual machine supports The running frequencies, sorted from low to high, are respectively denoted as... Since instruction execution speed is directly proportional to the operating frequency, when the virtual machine... With frequency At runtime, its instruction execution speed can be expressed as ,in Represents virtual machine The maximum operating frequency. In addition... and These represent the data transfer bandwidth within the host machine and between different hosts, respectively. The bandwidth within a virtual machine is infinite, and the data transfer time is considered to be 0.

[0062] Cost model:

[0063] virtual machine Operating frequency The power at this point can be expressed as ,in The capacitance coefficient is related to the virtual machine. Indicates the virtual machine at frequency The voltage during operation.

[0064] The total energy consumption for executing a workflow is defined as follows: Among them, the task The energy consumption during the execution period is shown in the formula.

[0065]

[0066] in, As a decision variable, when the task Assigned to a virtual machine When the time condition is met, the value is 1; otherwise, it is 0. Represents virtual machine The power. Task Completion time From the start time of the task With processing time Decision, that is , As shown in the formula.

[0067]

[0068] in, For the task execution time, Indicates from the precursor mission To the mission The time required to transmit data This is the local data transfer time.

[0069] Reliability model:

[0070] The reliability of task execution follows an exponential distribution, defined as the probability that no errors occur during task execution. Its calculation formula is: ,in Indicates transient failure rate. Indicates the execution time.

[0071] Virtual machines exhibit varying transient failure rates at different operating frequencies, with lower frequencies showing higher transient failure rates. In frequency The failure rate is shown in the following formula:

[0072]

[0073] in, The failure rate at maximum frequency. This indicates the sensitivity of the failure rate to frequency scaling.

[0074] When the virtual machine With frequency Execute the task At that time, the reliability of the task is ,in This represents the task execution time. Since the execution of tasks within a workflow is independent, the overall reliability of the workflow can be expressed as the product of the reliabilities of all tasks, as shown in the equation:

[0075]

[0076] Objective function:

[0077] The goal of this embodiment is to consider the transmission of preceding data and local data in a single data center environment, while meeting the workflow deadline. and overall reliability constraints Under the premise of achieving total energy consumption for workflow execution Minimize:

[0078]

[0079]

[0080] More specifically, such as As shown, this embodiment consists of three stages: In the first stage, parameters are estimated and the upward ranking value of tasks is calculated, and tasks are arranged in descending order to generate an initial scheduling sequence. In the second stage, the deadlines and reliability constraints of the current tasks are dynamically updated based on the already scheduled tasks, and appropriate virtual machine time slots are allocated to the tasks. In the third stage, a scheduling sequence adjustment method combining variable neighborhood descent and simulated annealing is used to adjust the scheduling sequence to obtain a new scheduling sequence. Finally, if the termination condition is not met, the above process is re-executed based on the newly obtained task scheduling sequence.

[0081] Furthermore, based on the initial task scheduling sequence, the dynamic deadlines for tasks to be scheduled are determined as follows:

[0082] Based on the initial task scheduling sequence and combined with the average instruction execution speed, the average predecessor data transfer time, and the average local data transfer time of all virtual machines at the highest frequency, the execution time, the earliest start time, and the earliest finish time of each task are estimated, and the workflow relaxation time is calculated in combination with the workflow deadline.

[0083] Update the earliest completion time and workflow slack time of the tasks to be scheduled based on the scheduling results of the already scheduled tasks, and determine the dynamic deadline of the tasks to be scheduled.

[0084] Specifically, due to the heterogeneity of virtual machines, the instruction execution speed of the virtual machine assigned to the task cannot be determined in advance during the pre-scheduling phase. Therefore, this embodiment uses the average instruction execution speed of all virtual machines at their highest frequency. As the estimated execution speed of the task, among which This represents the total number of virtual machines in the data center, from which the estimated execution time of the task can be obtained. Meanwhile, due to the difference in network bandwidth between the host and across hosts, this embodiment uses the average value of the predecessor data transmission time as shown in the formula:

[0085]

[0086] and the average local data transfer time To estimate the data transmission time of the task. Based on the estimated parameters above, the earliest start time of the task is as shown in the formula:

[0087]

[0088] The earliest completion time for the task is Therefore, the slack time of the workflow is .

[0089] In a workflow, different tasks have varying degrees of impact on the overall completion time, with tasks having a higher ranking value having a more significant impact on workflow completion time. Addressing the workflow scheduling problem in a single data center scenario, this embodiment proposes a dynamic deadline partitioning method based on the ranking value, taking into account both preceding data and local data transmission. Task The upward sorting values ​​are shown in the formula:

[0090]

[0091] During the pre-scheduling phase, the earliest completion time of the tasks to be scheduled is dynamically updated based on the already scheduled tasks. and workflow slack time This allows us to determine the tasks currently awaiting scheduling. Deadline As shown in the formula:

[0092]

[0093] in, The dynamic deadline for tasks to be scheduled. The earliest time to complete the task. This is the upward sorting value of the tasks to be scheduled. For the currently scheduled tasks, The estimated execution time for the task. This represents the average local data transfer time. This is the relaxation time for the workflow.

[0094] Furthermore, determining the target reliability constraints for the tasks to be scheduled includes:

[0095]

[0096] in, For the target reliability constraints of the tasks to be scheduled. For scheduled tasks Reliability, For global workflow reliability constraints, For pre-allocated reliability, It is the product of the actual reliability of the first i-1 scheduled tasks. The product of the pre-allocation reliability of the unscheduled tasks from i+1 to n.

[0097] Specifically, to ensure reliable workflow execution, reduce task retries, and lower energy consumption, it is necessary to ensure that the scheduling scheme generated in the pre-scheduling phase meets the workflow's reliability constraints. ,Right now To achieve this goal, global workflow reliability constraints can be applied. The tasks are decomposed and assigned to each task, so that during scheduling, only the reliability constraints of each task need to be ensured. That's it. Specifically, if the first... If a task has been scheduled, then the scheduled task has been completed. reliability It is certain that for the unscheduled end... For each task, a unified pre-allocated reliability is set. ,in, This represents the total number of tasks in the workflow. It is based on the actual reliability of the scheduled tasks. and the pre-allocation reliability of unscheduled tasks You can then obtain the currently scheduled tasks. Reliability constraints to be met .

[0098] Furthermore, sorting the virtual machines in descending order to form a candidate queue includes:

[0099] Using the ratio of instruction execution speed to power consumption at the highest operating frequency of the virtual machine as an energy efficiency indicator, the virtual machines are sorted in descending order to form a candidate queue.

[0100] Specifically, this embodiment uses the ratio of instruction execution speed to power consumption at the virtual machine's highest operating frequency. As a metric for measuring the energy efficiency of virtual machines, it is initially assumed that all virtual machines execute tasks at their highest operating frequency. .

[0101] First, according to The virtual machines are sorted in descending order to form a candidate queue. Then, the virtual machine queue is traversed sequentially. For each virtual machine, such as... As shown, the idle time slots are traversed in ascending order of time. If a time slot is found that can accommodate the task execution and meets the task's deadline... With reliability constraints If the task is not assigned to that time slot, the subsequent time slots for that virtual machine and the traversal of subsequent virtual machines will be terminated. If the task relaxation time... , then on the premise of ensuring the task deadline and reliability constraints , the operating frequency of the virtual machine can be appropriately reduced to further optimize the energy consumption. If all virtual machines and their time slots cannot meet the constraint conditions of the task, then select the time slot that can complete the task earliest and execute the task on the corresponding virtual machine at the highest operating frequency.

[0102] Furthermore, screening out the idle time slots that can accommodate the execution of the to-be-scheduled task and meet the dynamic deadline and target reliability constraints includes:

[0103] Traverse the idle time slots of the virtual machine in ascending order of time, and judge whether the duration of the corresponding time slot is not less than the estimated execution time of the to-be-scheduled task, and whether the completion time of the task executed in this time slot does not exceed the dynamic deadline, and whether the reliability of the task under the operating frequency of the corresponding virtual machine in the corresponding time slot is not lower than the target reliability constraint. If all are satisfied, then determine that this idle time slot is a qualified idle time slot.

[0104] Furthermore, adjusting the task scheduling sequence based on the variable neighborhood descent algorithm and the simulated annealing algorithm to generate an optimized task scheduling sequence to complete the cloud workflow scheduling includes:

[0105] Set the initial solution S, neighborhood serial number k, maximum number of neighborhoods , initial temperature T0 and temperature reduction coefficient α;

[0106] When , perturb the current optimized scheduling sequence in the k-th neighborhood to generate a new scheduling sequence. The perturbation is to randomly select to swap the order of task nodes, where the two tasks in each pair belong to the same layer, that is, tasks of the same layer;

[0107] Calculate the difference between the total energy consumption of the workflow corresponding to the new scheduling sequence and the total energy consumption of the workflow corresponding to the current optimized scheduling sequence; if the total energy consumption corresponding to the new scheduling sequence is smaller, then update the optimized scheduling sequence to the new scheduling sequence and reset the neighborhood serial number k = 1; if the total energy consumption corresponding to the new scheduling sequence is larger, then generate a random number r in the interval [0,1]; if r < exp(-Δ / T), then update the optimized scheduling sequence to the new scheduling sequence and reset the neighborhood serial number k = 1; if r exp(-Δ / T), then increase the neighborhood serial number by .

[0108] where T is the current temperature, and update the temperature according to T = α·T. Finally, until k > The algorithm ends. The final optimized task scheduling sequence is obtained. In the pseudocode, we can see that T is initially assigned the value T0. T is equivalent to a variable, and T0 is a constant. Therefore, T is equivalent to T0 during the first execution, and then T gradually decreases.

[0109] Furthermore, tasks at the same level are considered as levels within the directed acyclic graph of tasks. The same task, in which The definition is as follows:

[0110]

[0111] in Indicates task The set of precursor tasks.

[0112] Specifically, different task scheduling sequences have a significant impact on the energy consumption of executing the workflow. This embodiment first constructs an initial task scheduling sequence based on upward sorting values, and then generates a new scheduling sequence by swapping the order of task nodes at the same level to construct a perturbation solution. The scheduling sequence is adjusted as follows: As shown.

[0113] As shown in Table 1, a total of [number] structures were constructed in this embodiment. For the neighborhood, for the , A neighborhood, randomly select one from the scheduling sequence. The tasks are swapped in order. Since the variable neighborhood descent algorithm only accepts improved solutions, it is prone to getting trapped in local optima. To enhance global search capabilities, this embodiment combines the variable neighborhood descent algorithm with the simulated annealing algorithm; the pseudocode is shown in Table 1. When the perturbation solution... Better than the current solution Update immediately for Otherwise, even Inferior It also accepts the algorithm with a certain probability, thus effectively escaping local optima and improving the energy consumption optimization performance of the method.

[0114] Table 1

[0115]

[0116] The above are merely preferred embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A cloud workflow scheduling method with dynamic deadline and reliability constraints, characterized in that Including: Step 1: Obtain the task set, workflow deadline, and workflow reliability constraint of the workflow. Step 2: Calculate the upward sorting value of each task in the task set, sort the tasks in descending order according to the upward sorting value, and generate an initial task scheduling sequence. Step 3: Based on the initial task scheduling sequence, determine the dynamic deadline of the task to be scheduled, including: Based on the initial task scheduling sequence and combined with the average instruction execution speed, average predecessor data transfer time, and average local data transfer time of all virtual machines at the highest frequency, estimate the execution time, earliest start time, and earliest completion time of each task, and calculate the workflow slack time in combination with the workflow deadline. Update the earliest completion time of the task to be scheduled and the workflow slack time according to the scheduling results of the scheduled tasks, and determine the dynamic deadline of the task to be scheduled. Step 4: Based on the initial task scheduling sequence, determine the target reliability constraint of the task to be scheduled according to the actual reliability of the scheduled tasks and the pre-allocated reliability of the unscheduled tasks. Determining the target reliability constraint of the task to be scheduled includes: Among them, is the target reliability constraint of the task to be scheduled, is the reliability of the scheduled task , is the global workflow reliability constraint, is the pre-allocation reliability, is the product of the actual reliabilities of the first i -1 scheduled tasks, is the product of the pre-allocation reliabilities of the i +1 to the nth unscheduled tasks; Step 5: Sort the virtual machines in descending order to form a candidate queue; traverse the virtual machines and their idle time slots in the candidate queue, filter out the idle time slots that can accommodate the execution of the task to be scheduled and meet the dynamic deadline and target reliability constraint, and allocate the task to be scheduled to the idle time slot. Step 6: Determine whether there are unscheduled tasks. If so, return to Step 3 and repeat the execution; if not, adjust the task scheduling sequence based on the variable neighborhood descent algorithm and the simulated annealing algorithm to generate an optimized task scheduling sequence, and complete the cloud workflow scheduling.

2. The dynamic deadline and reliability constraint-based cloud workflow scheduling method according to claim 1, wherein Determining the dynamic deadline of the task to be scheduled includes: Among them, is the dynamic deadline of the task to be scheduled, is the earliest completion time of the task, is the upward sorting value of the task to be scheduled, is the current task to be scheduled, is the estimated execution time of the task, is the average value of the local data transfer time, is the slack time of the workflow.

3. A dynamic deadline and reliability constraint-based cloud workflow scheduling method according to claim 1, characterized in that Sorting the virtual machines in descending order to form a candidate queue includes: Taking the ratio of the instruction execution speed to the power of the virtual machine at the highest running frequency as the energy efficiency index, and sorting the virtual machines in descending order to form a candidate queue. The energy efficiency index is: Among them, is the energy efficiency index, is the j highest instruction execution speed of the l th virtual machine on the th host, j and l is the power of the l th virtual machine on the j th host at the highest operating frequency.

4. A dynamic deadline and reliability constraint-based cloud workflow scheduling method according to claim 3, characterized in that Filtering out the idle time slots that can accommodate the execution of the task to be scheduled and meet the dynamic deadline and target reliability constraint includes: Traverse the idle time slots of the virtual machine in ascending order of time, determine whether the duration of the corresponding time slot is not less than the estimated execution time of the task to be scheduled, and whether the completion time of the task executed in this time slot does not exceed the dynamic deadline, and whether the reliability of the task at the running frequency of the corresponding virtual machine in the corresponding time slot is not lower than the target reliability constraint. If all are satisfied, determine that the idle time slot is a qualified idle time slot.

5. A dynamic deadline and reliability constraint-based cloud workflow scheduling method according to claim 1, characterized in that Adjusting the task scheduling sequence based on the variable neighborhood descent algorithm and the simulated annealing algorithm to generate an optimized task scheduling sequence and complete the cloud workflow scheduling includes: Set the initial solution S, neighborhood serial number k , maximum number of neighborhoods , initial temperature T0 and temperature reduction coefficient α ; When , perturb the currently optimized scheduling sequence in the k th neighborhood to generate a new scheduling sequence, where the perturbation is to randomly select to swap the order of task nodes, where the two tasks in each pair belong to the same layer, that is, tasks in the same layer; Calculate the difference between the total energy consumption of the workflow corresponding to the new scheduling sequence and the total energy consumption of the workflow corresponding to the currently optimized scheduling sequence; if the total energy consumption corresponding to the new scheduling sequence is smaller, update the optimized scheduling sequence to the new scheduling sequence and reset the neighborhood serial number k = 1; if the total energy consumption corresponding to the new scheduling sequence is larger, generate a random number r in the range [0, 1]; if r < exp(-Δ / T), update the optimized scheduling sequence to the new scheduling sequence and reset the neighborhood serial number k = 1; if r ≥ exp(-Δ / T), increment the neighborhood serial number , where T is the current temperature; Press T = α · Update the temperature of T, and finally until it meets k > , the algorithm ends, and the finally optimized task scheduling sequence is obtained.

6. A dynamic deadline and reliability constraint-based cloud workflow scheduling method according to claim 5, characterized in that The same-level tasks are tasks at the same level in the directed acyclic graph formed by the tasks with the same tasks, where include: Among them, represents the set of predecessor tasks of the task, is the level where the task is located, is the predecessor task of the task.