Data processing method, device, equipment, readable storage medium and program product

CN122946112APending Publication Date: 2026-10-20TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510453648.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-10
Publication Date
2026-10-20

AI Technical Summary

Technical Problem

通过额定功率进行限制的方式能够确保计算器件的正常运行,但是仍然无法在成本降低方面起到较好的效果

Benefits of technology

[0020]通过获取计算器件在执行第一计算任务的过程中的第一实际功率并基于第一实际功率生成计算器件执行第一计算任务的第一功率限高值,确定执行计算任务过程汇总的功率波动。获取计算器件在执行第一计算任务的过程中的第一异常功率,第一异常功率是影响计算器件使用生命周期的功率,根据第一异常功率的功率值持续执行会损坏计算器件,缩短计算器件的寿命。基于第一异常功率对第一功率限高值进行调整,得到第二功率限高值,通过对第一功率限高值进行调整,根据调整后的第一功率限高值限制第一计算任务的执行功率,缓解执行计算任务时各个计算器件的实际功率的波动,通过调配计算器件限高功率的峰值,延长计算器件的使用寿命,降低计算器件的故障率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure HDA0005355336140000011
    Figure HDA0005355336140000011
  • Figure HDA0005355336140000021
    Figure HDA0005355336140000021
  • Figure HDA0005355336140000022
    Figure HDA0005355336140000022
Patent Text Reader

Abstract

This application provides a data processing method, apparatus, device, readable storage medium, and program product. The method includes: acquiring a first actual power of a computing device during the execution of a first computing task; generating a first power limit value for the computing device during the execution of the first computing task based on the first actual power; acquiring a first abnormal power of the computing device during the execution of the first computing task, wherein the first abnormal power is power affecting the lifespan of the computing device; and adjusting the first power limit value based on the first abnormal power to obtain an adjusted first power limit value, wherein the adjusted first power limit value is used to limit the power of the computing device during the execution of the first computing task. Through this application, the peak value of the computing device's power limit can be adjusted, thereby extending the lifespan of the computing device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a data processing method, apparatus, device, readable storage medium, and program product. Background Technology

[0002] With the increasing development of large-scale artificial intelligence models, the computing power required for business needs is gradually increasing, leading to a growing use of heterogeneous computing devices capable of processing large amounts of data. For example, connecting multiple Graphics Processing Units (GPUs) to form a GPU cluster can meet the data processing needs of large datasets. However, computing devices capable of processing large amounts of data are expensive, and data is scarce. Therefore, reducing the cost of using these computing devices is a pressing issue that needs to be addressed.

[0003] Related technologies reduce costs by reusing computing devices and limiting their rated power at the factory, thus fully utilizing the device's computing power to fulfill business needs during operation. While limiting the rated power ensures the normal operation of the computing devices, it still doesn't achieve significant cost reduction. Summary of the Invention

[0004] This application provides a data processing method, apparatus, device, readable storage medium, and program product that can adjust the peak power limit of computing devices and extend the service life of computing devices.

[0005] The technical solution of this application embodiment is implemented as follows:

[0006] This application provides a data processing method, the method comprising:

[0007] Obtain the first actual power of the computing device during the execution of the first computing task;

[0008] A first power limit value is generated based on the first actual power to allow the computing device to perform the first computing task.

[0009] The first abnormal power of the computing device during the execution of the first computing task is obtained, wherein the first abnormal power is the power that affects the lifespan of the computing device;

[0010] The first power limit value is adjusted based on the first abnormal power to obtain an adjusted first power limit value, wherein the adjusted first power limit value is used to limit the power of the computing device when performing the first computing task.

[0011] This application provides a data processing apparatus, including:

[0012] The height limit determination module is used to obtain the first actual power of the computing device during the execution of the first computing task; and generate a first power height limit value for the computing device to execute the first computing task based on the first actual power.

[0013] The height limit adjustment module is used to obtain the first abnormal power of the computing device during the execution of the first computing task, wherein the first abnormal power is the power that affects the service life of the computing device; and to adjust the first power height limit based on the first abnormal power to obtain an adjusted first power height limit, wherein the adjusted first power height limit is used to limit the power of the computing device in executing the first computing task.

[0014] This application provides an electronic device, the electronic device comprising:

[0015] Memory is used to store executable instructions or computer programs.

[0016] The processor, when executing computer-executable instructions or computer programs stored in the memory, implements the data processing method provided in the embodiments of this application.

[0017] This application provides a computer-readable storage medium storing a computer program or computer-executable instructions for restricting the processor to implement the data processing method provided in this application.

[0018] This application provides a computer program product, including a computer program or computer executable instructions. When the computer program or computer executable instructions are executed by a processor, they implement the data processing method provided in this application.

[0019] The embodiments of this application have the following beneficial effects:

[0020] By acquiring the first actual power of the computing device during the execution of the first computing task and generating a first power limit value based on the first actual power, the power fluctuations during the execution of the first computing task are determined. The first abnormal power of the computing device during the execution of the first computing task is acquired; this abnormal power affects the lifespan of the computing device, and continued execution based on the abnormal power value will damage the computing device and shorten its lifespan. Based on the abnormal power, the first power limit value is adjusted to obtain a second power limit value. By adjusting the first power limit value, the execution power of the first computing task is limited, mitigating the fluctuations in the actual power of each computing device during the execution of the computing task. By adjusting the peak power limit of the computing devices, the lifespan of the computing devices is extended, and the failure rate of the computing devices is reduced. Attached Figure Description

[0021] Figure 1 This is a schematic diagram illustrating the application mode of the data processing method provided in the embodiments of this application;

[0022] Figure 2 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application;

[0023] Figure 3A This is a first flowchart illustrating the data processing method provided in an embodiment of this application;

[0024] Figure 3B This is a second flowchart illustrating the data processing method provided in the embodiments of this application;

[0025] Figure 3C This is a schematic diagram of the third process of the data processing method provided in the embodiments of this application;

[0026] Figure 4 This is a schematic diagram of the fourth process of the data processing method provided in the embodiments of this application;

[0027] Figure 5 This is a schematic diagram of the dynamic allocation logic provided in the embodiments of this application;

[0028] Figure 6 This is a schematic diagram of the height limit calculation logic provided in the embodiments of this application;

[0029] Figure 7 This is a schematic diagram of the model task provided in the embodiments of this application;

[0030] Figure 8 This is a schematic diagram of task breakdown provided in an embodiment of this application;

[0031] Figure 9 This is a schematic diagram of the power acquisition logic provided in an embodiment of this application;

[0032] Figure 10 This is a flowchart illustrating the logic for drawing the secure operating area, as provided in this application embodiment.

[0033] Figure 11 This is a logical diagram of the abnormal power point provided in the embodiments of this application.

[0034] It should be noted that the terms "first" and "second" mentioned above are only used to distinguish between different options and do not represent the degree of superiority or inferiority of the options or their priority in the implementation process. Detailed Implementation

[0035] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. The described embodiments should not be regarded as limitations on this application. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0036] In the following description, references are made to “some embodiments,” which describe a subset of all possible embodiments. However, it is understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0037] In the following description, the terms "first, second, third" are used merely to distinguish similar objects and do not represent a specific ordering of objects. It is understood that "first, second, third" may be interchanged in a specific order or sequence where permitted, so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.

[0038] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.

[0039] Unless otherwise defined, all technical and scientific terms used in the embodiments of this application have the same meaning as commonly understood by one of ordinary skill in the art. The terminology used in the embodiments of this application is for the purpose of describing the embodiments of this application only and is not intended to limit this application.

[0040] In this application embodiment, the collection and processing of relevant data (e.g., power data of computing devices) should strictly comply with the requirements of relevant laws and regulations, obtain the informed consent or separate consent of the personal information subject, and carry out subsequent data use and processing within the scope of laws and regulations and the authorization of the personal information subject.

[0041] Before providing a further detailed description of the embodiments of this application, the nouns and terms involved in the embodiments of this application will be explained, and the nouns and terms involved in the embodiments of this application shall be interpreted as follows.

[0042] 1) Computing power: refers to data processing capability. It is a new type of productivity that integrates information computing power, network carrying capacity, and data storage capacity. It mainly provides services to society through computing power infrastructure such as computing power centers. It exists in various smart hardware devices such as mobile phones and laptops and represents the computing performance of a certain device or system.

[0043] 2) Heterogeneous card: refers to the integration of different types but complementary computing units on the same board, which aims to provide high performance and high energy efficiency for specific tasks. In the embodiments of this application, the heterogeneous card can be a graphics processor, neural network processor and other heterogeneous computing devices.

