Task scheduling method and device

By employing a dynamic task scheduling method based on task characteristics and a nonlinear power consumption model, the problem of resource waste in existing technologies is solved, thereby improving the operating efficiency and resource utilization of computing node clusters.

CN122431906APending Publication Date: 2026-07-21INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
INSPUR SUZHOU INTELLIGENT TECH CO LTD
Filing Date
2026-06-23
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

Existing task scheduling methods mostly rely on predefined rules or simple load balancing strategies, which are difficult to adapt to real-time dynamic changes in task requirements and node status, resulting in high computing power consumption and low energy efficiency, thus causing resource waste.

Method used

By combining task characteristics with the feature matching degree of computing nodes and load value prediction, and with a nonlinear power consumption model, the optimal operating frequency and energy efficiency are determined, computing nodes are dynamically selected for migration, and task migration is carried out under the condition that the expected migration benefit is greater than the migration cost threshold.

Benefits of technology

It enables dynamic optimization and scheduling of tasks, improves the overall operating efficiency and resource utilization of the computing node cluster, and reduces resource waste.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122431906A_ABST
    Figure CN122431906A_ABST
Patent Text Reader

Abstract

The application provides a task scheduling method and device, which can be applied to the field of computer technology. The method comprises the following steps: in response to a target task triggering migration detection, determining the feature matching degree of a plurality of computing nodes to an unprocessed part and the predicted load value when processing the unprocessed part based on the task characteristics of the unprocessed part in the target task; determining the predicted power consumption of each computing node running at each candidate working frequency under the predicted load value according to the predicted load value and the working frequency range of each computing node for a nonlinear power consumption model; determining the predicted energy efficiency of each computing node based on the predicted power consumption and the predicted running performance of each computing node; determining the migration computing node from the plurality of computing nodes based on the optimal value of the predicted energy efficiency, the feature matching degree and the current load value of each computing node; and in the case that the expected migration benefit of the unprocessed part is greater than the migration overhead threshold, migrating the unprocessed part from the target computing node to the migration computing node.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer technology, and more specifically to a task scheduling method and device. Background Technology

[0002] The rapid expansion of artificial intelligence and big data applications has driven an explosive growth in computing power demand. Various computing nodes are being deployed on a large scale in cloud data centers and edge computing scenarios to support the efficient execution of diverse tasks. As a core link connecting computing resources and business tasks, task scheduling decisions affect task response speed, resource turnover efficiency, and system operating costs, and are an important support for the stable deployment of various applications.

[0003] However, scheduling methods in related technologies often rely on predefined rules or simple load balancing strategies, which are often difficult to adapt to real-time dynamic changes in task requirements and node states. This can easily lead to a coexistence of high computing power consumption and low energy efficiency, resulting in resource waste. Summary of the Invention

[0004] In view of the above problems, the present invention provides a task scheduling method and device.

[0005] According to one aspect of the present invention, a task scheduling method is provided, comprising: triggering migration detection in response to a target task scheduled to a target computing node; determining, based on task characteristics of an unprocessed portion of the target task, the feature matching degree between the unprocessed portion and multiple computing nodes, including the target computing node, and the predicted load value when the multiple computing nodes process the unprocessed portion; and determining, according to a nonlinear power consumption model characterizing the power consumption variation under the combined effect of operating frequency and load value, the predicted load value of each computing node, and the operating frequency range, the predicted power consumption of each computing node operating at each candidate operating frequency under the predicted load value, wherein the candidate operating frequency is a range of operating frequencies. The frequency range is scanned; based on the predicted power consumption and predicted operating performance of each computing node running at each candidate operating frequency under the predicted load value, the predicted energy efficiency of each computing node running at each candidate operating frequency under the predicted load value is determined; based on the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed part and each of the multiple computing nodes, and the current load value of each computing node, the migration computing node is determined from multiple computing nodes; if it is determined that the expected migration benefit of migrating the unprocessed part from the target computing node to the migration computing node is greater than the migration cost threshold of the target task, the unprocessed part is migrated from the target computing node to the migration computing node.

[0006] Another aspect of the present invention provides a task scheduling apparatus, comprising: a first determining module, configured to trigger migration detection in response to a target task scheduled to a target computing node, and to determine, based on the task characteristics of the unprocessed portion of the target task, the feature matching degree between the unprocessed portion and multiple computing nodes, including the target computing node, and the predicted load value when the multiple computing nodes process the unprocessed portion; and a second determining module, configured to determine, based on a nonlinear power consumption model characterizing the power consumption variation under the combined effect of operating frequency and load value, the predicted load value of each computing node, and the operating frequency range, the predicted power consumption of each computing node operating at each candidate operating frequency under the predicted load value, wherein the candidate operating frequency is a range of operating frequencies. The first module is obtained by row scanning; the second module is used to determine the predicted energy efficiency of each computing node at each candidate operating frequency under the predicted load value based on the predicted power consumption and predicted operating performance of each computing node at each candidate operating frequency under the predicted load value; the third module is used to determine the migration computing node from multiple computing nodes based on the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed part and each of the multiple computing nodes, and the current load value of each computing node; the fourth module is used to determine the migration computing node from the target computing node to the migration computing node when it is determined that the expected migration benefit of migrating the unprocessed part from the target computing node to the migration computing node is greater than the migration cost threshold of the target task.

[0007] Another aspect of the present invention provides an electronic device, comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the method described above.

[0008] Another aspect of the present invention provides a computer-readable storage medium having a computer program or instructions stored thereon, wherein the computer program or instructions, when executed by a processor, implement the steps of the above-described method.

[0009] Another aspect of the present invention provides a computer program product, including a computer program or instructions that, when executed by a processor, implement the steps of the above-described method.

[0010] According to the task scheduling method of the present invention, when a target task scheduled to a target computing node triggers migration detection, based on the task characteristics of the unprocessed part of the target task, the feature matching degree between it and multiple computing nodes is calculated, and the predicted load value of each computing node for processing the unprocessed part is predicted. This realizes the replacement of fixed rules with dynamic attributes of tasks and nodes as the scheduling basis. Simultaneously, based on a nonlinear power consumption model characterizing the power consumption change law under the combined effect of operating frequency and load value, and scanning the operating frequency range of each computing node, the predicted power consumption and predicted energy efficiency under different candidate operating frequencies are calculated, introducing an energy efficiency dimension as a reference for scheduling. Furthermore, when selecting migration computing nodes, the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed part and the computing node, and the current load value of each computing node are comprehensively considered to determine the migration computing node with a higher fit for the unprocessed part. At the same time, by setting a pre-execution condition that the expected migration benefit is greater than the migration cost threshold, the additional resource consumption caused by blind migration is reduced. In summary, the present invention achieves dynamic optimization scheduling of tasks through adaptive scheduling logic, at least partially solving the technical problem of resource waste and improving the overall operating efficiency and resource utilization of the computing node cluster. Attached Figure Description

