WO2017167025A1 - Procédé et dispositif servant à réaliser une planification de tâche, et support de stockage informatique - Google Patents

Procédé et dispositif servant à réaliser une planification de tâche, et support de stockage informatique Download PDF

Info

Publication number
WO2017167025A1
WO2017167025A1 PCT/CN2017/076934 CN2017076934W WO2017167025A1 WO 2017167025 A1 WO2017167025 A1 WO 2017167025A1 CN 2017076934 W CN2017076934 W CN 2017076934W WO 2017167025 A1 WO2017167025 A1 WO 2017167025A1
Authority
WO
WIPO (PCT)
Prior art keywords
task
utility
utility function
priority
resource node
Prior art date
Application number
PCT/CN2017/076934
Other languages
English (en)
Chinese (zh)
Inventor
童遥
申光
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2017167025A1 publication Critical patent/WO2017167025A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration

Definitions

  • This document relates to, but is not limited to, the field of information processing, and more particularly to a method, device and computer storage medium for implementing task scheduling.
  • Cloud computing is an important trend in the development of information technology. It has the advantages of high reliability, processing capacity of large amounts of data, strong scalability, and high resource utilization of equipment. It has become a research hotspot in the field of information processing; cloud computing can meet the next generation data center. For data computing and storage needs, and with strong application services as a support, data centers have already played an important role in cloud computing. For data centers, real-time and reliability are the main considerations, when there are large-scale When a task accesses the system at the same time, the task request of the data center may increase rapidly in a short period of time, which may degrade the quality of the user's service and may cause the data center to be unstable.
  • the basic requirement of cloud computing data center task scheduling is to enable the task submitted by the user to achieve optimal scheduling and maximize the throughput of the cloud environment.
  • the task scheduling method in the related art is to minimize the task execution time.
  • Such as greedy algorithm, A star (A* algorithm), Min-min algorithm, Max-min algorithm and genetic algorithm these task scheduling methods generally only consider the completion time of the task submitted by the user.
  • Ignore cloud computing data The other needs of the heart user for different tasks and the load balancing of the system affect the performance of the cloud computing data center.
  • Embodiments of the present invention provide a method, a device, and a computer storage medium for implementing task scheduling, which can perform task scheduling in combination with a user's related requirements for different tasks, and improve the performance of the computing task.
  • An embodiment of the present invention provides a method for implementing task scheduling, including:
  • the traversal calculation calculates the maximum value of the total utility function corresponding to the task, and when the total utility function takes the largest value, the virtual machine to which the task is to be assigned is used as the virtual machine of the operation task.
  • the method before the constructing the total utility function corresponding to each task according to at least one of the plurality of functions established in advance, the method further includes:
  • the utility function of establishing a corresponding time utility for each task includes:
  • the utility function for establishing a corresponding reliability utility of each resource node includes:
  • the utility functions for establishing a corresponding security utility for each resource node include:
  • All resource nodes are divided into two or more security levels according to a preset level policy; a security level is randomly assigned from the divided two or more security levels for the current resource node;
  • the level coefficient is used to distinguish the priority of the task corresponding to each type of data
  • the reliability coefficient is a number greater than 0 and less than 1.
  • the utility function of the reliability utility constructed includes:
  • r a is a random number uniformly distributed in the interval [0, 1].
  • the dividing all resource nodes into two or more security levels according to a preset level policy includes:
  • the utility function of establishing a security utility proportional to the security level of the current resource node includes:
  • the setting the priority of the current task according to the type of data included in the current task includes:
  • a level coefficient of the first priority level to be smaller than a level factor of the second priority
  • a level coefficient of the second priority is smaller than a level coefficient of the third priority
  • the first The rank factor of the priority level, the rank factor of the second priority, and the magnitude of the rank factor of the third priority are used to distinguish the priority level of the task corresponding to each category of data.
  • the value of the total utility function of the task when the traversal calculation task is to be allocated to the virtual machine includes:
  • each time in combination Select a value for all values of each type of utility function when calculating the total utility function;
  • the values of the utility functions of each of the selected ones are respectively accumulated to obtain the value of the total utility function.
  • the method before accumulating the value of the selected utility function, the method further includes:
  • a utility function for establishing a corresponding time utility for each task included in the total utility function, and/or a utility function for a corresponding reliability utility of each resource node, and/or a corresponding security utility for each resource node
  • the utility function, and/or the utility function of the corresponding priority utility for each task respectively sets the corresponding weights according to the preset weighting strategy.
  • the method before the determining the traversal to calculate the maximum value of the total utility function corresponding to the task, the method further includes:
  • All tasks submitted by the user are sorted according to the order of priority of the tasks, and the total utility function of the tasks is calculated in descending order of task priorities.
  • the method further includes:
  • the virtual machine that computes the user-submitted task is sorted in ascending order of the size of the MIPS (Million Instructions Per Second).
  • the method when the task assigned to the virtual machine does not complete the operation within the running threshold duration, the method further includes:
  • the task of the stop operation ranked at the end of the priority level sorting operation is performed.
  • the greedy algorithm is used to perform the traversal calculation of the total utility function corresponding to each task.
  • the method further includes:
  • the operation threshold time is used as the resource estimation unit, and the size of each task submitted by the user is divided by the quotient obtained by the resource estimation unit as the estimated resource required for the task;
  • the method further comprises: monitoring port traffic, and/or number of connections of all of the resource nodes, for port traffic, and/or number of connections for each resource node according to a preset policy. Make adjustments.
  • An embodiment of the present invention further provides an apparatus for implementing task scheduling, including: a total utility function unit, a traversal calculation unit, and a task allocation unit; wherein
  • the total utility function unit is configured to construct a total utility function corresponding to each task according to at least one of a plurality of functions established in advance; wherein the plurality of functions include: a utility function of a time utility corresponding to each task a utility function of the corresponding reliability utility of each resource node, a utility function of the corresponding security utility of each resource node, and a utility function of the corresponding priority utility of each task;
  • the traversal calculation unit is configured to: for each task submitted by the user, traverse the value of the total utility function of the task when the calculation task is to be allocated to the virtual machine;
  • the task assignment unit is configured to determine, for each task, a maximum value of the total utility function corresponding to the traversal calculation, and use the virtual machine to which the task is to be assigned as the virtual machine of the operation task when the total utility function takes the largest value.
  • the total utility function unit is configured to calculate a preset expected running time and task submission of the current task before constructing a total utility function corresponding to each task according to at least one of the plurality of functions established in advance.
  • the time difference of time, the time difference obtained by the calculation is taken as the task execution time;
  • the utility function of the time utility is determined to be 1 when the task is completed within the task execution time limit; and the determination task is not completed when the task execution time limit is not completed.
  • the utility function of the time utility takes a value of 0;
  • the total utility function unit is configured to determine the number of tasks assigned to the resource node n T and the virtual node included in the resource node before constructing a total utility function corresponding to each task according to at least one of a plurality of functions established in advance Number of machines n M ; using a preset reliability coefficient as a utility function of the reliability utility as a base, determining the number of tasks assigned to the resource node n T and the number of virtual machines n M included in the resource node as an index parameter, Constructing a utility function of the reliability utility;
  • the total utility function unit is configured to divide all resource nodes into two or more security levels according to a preset level policy before constructing a total utility function corresponding to each task according to at least one of a plurality of functions established in advance. Randomly assigning a security level to the current resource node from the divided two or more security levels;
  • the total utility function unit is configured to set a priority of the current task according to the type of data included in the current task before constructing a total utility function corresponding to each task according to at least one of the plurality of functions established in advance; a priority level of the current task, setting a corresponding level coefficient for each priority level, and using the set level coefficient as a utility function of the priority utility of the current task;
  • the level coefficient is configured to distinguish the priority of the task corresponding to each type of data
  • the reliability coefficient is a number greater than 0 and less than 1.
  • the traversal calculation unit is configured to
  • each time in combination Select a value for all values of each type of utility function when calculating the total utility function;
  • the values of the utility functions of each of the selected ones are respectively accumulated to obtain the value of the total utility function.
  • the apparatus further includes a setting weight unit configured to accumulate values of each of the selected utility functions,
  • a utility function for establishing a corresponding time utility for each task included in the total utility function, and/or a utility function for a corresponding reliability utility of each resource node, and/or a corresponding security utility for each resource node
  • the utility function, and/or the utility function of the corresponding priority utility for each task respectively sets the corresponding weights according to the preset weighting strategy.
  • the apparatus further includes a task sorting unit configured to determine, before traversing the maximum value of the total utility function corresponding to the task, sorting all the tasks submitted by the user according to the priority level of the task.
  • the total utility function of the task is calculated in descending order of task priorities.
  • the apparatus further includes a virtual machine sorting unit configured to arrange the virtual machines of the tasks submitted by the user to be in ascending order according to the size of the single-word long-point instruction MIPS.
  • the apparatus further includes an operation adjustment unit configured to stop the virtual machine from continuing to calculate the unfinished operation within the running threshold duration when the task assigned to the virtual machine does not complete the operation within the running threshold duration a task, and loading the task of stopping the operation to the end of the priority level sorting; completing the operation of the other tasks of the task other than the stop operation, and then performing the stop operation task at the end of the priority level sorting Perform the operation.
  • an operation adjustment unit configured to stop the virtual machine from continuing to calculate the unfinished operation within the running threshold duration when the task assigned to the virtual machine does not complete the operation within the running threshold duration a task, and loading the task of stopping the operation to the end of the priority level sorting; completing the operation of the other tasks of the task other than the stop operation, and then performing the stop operation task at the end of the priority level sorting Perform the operation.
  • the apparatus further includes: acquiring the resource unit, configured to use the running threshold duration as the resource estimating unit, and dividing the size of each task submitted by the user by the quotient obtained by the resource estimating unit, as the task corresponding to the task Estimated resource requirements;
  • the apparatus further includes a monitoring unit configured to monitor port traffic, and/or number of connections of all of the resource nodes, configured to configure port traffic for each resource node according to a preset policy, and / or the number of connections to adjust.
  • a monitoring unit configured to monitor port traffic, and/or number of connections of all of the resource nodes, configured to configure port traffic for each resource node according to a preset policy, and / or the number of connections to adjust.
  • the embodiment of the invention further provides a computer storage medium, wherein the computer storage medium stores computer executable instructions, and the computer executable instructions are used to execute the method for implementing task scheduling according to the embodiment of the invention.
  • the technical solution of the embodiment of the present invention includes: constructing a total utility function corresponding to each task according to at least one of a plurality of functions established in advance; wherein the multiple functions include: a utility function of a time utility corresponding to each task The utility function of the corresponding reliability utility of each resource node, the utility function of the corresponding security utility of each resource node, and the utility function of the corresponding priority utility of each task; traversing the calculation task for each task submitted by the user The value of the total utility function of the task when it is to be assigned to the virtual machine; for each task, determine the maximum value of the total utility function corresponding to the traversal calculation, and the virtual task to be assigned when the total utility function takes the largest value.
  • the machine acts as a virtual machine for computing tasks.
  • the technical solution of the embodiment of the present invention implements task scheduling according to time effects, reliability effects, security effects, etc., and considers user requirements for time, reliability, security, etc., and implements the system. Load balancing improves the performance of computing tasks
  • FIG. 1 is a flowchart of a method for implementing task scheduling according to an embodiment of the present invention
  • FIG. 2 is a structural block diagram of an apparatus for implementing task scheduling according to an embodiment of the present invention
  • FIG. 3 is a flow chart of a method for applying an example of the present invention.
  • FIG. 1 is a flowchart of a method for implementing task scheduling according to an embodiment of the present invention. As shown in FIG. 1 , the method includes:
  • Step 100 Construct a total utility function corresponding to each task according to at least one of a plurality of functions established in advance; wherein, the utility function of the corresponding time utility of each task, and the corresponding reliability utility of each resource node The utility function, the utility function of the corresponding security utility for each resource node, and the utility function of the corresponding priority utility for each task.
  • the method further includes: establishing a utility function of a time utility corresponding to each task; and /or,
  • the utility function of establishing a corresponding time utility for each task includes:
  • the preset expected running time of the current task may be determined by receiving an external command after the user submits the task; the task submission time may be obtained by reading the task log or reading system information, which is a common technique of those skilled in the art. means.
  • the utility function for establishing a corresponding reliability utility of each resource node includes:
  • a utility function of the reliability utility is constructed as an exponential parameter with the number of virtual machines n M included in the resource node.
  • the utility functions for establishing a corresponding security utility for each resource node include:
  • a utility function that establishes a security utility of the current resource node proportional to the security level based on the security level randomly assigned to the current resource node.
  • the level coefficient is used to distinguish the priority of the task corresponding to each type of data
  • the reliability coefficient is a number greater than 0 and less than 1.
  • the utility functions of the constructed reliability utility include:
  • r a is a random number uniformly distributed in the interval [0, 1].
  • the reliability coefficient may be adjusted according to an actual situation, and the reliability coefficient is used to determine whether the resource node is reliable or not.
  • the reliability coefficient of the method in the embodiment of the present invention is only an embodiment obtained according to empirical analysis;
  • the utility function of the reliability utility can also be adjusted as long as the task number n T of the resource node and the number of virtual machines n M included in the resource node can be expressed for the purpose of calculation of the utility function.
  • the dividing all resource nodes into two or more security levels according to a preset level policy includes:
  • the utility function of establishing a security utility proportional to the security level of the current resource node includes:
  • the method for dividing the four security levels according to the method of the present invention is obtained according to experience, and the security level can be adjusted according to the actual application.
  • the setting the priority of the current task according to the type of data included in the current task includes:
  • the priority level of the task of the data of the action record type data is the second priority;
  • the priority level of the task of setting the data included as the device account and the integrated information type data is the third priority;
  • the set priority coefficient of the first priority level is smaller than the level coefficient of the second priority, the level coefficient of the second priority is smaller than the level coefficient of the third priority, and the set level coefficient and the second priority of the first priority level are set.
  • the numerical value of the level coefficient of the level and the level coefficient of the third priority are used to distinguish the priority level of the task corresponding to each type of data.
  • the priority level division manner of the task is an optional one of the division manners, and may be correspondingly divided according to different definitions of the priority levels.
  • Step 101 For each task submitted by the user, traverse the value of the total utility function of the task when the computing task is to be allocated to the virtual machine.
  • the value of the total utility function of the task when the traversal calculation task is to be allocated to the virtual machine includes:
  • the values of the utility functions of each of the selected ones are respectively accumulated to obtain the value of the total utility function.
  • the accumulation includes: adding the values of the utility functions of each of the selected ones.
  • the method before accumulating the value of the selected utility function, the method further includes:
  • weight values of the utility functions included in the total utility function may be added to a value of 1.
  • the setting weight is mainly used to consider the factors referenced in task scheduling.
  • the weight of the utility function of time utility is larger than other utility functions; similarly, if the user is reliable If the sexual requirements are high, the weight of the utility function of the reliability utility is larger than that of the other utility functions.
  • a greedy algorithm is used to perform traversal calculation of the total utility function corresponding to each task.
  • the greedy algorithm is only an optional embodiment of the embodiment of the present invention. If the algorithm is improved, other algorithms can implement fast traversal calculation, and other algorithms can also be applied to the embodiment of the present invention.
  • Step 102 For each task, determine a traversal calculation to calculate a maximum value of the total utility function corresponding to the task, and when the total utility function takes the largest value, the virtual machine to which the task is to be assigned is used as the virtual task of the operation task. Planned.
  • the method before the determining the traversal to calculate the maximum value of the total utility function corresponding to the task, the method further includes:
  • All tasks submitted by the user are sorted according to the priority level of the task, and the total utility function of the task is calculated in descending order of task priority.
  • the method of the embodiment of the present invention further includes:
  • the virtual machine that computes the task submitted by the user is arranged in ascending order according to the size of the single-word long-point command MIPS.
  • the MIPS is sorted in ascending order of the size of the virtual machine.
  • the MIPS is a measure of the performance of the virtual machine's central processing unit (CPU). It is used to measure the performance of the virtual machine.
  • the virtual machine in the last column has the best performance; when the task is to be assigned to the virtual machine, the quasi-allocation is started from the best-performing virtual machine according to the sorting, and the value of the total utility function of the task is calculated on this basis.
  • the method of the embodiment of the present invention further includes:
  • the task of the stop operation at the end of the priority level sorting operation is performed.
  • the running threshold duration is the length of time required by a general task calculation determined by a technician according to an empirical analysis. If the running threshold duration task is not completed, the task is a long task, and the operation of the task is continued. Will affect the timely completion of follow-up tasks.
  • the method of the embodiment of the present invention further includes: using a running threshold duration as a resource estimation unit,
  • the size of each task can be determined by the number of virtual central processing units (VCPUs) required by the computing tasks, the size of the memory, and the like.
  • VCPUs virtual central processing units
  • the method of the embodiment of the present invention further includes: monitoring port traffic, and/or number of connections of all resource nodes, for port traffic, and/or connection to each resource node according to a preset policy. The number is adjusted.
  • the port traffic of the resource node and/or the number of connections are adjusted by the resource manager. Therefore, the port traffic and/or the number of connections of the resource node monitored by the method in this embodiment of the present invention can be fed back to the task manager. on.
  • the method of the embodiment of the present invention can be implemented by a device for performing task scheduling in the related art, for example, a task manager.
  • a device for performing task scheduling for example, a task manager.
  • the traversal calculation of the utility function, the assignment of tasks to a virtual machine, etc., by a central processor of the device that performs task scheduling, the related information may be stored in a storage medium.
  • the tasks submitted by the user are scheduled according to time effects, reliability effects, security effects, etc., and the requirements of time, reliability, security, etc. are considered, and the load balancing of the system is realized. , improve the performance of the computing task.
  • FIG. 2 is a structural block diagram of an apparatus for implementing task scheduling according to an embodiment of the present invention. As shown in FIG. 2, the method includes: a total utility function unit 21, a traversal calculation unit 22, and a task assignment unit 23;
  • the total utility function unit 21 is configured to construct a total utility function corresponding to each task according to at least one of a plurality of functions established in advance; wherein the plurality of functions include: a utility of a time utility corresponding to each task a function, and/or a utility function of the corresponding reliability utility of each resource node, and/or a utility function of the corresponding security utility of each resource node, and/or a utility function of the corresponding priority utility of each task;
  • the traversal calculation unit 22 is configured to traverse the calculation task for each task submitted by the user The value of the total utility function for this task when it is intended to be assigned to a virtual machine;
  • the task assignment unit 23 is configured to determine, for each task, a maximum value of the total utility function corresponding to the traversal calculation, and use the virtual machine to which the task is to be assigned as the virtual machine of the operation task when the total utility function takes the largest value. .
  • the total utility function unit 21 is configured to calculate a preset expected running time and task of the current task before constructing a total utility function corresponding to each task according to at least one of a plurality of functions established in advance.
  • the time difference of the submission time, the calculated time difference is taken as the task execution time;
  • the utility function of the time utility is determined to be 1 when the task is completed within the task execution time limit;
  • the utility function of the time utility is determined when the task is not completed within the task execution time limit The value is 0;
  • the total utility function unit 21 is configured to determine the number of tasks assigned to the resource node n T and the virtual machine included in the resource node before constructing the total utility function corresponding to each task according to at least one of the plurality of functions established in advance.
  • the number n M is determined by using a preset reliability coefficient as a utility function of the reliability utility as a base, and determining the number of tasks assigned to the resource node n T and the number of virtual machines included in the resource node n M as an index parameter, and constructing Utility function for reliability utility;
  • the total utility function unit 21 is configured to divide all resource nodes into two or more security according to a preset level policy before constructing a total utility function corresponding to each task according to at least one of a plurality of functions established in advance. Level; randomly assigns a security level from the divided two or more security levels for the current resource node;
  • the total utility function unit 21 is configured to set a priority of the current task according to the type of data included in the current task before constructing a total utility function corresponding to each task according to at least one of the plurality of functions established in advance; The priority level of the current task, the corresponding level coefficient of each priority level is set, and the set level coefficient is used as the priority effect of the current task. Utility function used;
  • the level coefficient is used to distinguish the priority of the task corresponding to each type of data
  • the reliability coefficient is a number greater than 0 and less than 1.
  • the traversal calculation unit 22 is configured to
  • the values of the utility functions of each of the selected ones are respectively accumulated to obtain the value of the total utility function.
  • the apparatus of the embodiment of the present invention further includes a setting weight unit 24 configured to accumulate values of each of the selected utility functions.
  • a utility function for establishing a time utility for each task included in the total utility function, and/or a utility function for the corresponding reliability utility of each resource node, and/or a utility function for the corresponding security utility of each resource node And/or the utility function of the corresponding priority utility of each task sets the corresponding weight according to the preset weighting strategy.
  • the apparatus of the embodiment of the present invention further includes a task sorting unit 25 configured to determine, according to the priority level of the task, all tasks submitted by the user before determining the maximum value of the total utility function corresponding to the task. The order is sorted, and the total utility function of the task is calculated in descending order of task priority.
  • the apparatus of the embodiment of the present invention further includes a virtual machine sorting unit 26 configured to arrange the virtual machines of the tasks submitted by the user in ascending order according to the size of the single-word long-point instruction MIPS.
  • the apparatus of the embodiment of the present invention further includes an operation adjustment unit 27 configured to stop the virtual machine from continuing to operate the operation threshold for an unfinished operation time when the task assigned to the virtual machine does not complete the operation within the operation threshold duration.
  • the task loads the task that stops the operation to the end of the priority level sorting; after completing the operations of the other tasks of the task that stops the operation, the task of the stop operation at the end of the priority level sorting operation is performed.
  • the apparatus of the embodiment of the present invention further includes an acquiring resource unit 28 configured to use the running threshold duration as a resource estimating unit, and divide the size of each task submitted by the user by the quotient obtained by the resource estimating unit.
  • the estimated resource required for the task is accumulated; the estimated required resources corresponding to all the tasks submitted by the user are accumulated, and the computer resources required for creating the virtual machine submitted by the computing user are obtained.
  • the apparatus of the embodiment of the present invention further includes a monitoring unit 29 configured to monitor port traffic and/or the number of connections of all resource nodes for port traffic of each resource node according to a preset policy. And/or the number of connections to adjust.
  • the resource unit 28 and the monitoring unit 29 can be used by a CPU, a digital signal processor (DSP), a micro control unit (MCU) or a programmable gate array in the device. (FPGA, Field-Programmable Gate Array) implementation.
  • FIG. 3 is a flowchart of a method for applying an example of the present invention, as shown in FIG. 3, including:
  • Step 300 Generate a task queue according to the task submitted by the user.
  • Step 301 Determine a computer resource required for computing a virtual machine that the user submits the task.
  • the operation threshold time is used as the resource estimation unit, and the size of each task submitted by the user is divided by the quotient obtained by the resource estimation unit as the estimated resource required for the task; the estimated resource corresponding to all tasks is estimated. Perform the accumulation to get the computer resources needed to create a virtual machine that computes the user's submitted tasks.
  • the size of the task can be determined by computer hardware resources such as the number of VCPUs and memory size required for the computing task;
  • the computer resource Y required to calculate the virtual machine submitted by the user to the task can be calculated by the following formula:
  • Q i represents the size of the i-th task
  • n T is the number of tasks submitted by the user.
  • Step 302 Create a virtual machine according to the determined computer resource required by the computing user to submit the virtual machine of the task.
  • creating a virtual machine is a common technical means for those skilled in the art.
  • Step 303 The virtual machine that computes the task submitted by the user is arranged in ascending order according to the size of the single-word long-point command MIPS.
  • Step 304 Sort all tasks submitted by the user according to the order of priority of the tasks.
  • Step 305 Calculate the total utility function of the task according to the order of priority of the task from high to low.
  • the total utility function of the computing task needs to allocate the task to the virtual machine, and determine the utility function and task allocation of the reliability utility of the resource node where the virtual machine to which the task is to be assigned through the virtual machine to be allocated.
  • the value of the total utility function of the task when the traversal computing task is to be allocated to the virtual machine includes:
  • the values of the utility functions of each of the selected ones are respectively accumulated to obtain the value of the total utility function.
  • the accumulation includes: adding the values of the utility functions of each of the selected ones.
  • Each utility function included in the total utility function takes the calculated value once each time, and traverses in a combined manner, and all the values that the total utility function may obtain.
  • Step 306 For each task, determine a traversal calculation to calculate a maximum value of the total utility function corresponding to the task, and use the virtual machine to which the task is to be assigned as the virtual machine of the operation task when the total utility function takes the largest value.
  • Step 307 When the task assigned to the virtual machine does not complete the operation within the running threshold duration, stop the virtual machine to continue the operation of the task that does not complete the operation within the running threshold duration, and load the task that stops the operation to the end of the priority level sorting.
  • Step 308 After completing the operation of the other tasks of the task that stops the operation, the task of stopping the operation at the end of the priority level sorting operation is performed.
  • Step 309 When the operation of the task submitted by the user is completed, the virtual machine is released.
  • the application example further includes: monitoring port traffic, and/or number of connections of all resource nodes, for port traffic of each resource node according to a preset policy, And / or the number of connections to adjust.
  • the port traffic of the resource node and/or the number of connections are adjusted by the resource manager. Therefore, the port traffic and/or the number of connections of the resource node monitored by the method in this embodiment of the present invention can be fed back to the task manager. on.
  • the disclosed method and apparatus may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the modules is only a logical function division.
  • there may be another division manner for example, multiple modules or components may be combined, or Can be integrated into another system, or some features can be ignored or not executed.
  • the communication connections between the various components shown or discussed may be indirect coupling or communication connections through some interfaces, devices or modules, and may be electrical, mechanical or otherwise.
  • the modules described above as separate components may or may not be physically separated.
  • the components displayed as modules may or may not be physical modules, that is, may be located in one place or distributed to multiple network modules; Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional module in each embodiment of the present invention may be integrated into one processing module, or each module may be separately used as one module, or two or more modules may be integrated into one module;
  • the module can be implemented in the form of hardware or in the form of hardware plus software function modules.
  • the foregoing program may be stored in a computer readable storage medium, and when executed, the program includes The foregoing steps of the method embodiment; and the foregoing storage medium includes: a removable storage device, a read-only memory (ROM), a magnetic disk or an optical disk, and the like, which can store program codes.
  • ROM read-only memory
  • the above integrated module of the embodiment of the present invention is implemented in the form of a software function module. And when sold or used as a stand-alone product, it can also be stored on a computer readable storage medium.
  • the technical solution of the embodiments of the present invention may be embodied in the form of a software product in essence or in the form of a software product stored in a storage medium, including a plurality of instructions.
  • a computer device (which may be a personal computer, server, or network device, etc.) is caused to perform all or part of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes various media that can store program codes, such as a mobile storage device, a ROM, a magnetic disk, or an optical disk.
  • the technical solution of the embodiment of the present invention performs task scheduling according to the time effect, the reliability effect, the security effect, and the like, and considers the user's requirements on time, reliability, security, etc., and realizes the load of the system. Equilibrium improves the performance of computing tasks.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