[0044] 3) Dynamic Peak Power Allocation: By combining the rated power of the heterogeneous cards, the actual power during normal operation, and the power value during faults and anomalies, the peak power limit is calculated, and the peak power limit is cyclically adjusted during the heterogeneous calculation process. Peak power is the highest power value that the equipment can reach for a short period of time, which is generally very short.

[0045] 4) Rated Power: This refers to the power that a device can continuously and stably output under normal operating conditions (usually for a long period of time). It is the maximum sustainable safe power set by the hardware device (such as graphics processors, neural network processors, and other heterogeneous cards) manufacturer, representing the upper limit of power that the device can withstand during long-term stable operation.

[0046] 5) Peak Power Limit: This is an instantaneous power limit that is dynamically adjusted based on the actual business scenario and hardware status. It is usually lower than or equal to the rated power and is used to actively limit abnormal power fluctuations and extend the equipment life.

[0047] 6) Power spikes: These refer to sudden, high-amplitude, and abnormally fluctuating power spikes that occur within a short period of time during the operation of electronic devices (such as heterogeneous computing cards) due to sudden changes in task load, uneven resource scheduling, or circuit signal interference. They appear suddenly and irregularly; for example, a sudden increase in computing power demand during the processing of sudden tasks by a heterogeneous card can lead to a surge in power. Instantaneous high power can generate localized high temperatures (such as a surge in transistor junction temperature), accelerating metal migration, dielectric breakdown, and shortening chip lifespan.

[0048] In scenarios requiring the processing of large amounts of data, the use of heterogeneous computing devices is increasing. However, these devices are expensive and scarce, increasing the cost of fulfilling business requirements. Related technologies aim to reduce costs by reusing computing devices and limiting their rated power at the factory. This allows for full utilization of the device's computing power to meet business needs during operation. However, abnormal power levels during operation can damage the computing devices, preventing the achievement of optimal cost reduction.

[0049] This application provides a data processing method, a data processing apparatus, an electronic device, a computer-readable storage medium, and a computer program product, which can adjust the peak power of computing devices to extend the service life of computing devices.

[0050] The following describes exemplary applications of the electronic devices provided in the embodiments of this application. These devices can be implemented as various types of terminals such as laptops, tablets, desktop computers, set-top boxes, smartphones, smart speakers, smartwatches, smart TVs, and in-vehicle terminals, or as servers. Exemplary applications when the device is implemented as a terminal or server will be described below.

[0051] See Figure 1 , Figure 1 This is a schematic diagram illustrating the application mode of the data processing method provided in the embodiments of this application. It is an example to support a data processing application. Figure 1 The system involves server 200, network 300, terminal device 400 and database 500. Terminal device 400 is connected to server 200 through network 300. Network 300 can be a wide area network or a local area network, or a combination of both.

[0052] In some embodiments, the embodiments of this application can be implemented collaboratively by a server and a terminal device. For example, the user can be a person skilled in the art. The server 200 is a server for data processing, and the terminal device 400 is a terminal operated by the user. The terminal device 400 has an application installed that can execute business requirements. The database 500 stores the power data of the computing device. The terminal device 400 sends the computing task to the server 200. The server 200 receives the computing task and adjusts the height limit power based on the computing task and the power data of the computing device using the data processing method provided in the embodiments of this application to determine the height limit power of the computing device corresponding to the computing task. The adjusted height limit power is then sent to the terminal device 400.

[0053] The data processing method provided in this application can be applied to various scenarios that require computing devices to perform task calculations, such as artificial intelligence model training scenarios and graphics rendering scenarios. Examples are given below.

[0054] 1) Artificial intelligence model training scenario, for example, a terminal device receives a training request for training an artificial intelligence model. Based on the computational tasks in the model training request and the power data of the computing device when executing the computational tasks, the server generates a height limit value for the computing device during the model training process through data processing methods. The power of the neural network processor is limited by the height limit value, thereby extending the lifespan of the neural network processor during the model training process.

[0055] 2) In graphics rendering scenarios, for example, a terminal device receives a computing task for processing graphics rendering. Based on the power data of the computing device when processing images, the server generates a limit value for the execution of the graphics processor through data processing methods, which limits the power of the graphics processor when performing tasks such as image processing and graphics rendering, thereby extending the lifespan of the graphics processor.

[0056] 3) In gaming product scenarios, for example, when a terminal device receives computing tasks for running a game, the server generates a height limit for the heterogeneous computing devices used to perform tasks in the game product based on the power data of the computing devices when processing game data. This limits the power of the heterogeneous computing devices when performing tasks such as character actions and game sessions, thereby extending the lifespan of the heterogeneous computing devices in the game product.

[0057] 4) In medical system scenarios, for example, terminal devices receive computing tasks for processing medical system data. Based on the power data of computing devices when processing medical system task data, the server generates height limits for heterogeneous computing devices used to perform tasks in the medical system through data processing methods. This limits the power of heterogeneous computing devices when performing tasks such as medical image analysis and medical resource scheduling, thereby extending the lifespan of heterogeneous computing devices in the medical system.

[0058] 5) Voice interaction system scenario, for example, the terminal device receives computing tasks for processing the voice interaction system. Based on the power data of the computing device when processing voice call data, the server generates the height limit value of the heterogeneous computing device used to perform tasks in the voice interaction system through data processing methods. This limits the power of the heterogeneous computing device when performing tasks such as voice information processing and audio data conversion, thereby extending the lifespan of the heterogeneous computing device in the voice interaction system.

[0059] 6) Virtual visual interaction system scenario, for example, the terminal device receives computing tasks for processing the virtual visual interaction system. Based on the power data of the computing device when processing virtual visual data, the server generates the height limit value of the heterogeneous computing device used to perform tasks in the virtual visual interaction system through data processing methods, which limits the power of the heterogeneous computing device when performing tasks such as virtual scene rendering and virtual character interaction, and extends the service life of the heterogeneous computing device in the virtual visual interaction system.

[0060] See Figure 2, Figure 2 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Figure 2 The terminal 400 shown includes at least one processor 410, a memory 450, and at least one network interface 420. The various components in the terminal 400 are coupled together via a bus system 440. It is understood that the bus system 440 is used to implement communication between these components. In addition to a data bus, the bus system 440 also includes a power bus, a control bus, and a status signal bus. However, for clarity, ... Figure 2 The general labeled all buses as Bus System 440.

[0061] The processor 410 can be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc.

[0062] The memory 450 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state storage, hard disk drives, optical disk drives, etc. The memory 450 may optionally include one or more storage devices physically located away from the processor 410.

[0063] The memory 450 may include volatile memory or non-volatile memory, or both. The non-volatile memory may be read-only memory (ROM), and the volatile memory may be random access memory (RAM). The memory 450 described in this application embodiment is intended to include any suitable type of memory.

[0064] In some embodiments, memory 450 is capable of storing data to support various operations, examples of which include programs, modules, and data structures or subsets or supersets thereof, as illustrated below.

[0065] Operating system 451 includes system programs for handling various basic system services and performing hardware-related tasks, such as the framework layer, core library layer, driver layer, etc., for implementing various basic business functions and handling hardware-based tasks;

[0066] The network communication module 452 is used to reach other electronic devices via one or more (wired or wireless) network interfaces 420, exemplary network interfaces 420 including Bluetooth, WiFi, and Universal Serial Bus (USB).

[0067] In some embodiments, the apparatus provided in this application can be implemented in software. Figure 2 A data processing device 455 stored in memory 450 is shown. This device can be software in the form of programs and plug-ins, and includes the following software modules: a height limit determination module 4551 and a height limit adjustment module 4552. These modules are logically linked and can therefore be arbitrarily combined or further separated according to their implemented functions. The functions of each module will be described below.

[0068] In some embodiments, the terminal or server can implement the data processing method provided in this application by running various computer-executable instructions or computer programs. For example, computer-executable instructions can be microprogram-level commands, machine instructions, or software instructions. Computer programs can be native programs or software modules in an operating system; they can be native applications (APPs); or they can be applets that can be embedded in any APP, i.e., programs that only need to be downloaded to a browser environment to run. In summary, the aforementioned computer-executable instructions can be any form of instruction, and the aforementioned computer programs can be any form of application, module, or plugin.

[0069] The data processing method provided in this application will be described in conjunction with exemplary applications and implementations of the terminal provided in the embodiments of this application.

[0070] The data processing method provided in the embodiments of this application will be described below. As mentioned above, the electronic device implementing the data processing method of the embodiments of this application can be a terminal, a server, or a combination of both. Therefore, the executing entity of each step will not be described again below.