[0011] The above-mentioned contents, as well as other objects, features and advantages of the present invention, will become clearer from the following description of embodiments of the present invention with reference to the accompanying drawings.

[0012] Figure 1 An application scenario diagram of the task scheduling method according to an embodiment of the present invention is shown.

[0013] Figure 2 A flowchart of a task scheduling method according to an embodiment of the present invention is shown.

[0014] Figure 3 A schematic diagram illustrating the migration of unprocessed portions from a target computing node to a migrating computing node according to an embodiment of the present invention is shown.

[0015] Figure 4 A schematic diagram illustrating the correspondence between task features and node features according to an embodiment of the present invention is shown.

[0016] Figure 5 A structural block diagram of a task scheduling apparatus according to an embodiment of the present invention is shown.

[0017] Figure 6 A block diagram of an electronic device suitable for implementing a task scheduling method according to an embodiment of the present invention is shown. Detailed Implementation

[0018] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the invention. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of the invention for ease of explanation. However, it will be apparent that one or more embodiments may be practiced without these specific details. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concept of the invention.

[0019] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the invention. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.

[0020] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.

[0021] When using expressions such as "at least one of A, B and C", they should generally be interpreted in accordance with the meaning that is commonly understood by those skilled in the art (e.g., "a system having at least one of A, B and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B and C, etc.).

[0022] Embodiments of the present invention provide a task scheduling method, comprising: triggering migration detection in response to a target task scheduled to a target computing node; determining, based on the task characteristics of the unprocessed portion of the target task, the feature matching degree between the unprocessed portion and multiple computing nodes, including the target computing node, and the predicted load value when the multiple computing nodes process the unprocessed portion; and determining, based on a nonlinear power consumption model used to characterize the power consumption variation law under the combined effect of operating frequency and load value, the predicted load value of each computing node, and the operating frequency range, the predicted power consumption of each computing node operating at each candidate operating frequency under the predicted load value, wherein the candidate operating frequency is a range of operating frequencies. The range is obtained by scanning; based on the predicted power consumption and predicted operating performance of each computing node running at each candidate operating frequency under the predicted load value, the predicted energy efficiency of each computing node running at each candidate operating frequency under the predicted load value is determined; based on the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed part and each of the multiple computing nodes, and the current load value of each computing node, the migration computing node is determined from the multiple computing nodes; if it is determined that the expected migration benefit of migrating the unprocessed part from the target computing node to the migration computing node is greater than the migration cost threshold of the target task, the unprocessed part is migrated from the target computing node to the migration computing node.

[0023] Figure 1 An application scenario diagram of the task scheduling method according to an embodiment of the present invention is shown.

[0024] like Figure 1 As shown, the application scenario of this embodiment may include a central scheduling node 101, a network 102, a first computing node 103, a second computing node 104, and a third computing node 105. The network 102 serves as a medium for providing communication links between the first computing node 103, the second computing node 104, the third computing node 105, and the central scheduling node 101. The network 102 may include various connection types, such as wired or wireless communication links, or fiber optic cables, etc.

[0025] The central scheduling node 101 can be an independent scheduling server, a scheduling module in a cluster manager, or a resource scheduling controller in a cloud / edge platform. It obtains data such as the performance and power consumption of computing nodes by communicating with each computing node, and issues task scheduling instructions, working frequency adjustment instructions, etc.

[0026] The first computing node 103, the second computing node 104, and the third computing node 105 can be different heterogeneous computing units within the same physical server, such as a central processing unit (CPU), a graphics processing unit (GPU), a field-programmable gate array (FPGA), or a neural processing unit (NPU). They can also refer to independent server nodes with different hardware architectures in a distributed cluster, or servers that simultaneously include the same or different computing units, or a distributed cluster that simultaneously includes independent server nodes with the same or different hardware architectures. Specifically, it depends on the topology of the computing system to which the first computing node 103, the second computing node 104, and the third computing node 105 belong.

[0027] It should be noted that the task scheduling method provided in this embodiment of the invention can generally be executed by the central scheduling node 101. Correspondingly, the task scheduling device provided in this embodiment of the invention can generally be located in the server to which the central scheduling node 101 belongs. The task scheduling method provided in this embodiment of the invention can also be executed by a server or server cluster that is different from the central scheduling node 101 and capable of communicating with the first computing node 103, the second computing node 104, and the third computing node 105 and / or the central scheduling node 101. Correspondingly, the task scheduling device provided in this embodiment of the invention can also be located in a server or server cluster that is different from the central scheduling node 101 and capable of communicating with the first computing node 103, the second computing node 104, and the third computing node 105 and / or the central scheduling node 101.

[0028] It should be understood that Figure 1 The number of central scheduling nodes, networks, first computing nodes, second computing nodes, and third computing nodes shown in the diagram is merely illustrative. Depending on implementation needs, any number of central scheduling nodes, networks, first computing nodes, second computing nodes, and third computing nodes can be included.

[0029] The following will be based on Figure 1 The described scene, through Figures 2-4 The task scheduling method of the embodiments of the invention will be described in detail.

[0030] Figure 2 A flowchart of a task scheduling method according to an embodiment of the present invention is shown.

[0031] like Figure 2 As shown, the method includes operations S210 to S250.

[0032] In operation S210, in response to the target task that has been scheduled to the target computing node triggering migration detection, based on the task characteristics of the unprocessed part of the target task, the feature matching degree between the unprocessed part and multiple computing nodes, including the target computing node, and the predicted load value when multiple computing nodes process the unprocessed part are determined.

[0033] In operation S220, based on the nonlinear power consumption model used to characterize the power consumption change law under the combined effect of operating frequency and load value, the predicted load value and operating frequency range of each computing node, the predicted power consumption of each computing node running at each candidate operating frequency under the predicted load value is determined. The candidate operating frequency is obtained by scanning the operating frequency range.

[0034] In operation S230, based on the predicted power consumption and predicted operating performance of each computing node operating at each candidate operating frequency under the predicted load value, the predicted energy efficiency of each computing node operating at each candidate operating frequency under the predicted load value is determined.

[0035] In operation S240, based on the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed part and each of the multiple computing nodes, and the current load value of each computing node, the computing node to be migrated is determined from the multiple computing nodes.

[0036] In operation S250, if it is determined that the expected migration benefit of migrating the unprocessed part from the target computing node to the migration computing node is greater than the migration cost threshold of the target task, the unprocessed part is migrated from the target computing node to the migration computing node.

[0037] When a target task scheduled to a target computing node triggers migration detection, a feature extraction instruction can be sent to the target computing node. This allows the target computing node to extract features from the unprocessed portion of the target task and return the task features to the central scheduling node. There are no restrictions on the dimensions for feature extraction; they can include multiple dimensions such as computational density, parallelism, memory access patterns, input / output frequency, accuracy requirements, and latency sensitivity. The method for feature extraction from the unprocessed portion is also unrestricted, and can include program structure analysis or runtime monitoring.

[0038] Subsequently, the feature matching degree between the unprocessed part and each computing node can be quantified by taking the task characteristics of the unprocessed part as a reference and combining them with the hardware characteristics of each computing node, including the target computing node.

[0039] Meanwhile, based on the task characteristics of the unprocessed portion, a preset load prediction algorithm can be used, such as a prediction model that integrates historical load data and task characteristics, or a mapping model that integrates the mapping relationship between task characteristics and resource requirements, to estimate the resource usage information of the unprocessed portion. Combined with the current real-time load status of each computing node, the predicted load value when each computing node undertakes and processes the unprocessed portion can be determined, so as to provide a quantitative basis for subsequent migration decisions.

[0040] A nonlinear power consumption model can be pre-constructed for each computing node to characterize the power consumption variation under the combined effects of operating frequency and load value. During task scheduling, the predicted load value and multiple candidate operating frequencies for the corresponding computing node are respectively substituted into the nonlinear power consumption model to obtain the predicted power consumption of each computing node operating at each candidate operating frequency under the predicted load value.

[0041] The candidate operating frequency is a dynamically adjustable hardware operating parameter. There are no restrictions on the method used to scan the operating frequency range to obtain candidate operating frequencies; for example, candidate operating frequencies can be generated within a preset step size within the operating frequency range supported by each computing node.

[0042] There are no restrictions on how the nonlinear power consumption model for each computing node is constructed. For example, power consumption data can be collected from each computing node, and based on the collected power consumption data, the parameters in the nonlinear energy consumption model can be fitted to establish the nonlinear energy consumption model for each node. Furthermore, a periodic task can be established to update the parameters in the nonlinear energy consumption model periodically.

[0043] For example, during the implementation process, test tasks with different operating frequencies and load values ​​can be applied to each computing node to collect its actual power consumption under various combined conditions. Based on the collected actual power consumption and corresponding operating frequency and load value, the least squares method is used to fit the nonlinear relationship between power consumption and frequency and load to obtain a nonlinear power consumption model, as shown in the following formula (1).

[0044] (1)

[0045] in, Indicates power consumption. Indicates the operating frequency. Indicates the load value. , , , This represents the parameters obtained from the fitting.

[0046] According to an embodiment of the present invention, the establishment of the nonlinear power consumption model takes into account the nonlinear coupling effect of operating frequency and load on power consumption. Unlike the traditional linear or piecewise linear models, it can more accurately reflect the real energy consumption characteristics of heterogeneous nodes under dynamic operating conditions, and provide a reliable basis for subsequent prediction of the optimal value of energy efficiency and identification of energy efficiency inflection point.

[0047] In some embodiments, while applying test tasks with different operating frequencies and load values ​​to each computing node and collecting its actual power consumption under each combination of conditions, corresponding performance data can also be collected and stored in a database. This allows for the determination of the predicted operating performance of each computing node at each candidate operating frequency under the predicted load value using the aforementioned performance data.

[0048] For example, the predicted operating performance can be obtained through a prediction model trained on the aforementioned performance data. Alternatively, the predicted operating performance can be obtained through linear interpolation of the aforementioned performance data.

[0049] The specific content of the performance data is not limited and can include any data that reflects the performance of the computing node, such as task execution time, throughput, or computing speed.

[0050] For each candidate operating frequency, the predicted energy efficiency of the computing node operating at the current candidate operating frequency can be determined based on the predicted power consumption and predicted operating performance of the computing node at each candidate operating frequency under the predicted load value. The calculation formula can be shown in formula (2).

[0051] (2)

[0052] Where R represents the predicted operating performance and P represents the corresponding predicted power consumption. This indicates predicted energy efficiency.

[0053] The predicted energy efficiency at all candidate operating frequency points can be compared, and the largest one can be taken as the optimal value of the predicted energy efficiency of the computing node.

[0054] For each computing node, its optimal predicted energy efficiency, current load, and feature matching degree between the unprocessed portion and the node can be integrated and comprehensively evaluated. This yields a comprehensive score characterizing the degree of matching between each computing node and the unprocessed portion of the target task, and the computing node with the highest comprehensive score is selected as the migration computing node.

[0055] Subsequently, the expected migration benefit of migrating the unprocessed portion from the target computing node to the candidate migration computing node can be determined, along with the migration cost threshold corresponding to the target task. If the expected migration benefit is determined to be greater than the migration cost threshold, the unprocessed portion is migrated from the target computing node to the migration computing node.

[0056] The expected migration benefit can be used to characterize the benefits that this migration can bring. There are no restrictions on its calculation method; for example, it can be determined by at least one indicator such as power saving, energy efficiency improvement, or reduced task processing latency brought about by the migration.

[0057] The migration cost threshold can be dynamically determined by the migration cost and the recent scheduling frequency of the node. The higher the scheduling frequency, the higher the threshold.

[0058] If the expected migration benefit is greater than the migration cost threshold, then the migration operation is performed to migrate the unprocessed part of the target task from the target computing node to the migration computing node; if the threshold is not reached, then the unprocessed part is retained on the target computing node for further processing.

[0059] In some embodiments, intermediate results or checkpoint status and other related data of the executed portion of the target task can be migrated to the migration computing node along with the unprocessed portion, so that the migration computing node can quickly begin processing.

[0060] According to the task scheduling method of the present invention, when a target task scheduled to a target computing node triggers migration detection, based on the task characteristics of the unprocessed part of the target task, the feature matching degree between the task and multiple computing nodes is calculated, and the predicted load value of each computing node for processing the unprocessed part is predicted. Thus, the dynamic attributes of the task and the node replace fixed rules as the scheduling basis. Simultaneously, based on a nonlinear power consumption model characterizing the power consumption change law under the combined effect of operating frequency and load value, and scanning the operating frequency range of each computing node, the predicted power consumption and predicted energy efficiency under different candidate operating frequencies are calculated, introducing an energy efficiency dimension as a reference for scheduling. Furthermore, when selecting migration computing nodes, the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed part and the computing node, and the current load value of each computing node are comprehensively considered to reduce node misjudgment caused by a single indicator. At the same time, by setting a pre-execution condition that the expected migration benefit is greater than the migration cost threshold, the additional resource consumption caused by blind migration is reduced. In summary, the present invention achieves dynamic optimization scheduling of tasks through adaptive scheduling logic, at least partially solving the technical problem of resource waste and improving the overall operating efficiency and resource utilization of the computing node cluster.

[0061] According to embodiments of the present invention, the task scheduling method may further include the following operations.

[0062] In response to the target task reaching a preset execution time on the target computing node, the target task is determined to trigger migration detection. The preset execution time is determined based on the execution time distribution of periodic tasks. Alternatively, in response to an abnormal event occurring on the target computing node, the target task is determined to trigger migration detection.

[0063] A time-cycle task can be preset, thereby triggering a migration detection of the target task when the execution time of the target task on the target computing node reaches the preset time.

[0064] And / or, migration detection of the target task can be triggered by an event, such as when an abnormal event such as a sudden change in task behavior or a significant change in load is detected on the target computing node, migration detection can be triggered.

[0065] According to embodiments of the present invention, by setting a preset duration to trigger migration detection based on the periodic task execution duration distribution, the detection timing can be matched with the periodic task execution pattern, reducing the invalid evaluation overhead caused by premature detection or the missed resource optimization window by late detection, thereby reducing meaningless computing power consumption. By triggering migration detection through abnormal events, it is possible to quickly respond to sudden fluctuations in the computing node's state, promptly capture abnormal situations that may lead to a decrease in task execution efficiency and an imbalance in resource utilization, and reduce the situation where node abnormalities continuously affect the task process.

[0066] According to embodiments of the present invention, the task scheduling method may further include the following operations.

[0067] A first operating frequency is determined for the migrated computing node, which corresponds to the optimal value of the predicted energy efficiency of the migrated computing node; a frequency configuration command generated based on the first operating frequency is sent to the migrated computing node, which is used to instruct the migrated computing node to rewrite the current operating frequency to the first operating frequency.

[0068] For each computing node, the candidate operating frequency corresponding to the optimal value of predicted energy efficiency can be used as the energy efficiency inflection point frequency under the predicted load value. That is, this energy efficiency inflection point frequency can make the computing node achieve optimal energy efficiency under the current load conditions.

[0069] Therefore, while migrating the unprocessed portion from the target computing node to the computing node, the central scheduling node can send a frequency configuration command to the target computing node so that the migrating computing node can rewrite its current operating frequency to the first operating frequency, so that the migrating computing node can operate at the corresponding energy efficiency inflection point frequency.

[0070] Figure 3 A schematic diagram illustrating the migration of unprocessed portions from a target computing node to a migrating computing node according to an embodiment of the present invention is shown.

[0071] like Figure 3As shown, if the expected migration benefit of migrating the unprocessed portion from the target computing node to the migrating computing node is determined to be greater than the migration cost threshold of the target task, the central scheduling node can send a migration instruction to the target computing node. This allows the target computing node to send the unprocessed portion of the target task and its related data to the migrating computing node based on the migration instruction. The central scheduling node can also send a frequency configuration instruction to the migrating computing node. This allows the migrating computing node to rewrite its current operating frequency to a first operating frequency based on the instruction, enabling it to process the unprocessed portion at the first operating frequency.

[0072] According to an embodiment of the present invention, by adjusting the operating frequency of the migration computing node to a first operating frequency corresponding to the optimal value of the predicted energy efficiency, the performance output per unit energy consumption can be maximized. This can reduce energy waste caused by high-frequency idleness and reduce the impact of insufficient low-frequency computing power on task execution.

[0073] According to an embodiment of the present invention, the energy efficiency inflection point frequency of each computing node is found by establishing a nonlinear power consumption model, and the computing node is actively set to run at this frequency during scheduling, thereby integrating frequency control into the scheduling strategy and realizing true energy efficiency-aware scheduling.

[0074] According to an embodiment of the present invention, determining the feature matching degree between the unprocessed part and multiple computing nodes and the predicted load value when multiple computing nodes process the unprocessed part based on the task characteristics of the unprocessed part in the target task may include the following operations.

[0075] The task features of the unprocessed part of the target task are matched with the node features of multiple computing nodes to obtain the feature matching degree between the unprocessed part and the multiple computing nodes. The node features are determined by the hardware characteristics of the computing nodes. Based on the resource requirements of the unprocessed part determined by the task features and the resource usage of each computing node, the predicted load value of multiple computing nodes when processing the unprocessed part is determined.

[0076] By extracting features from the unprocessed parts of the target task across multiple dimensions, such as computational density, parallelism, memory access patterns, input / output (I / O) frequency, accuracy requirements, and latency sensitivity, task features that include multi-dimensional task sub-features can be generated. The representation format of these task features is not limited and can be a task feature vector.

[0077] For example, task characteristics include at least one of the following types of task sub-characteristics: computational density, parallelism, memory access pattern, input / output frequency, accuracy requirements, and latency sensitivity.

[0078] The computational density is determined by the ratio of the total computational load of the unprocessed portion to the total memory access load. Parallelism is represented by the proportion of concurrently executable operations in the unprocessed portion. Memory access patterns are determined by the continuity of the memory address sequences generated during the processing of the unprocessed portion. I / O frequency is reflected by the number of system calls per unit time.

[0079] Precision requirements refer to the required level of accuracy of the calculation results for the unprocessed part. For example, high-precision tasks typically require double-precision floating-point operations, while ordinary tasks can be satisfied with single-precision or even integer operations. Latency sensitivity refers to the sensitivity of the unprocessed part to execution latency.

[0080] The above task sub-features can be combined in a fixed order to form a task feature vector, which can be used for subsequent matching and evaluation with node capabilities.

[0081] According to embodiments of the present invention, task features are constructed based on quantifiable and monitorable task behavior indicators, reducing reliance on empirical rules or black-box prediction methods. This not only improves the repeatability and engineering feasibility of the task feature extraction process, but also enhances the transparency and consistency of scheduling decisions.

[0082] Node characteristics can be constructed based on the hardware features of each computing node, corresponding to the task characteristics. Node characteristics are used to define the capabilities of that node.

[0083] Figure 4 A schematic diagram illustrating the correspondence between task features and node features according to an embodiment of the present invention is shown.

[0084] like Figure 4 As shown, the node features and task features have the same dimensions, and the task sub-features in the task features correspond to the node sub-features in the node features, so as to quantify the adaptability potential of the node to different types of tasks.

[0085] For example, node features may include at least one node sub-feature corresponding to the type of task sub-feature: computational density support capability, parallel processing capability, memory adaptability, input / output response capability, data precision support capability, and response latency characteristics, etc.

[0086] The correspondence between node sub-features and task sub-features can be as follows: computational density support capability corresponds to computational density, parallel processing capability corresponds to parallelism, memory adaptability corresponds to memory access mode, input / output response capability corresponds to input / output frequency, data precision support capability corresponds to precision requirements, and response latency characteristics correspond to latency sensitivity.

[0087] Node features can be pre-configured based on hardware architecture characteristics. During the configuration process, for each computing node, features can be extracted based on dimensions such as its computing unit structure, memory bandwidth, parallelism capability, data precision support, and response latency characteristics. Each dimension can respectively characterize the relative advantages of the computing node in terms of computing density support, parallel processing capability, memory adaptability, I / O response, precision adaptation, and latency response.

[0088] According to embodiments of the present invention, the configuration of node features is differentiated based on the essential differences in the hardware architecture of each computing node, so that the capabilities of different types of heterogeneous computing nodes, such as CPU, GPU, FPGA and NPU, or computing nodes of the same type but with different hardware configurations, can be expressed in a structured manner, thereby providing a semantic alignment basis for achieving accurate matching of tasks and resources.

[0089] There are no restrictions on the method for determining the feature matching degree between the unprocessed part and multiple computing nodes. For example, it can be done by similarity calculation. In the implementation process, the task features of the unprocessed part and the node features of each computing node can be obtained. The two features are mapped to the same vector space and their cosine value is calculated. Specifically, it can be shown in the following formula (3).

[0090] (3)

[0091] in, Indicates task characteristics, Representing node characteristics, Indicates the feature matching degree.

[0092] The cosine value is used as the feature matching degree. The larger the value, the higher the degree of fit between the unprocessed part and multiple computing nodes in terms of computing characteristics.

[0093] According to an embodiment of the present invention, the feature matching degree is calculated using cosine similarity in vector space, which can effectively measure the directional consistency between task requirements and node capabilities under a normalized scale, reduce scoring bias caused by differences in feature dimensions, and improve the objectivity and stability of matching results.

[0094] Based on the characteristics of the unprocessed task, its resource requirements across various dimensions can be quantified. For example, CPU computing power requirements can be determined based on computational density, memory capacity and bandwidth requirements can be determined by combining memory access patterns and data volume, and I / O throughput and response time requirements can be clarified based on I / O frequency, thereby obtaining quantitative indicators of resource requirements across multiple dimensions.

[0095] It can also collect the current resource usage of each computing node in real time, including used resource indicators such as CPU utilization, memory usage, and I / O busyness, as well as idle resource indicators such as the number of remaining available CPU cores, free memory space, and remaining I / O bandwidth.

[0096] This process overlays the resource requirements of the unprocessed portion across various dimensions onto the current resource usage data of the corresponding computing nodes. A resource load overlay algorithm is then used to calculate the predicted load value for each computing node when processing this unprocessed portion. For example, if a computing node's current CPU utilization is 50%, and the unprocessed portion requires 25% of the CPU power, then the predicted CPU load value for that computing node when processing the unprocessed portion is 75%. Similarly, by combining the predicted load values ​​for dimensions such as memory and I / O, the predicted load value for each computing node can be obtained.

[0097] According to embodiments of the present invention, the resource requirements of the unprocessed portion are determined based on task characteristics, and the predicted load value is derived by combining the real-time resource usage of each computing node. This enables the load prediction to closely match the actual resource requirements of the unprocessed portion and the node carrying capacity, reducing the deviation of traditional empirical estimation and improving the accuracy of load prediction.

[0098] According to an embodiment of the present invention, the migration cost threshold is determined by the following operation.

[0099] Based on the amount of unprocessed tasks determined by task characteristics and the link information of the transmission link between the target computing node and the migration computing node, the expected migration overhead for migrating the unprocessed parts from the target computing node to the migration computing node is determined; based on the expected migration overhead and the number of migrations of the target task within the target time window, the migration overhead threshold is determined.

[0100] In determining the expected migration overhead, at least one overhead metric can be identified by using the amount of unprocessed tasks and the link information of the transmission link between the target computing node and the migration computing node. After normalizing the at least one overhead metric, the expected migration overhead is obtained by weighted summation using preset weights.

[0101] There is no limitation on at least one overhead metric, which may include data transmission energy consumption and context switching latency, etc.

[0102] In determining at least one cost metric, the task volume, including the amount of migrated data and the amount of context data, can be determined based on the task characteristics of the unprocessed portion. The amount of migrated data can be determined based on the amount of business data and intermediate result data in the unprocessed portion. The amount of context data is determined based on the parallelism and accuracy requirements of the unprocessed portion.

[0103] Link information between the compute node and the migrated compute node can include available link bandwidth, unit data transmission energy consumption coefficient, and current link utilization. When determining data transmission energy consumption, the amount of migrated data can be multiplied by the unit data transmission energy consumption coefficient in the link information to obtain the data transmission energy consumption. In some embodiments, the product of the migrated data amount and the unit data transmission energy consumption coefficient can be multiplied by a link utilization correction coefficient to obtain the data transmission energy consumption. The higher the link utilization, the larger the correction coefficient, so that the calculated data transmission energy consumption more closely reflects the actual link transmission characteristics.

[0104] When determining context switching latency, it can be based on the amount of unprocessed context data and task characteristics, such as parallelism and accuracy requirements, combined with the hardware characteristics of the migrated compute nodes, such as the number of CPU cores and memory read / write speed. The context switching latency is obtained by superimposing factors such as the base switching time (fixed system overhead), the ratio of context data volume to memory bandwidth, and the product of the number of threads and the single-threaded synchronization time.

[0105] According to embodiments of the present invention, when there are multiple cost indicators, the expected migration cost can be obtained by weighted summation of multiple indicators, thereby achieving comprehensive cost determination across multiple dimensions and improving the accuracy of the expected migration cost. Furthermore, when calculating each indicator, the migration data volume and context data volume are extracted based on task characteristics, combined with link information such as available bandwidth and unit transmission energy consumption coefficient, and a link utilization correction coefficient is introduced to make the calculated indicators more consistent with the actual cost situation, thus improving the accuracy of cost indicator calculation.

[0106] After obtaining the pre-defined migration cost, the migration cost threshold can be determined by combining the number of migrations of the target task within the target time window.

[0107] In the implementation process, the number of task migrations of the target task within the recent time window can be counted as its scheduling activity index. Furthermore, a dynamic scheduling threshold can be calculated based on the expected migration overhead and scheduling activity. The specific process can be shown in the following formula (4).

[0108] (4)

[0109] in, Indicates the basic threshold. This represents the inertia amplification factor that increases with scheduling frequency. Indicates the expected migration cost. Indicates compensation item, This represents the migration cost threshold.

[0110] According to an embodiment of the present invention, the dynamic scheduling threshold introduces the scheduling frequency as an inertial adjustment factor, which can form a suppression mechanism for high-frequency migration behavior, reduce system oscillations and additional overhead caused by frequent task migration, and better ensure the stability of the energy efficiency optimization process and the actual operating efficiency.

[0111] According to an embodiment of the present invention, by establishing a nonlinear power consumption model of heterogeneous nodes and identifying their energy efficiency inflection point frequency, and combining the feature matching degree analysis of task characteristics and node capabilities, a comprehensive matching-energy efficiency scoring mechanism is constructed. Furthermore, a dynamic threshold control strategy based on migration overhead and scheduling frequency is introduced, thereby realizing refined energy efficiency matching of tasks among heterogeneous resources. This improves resource utilization while reducing the overall energy consumption of the system. At the same time, by suppressing the additional overhead caused by frequent scheduling, the scheduling stability and actual deployability are enhanced.

[0112] According to an embodiment of the present invention, the expected migration benefits are determined through the following operations.

[0113] Determine the first predicted power consumption of the migrated compute node operating at a first operating frequency under predicted load; determine the second operating frequency of the target compute node, which corresponds to the optimal value of the predicted energy efficiency of the target compute node; determine the second predicted power consumption of the target compute node operating at the second operating frequency under predicted load; and determine the expected migration benefit based on the difference between the first and second predicted power consumption.

[0114] The predicted power consumption of the migrating compute node and the target compute node at their respective energy efficiency inflection point frequencies can be determined separately. By subtracting the predicted power consumption of the two nodes, the expected migration gain can be obtained.

[0115] According to an embodiment of the present invention, by determining the energy efficiency inflection point frequency with energy efficiency optimization as the guide, and determining the predicted power consumption at each of the respective energy efficiency inflection point frequencies, the migration benefit calculation takes into account the power consumption performance of the computing nodes, and uses the power consumption difference between the two nodes as the expected migration benefit, providing a more objective and comparable quantitative basis for migration decisions, so as to screen the computing nodes with better energy consumption for task deployment.

[0116] According to an embodiment of the present invention, determining the migration computing node from multiple computing nodes based on the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed portion and each of the multiple computing nodes, and the current load value of each computing node may include the following operations.

[0117] By utilizing the mapping relationship between load value and load fit, the current load fit that matches the current load value of each computing node is determined. The load fit is inversely proportional to the load value. The feature matching degree, the optimal value of predicted energy efficiency, and the current load fit of the same computing node are weighted and summed to obtain the score values ​​of multiple computing nodes. The computing node with the highest score among the multiple computing nodes is selected as the migration computing node.

[0118] A mapping relationship between load value and load fit can be established using a decay function, ensuring that load fit is inversely proportional to load value. The current load fit of each compute node, matched with its current load value, determines the node's ability to accept new tasks.

[0119] The feature matching degree, the optimal value of predicted energy efficiency, and the current load adaptability of each computing node can be normalized. Then, the feature matching degree, the optimal value of predicted energy efficiency, and the current load adaptability of the same computing node can be weighted and summed to obtain the score values ​​of each computing node.

[0120] The scores of all computing nodes can be compared and sorted to select the computing node with the highest score and determine it as the migration computing node. That is, the migration computing node is the best in terms of feature matching, energy efficiency performance and load adaptability, and thus serves as the basis for scheduling decisions.

[0121] According to an embodiment of the present invention, by pre-establishing an inverse mapping relationship between load value and load adaptability, and combining the feature matching degree between the unprocessed part and multiple computing nodes and the optimal value of the predicted energy efficiency of each computing node, the score value of each computing node is determined, thereby realizing multi-objective collaboration of energy efficiency optimization, feature matching, and load balancing, and improving the rationality of task scheduling.

[0122] According to embodiments of the present invention, the task scheduling method may further include the following operations.

[0123] If the expected migration benefit of migrating the unprocessed portion from the target computing node to the target node to be migrated is less than or equal to the migration cost threshold, the unprocessed portion shall be processed by the target computing node.

[0124] According to an embodiment of the present invention, if the migration benefit during the determination period is less than or equal to the migration cost threshold, the unprocessed part may not be migrated, and the target computing node may still process the unprocessed part, thereby reducing the additional resource consumption caused by meaningless migration.

[0125] According to embodiments of the present invention, during the initial scheduling of a target task, the following operations can be performed: In response to the target task being in the scheduling queue, it can be determined whether the complete task characteristics of the target task can be obtained through static program structure parsing based on the target task's task attributes. Task attributes may include the target task's task type, resolvability, runtime dependency characteristics, deployment scenario, etc.

[0126] For target tasks that cannot be statically parsed, an initial scheduling strategy can be used to determine the target computing node from multiple computing nodes and schedule the target task to an available computing node. This allows the target computing node to extract the target task's features during the processing of the target task through runtime monitoring and feature extraction methods.

[0127] The initial scheduling strategy can be any of the following: minimum load priority, which selects the computing node with the lowest current computing resource utilization, memory usage, or overall load index; resource availability priority, which prioritizes scheduling tasks to computing nodes with the required hardware type and minimum resource quota; and proximity allocation, etc.

[0128] For target tasks that can be statically parsed, the above task scheduling method can be used to determine the current migration computing node and migrate the target task to the migration computing node.

[0129] According to embodiments of the present invention, since the characteristics of the initial stage of a task are often based on limited information or static analysis, as the task actually runs on the computing nodes, more accurate behavioral data is continuously collected through runtime monitoring, thereby updating the task characteristics. Furthermore, depending on changes in the load, hardware status, etc., of each computing node, the predicted energy efficiency and current load adaptability will change. Therefore, by dynamically determining suitable migration computing nodes for each task, either for the entire task or the unprocessed portion, through the dynamic migration detection of the present invention, the resource utilization of the computing node cluster can be improved, and task processing latency can be reduced.

[0130] Based on the above task scheduling method, the present invention also provides a task scheduling device. The following will be combined with... Figure 5 The device is described in detail.

[0131] Figure 5 A structural block diagram of a task scheduling apparatus according to an embodiment of the present invention is shown.

[0132] like Figure 5 As shown, the task scheduling device 500 of this embodiment includes a first determining module 510, a second determining module 520, a third determining module 530, a fourth determining module 540, and a migration module 550.

[0133] The first determining module 510 is used to respond to the target task that has been scheduled to the target computing node triggering migration detection, and to determine the feature matching degree between the unprocessed part and multiple computing nodes, including the target computing node, and the predicted load value when the multiple computing nodes process the unprocessed part based on the task characteristics of the unprocessed part in the target task. In one embodiment, the first determining module 510 can be used to perform the operation S210 described above, which will not be repeated here.

[0134] The second determining module 520 is used to determine the predicted power consumption of each computing node operating at each candidate operating frequency under the predicted load value, based on the nonlinear power consumption model used to characterize the power consumption change law under the combined effect of operating frequency and load value, the predicted load value of each computing node and the operating frequency range. The candidate operating frequency is obtained by scanning the operating frequency range. In one embodiment, the second determining module 520 can be used to perform the operation S220 described above, which will not be repeated here.

[0135] The third determining module 530 is used to determine the predicted energy efficiency of each computing node operating at each candidate operating frequency under the predicted load value based on the predicted power consumption and predicted operating performance of each computing node operating at each candidate operating frequency under the predicted load value. In one embodiment, the third determining module 530 can be used to perform the operation S230 described above, which will not be repeated here.

[0136] The fourth determining module 540 is used to determine the migration computing node from multiple computing nodes based on the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed part and each of the multiple computing nodes, and the current load value of each computing node. In one embodiment, the fourth determining module 540 can be used to perform the operation S240 described above, which will not be repeated here.

[0137] The migration module 550 is configured to migrate the unprocessed portion from the target computing node to the migration computing node when it is determined that the expected migration benefit of migrating the unprocessed portion from the target computing node to the migration computing node is greater than the migration cost threshold of the target task. In one embodiment, the migration module 550 may be used to perform the operation S250 described above, which will not be repeated here.

[0138] According to embodiments of the present invention, any plurality of modules among the first determining module 510, the second determining module 520, the third determining module 530, the fourth determining module 540, and the migration module 550 may be combined into one module, or any one of these modules may be split into multiple modules. Alternatively, at least a portion of the functionality of one or more of these modules may be combined with at least a portion of the functionality of other modules and implemented in one module. According to embodiments of the present invention, at least one of the first determining module 510, the second determining module 520, the third determining module 530, the fourth determining module 540, and the migration module 550 may be at least partially implemented as hardware circuitry, such as a field-programmable gate array (FPGA), a programmable logic array (PLA), a system-on-a-chip, a system-on-a-substrate, a system-on-package, an application-specific integrated circuit (ASIC), or any other reasonable means of integrating or packaging circuitry, or implemented in software, hardware, or firmware, or in any one of the three implementation methods or a suitable combination of any of them. Alternatively, at least one of the first determining module 510, the second determining module 520, the third determining module 530, the fourth determining module 540, and the migration module 550 may be implemented at least partially as a computer program module, which can perform corresponding functions when the computer program module is run.

[0139] Figure 6 A block diagram of an electronic device suitable for implementing a task scheduling method according to an embodiment of the present invention is shown.

[0140] like Figure 6 As shown, an electronic device 600 according to an embodiment of the present invention includes a processor 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory ROM 602 or a program loaded from a storage portion 608 into a random access memory RAM 603. The processor 601 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 601 may also include onboard memory for caching purposes. The processor 601 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present invention.

[0141] RAM 603 stores various programs and data required for the operation of electronic device 600. Processor 601, ROM 602, and RAM 603 are interconnected via bus 604. Processor 601 executes various operations of the method flow according to embodiments of the present invention by executing programs in ROM 602 and / or RAM 603. It should be noted that the programs may also be stored in one or more memories other than ROM 602 and RAM 603. Processor 601 may also execute various operations of the method flow according to embodiments of the present invention by executing programs stored in said one or more memories.

[0142] According to an embodiment of the present invention, the electronic device 600 may further include an input / output (I / O) interface 605, which is also connected to a bus 604. The electronic device 600 may also include one or more of the following components connected to the input / output (I / O) interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN card, modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the input / output (I / O) interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 610 as needed so that computer programs read from it can be installed into the storage section 608 as needed.

[0143] The present invention also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs, which, when executed, implement the method according to the embodiments of the present invention.

[0144] According to embodiments of the present invention, a computer-readable storage medium may be a non-volatile computer-readable storage medium, such as including, but not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In the present invention, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. For example, according to embodiments of the present invention, a computer-readable storage medium may include ROM 602 and / or RAM 603 and / or one or more memories other than ROM 602 and RAM 603 described above.

[0145] Embodiments of the present invention also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowchart. When the computer program product is run on a computer system, the program code is used to cause the computer system to implement the methods provided in the embodiments of the present invention.

[0146] When the computer program is executed by the processor 601, it performs the functions defined in the system / apparatus of this invention. According to embodiments of the invention, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0147] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and downloaded and installed via the communication section 609, and / or installed from the removable medium 611. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.