L'invention concerne un procédé et un dispositif servant à réaliser une planification de tâche, ainsi qu'un support de stockage informatique. Le procédé consiste : selon au moins une fonction d'une pluralité de fonctions préétablies, à construire une fonction utilitaire totale correspondant à chaque tâche, la pluralité de fonctions comprenant une fonction utilitaire d'une fonctionnalité de temps correspondant à chaque tâche, et/ou une fonction utilitaire d'une fonctionnalité de priorité, et/ou une fonction utilitaire d'une fonctionnalité de fiabilité correspondant à chaque nœud de ressource, et/ou une fonction utilitaire d'une fonctionnalité de sécurité correspondant à chaque nœud de ressource ; par rapport à chaque tâche, à réaliser un calcul transversal sur une valeur de la fonction utilitaire totale de la tâche lorsque la tâche est planifiée d'être allouée à une machine virtuelle ; et à déterminer la valeur maximale de la fonction utilitaire totale correspondant à chaque tâche après le calcul transversal, et à considérer, lorsque la valeur de la fonction utilitaire totale est le maximum, la machine virtuelle pour laquelle l'allocation de la tâche est planifiée comme machine virtuelle servant à calculer la tâche.
PCT/CN2017/076934 2016-03-28 2017-03-16 Procédé et dispositif servant à réaliser une planification de tâche, et support de stockage informatique WO2017167025A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610181930.0A CN107239336B (zh) 2016-03-28 2016-03-28 一种实现任务调度的方法及装置
CN201610181930.0 2016-03-28