[0071] See Figure 3A , Figure 3A This is a first flowchart illustrating the data processing method provided in the embodiments of this application, which will be combined with... Figure 3A The steps shown are explained below. Figure 3A The implementing body is Figure 1 Server 200.

[0072] In step 301, the first actual power of the computing device during the execution of the first computing task is obtained.

[0073] In some embodiments, step 301 can be implemented by performing power acquisition polling processing on the computing device to obtain the power at each polling moment as the first actual power.

[0074] As an example, when executing tasks on models within a device, different types of models perform different computational tasks. For instance, a visual model processes visual data, while a mixed-mode model performs unified processing of multiple modalities such as text, images, and videos. Different computing devices are required to execute different tasks. Each business is broken down into scenario-specific computing tasks. Multiple computing tasks within the same scenario are separated and distinguished as different tasks. For each separated first computing task, the computing device executing the first computing task is determined; there can be multiple computing devices. Power acquisition and polling processing is performed on the computing devices to obtain the power at each polling time as the first actual power. The first actual power is the real-time power consumption of the computing device during task execution; it is the actual operating power of the computing device when executing the first computing task and can be obtained through a hardware interface. See also... Figure 8 , Figure 8 This is a schematic diagram of task decomposition provided in an embodiment of this application. The model training module 801 includes different training tasks for artificial intelligence models. The training tasks of each model are independently decomposed into computational tasks, resulting in various types of computational tasks in the task decomposition list 802. Based on the decomposed independent computational tasks, heterogeneous computing power containers for executing tasks are determined from the heterogeneous container list 803. Each heterogeneous computing power container contains at least one computing device that performs data processing. The actual power, rated power, and abnormal power of each computing device are periodically acquired during task execution.

[0075] Through the embodiments of this application, power acquisition and polling processing is performed on computing devices. The power acquisition and polling mechanism provides core data support for resource optimization, anomaly prevention and energy efficiency management in heterogeneous computing scenarios by acquiring high-frequency, fine-grained power consumption data, ensuring the real-time acquisition of power data and achieving efficient and timely acquisition of the first actual power at the polling moment.

[0076] In some embodiments, the first actual power can be determined by: performing power acquisition polling on the computing device to obtain the power at each polling time; performing the following processing on the power at each polling time, where the power at the polling time is not greater than the rated power, and the power at the polling time is taken as the first actual power.

[0077] As an example, the device is compatible with multiple heterogeneous container ecosystems, employs open logic, and performs power acquisition and polling processing on computing devices. See [link to relevant documentation]. Figure 9 , Figure 9This is a schematic diagram of the power acquisition logic provided in this application embodiment. The power data acquisition of the computing device is executed by the data acquisition agent 901 through periodic polling. Different types of computing devices correspond to different power acquisition commands. By calling the power acquisition command, the power at each polling moment is obtained, and the power data 902 is entered into the database in a time-stamped manner. Polling is a communication mechanism that periodically and actively queries the target status or data. It initiates status or data queries to the controlled party at fixed time intervals, checking at a preset frequency regardless of whether the data has changed.

[0078] For example, if the power acquisition command for a graphics processor is "nvidia-smi" and the entry time is June 10, 2023, then the power data of the graphics processor will be entered into the database according to the entry time. The power acquisition command for a neural network processor is "npu-smi". By calling this acquisition command, the power data will be entered into the database according to the entry time of July 11, 2023.

[0079] As an example, for the power at each polling moment, the rated power is obtained by referring to the technical manual or datasheet of the computing device, or by calling the manufacturer's dedicated interface. The rated power is the upper limit of the normal operation of the equipment. The rated power is the maximum continuous power under nominal operating conditions. When the power at the polling moment is not greater than the rated power, the power at the polling moment is taken as the first actual power. Data that is greater than the rated power is considered to be abnormal data. The power data acquisition and processing does not acquire abnormal data.

[0080] Through the embodiments of this application, by independently dividing the computing tasks, from the perspective of a single business computing scenario, the actual execution power data of the computing device for each first computing task is obtained by polling, and the obtained power data is filtered for anomalies by the rated power of the computing device, so as to ensure the validity of the power data, improve the accuracy of the determination of the first actual power, and realize the efficient and accurate acquisition of the first actual power at the polling time.

[0081] In step 302, a first power limit value is used to perform the first calculation task based on the first actual power generation computing device.

[0082] As an example, the first actual power is read and the first power limit value under the calculation task is determined based on the first actual power. The first actual power is then cleaned, and missing values ​​are processed. Missing values ​​are data points not recorded during the power acquisition polling process due to sensor failure, communication interruption, etc., which are represented by empty values ​​in the time series. The distribution of the first actual power is analyzed by calculating the mean, standard deviation, maximum value, and minimum value of the first actual power to determine its statistical characteristics. A moving average and standard deviation are calculated using a sliding window. The upper limit of the power when the computing device performs the task is determined based on the dynamic distribution hypothesis or quantile method, i.e., the first power limit value. For example, the first power limit value is set to the mean plus three times the standard deviation, or percentiles are used, taking the 95th quantile of historical data as the first power limit value. Based on the upper limit threshold, a safe power range is formed. The lower limit threshold of the initial safe power range can be preset according to the efficiency of the computing device, which is not limited in this application. The first power limit value of the safe power range is updated periodically based on the timed acquisition of the first actual power data.

[0083] Through the embodiments of this application, a first power limit value for the safe operation of computing devices is determined by dynamically statistically analyzing the first actual power. The first actual power can be periodically updated by polling the power data, so that the first power limit value can be adaptively adjusted according to load fluctuations, satisfying the real-time requirements of power data and providing a reliable data foundation for heterogeneous computing device clusters.

[0084] In step 303, the first abnormal power of the computing device during the execution of the first computing task is obtained.

[0085] In some embodiments, the first abnormal power can be obtained by performing any of the following processes: after collecting multiple first actual powers, extracting the power that meets the abnormal conditions from the multiple first actual powers as the first abnormal power; in response to collecting the first actual power at each polling time, when the first actual power meets the abnormal conditions, marking the first actual power as the first abnormal power.

[0086] As an example, the first abnormal power is the power that affects the lifespan of the computing device. The abnormal condition is used to determine whether there is an abnormality in the power value of the first actual power. The first actual power contains power that may be abnormal and normal operating power data that is not abnormal. By judging whether the power data in the first actual power meets the abnormal condition, the power that meets the abnormal condition is extracted from multiple first actual power values ​​as the first abnormal power. Alternatively, when the first actual power at each polling time meets the abnormal condition, the first actual power is marked as the first abnormal power.

[0087] In some embodiments, after collecting multiple first actual powers, extracting the power that meets the abnormal conditions from the multiple first actual powers as the first abnormal power can be achieved by the following method: performing the following processing for each first actual power: determining the utilization change trend and power change trend of each polling time corresponding to the first actual power; for each polling time, when the utilization change trend of the polling time is not increasing and the power change trend of the polling time is increasing, the polling time is regarded as the first abnormal time; when the total number of first abnormal times corresponding to the first actual power exceeds the number threshold, the first actual power is determined as the first abnormal power.

[0088] As an example, the polling time is a set of discrete time points where the system periodically collects data. For each first actual power, the utilization rate corresponding to each polling time is determined. The utilization rate is the usage rate of the computing device, obtained by reading the computing device's indicator data. The utilization rate change trend and power change trend are determined for each polling time. For each polling time, when the utilization rate change trend is not increasing and the power change trend is increasing, it indicates that the computing device's power is increasing but the utilization rate is not increasing. This power meets the abnormal condition, and the polling time with the power meeting the abnormal condition is designated as the first abnormal time. The utilization rate change trend not increasing at the polling time indicates that the utilization rate change trend remains unchanged or is decreasing. When the total number of first abnormal times corresponding to the first actual power exceeds a threshold, the first actual power is determined as the first abnormal power. The threshold is a pre-configured number threshold. See also Figure 11 , Figure 11 This is a logical diagram of the abnormal power point provided in the embodiments of this application; Figure 11 The power curve 1101 shows an upward trend, but the utilization rate curve 1102 shows a downward trend. When there is a trend of power points accumulating beyond the number threshold, the first actual power is determined as the first abnormal power.

[0089] Through the embodiments of this application, by decoupling the trend between actual power and utilization rate, and judging the cumulative trend, the power value that meets the abnormal conditions is determined as abnormal power, thereby achieving high-precision and robust real-time abnormal power detection in complex load scenarios.

[0090] In some embodiments, see Figure 3B , Figure 3B This is a second flowchart illustrating the data processing method provided in this application embodiment; when the first actual power meets the abnormal conditions, the first actual power is marked as the first abnormal power, which can be achieved by executing... Figure 3B Steps 311 to 314 are implemented, and the details are explained below.