[0148] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 609, and / or installed from the removable medium 611. When the computer program is executed by the processor 601, it performs the functions defined in the system of this embodiment of the invention. According to embodiments of the invention, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0149] According to embodiments of the present invention, program code for executing the computer programs provided in the embodiments of the present invention can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, languages ​​such as Java, C++, Python, "C", or similar programming languages. The program code can be executed entirely on the user's computing device, partially on the user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0150] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0151] Those skilled in the art will understand that the features described in the various embodiments of the present invention can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly described in the present invention. In particular, the features described in the various embodiments of the present invention can be combined and / or combined in various ways without departing from the spirit and teachings of the present invention. All such combinations and / or combinations fall within the scope of the present invention.

[0152] The embodiments of the present invention have been described above. However, these embodiments are merely illustrative and not intended to limit the scope of the invention. Although various embodiments have been described above, this does not mean that the measures in the various embodiments cannot be used advantageously in combination. Various substitutions and modifications can be made by those skilled in the art without departing from the scope of the invention, and all such substitutions and modifications should fall within the scope of the invention.

Claims

1. A task scheduling method, characterized in that, The method includes: In response to a target task that has been scheduled to a target computing node triggering migration detection, based on the task characteristics of the unprocessed portion of the target task, the feature matching degree between the unprocessed portion and multiple computing nodes, including the target computing node, and the predicted load value when the multiple computing nodes process the unprocessed portion are determined. Based on the nonlinear power consumption model used to characterize the power consumption variation under the combined effect of operating frequency and load value, the predicted load value and operating frequency range of each computing node, the predicted power consumption of each computing node operating at each candidate operating frequency under the predicted load value is determined, wherein the candidate operating frequency is obtained by scanning the operating frequency range. Based on the predicted power consumption and predicted operating performance of each computing node operating at each candidate operating frequency under the predicted load value, the predicted energy efficiency of each computing node operating at each candidate operating frequency under the predicted load value is determined. Based on the optimal value of the predicted energy efficiency of each computing node, the feature matching degree between the unprocessed part and each of the computing nodes, and the current load value of each computing node, a migration computing node is determined from the multiple computing nodes. If the expected migration benefit of migrating the unprocessed portion from the target computing node to the migration computing node is determined to be greater than the migration cost threshold of the target task, the unprocessed portion is migrated from the target computing node to the migration computing node.