Publications (1)

Publication Number Publication Date
WO2017167025A1 true WO2017167025A1 (fr) 2017-10-05

Family

ID=59963418

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/076934 WO2017167025A1 (fr) 2016-03-28 2017-03-16 Procédé et dispositif servant à réaliser une planification de tâche, et support de stockage informatique

Country Status (2)

Country Link
CN (1) CN107239336B (fr)
WO (1) WO2017167025A1 (fr)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595249A (zh) * 2018-05-02 2018-09-28 联想(北京)有限公司 一种虚拟机任务调度方法及电子设备
CN110008026A (zh) * 2019-04-09 2019-07-12 中国科学院上海高等研究院 基于额外预算均分的作业调度方法、装置、终端和介质
CN110717662A (zh) * 2019-09-27 2020-01-21 苏州达家迎信息技术有限公司 任务分配方法、装置、设备及存储介质
CN111124832A (zh) * 2019-12-25 2020-05-08 青梧桐有限责任公司 数据监控方法、装置、电子设备及存储介质
CN111143037A (zh) * 2019-12-31 2020-05-12 联想(北京)有限公司 一种虚拟机资源分配方法、设备、系统及存储介质
CN111309373A (zh) * 2020-01-19 2020-06-19 北京戴纳实验科技有限公司 一种灵活配置人物权限、办事流程、角色的方法
CN112130978A (zh) * 2020-09-29 2020-12-25 中国船舶重工集团公司第七二四研究所 一种无人平台载多功能雷达任务综合优先级计算方法
CN112732437A (zh) * 2020-12-30 2021-04-30 成都科来网络技术有限公司 一种高效的动态均衡分布式任务调度方法及系统
CN112954022A (zh) * 2020-12-29 2021-06-11 广东电网有限责任公司电力科学研究院 一种基于智能变电站的多并发实时通信方法及装置
CN113114502A (zh) * 2020-05-11 2021-07-13 苏州乐米凡电气科技有限公司 基于服务质量的用户信息分配占比的系统
CN113760493A (zh) * 2020-11-05 2021-12-07 北京沃东天骏信息技术有限公司 一种作业调度方法和装置
CN117687873A (zh) * 2023-12-20 2024-03-12 中安华邦(北京)安全生产技术研究院股份有限公司 一种基于ai的安全信息构建方法及系统

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107885589B (zh) * 2017-11-22 2021-02-12 贝壳找房(北京)科技有限公司 一种作业调度方法及装置
CN108287666B (zh) * 2018-01-16 2021-01-26 中国人民公安大学 用于云存储环境的数据存储方法及装置
CN108920269B (zh) * 2018-07-19 2021-03-19 中国联合网络通信集团有限公司 容器的i/o传输任务的调度方法和装置
CN113992691B (zh) * 2021-12-24 2022-04-22 苏州浪潮智能科技有限公司 一种边缘计算资源的分配方法、装置、设备及存储介质
CN115168017B (zh) * 2022-09-08 2022-11-25 天云融创数据科技(北京)有限公司 一种任务调度云平台及其任务调度方法
CN115686865B (zh) * 2022-11-18 2023-07-07 天河超级计算淮海分中心 一种基于多场景应用的超算节点资源分配系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060168587A1 (en) * 2005-01-24 2006-07-27 Shahzad Aslam-Mir Interoperable communications apparatus and method
CN101692208A (zh) * 2009-10-15 2010-04-07 北京交通大学 实时交通信息处理的任务调度方法与系统
CN102780759A (zh) * 2012-06-13 2012-11-14 合肥工业大学 基于调度目标空间的云计算资源调度方法
CN103699446A (zh) * 2013-12-31 2014-04-02 南京信息工程大学 基于量子粒子群优化算法的多目标工作流动态调度方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8875143B2 (en) * 2009-12-31 2014-10-28 Bmc Software, Inc. Utility-optimized scheduling of time-sensitive tasks in a resource-constrained environment
CN102904963A (zh) * 2012-10-25 2013-01-30 上海电机学院 一种基于云模型云服务的管理方法及系统
CN103218737B (zh) * 2013-04-19 2016-03-30 湖南大学 一种基于双边市场的移动云计算环境中多维资源定价方法
CN104143042B (zh) * 2014-06-28 2017-11-03 中国人民解放军国防科学技术大学 一种敏捷卫星对地观测任务预处理方案决策的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060168587A1 (en) * 2005-01-24 2006-07-27 Shahzad Aslam-Mir Interoperable communications apparatus and method
CN101692208A (zh) * 2009-10-15 2010-04-07 北京交通大学 实时交通信息处理的任务调度方法与系统
CN102780759A (zh) * 2012-06-13 2012-11-14 合肥工业大学 基于调度目标空间的云计算资源调度方法
CN103699446A (zh) * 2013-12-31 2014-04-02 南京信息工程大学 基于量子粒子群优化算法的多目标工作流动态调度方法

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595249A (zh) * 2018-05-02 2018-09-28 联想(北京)有限公司 一种虚拟机任务调度方法及电子设备
CN110008026A (zh) * 2019-04-09 2019-07-12 中国科学院上海高等研究院 基于额外预算均分的作业调度方法、装置、终端和介质
CN110717662A (zh) * 2019-09-27 2020-01-21 苏州达家迎信息技术有限公司 任务分配方法、装置、设备及存储介质
CN110717662B (zh) * 2019-09-27 2022-10-28 苏州达家迎信息技术有限公司 任务分配方法、装置、设备及存储介质
CN111124832A (zh) * 2019-12-25 2020-05-08 青梧桐有限责任公司 数据监控方法、装置、电子设备及存储介质
CN111143037A (zh) * 2019-12-31 2020-05-12 联想(北京)有限公司 一种虚拟机资源分配方法、设备、系统及存储介质
CN111143037B (zh) * 2019-12-31 2023-11-21 联想(北京)有限公司 一种虚拟机资源分配方法、设备、系统及存储介质
CN111309373B (zh) * 2020-01-19 2023-10-17 北京戴纳实验科技有限公司 一种灵活配置人物权限、办事流程、角色的方法
CN111309373A (zh) * 2020-01-19 2020-06-19 北京戴纳实验科技有限公司 一种灵活配置人物权限、办事流程、角色的方法
CN113114502A (zh) * 2020-05-11 2021-07-13 苏州乐米凡电气科技有限公司 基于服务质量的用户信息分配占比的系统
CN112130978A (zh) * 2020-09-29 2020-12-25 中国船舶重工集团公司第七二四研究所 一种无人平台载多功能雷达任务综合优先级计算方法
CN113760493A (zh) * 2020-11-05 2021-12-07 北京沃东天骏信息技术有限公司 一种作业调度方法和装置
CN113760493B (zh) * 2020-11-05 2024-05-17 北京沃东天骏信息技术有限公司 一种作业调度方法和装置
CN112954022A (zh) * 2020-12-29 2021-06-11 广东电网有限责任公司电力科学研究院 一种基于智能变电站的多并发实时通信方法及装置
CN112732437B (zh) * 2020-12-30 2023-08-22 科来网络技术股份有限公司 一种高效的动态均衡分布式任务调度方法及系统
CN112732437A (zh) * 2020-12-30 2021-04-30 成都科来网络技术有限公司 一种高效的动态均衡分布式任务调度方法及系统
CN117687873A (zh) * 2023-12-20 2024-03-12 中安华邦(北京)安全生产技术研究院股份有限公司 一种基于ai的安全信息构建方法及系统
CN117687873B (zh) * 2023-12-20 2024-04-30 中安华邦(北京)安全生产技术研究院股份有限公司 一种基于ai的安全信息构建方法及系统