[0091] In step 311, the utilization rate change trend and power change trend at the polling time corresponding to the first actual power are determined.

[0092] As an example, based on the polling time corresponding to the first actual power, the trend of power change is calculated using linear regression within a sliding window. The utilization rate of the computing device at the polling time is obtained based on the read device's performance data, and the trend of utilization rate change is calculated using linear regression within the sliding window. By fitting the linear trend of the data within the window, the direction and rate of change are quantified, ensuring a linear relationship between the polling time and the actual power. Changes in power and utilization rate need to be analyzed under the same time reference. Data on the first actual power and utilization rate are collected simultaneously at each polling time, ensuring that the timestamps of the utilization rate change trend and the power change trend are aligned. The size and step size of each time window are aligned to ensure consistent time intervals and that the windows cover data from the same time period. A sliding window is a dynamic data segmentation technique used to analyze local features of time series, balancing real-time performance with historical dependencies. The sliding window sets the size and step size of the time window for the first actual power of the time series. The size of the time window is the number of polling cycles. At each polling time, data from the subsequence of the first actual power corresponding to the interval covered by the window is acquired.

[0093] In step 312, when the utilization rate of the polling time does not increase and the power of the polling time increases, the polling time is designated as the first abnormal time.

[0094] As an example, when the utilization rate trend at the polling time is not increasing, the utilization rate trend remains stable, or the utilization rate trend is decreasing, and the power trend at the polling time is increasing, the actual operating power of the computing device increases, and the utilization rate of the computing device remains unchanged or decreases. The polling time is taken as the newly added first abnormal time, and the power data of the newly added first abnormal time has a probability of being marked as the first abnormal power.

[0095] In step 313, the first abnormal moment of the first actual power accumulation is obtained, and the number of accumulated first abnormal moments and newly added first abnormal moments is counted to obtain the total number of first abnormal moments.

[0096] As an example, the first abnormal moment is determined based on the utilization rate change trend and the power change trend, and the moments with abnormal change trends are accumulated according to different polling times, and the total number of abnormal occurrences accumulated by the first abnormal moment within the time period is counted.

[0097] In step 314, when the total number of times exceeds the number threshold, the first actual power is marked as the first abnormal power.

[0098] As an example, the number threshold is a pre-set threshold for judging the number of times abnormal power occurs. When the total number of times the abnormality occurs at the first abnormal moment exceeds the number threshold, the first actual power is marked as the first abnormal power.

[0099] Through the embodiments of this application, the times when abnormal power is generated are accumulated and statistically analyzed based on the power change trend and the utilization rate change trend. When the total number of times abnormal power is generated exceeds a preset threshold, it is marked as the first abnormal power, thus avoiding incorrect marking of the power of occasional events and improving the accuracy of abnormal power detection.

[0100] In some embodiments, the number threshold can be determined by the following method: obtaining the second actual power of the computing device in a second time period, wherein the second time period is a time period earlier than the first time period during which the computing device performs the first computing task; determining the distribution of abnormal times based on the second actual power and the second abnormal times corresponding to the second actual power; and determining the number threshold according to the distribution of abnormal times.

[0101] As an example, the first actual power is the power in a first time period, which is the execution of the computational task currently collecting power data. This first time period includes multiple polling moments, and multiple polling acquisitions occur within this first time period. The second time period is the period during which the computing device executes the first computational task earlier than the first time period; it is a historical period of executing the same task, also including multiple polling moments. Historical power data from the execution of the same first computational task within the second time period is obtained, i.e., the second actual power. The second actual power includes abnormal power marked as anomalous within the second time period. Based on the actual power and abnormal power in the historical data, the distribution of abnormal moments within the second time period is determined. For each historical polling moment within the second time period, the same abnormal power condition is judged. Based on the distribution of abnormal moments within the second time period, the threshold number that needs to be satisfied for judging abnormal moments within the first time period is determined.

[0102] Through the embodiments of this application, by analyzing historical power data of a second time period earlier than the current first time period, and by determining the distribution of historical actual power and abnormal power, the missed detection and false detection of abnormal power caused by fixed thresholds are avoided, and the number threshold can be dynamically adjusted according to the load mode, thereby improving the accuracy of abnormal power determination.

[0103] In some embodiments, the number threshold can be determined based on the distribution of anomalous moments by: extracting a sequence of second anomalous moments from the distribution of anomalous moments; determining the mean and standard deviation of the second anomalous moments in the sequence; and determining the number threshold based on the mean and standard deviation.

[0104] As an example, the number threshold is a critical value calculated based on the mean and standard deviation of the historical distribution, used to determine whether the number of anomalies in the current window exceeds the limit. The sequence of the second anomaly moment is extracted from the distribution of anomaly moments. Based on the anomaly power data in the second anomaly moment sequence, the mean and standard deviation of the second anomaly moment are calculated. A calculation based on the mean square error is performed using the mean and standard deviation, and the number of anomalies obtained from the calculated normal distribution is used as the number threshold.

[0105] Through the embodiments of this application, based on the assumption of normal distribution, a threshold number for judging abnormal moments in the first time period is determined. By using statistical principles, historical data characteristics are transformed into quantifiable decision criteria, so that the threshold is automatically adjusted according to task characteristics, hardware status and environmental changes, thereby improving the accuracy of abnormal power determination.

[0106] See also Figure 3A In step 304, the first power limit value is adjusted based on the first abnormal power to obtain the adjusted first power limit value.

[0107] In some embodiments, step 304 can be implemented by performing the following process for each first abnormal power in a first order: when the first abnormal power is lower than the first power limit value, the first power limit value is adjusted to the first abnormal power; wherein the first power limit value includes the first power limit value that has not been adjusted or the first power limit value that has been adjusted.

[0108] As an example, the adjusted first power limit is used to restrict the power of the computing device when performing the first computing task. By limiting the power of the first computing task, the power limit of the computing device is determined, enabling dynamic allocation of peak power. Dynamic allocation of peak power is calculated by comprehensively considering the rated power of the computing device, the actual power during normal operation, and the power values ​​at abnormal times. This power limit, or limit value, is then cyclically adjusted during heterogeneous computing operations. Peak power is the highest power value that the device can reach within a short period of time, typically lasting very short. The power limit is an instantaneous power upper limit that is dynamically adjusted based on the actual business scenario and hardware status. It is usually lower than or equal to the rated power and is used to proactively limit abnormal power fluctuations and extend device lifespan. The first power limit value is adjusted based on the first abnormal power. When the first abnormal power is lower than the first power limit value, the first power limit value is adjusted to the first abnormal power. The first power limit value includes the first power limit value before adjustment or the first power limit value after adjustment. That is, the adjusted first power limit value is lower than the first power limit value before adjustment or equal to the first power limit value before adjustment.

[0109] In some embodiments, see Figure 6 , Figure 6 This is a schematic diagram of the height limit calculation logic provided in the embodiment of this application; based on the rated power 6021 and the height limit power 6031, it is determined whether there is an abnormal power point. When an abnormal power point 6011 hits the safe operating area 601, the height limit power 6031 is adjusted to the height limit power 6032. There is no abnormal power point in the adjusted safe operating area 602, and all actual operating power is between the rated power 6022 and the adjusted height limit power 6032, thereby realizing the power limitation of the computing device by the height limit value.

[0110] In some embodiments, see Figure 5 , Figure 5 This is a schematic diagram of the dynamic allocation logic provided in the embodiments of this application; according to Figure 5 The system obtains the actual power 5011 from the operational data 501, the rated power 5021 from the card type information 502, and the abnormal power 5031 from the fault and anomaly information 503. Based on the obtained power information, the height limit power value calculation module 504 determines the power height limit and configures the height limit value for the calculation device. After adjusting the power height limit value, the device's calculation device continues to run and process subsequent calculation tasks, obtaining the actual power during continued operation and generating a corresponding power height limit value based on the actual power. It also obtains the abnormal power during continued operation and adjusts the newly generated power height limit value based on the abnormal power, achieving dynamic correction of the height limit power during subsequent operation. By cyclically obtaining power data to determine the height limit value, the system achieves dynamic adjustment of the power height limit value for the limiting calculation device.

[0111] In this embodiment, a first power limit value and a first abnormal power are judged in a first order. When the first power is lower than the first power limit value, the limit value is adjusted to an abnormal power value. Abnormal data is detected in real time and the limit value is adjusted accordingly, significantly reducing the accumulation of thermal stress on computing devices under high load conditions and effectively balancing computing performance and hardware safety. By dynamically adjusting the limit value, power fluctuations when the device performs computing tasks are mitigated, thereby ensuring the lifespan of the computing device. Reducing peak power consumption by limiting the power limit can reduce electricity costs, which is beneficial for reducing the failure rate of computing devices and improving the stability of heterogeneous computing power.