2. The method according to claim 1, characterized in that, The step of determining the feature matching degree between the unprocessed portion of the target task and multiple computing nodes, including the target computing node, and the predicted load value when the multiple computing nodes process the unprocessed portion, based on the task features of the unprocessed portion of the target task, includes: The task features of the unprocessed part of the target task are matched with the node features of the multiple computing nodes to obtain the feature matching degree between the unprocessed part and the multiple computing nodes. The node features are determined by the hardware characteristics of the computing nodes. Based on the resource requirements of the unprocessed portion determined by the task characteristics and the resource usage of each computing node, the predicted load value when multiple computing nodes process the unprocessed portion is determined.

3. The method according to claim 1, characterized in that, The method further includes: A first operating frequency is determined for the migration computing node, the first operating frequency corresponding to the optimal value of the predicted energy efficiency of the migration computing node; A frequency configuration instruction generated based on the first operating frequency is sent to the migration computing node. The frequency configuration instruction is used to instruct the migration computing node to rewrite the current operating frequency to the first operating frequency.

4. The method according to claim 1 or 3, characterized in that, The migration cost threshold is determined through the following operation: Based on the task volume of the unprocessed portion determined by the task characteristics and the link information of the transmission link between the target computing node and the migration computing node, the expected migration overhead of migrating the unprocessed portion from the target computing node to the migration computing node is determined. The migration cost threshold is determined based on the expected migration cost and the number of migrations of the target task within the target time window.