Also Published As

Publication number Publication date
CN107239336A (zh) 2017-10-10
CN107239336B (zh) 2022-09-09

Similar Documents

Publication Publication Date Title
WO2017167025A1 (fr) Procédé et dispositif servant à réaliser une planification de tâche, et support de stockage informatique
EP3606008B1 (fr) Procédé et dispositif permettant la réalisation d'une planification de ressource
Kumar et al. Deadline constrained based dynamic load balancing algorithm with elasticity in cloud environment
US10089140B2 (en) Dynamically adaptive, resource aware system and method for scheduling
US10185592B2 (en) Network storage device using dynamic weights based on resource utilization
CA2942665C (fr) Controle d'admission coordonne pour un stockage en blocs accessible par reseau
US20190324819A1 (en) Distributed-system task assignment method and apparatus
US10623481B2 (en) Balancing resources in distributed computing environments
US9921866B2 (en) CPU overprovisioning and cloud compute workload scheduling mechanism
Ge et al. GA-based task scheduler for the cloud computing systems
US20150295970A1 (en) Method and device for augmenting and releasing capacity of computing resources in real-time stream computing system
CN110221920B (zh) 部署方法、装置、存储介质及系统
US20120221730A1 (en) Resource control system and resource control method
WO2011110026A1 (fr) Procédé et appareil pour réaliser l'équilibre de charge de ressources dans un centre de données
WO2012173641A1 (fr) Gestion décentralisée d'hôtes virtualisés
Delavar et al. A synthetic heuristic algorithm for independent task scheduling in cloud systems
US20220300323A1 (en) Job Scheduling Method and Job Scheduling Apparatus
CN107562537A (zh) 一种基于万有引力搜索的云计算任务调度方法
Liu et al. Deadline guaranteed service for multi-tenant cloud storage
CN107203256B (zh) 一种网络功能虚拟化场景下的节能分配方法与装置
Himthani et al. Comparative analysis of VM scheduling algorithms in cloud environment
Natarajan Parallel queue scheduling in dynamic cloud environment using backfilling algorithm
Kumar et al. Load balancing algorithm to minimize the makespan time in cloud environment
Maniyar et al. Review on round robin algorithm for task scheduling in cloud computing
Jayasree et al. POLVM: Parallel optimized live VM migration

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17773055

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17773055

Country of ref document: EP

Kind code of ref document: A1