[0112] In some embodiments, the first order includes at least one of the following: the order of the number of first abnormal moments corresponding to the first abnormal power from high to low; the order of the occurrence moments corresponding to the first abnormal power from near to far.

[0113] As an example, the height limit adjustment for each first abnormal power can be performed according to the order of the number of first abnormal moments from high to low, or by sorting the power points with more abnormal moments in descending order of the number of first abnormal moments, or by sorting the power points with more abnormal moments in the order of the occurrence times corresponding to the first abnormal power from recent to distant, or by sorting the power points with more recent occurrence times in the order of the occurrence times of the abnormal moments, and by sorting them with more recent occurrence times.

[0114] Through the embodiments of this application, by sorting in descending order of the number of anomalies, the device can prioritize processing power points that have occurred more frequently at times of anomaly, or sort by the time of occurrence, so that the device can prioritize processing power points that have occurred at the most recent time, thus ensuring the reliability and real-time performance of power limiting, while solving both long-term systemic defects and short-term sudden problems.

[0115] In some embodiments, see Figure 3C , Figure 3C This is a schematic diagram of the third process of the data processing method provided in the embodiments of this application; Figure 3A Step 303 in the process can also be executed by Figure 3C Steps 321 to 324 are implemented, and the details are explained below.

[0116] In step 321, feature extraction processing is performed on the first computing task to obtain the first task features of the first computing task.

[0117] As an example, a neural network model is used to extract features from the first computational task, resulting in first task features, which include execution time features, memory requirement features, resource requirement features, and communication overhead features.

[0118] In step 322, feature extraction processing is performed on each first actual power to obtain the first power feature of each first actual power.

[0119] As an example, a neural network model is used to perform feature extraction processing on each first actual power to obtain the first power feature of each first actual power. The first power feature includes statistical features, peak features, and periodic features of the power.

[0120] In step 323, the first task feature and the first power feature are fused to obtain the first fused feature, and the first fused feature is mapped to obtain the first probability that each first actual power belongs to the first abnormal power.

[0121] As an example, the first task feature and the first power feature are fused to obtain the first fused feature after feature splicing. The first fused feature is then mapped to the interval [0, 1] by a normalization function to obtain the first probability that each first actual power belongs to the first abnormal power.

[0122] In step 324, when the first probability is greater than the probability threshold, the first actual power is determined as the first abnormal power.

[0123] As an example, the probability threshold is preset based on historical abnormal power. When the first probability is greater than the probability threshold, it means that the first actual power corresponding to the first probability of the number of times is the abnormal power that meets the abnormal conditions, and the first actual power is determined as the first abnormal power.

[0124] Through the embodiments of this application, feature extraction is performed on the computational task and the actual power to obtain the first task feature and the first power feature, and feature fusion is performed. Based on the feature fusion, probability mapping processing is performed to obtain the predicted probability that the actual power belongs to the abnormal power, so that the model can distinguish between normal load fluctuations and real anomalies, thereby improving the prediction accuracy and identification efficiency of abnormal power points.

[0125] In some embodiments, the determination of the first anomalous power is achieved through a neural network model. The neural network model can be trained by: acquiring actual power samples and anomalous labels for the actual power samples; performing the following processing through the neural network model: performing feature extraction processing on a first computational task to obtain second task features for the first computational task; performing feature extraction processing on each actual power sample to obtain second power features for each actual power sample; fusing the second task features and the second power features to obtain second fused features, and mapping the second fused features to obtain a second probability that each actual power sample belongs to anomalous power; updating the neural network model based on the loss between the second probability and the anomalous label to obtain the updated neural network model.

[0126] As an example, actual power samples and anomaly labels for the actual samples are obtained from historical polling time periods. The anomaly label represents the probability that the actual sample is an anomalous power. Feature extraction is performed on the first computational task using a neural network model to obtain the second task features corresponding to the first computational task. Feature extraction is then performed on each actual power sample to obtain the second power feature for each actual power sample. This second power feature is then fused with the second task feature to obtain the second fused feature. The fusion process can be a direct concatenation into a high-dimensional vector or a weighted fusion based on attention; this application does not impose any restrictions on this. The second fused feature is mapped using a normalization function to output the second probability that the actual power sample belongs to the anomalous power. The difference between the predicted second probability and the actual anomaly label is calculated. The cross-entropy loss is determined based on the calculated difference, and the neural network model is updated based on the cross-entropy loss. The updated neural network model is used to predict the probability that the actual power belongs to the anomalous power.

[0127] Through the embodiments of this application, a neural network model is used to obtain the dependency relationship of captured power data through multi-layer nonlinear transformation. Through task feature encoding, the same model can be adapted to different tasks such as visual processing and multimodal fusion. There is no need to design prediction rules separately for each task, which improves the interpretability of the model for abnormal power prediction. By training the neural network model through cross-entropy loss, the accuracy of the prediction results of the trained model can be improved.

[0128] In some embodiments, in addition to adjusting the first power high limit value when the computing device performs the first computing task, the first power low limit value when the computing device performs the first computing task can also be adjusted by the following method: generating the first power low limit value of the computing device performing the first computing task based on the first actual power; obtaining the second abnormal power of the computing device during the execution of the first computing task, wherein the second abnormal power is the power that affects the execution efficiency of the computing device; when the second abnormal power is higher than the first power low limit value, adjusting the first power low limit value to the second abnormal power.

[0129] As an example, when a computing device executes the first computing task, in addition to the possibility of exceeding the safe operating power limit, there may also be a situation where the actual operating power of the computing device is consistently too low. Low actual operating power prolongs the execution time of the first computing task and increases the consumption of computing resources. Therefore, the lower power in the actual operating power of the computing device is marked as the second abnormal power. The first actual power of the computing device during the execution of the first computing task is obtained. For the power at each polling time, the rated power is obtained by referring to the computing device's technical manual or datasheet, or by calling the manufacturer's dedicated interface. When the power at the polling time is not greater than the rated power, the power at the polling time is taken as the first actual power. Based on the first actual power, a first power limit is generated for the computing device to execute the first computing task. The first power limit is the minimum power value required for the computing device to maintain a safe operating state. The determination of the first power limit is based on the same principle as the first power limit: a moving average and standard deviation are calculated using a sliding window, and the lower limit of the power during task execution, i.e., the first power limit, is determined according to the dynamic distribution assumption or quantile method. For example: the first power limit is set to the mean minus three standard deviations. Based on the first power upper limit and the first power lower limit, a safe power range is formed for the computing device when performing the first computing task. The first power limit is updated periodically based on the timed acquisition of the first actual power data.

[0130] As an example, a second abnormal power is obtained during the execution of a first computing task by the computing device. This second abnormal power is the power that affects the execution efficiency of the computing device. When the computing device executes the first computing task based on the second abnormal power, the execution efficiency of the task will be reduced. After polling and obtaining multiple first actual powers, the power change trend of each polling time corresponding to the first actual power is determined. For each polling time, when the power change trend at the polling time is decreasing, and the power value corresponding to the decreasing trend is higher than the first power lower limit, the polling time is designated as the second abnormal time. When the total number of second abnormal times corresponding to the first actual power exceeds a threshold, the first actual power is determined as the second abnormal power, and the first power lower limit is adjusted to the second abnormal power.

[0131] In this embodiment, a first power limit is determined based on a first actual power for the computing device executing a first computing task, and a second abnormal power affecting the execution efficiency of the computing device is obtained. The first actual power is obtained through polling. By comparing the second abnormal power with the first power limit, when the second abnormal power is higher than the first power limit, the first power limit is adjusted to the second abnormal power, thus dynamically adjusting the first power limit when the computing device executes a task. If the computing device continuously executes a computing task at a power lower than the first power limit, it will prolong the time required to complete the same computing task and increase the consumption of computing resources. By dynamically adjusting the first power value, the power of the computing device during execution is limited, maintaining the execution efficiency of the computing device and avoiding unnecessary resource consumption and increased time costs.