5. The method according to claim 1 or 3, characterized in that, The expected migration benefits are determined through the following operations: Determine the first predicted power consumption of the migrated computing node operating at a first operating frequency under the predicted load value; A second operating frequency is determined for the target computing node, the second operating frequency corresponding to the optimal value of the predicted energy efficiency of the target computing node; Determine the second predicted power consumption of the target computing node operating at the second operating frequency under the predicted load value; The expected migration gain is determined based on the difference between the first predicted power consumption and the second predicted power consumption.

6. The method according to claim 1, characterized in that, The step of determining the migration computing node from the plurality of computing nodes based on the optimal value of the predicted energy efficiency of each of the computing nodes, the feature matching degree between the unprocessed portion and each of the plurality of computing nodes, and the current load value of each of the computing nodes includes: By utilizing the mapping relationship between load value and load adaptability, the current load adaptability that matches the current load value of each computing node is determined, wherein the load adaptability is inversely proportional to the load value; The feature matching degree, the optimal value of predicted energy efficiency, and the current load adaptability of the same computing node are weighted and summed to obtain the score values ​​of each of the computing nodes. The computing node with the highest score among the multiple computing nodes is selected as the migration computing node.

7. The method according to claim 1 or 3, characterized in that, The method further includes: If the expected migration benefit of migrating the unprocessed portion from the target computing node to the target node to be migrated is less than or equal to the migration cost threshold, the target computing node processes the unprocessed portion.

8. The method according to claim 1, characterized in that, The method further includes: In response to the target task's execution time on the target computing node reaching a preset duration, the target task is determined to trigger migration detection, the preset duration being determined based on the execution time distribution of periodic tasks; Alternatively, in response to an abnormal event occurring on the target computing node, the target task is determined to trigger migration detection.

9. The method according to claim 1, characterized in that, The task features include at least one of the following types of task sub-features: computational density, parallelism, memory access pattern, input / output frequency, accuracy requirements, and latency sensitivity; the node features include at least one node sub-feature corresponding to the type of the task sub-features: computational density support capability, parallel processing capability, memory adaptability, input / output response capability, data accuracy support capability, and response latency characteristics.

10. An electronic device, comprising: One or more processors; Memory, used to store one or more computer programs. The characteristic feature is that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 9.