[0132] The data processing method provided by the embodiments of this application has the following beneficial effects: By independently dividing the computing tasks, from the perspective of a single business computing scenario, the actual execution power data of the computing devices for each first computing task is obtained through polling. Abnormal data is filtered out based on the rated power, ensuring efficient and accurate acquisition of power data. By dynamically statistically analyzing the first actual power, a safe power operating range for the computing devices is constructed, satisfying the real-time requirements of power data and providing a reliable data foundation for heterogeneous computing device clusters. Through trend decoupling analysis between actual power and utilization, power values ​​that meet abnormal conditions are identified as abnormal power based on the cumulative trend judgment, achieving high-precision and robust real-time abnormal power detection in complex load scenarios and reducing the risk of missed abnormal power detection. By accumulating and statistically analyzing the power change trend and utilization change trend, the times when abnormal power occurs are avoided from incorrectly marking the power of occasional events, improving the accuracy of abnormal power detection. Based on the assumption of normal distribution, a threshold number for judging abnormal moments within the first time period is determined, allowing the threshold number to be dynamically adjusted according to the load mode, improving the accuracy of abnormal power determination. Power points are sorted in descending order of the number of anomalies, prioritizing those with the most frequent anomalies or the most recent anomaly. The height limit is adjusted to mitigate power fluctuations during computational tasks. After adjusting the height limit, the computing devices continue operating for a period. The actual power output during this extended period is collected to determine a new initial height limit, enabling dynamic adjustment of the computing device's height limit. This reduces the failure rate of computing devices, alleviating maintenance workload. It also improves computing power stability, assists in the efficient use of computing devices during computational tasks, extends device lifespan and stability, and helps reduce electricity costs.

[0133] The following will describe an exemplary application of the embodiments of this application in a real-world application scenario.

[0134] With the increasing development of large-scale artificial intelligence models, the computing power required for business operations is gradually increasing. Therefore, the use of heterogeneous computing devices such as GPUs with large data processing capabilities is also growing. For example, connecting multiple GPUs to form a GPU cluster can meet the data processing needs of large datasets. However, heterogeneous GPUs with large data processing capabilities are expensive, and data volumes are scarce. How to reduce the cost of using computing power equipment is an urgent problem to be solved. Related technologies reduce costs by reusing computing power equipment and limiting the rated power of heterogeneous GPUs. During equipment operation, the computing power of the equipment is fully utilized to meet business needs. However, in cases where the rated power is not reached but abnormal power values ​​occur, these abnormal power values ​​can damage the heterogeneous GPUs, and abnormal power fluctuations can easily cause malfunctions.

[0135] This application embodiment breaks down each application scenario into multiple computing tasks, defines a list of computing devices for each computing task, and assigns multiple computing devices to each computing task. Power data from the computing devices is periodically collected and recorded. Abnormal power points are stored separately in a database. The actual power curve during operation is plotted based on the power data collected and recorded. Based on the actual power curve, a safe operating range is constructed.

[0136] In some embodiments, see Figure 5 , Figure 5 This is a schematic diagram of the dynamic allocation logic provided in the embodiments of this application; according to Figure 5 The system obtains the actual power (5011) from the operational data (501), the rated power (5021) from the card type information (502), and the abnormal power (5031) from the fault / abnormal information (503). Based on the obtained power information, the height limit value is calculated by the height limit power value calculation module (504), and the height limit value is configured. Through dynamic and cyclical height limit value calculation, the height limit power is corrected. Abnormal power points are read cyclically. If an abnormal power point hits a safe operating range, the height limit value of the safe operating range is adjusted until all abnormal power points have been read. Through the dynamic adjustment of the height limit value of the safe operating range, the lifespan of the computing device is extended.

[0137] In some embodiments, see Figure 6 , Figure 6 This is a schematic diagram of the height limit calculation logic provided in the embodiment of this application; based on the rated power 6021 and the height limit power 6031, it is determined whether there is an abnormal power point. When there is an abnormal power point 6011 hitting the safe operating area 601, the height limit power 6031 is adjusted to the height limit power 6032. There is no abnormal power point in the adjusted safe operating area 602, and all actual operating power is between the rated power 6022 and the adjusted height limit power 6032.

[0138] The following explanation is in conjunction with the accompanying drawings. Figure 4 , Figure 4 This is a schematic diagram of the fourth process of the data processing method provided in the embodiments of this application. The executing entity can be a terminal device, a server, or a combination of both. The embodiments of this application use... Figure 1 Taking server 200 as the execution entity as an example, it will be combined with Figure 4 The steps shown are explained in detail.

[0139] In step 401, a list of computing devices used for each task is determined.

[0140] As an example, different types of models perform different computational tasks. For instance, a visual model processes visual data, while a mixed-mode model performs unified processing of multiple modal data such as text, images, and videos. Different computational tasks require different computing devices; therefore, a list of required computing devices is determined for each task.

[0141] In some embodiments, see Figure 7 , Figure 7 This is a schematic diagram of the model task provided in the embodiment of this application. In practical applications, the product layer 701 includes various types of models (e.g., mixed-mode models, visual models, speech models, game models, medical models, and natural language processing models, etc.). Each model performs different services. The heterogeneous container 702 contains multiple heterogeneous computing power containers for executing the services issued by the model. Each heterogeneous computing power container consists of at least one computing device. According to the list of computing containers corresponding to the service, the rated power 7031, actual power 7032, and abnormal power 7033 of the computing container list are obtained. The multi-power aggregation is performed through the height limit power 7031 adjustment module 703, and the height limit power is calculated. The height limit power is then applied to the heterogeneous computing power containers.

[0142] See also Figure 4 In step 402, the power data of each computing device in the computing device list is obtained.

[0143] As an example, various business operations performing heterogeneous computing are broken down into different scenario-based computing tasks. Even if there are multiple computing tasks within the same scenario, they will be separated and distinguished as different tasks. For each separated task, a list of computing devices is used. The power consumption during each computing period of the computing devices in the list is collected, and the normal actual power consumption during task operation, the abnormal power consumption under abnormal conditions, and the rated power consumption of the card type used in the task are periodically acquired on a minute-by-minute basis and reported to the database for storage.

[0144] In some embodiments, see Figure 8 , Figure 8This is a schematic diagram of task decomposition provided in an embodiment of this application. The model training module 801 includes different training tasks for the artificial intelligence model. Each training task is independently decomposed into computational tasks, resulting in various types of computational tasks in the task decomposition list 802. For example, the training of the speech model is decomposed into speech tasks, and the training of the vision model is decomposed into vision tasks. Based on the decomposed independent computational tasks, the heterogeneous computing power container executing the task is determined in the heterogeneous container list 803, and the actual power, rated power, and abnormal power of each computing device in the heterogeneous computing power container are periodically obtained during task execution. Rated power is the upper limit of normal operation of the device. Rated power is the maximum continuous power under nominal operating conditions, provided by the manufacturer. It can be obtained by referring to the technical manual or datasheet of the computing device, or by calling the manufacturer's dedicated interface. This application does not impose any restrictions on this. Actual power is the real-time power consumption of the computing device during task operation, which can be obtained by querying through the hardware interface. Abnormal power is determined by judging the utilization rate, and the obtained power data is stored in the data storage container 804. Based on the aggregated power set, the height limit power is drawn through the height limit power adjustment module 805, and the heterogeneous computing power container is adjusted according to the output height limit power.

[0145] In some embodiments, see Figure 9 , Figure 9 This is a schematic diagram of the power acquisition logic provided in this application embodiment. The device is compatible with the ecosystem of multiple heterogeneous containers and adopts an open logic. Power data acquisition is performed by periodically polling through the data acquisition agent 901. Different types correspond to different power acquisition commands. After the device obtains power data by calling the power acquisition command, it will record the power data 902 into the database in a time-stamped manner. For example, the power acquisition command for a graphics processor is "nvidia-smi", and the entry time is June 10, 2023. Then, the power data of the graphics processor will be recorded into the database according to the entry time. The power acquisition command for a neural network processor is "npu-smi". By calling this acquisition command, the power data will be recorded into the database according to the entry time July 11, 2023.

[0146] See also Figure 4 In step 403, the safe operating area is determined based on the actual operating power data.

[0147] As an example, the collected data set is read, and a height limit power plot is drawn based on the actual operating power data to determine the safe operating area. The actual operating power is cleaned, missing values ​​are handled, or data exceeding the rated power is filtered out. The distribution of the power data is analyzed to determine its statistical characteristics, such as mean, standard deviation, maximum, and minimum. A sliding window is used to calculate the moving average and standard deviation, with the upper limit set to the mean plus three times the standard deviation. Alternatively, percentiles can be used, such as the 95th percentile of historical data, as the upper limit. Based on these upper and lower thresholds, a safe operating area is formed, and the upper and lower limits of the safe operating area are periodically updated based on the regularly acquired power data.

[0148] In some embodiments, see Figure 10 , Figure 10 This is a flowchart illustrating the logic for drawing the secure operating area, as provided in this application embodiment. Figure 10 The process of drawing the safe operating area can be achieved by executing steps 404 to 408. An initial safe operating area 1001 is drawn based on the actual operating power. A rated power limit is added to the initial safe operating area 1001 to obtain a safe operating area 1002 that filters out some abnormal data based on the rated power. Abnormal power points are added to the safe operating area 1002 to obtain a safe operating area 1003 with abnormal power points. The height limit value is adjusted based on the abnormal power points to obtain an adjusted safe operating area 1004. There are no abnormal power points in the safe operating area 1004 after adjusting the height limit value.

[0149] See also Figure 4 In step 404, abnormal power points are read.

[0150] As an example, an abnormal power point is defined as a point where power increases but utilization does not increase or utilization decreases. When the power value at this point occurs N times (N is a pre-configured threshold number), the point is designated as an abnormal power point. Abnormal power points are identified and read. Utilization rate is the usage rate of the computing device, obtained by reading the device's performance data. In some embodiments, see [link to relevant documentation]. Figure 11 , Figure 11 This is a logical diagram of the abnormal power point provided in the embodiments of this application; Figure 11 The power curve 1101 shows an upward trend, but the utilization curve 1102 shows a downward trend. When there is a situation where the cumulative number of power points exceeds the pre-configured threshold, it is marked as an abnormal power point.

[0151] In step 405, it is determined whether the abnormal power point falls within the safe operating area.

[0152] As an example, the abnormal power value of the abnormal power point in the current safe range is read, and it is determined whether the abnormal power value hits the safe operating area, that is, whether the abnormal power value is lower than the height limit of the safe operating area.

[0153] If the result of the judgment in step 405 is negative, return to step 404.

[0154] As an example, if the judgment result of step 405 is negative, there is no abnormal power value that hits the current safe range. The safe operating range at this moment does not need to be adjusted, and the abnormal power point continues to be read.

[0155] If the judgment result in step 405 is yes, step 406 is executed. In step 406, the height limit value of the safe operating area is adjusted according to the abnormal power point.

[0156] As an example, the judgment result of step 405 is that there is an abnormal power value that hits the current safe zone. The height limit of the safe operating area is adjusted according to the power value of the abnormal power point, and the height limit is adjusted to be below the abnormal power value.

[0157] After step 406, step 407 is executed to determine whether the abnormal power point has been read completely.

[0158] As an example, abnormal power points are read in a loop, and it is determined whether all abnormal power points at the current moment have been read.

[0159] If the result of the judgment in step 407 is negative, return to step 404.

[0160] As an example, if the result of step 407 is negative, it means that there are unread abnormal power points. At this time, return to step 404 to read the remaining abnormal power points.

[0161] If the judgment result in step 407 is yes, step 408 is executed. In step 408, the adjusted height limit value for each task is confirmed, and the power of the calculation device corresponding to the task is calculated based on the adjusted height limit value.

[0162] As an example, the judgment result of step 407 is that all abnormal power points have been read. At this time, the height limit value of the safe operating area is dynamically adjusted according to all abnormal power points to obtain the safe operating range after adjusting the height limit value. Each safe operating range corresponds to a calculation task. According to the height limit value adjusted for each task, the power of the calculation device corresponding to the task is executed to avoid the occurrence of peak power. Peak power is the situation where multiple containers suddenly experience high load at the same time, which can damage the calculation device.

[0163] The data processing method provided in this application has the following beneficial effects:

[0164] By analyzing single-process computing scenarios, a list of computing devices used in each task is determined, and the power data of each device in the list is obtained. This power data represents the actual power consumption during normal operation. Based on this actual power consumption data and the rated power consumption during the computation period, the safe operating range of the devices is determined. Abnormal power points are identified and read, and the height limit of the safe operating range is adjusted according to the power values ​​of these abnormal points. The height limit represents the peak power at a given height. This height-limited power mitigation alleviates power fluctuations during computing tasks, thus ensuring the lifespan of the computing devices. Mitigating power fluctuations during device use reduces computing power expenditure and maintenance costs. Limiting power at height reduces peak power consumption, decreasing electricity costs. This height-limited power mode also helps reduce the failure rate of computing devices and improves the stability of heterogeneous computing power.

[0165] The following description continues to illustrate the exemplary structure of the data processing apparatus 455 provided in the embodiments of this application as a software module. In some embodiments, such as Figure 2 As shown, the software modules stored in the data processing device 455 of the memory 450 may include: a height limit determination module 4551, used to obtain a first actual power of the computing device during the execution of a first computing task; generate a first power height limit value for the computing device to execute the first computing task based on the first actual power; and a height limit adjustment module 4552, used to obtain a first abnormal power of the computing device during the execution of the first computing task, wherein the first abnormal power is the power that affects the service life of the computing device; and adjust the first power height limit value based on the first abnormal power to obtain an adjusted first power height limit value, wherein the adjusted first power height limit value is used to limit the power of the computing device to execute the first computing task.

[0166] In some embodiments, the height limit determination module 4551 is further configured to perform power acquisition polling processing on the computing device to obtain the power at each polling moment as the first actual power.

[0167] In some embodiments, the height limit determination module 4551 is further configured to perform power acquisition polling processing on the computing device to obtain the power at each polling time; and to perform the following processing on the power at each polling time: when the power at the polling time is not greater than the rated power, the power at the polling time is taken as the first actual power.

[0168] In some embodiments, the height limit determination module 4551 is further configured to perform power acquisition polling processing on the computing device to obtain the power at each polling time; and to perform the following processing on the power at each polling time: when the power at the polling time is not greater than the rated power, the power at the polling time is taken as the first actual power.

[0169] In some embodiments, the height limit adjustment module 4552 is further configured to perform any one of the following processes: after collecting multiple first actual powers, extracting the power that meets the abnormal conditions from the multiple first actual powers as the first abnormal power; in response to collecting the first actual power at each polling time, when the first actual power meets the abnormal conditions, marking the first actual power as the first abnormal power.

[0170] In some embodiments, the height limit adjustment module 4552 is further configured to perform the following processing for each first actual power: determine the utilization rate change trend and power change trend for each polling time corresponding to the first actual power; for each polling time, when the utilization rate change trend at the polling time is not increasing and the power change trend at the polling time is increasing, the polling time is regarded as the first abnormal time; when the total number of first abnormal times corresponding to the first actual power exceeds the number threshold, the first actual power is determined as the first abnormal power.

[0171] In some embodiments, the height limit adjustment module 4552 is further configured to determine the utilization rate change trend and power change trend of the polling time corresponding to the first actual power; when the utilization rate change trend of the polling time is not increasing and the power change trend of the polling time is increasing, the polling time is regarded as a newly added first abnormal time; the first abnormal time accumulated by the first actual power is obtained, and the number of accumulated first abnormal times and newly added first abnormal times is counted to obtain the total number of first abnormal times; when the total number exceeds the number threshold, the first actual power is marked as the first abnormal power.

[0172] In some embodiments, the first actual power is the power in a first time period. The height limit adjustment module 4552 is further configured to obtain the second actual power of the computing device in a second time period, wherein the second time period is a time period earlier than the first time period during which the computing device performs the first computing task; determine the distribution of abnormal times based on the second actual power and the second abnormal times corresponding to the second actual power; and determine a number threshold based on the distribution of abnormal times.

[0173] In some embodiments, the height limit adjustment module 4552 is further configured to extract a sequence of second abnormal times from the abnormal time distribution; determine the mean and standard deviation of the second abnormal times in the sequence; and determine a number threshold based on the mean and standard deviation.

[0174] In some embodiments, the height limit adjustment module 4552 is further configured to perform the following processing for each first abnormal power in a first order: when the first abnormal power is lower than the first power height limit, the first power height limit is adjusted to the first abnormal power; wherein the first power height limit includes the first power height limit that has not been adjusted or the first power height limit that has been adjusted.

[0175] In some embodiments, the first order includes at least one of the following: the order of the number of first abnormal moments corresponding to the first abnormal power from high to low; the order of the occurrence moments corresponding to the first abnormal power from near to far.

[0176] In some embodiments, the height limit adjustment module 4552 is further configured to perform feature extraction processing on the first computing task to obtain a first task feature of the first computing task; perform feature extraction processing on each first actual power to obtain a first power feature of each first actual power; perform fusion processing on the first task feature and the first power feature to obtain a first fused feature, and perform mapping processing on the first fused feature to obtain a first probability that each first actual power belongs to a first abnormal power; when the first probability is greater than the probability threshold, the first actual power is determined as the first abnormal power.

[0177] In some embodiments, the height limit adjustment module 4552 is further configured to generate a first power low limit value for the computing device to perform the first computing task based on the first actual power; obtain a second abnormal power of the computing device during the execution of the first computing task, wherein the second abnormal power is the power that affects the execution efficiency of the computing device; and adjust the first power low limit value to the second abnormal power when the second abnormal power is higher than the first power low limit value.

[0178] In some embodiments, the height limit adjustment module 4552 is further configured to acquire actual power samples and abnormal labels of actual power samples; and perform the following processing through a neural network model: perform feature extraction processing on a first computation task to obtain a second task feature of the first computation task; perform feature extraction processing on each actual power sample to obtain a second power feature of each actual power sample; perform fusion processing on the second task feature and the second power feature to obtain a second fused feature, and perform mapping processing on the second fused feature to obtain a second probability that each actual power sample belongs to abnormal power; and update the neural network model based on the loss between the second probability and the abnormal label to obtain an updated neural network model.

[0179] This application provides a computer program product, which includes a computer program or computer-executable instructions stored in a computer-readable storage medium. The processor of an electronic device reads the computer-executable instructions from the computer-readable storage medium and executes the computer-executable instructions, causing the electronic device to perform the data processing method described in this application.

[0180] This application provides a computer-readable storage medium storing computer-executable instructions or a computer program. When the computer-executable instructions or the computer program are executed by a processor, the processor will execute the data processing method provided in this application. For example, ... Figure 3A The data processing method is shown.

[0181] In some embodiments, the computer-readable storage medium may be a memory such as RAM, ROM, flash memory, magnetic surface memory, optical disk, or CD-ROM; or it may be a variety of devices including one or any combination of the above-mentioned memories.

[0182] In some embodiments, computer-executable instructions may take the form of programs, software, software modules, scripts, or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as stand-alone programs or as modules, components, subroutines, or other units suitable for use in a computing environment.

[0183] As an example, computer-executable instructions may, but do not necessarily, correspond to files in a file system. They may be stored as part of a file that holds other programs or data, for example, in one or more scripts in a Hyper Text Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple co-located files (e.g., files that store one or more modules, subroutines, or code sections).

[0184] As an example, computer-executable instructions can be deployed to execute on a single electronic device, or on multiple electronic devices located at one location, or on multiple electronic devices distributed across multiple locations and interconnected via a communication network.

[0185] In summary, this application's embodiments determine a first power limit value for executing a first computing task, acquire the first abnormal power of the computing device during the execution of the first computing task, and adjust the first power limit value based on the first abnormal power. The adjusted first power limit value is used to restrict the power of the computing device executing the first computing task. The first abnormal power can be predicted using a neural network model, improving the accuracy of determining the first abnormal power. After adjusting the power limit value, the actual power during the continued operation time of the computing device can be collected to determine a new first power limit value, realizing dynamic adjustment of the computing device's power limit value. By dynamically allocating peak power through power limiting, the lifespan of the computing device can be extended.

[0186] The above description is merely an embodiment of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, and improvements made within the spirit and scope of this application are included within the scope of protection of this application.

Claims

1. A data processing method, characterized in that, The method includes: Obtain the first actual power of the computing device during the execution of the first computing task; A first power limit value is generated based on the first actual power to allow the computing device to perform the first computing task. The first abnormal power of the computing device during the execution of the first computing task is obtained, wherein the first abnormal power is the power that affects the lifespan of the computing device; The first power limit value is adjusted based on the first abnormal power to obtain an adjusted first power limit value, wherein the adjusted first power limit value is used to limit the power of the computing device when performing the first computing task.

2. The method according to claim 1, characterized in that, The step of adjusting the first power limit value based on the first abnormal power to obtain the adjusted first power limit value includes: For each of the first abnormal power levels, the following processing is performed in the first order: When the first abnormal power is lower than the first power limit value, the first power limit value is adjusted to the first abnormal power. The first power limit value includes either an unadjusted first power limit value or an adjusted first power limit value.

3. The method according to claim 2, characterized in that, The first order includes at least one of the following: The order of the number of first abnormal moments corresponding to the first abnormal power from high to low; The occurrence times corresponding to the first abnormal power are in order from most recent to furthest.

4. The method according to claim 1, characterized in that, The acquisition of the first actual power of the computing device during the execution of the first computing task includes: The computing device is subjected to power acquisition and polling processing to obtain the power at each polling time as the first actual power; The step of obtaining the first abnormal power of the computing device during the execution of the first computing task includes: Perform any of the following processes: After collecting multiple first actual power data, the power that meets the abnormal conditions is extracted from the multiple first actual power data as the first abnormal power. In response to the first actual power collected at each of the polling times, if the first actual power meets the abnormal conditions, the first actual power is marked as the first abnormal power.

5. The method according to claim 4, characterized in that, The step of performing power acquisition and polling processing on the computing device to obtain the power at each polling moment as the first actual power includes: The computing device is subjected to power acquisition and polling processing to obtain the power at each polling time. For the power at each polling moment, the following processing is performed: when the power at the polling moment is not greater than the rated power, the power at the polling moment is taken as the first actual power.

6. The method according to claim 4, characterized in that, Extracting the power that meets the abnormal conditions from multiple first actual power sources as the first abnormal power includes: For each of the first actual power values, the following processing is performed: Determine the utilization rate change trend and power change trend at each polling time corresponding to the first actual power; For each polling time, if the utilization rate of the polling time does not increase and the power of the polling time increases, the polling time is designated as the first abnormal time. When the total number of times the first abnormal moment corresponding to the first actual power exceeds the number threshold, the first actual power is determined as the first abnormal power.

7. The method according to claim 4, characterized in that, The step of marking the first actual power as the first abnormal power when the first actual power meets the abnormal conditions includes: Determine the utilization rate change trend and power change trend at the polling time corresponding to the first actual power; When the utilization rate of the polling time does not increase and the power of the polling time increases, the polling time is designated as the first abnormal time. Obtain the first abnormal moment of the first actual power accumulation, and count the number of the accumulated first abnormal moments and the newly added first abnormal moments to obtain the total number of first abnormal moments; When the total number of times exceeds the number threshold, the first actual power is marked as the first abnormal power.

8. The method according to claim 6 or 7, characterized in that, The first actual power is the power in the first time period, and the method further includes: The second actual power of the computing device is obtained in a second time period, wherein the second time period is a time period earlier than the first time period during which the computing device executes the first computing task; Based on the second actual power and the second abnormal moment corresponding to the second actual power, the distribution of abnormal moments is determined; The number threshold is determined based on the distribution of the abnormal times.

9. The method according to claim 8, characterized in that, Determining the number threshold based on the distribution of abnormal times includes: Extract the sequence of the second abnormal time from the distribution of abnormal times; Determine the mean and standard deviation of the second abnormal time in the sequence, and determine the number threshold based on the mean and the standard deviation.

10. The method according to claim 1, characterized in that, The method further includes: A first power limit value is generated based on the first actual power to allow the computing device to perform the first computing task. The second abnormal power is obtained during the execution of the first computing task by the computing device, wherein the second abnormal power is the power that affects the execution efficiency of the computing device; When the second abnormal power is higher than the first power limit, the first power limit is adjusted to the second abnormal power.

11. The method according to claim 1, characterized in that, The step of obtaining the first abnormal power of the computing device during the execution of the first computing task includes: The first computing task is subjected to feature extraction processing to obtain the first task feature of the first computing task; Perform feature extraction processing on each of the first actual power to obtain the first power feature of each of the first actual power; The first task feature and the first power feature are fused to obtain a first fused feature, and the first fused feature is mapped to obtain a first probability that each first actual power belongs to a first abnormal power. When the first probability is greater than the probability threshold, the first actual power is determined as the first abnormal power.

12. A data processing apparatus, characterized in that, The device includes: The height limit determination module is used to obtain the first actual power of the computing device during the execution of the first computing task; and generate a first power height limit value for the computing device to execute the first computing task based on the first actual power. The height limit adjustment module is used to obtain the first abnormal power of the computing device during the execution of the first computing task, wherein the first abnormal power is the power that affects the service life of the computing device; and to adjust the first power height limit based on the first abnormal power to obtain an adjusted first power height limit, wherein the adjusted first power height limit is used to limit the power of the computing device in executing the first computing task.

13. An electronic device, characterized in that, The electronic device includes: Memory is used to store executable instructions or computer programs. A processor, when executing computer-executable instructions or computer programs stored in the memory, implements the data processing method according to any one of claims 1 to 11.

14. A computer-readable storage medium storing computer-executable instructions or a computer program, characterized in that, When the computer-executable instructions or computer program are executed by a processor, they implement the data processing method according to any one of claims 1 to 11.

15. A computer program product comprising computer-executable instructions or a computer program, characterized in that, When the computer-executable instructions or computer program are executed by a processor, they implement the data processing method according to any one of claims 1 to 11.