Power system resource scheduling method and device, storage medium and terminal equipment
By building a task model and dynamically adjusting the computing resource pool, the real-time and resource management issues of existing scheduling algorithms in the power system are solved, and efficient and reliable computing resource allocation is achieved to meet the real-time and security requirements of the power system.
Patent Information
- Application Number
- CN202511115068.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-11
- Publication Date
- 2025-09-16
- Estimated Expiration
- 2045-08-11
AI Technical Summary
Existing operating system scheduling algorithms in power systems have problems such as real-time task delays, rigid resource allocation, inefficient heterogeneous resource management, insufficient fault tolerance and poor energy efficiency, and cannot meet the power system's high requirements for real-time, reliability and security of computing resources.
A task model is constructed and divided into three categories: protection control, fault diagnosis, and status monitoring. By building different types of computing resource pools, including serial processing, parallel processing, and hardware reconfigurable processing devices, computing resource allocation is dynamically adjusted, and switching operations are performed when the task execution status is abnormal.
It realizes the dynamic adaptation of computing resources in the power system, meets the real-time, reliability and security requirements of the power business, improves the utilization rate of heterogeneous resources and system fault tolerance, and optimizes the energy efficiency ratio.
Smart Images

Figure CN120653448A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of computing resource scheduling, and in particular to a power system resource scheduling method, a power system resource scheduling device, a machine-readable storage medium, and a terminal device. Background Art
[0002] The resource scheduling method of the operating system involves a variety of technical solutions, aiming to efficiently allocate resources such as CPU, memory, disk, and I / O. The scheduling algorithm of the operating system is a strategy used to determine the order and time for processes or tasks to access the CPU. Its core goal is to optimize indicators such as CPU utilization, throughput, and response time, and manage the execution order of multiple tasks by reasonably allocating CPU resources. Currently, common scheduling algorithms include the following: (1) First Come First Served (FCFS): The CPU is allocated in the order in which the processes arrive at the ready queue. This is simple but may lead to the "convoy effect", that is, short tasks need to wait for long tasks to complete. (2) Short Job First (SJF): Prioritizes the process with the shortest estimated running time, which can reduce the average waiting time, but requires predicting the job time and may cause long tasks to starve. (3) Round Robin: A fixed time slice is allocated to each process, and the CPU usage right is forced to switch, ensuring fairness, but it may increase overhead due to frequent switching. (4) Priority Scheduling: The CPU is allocated according to the preset priority, and it is necessary to deal with priority inversion or low-priority task starvation. (5) Multi-level feedback queue scheduling: Combining multiple algorithms, processes are divided into different queues according to their characteristics, and priorities are dynamically adjusted based on execution history, taking into account both response time and throughput.
[0003] However, the above algorithms have the following defects: for example, first-come, first-served is simple and easy to implement, but may cause long jobs to wait longer; giving priority to short jobs can reduce the average waiting time, but may cause starvation; round-robin scheduling ensures fairness, but may increase overhead due to frequent switching; priority scheduling is suitable for scenarios where urgent tasks need to be handled first, but may cause low-priority tasks to starve; multi-level feedback queue scheduling takes into account both response time and throughput and is suitable for complex systems. Summary of the Invention
[0004] The purpose of the embodiments of the present application is to provide a power system resource scheduling method, a power system resource scheduling device, a machine-readable storage medium and a terminal device to solve the above-mentioned problems.
[0005] To achieve the above objectives, the present application provides, in a first aspect, a method for dispatching power system resources, comprising: Determine the task category of the current task, and obtain computing resource requirement information of the current task through a pre-built task model, wherein the task model includes computing resource requirement information corresponding to the task category; Determining, based on computing resource requirement information of a current task, at least one target computing resource unit for the current task from a computing resource pool of a corresponding category, so as to execute the current task using the at least one target computing resource unit, wherein computing resource pools of different categories are obtained by pre-pooling a plurality of computing devices of corresponding categories, and each computing resource pool includes a plurality of computing resource units, wherein computing devices of different categories have different data processing logics; When the real-time execution status of the current task is abnormal, a switching operation is performed on the computing resource unit of the current task, or when the real-time operation status of each computing resource pool is abnormal, a switching operation is performed on the computing resource units occupied by each task based on the occupation of the computing resource units by all current tasks.
[0006] Optionally, the computing resource pools of different categories include a first computing resource pool, a second computing resource pool, and a third computing resource pool; the computing resource pools of different categories are obtained by pre-pooling a plurality of computing devices of corresponding categories, including: Performing a pooling operation on multiple serial processing devices, dividing each serial processing device into multiple computing resource units, and constructing the first computing resource pool with the computing resource units of all serial processing devices; Performing a pooling operation on the plurality of parallel processing devices, dividing each parallel processing device into a plurality of computing resource units, and constructing the second computing resource pool with the computing resource units of all the parallel processing devices; A pooling operation is performed on multiple hardware reconfigurable processing devices, each hardware reconfigurable processing device is divided into multiple computing resource units, and the computing resource units of all hardware reconfigurable processing devices are used to construct the third computing resource pool.
[0007] Optionally, each serial processing device is divided into a plurality of computing resource units, including: For each serial processing device, determining at least one computing resource unit as an exclusive computing resource unit and determining the remaining computing resource units as shared computing resource units; The exclusive computing resource unit is configured to execute tasks of a specified task category, and the shared computing resource unit is configured to execute tasks not of the specified task category.
[0008] Optionally, the hardware reconfigurable processing device includes a plurality of logic units, one or more of which can be configured to perform a specified task; each hardware reconfigurable processing device is divided into a plurality of computing resource units, including: Determining at least one preset designated task; For each hardware reconfigurable processing device, determine the number of logic units required for each specified task and the control logic of the current specified task; For each specified task, the target logic unit is determined according to the number of logic units required for the current specified task, each target logic unit is configured based on the control logic of the current specified task, and each configured target logic unit is determined to be the computing resource unit of the current specified task.
[0009] Optionally, the task category includes protection control, fault diagnosis or condition monitoring, and the task model further includes: Quality attribute information of the current task, including the maximum delay, reliability level, and data freshness of the current task, where the data freshness is the target data processing time of the current task; The steps of constructing the task model include: Determine the task category and quality attribute information of the current task; Based on the task category of the current task and / or the quality attribute information of the current task, a mapping relationship between the current task and the corresponding computing resource units of at least one of the first computing resource pool, the second computing resource pool and the third computing resource pool is constructed, and the mapping relationship is determined to be the computing resource requirement information of the current task category.
[0010] Optionally, constructing a mapping relationship between the current task and corresponding computing resource units of at least one of the first computing resource pool, the second computing resource pool, and the third computing resource pool based on the task category of the current task and / or the quality attribute information of the current task, and determining the mapping relationship as computing resource requirement information of the current task category includes: In the case where the task category of the current task is protection control, if the maximum delay of the current task is not greater than the maximum delay threshold, establishing a mapping relationship between the current task and the specified exclusive computing resource unit in the first computing resource pool and the specified computing resource unit in the third computing resource pool; In the case where the task category of the current task is fault diagnosis, if the reliability level of the current task is not less than the reliability level threshold, establishing a mapping relationship between the current task and the specified shared computing resource unit in the first computing resource pool and / or the specified computing resource unit in the second computing resource pool; When the task category of the current task is status monitoring, a mapping relationship between the current task and a specified shared computing resource unit in the first computing resource pool is established according to the data freshness of the current task.
[0011] Optionally, when the real-time execution state of the current task is abnormal, performing a switching operation on the computing resource unit of the current task includes: When the task category of the current task is protection control or status monitoring, if the real-time delay of the current task is greater than the maximum delay of the current task, the computing resource unit executing the current task will be switched to the corresponding computing resource unit in the third computing resource pool.
[0012] Optionally, when the real-time operating status of each computing resource pool is abnormal, a switching operation is performed on the computing resource units occupied by each task according to the current occupation of the computing resource units by all tasks, including: When the occupancy rate of the second computing resource pool is greater than the occupancy rate threshold, if it is determined that any computing resource unit in the second computing resource pool is occupied by multiple tasks, and the multiple tasks occupying the computing resource unit include designated tasks, the non-designated tasks in the computing resource unit are migrated to other computing resource units in the second computing resource pool.
[0013] Optionally, when the real-time operating status of each computing resource pool is abnormal, a switching operation is performed on the computing resource units occupied by each task according to the current occupation of the computing resource units by all tasks, including: When the operating temperature of the third computing resource pool is higher than the temperature threshold, if it is determined that any computing resource unit in the third computing resource pool is occupied by non-designated tasks, a specified proportion of non-designated tasks will be migrated to the corresponding computing resource units in the second computing resource pool.
[0014] Optionally, when the task category of the current task is protection control, determining at least one target computing resource unit of the current task from a computing resource pool of a corresponding category, so as to execute the current task through the at least one target computing resource unit, includes: If the at least one target computing resource unit is occupied by a task of fault diagnosis or status monitoring, the occupation of the at least one target computing resource unit by the corresponding task is interrupted to execute the current task through the at least one target computing resource unit.
[0015] In a second aspect of the present application, a power system resource scheduling device is provided, comprising: a data acquisition module configured to determine a task category of a current task and obtain computing resource requirement information of the current task through a pre-built task model, wherein the task model includes computing resource requirement information corresponding to the task category; a computing resource configuration module configured to determine, based on computing resource requirement information of a current task, at least one target computing resource unit for the current task from a computing resource pool of a corresponding category, so as to execute the current task using the at least one target computing resource unit, wherein computing resource pools of different categories are obtained by pre-pooling a plurality of computing devices of corresponding categories, each computing resource pool including a plurality of computing resource units, wherein computing devices of different categories have different data processing logics; The feedback adjustment module is configured to perform a switching operation on the computing resource unit of the current task when the real-time execution status of the current task is abnormal, or to perform a switching operation on the computing resource unit occupied by each task based on the occupation of the computing resource unit by all current tasks when the real-time operation status of each computing resource pool is abnormal.
[0016] In a third aspect of the present application, a machine-readable storage medium is provided, on which instructions are stored. When the instructions are executed by a processor, the processor is configured to execute the power system resource scheduling method as described above.
[0017] In a fourth aspect of the present application, a terminal device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the power system resource scheduling method as described above when executing the computer program.
[0018] This application pre-constructs task models for different tasks and constructs multiple computing resource pools of different categories through computing devices with different data processing logic. When scheduling resources for tasks, the task model can be used to determine the required computing resources for the current task and allocate computing resources. At the same time, the computing resources occupied by each task can be dynamically allocated according to the real-time execution status of each task to meet the data processing requirements of each task, and can effectively adapt to the sudden demands of transient power grid failures.
[0019] Other features and advantages of the embodiments of the present application will be described in detail in the subsequent detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] The accompanying drawings are used to provide a further understanding of the embodiments of the present application and constitute a part of the specification. Together with the following detailed description, they are used to explain the embodiments of the present application but do not constitute a limitation on the embodiments of the present application. In the accompanying drawings: Figure 1 A method flow chart of a power system resource scheduling method provided in a preferred embodiment of the present application; Figure 2 A schematic diagram of the system structure of a layered heterogeneous computing architecture provided in a preferred embodiment of the present application; Figure 3 A schematic block diagram of a power system resource scheduling device provided in a preferred embodiment of the present application; Figure 4 A schematic diagram of a terminal device provided for a preferred embodiment of the present application.
[0021] Description of Reference Numerals 10-terminal device, 100-processor, 101-memory, 102-computer program. DETAILED DESCRIPTION
[0022] To make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. It should be understood that the specific implementation methods described herein are only used to illustrate and explain the embodiments of the present application and are not used to limit the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.
[0023] It should be noted that the technical solutions between the various embodiments of the present application can be combined with each other, but it must be based on the fact that ordinary technicians in this field can implement it. When the combination of technical solutions is mutually contradictory or cannot be implemented, it should be deemed that such a combination of technical solutions does not exist and is not within the scope of protection required by this application.
[0024] The core business of the power system, such as relay protection, PMU synchronous measurement, fault diagnosis, and new energy power prediction, has high requirements for the real-time, reliability, and security of computing resources. Power AI tasks need to call heterogeneous hardware such as CPU (general computing), GPU (parallel computing), NPU (neural network acceleration), and FPGA (programmable logic) at the same time. The scheduling algorithms of traditional operating systems (such as Linux and Windows) (such as completely fair scheduling CFS and time slice rotation) are not optimized for power scenarios, and thus there are the following problems: (1) Real-time task delay: Power-critical tasks (such as relay protection action) need to respond within 10ms, but the general scheduler may generate tens of milliseconds of delay due to priority conflicts; power control tasks (such as AGC frequency modulation and SVG reactive power compensation) require sub-millisecond response, but traditional priority scheduling lacks a dynamic upgrade mechanism and cannot adapt to the sudden demands of transient faults in the power grid. (2) Rigid resource allocation: It is impossible to dynamically adapt heterogeneous hardware resources such as CPU, GPU, and FPGA, resulting in waste of computing power; it does not consider the priority of power services (such as protection control > inspection > prediction), resulting in delays in key tasks. The power system needs to process multimodal tasks (structured data, unstructured data, AI reasoning) at the same time, but the existing technology has rigid resource allocation and cannot dynamically adapt to heterogeneous hardware such as CPU, GPU, FPGA, etc., resulting in a waste of computing power. The task-resource matching is low. For example, the image recognition task is incorrectly assigned to the CPU instead of the GPU, which increases the processing time many times. (3) Inefficient heterogeneous resource management: The power system needs to process multimodal tasks such as structured data, unstructured data, and AI model reasoning at the same time. The existing scheduling strategy (such as static priority queue) cannot dynamically allocate resources according to task characteristics, resulting in insufficient computing power utilization. (4) Insufficient fault tolerance: When there is a sudden load fluctuation (such as a sudden drop in renewable energy output) or hardware failure (such as GPU node downtime) in the power scenario, traditional static scheduling can easily lead to task accumulation or system crash, affecting power supply reliability. (5) Poor energy efficiency: Edge devices (such as inspection robots and smart meters) rely on batteries for power supply. Existing scheduling strategies do not combine the remaining power of the equipment with the urgency of the task. The CPU / GPU resource allocation does not match the computing characteristics of the power AI model (CNN, LSTM, etc.).
[0025] In order to solve the above problems, Figure 1As shown, the first aspect of the present application provides a power system resource scheduling method, including: determining the task category of the current task, obtaining the computing resource demand information of the current task through a pre-built task model, the task model including the computing resource demand information of the corresponding task category; based on the computing resource demand information of the current task, determining at least one target computing resource unit of the current task from the computing resource pool of the corresponding category, so as to execute the current task through at least one target computing resource unit, computing resource pools of different categories are obtained by pre-pooling multiple computing devices of corresponding categories, each computing resource pool includes multiple computing resource units, wherein computing devices of different categories have different data processing logic; in the case that the real-time execution status of the current task is abnormal, performing a switching operation on the computing resource unit of the current task, or in the case that the real-time operation status of each computing resource pool is abnormal, performing a switching operation on the computing resource unit occupied by each task according to the occupation of the computing resource unit by all current tasks.
[0026] In this way, the present application pre-constructs task models for different tasks and constructs multiple different categories of computing resource pools through computing devices with different data processing logic. When scheduling resources for tasks, the required computing resources can be determined through the task model to allocate computing resources for the current task. At the same time, the computing resources occupied by each task can be dynamically allocated according to the real-time execution status of each task to meet the data processing requirements of each task, and can effectively adapt to the sudden demands of transient faults in the power grid.
[0027] like Figure 2 As shown, the method of the present application can be applied to the layered heterogeneous computing architecture system based on the present application, which mainly includes a hardware layer, a computing layer and a scheduling layer. The hardware layer includes the CPU main control hardware, and also includes heterogeneous computing units such as GPU, TPU, FPGA, NPU, etc., which are uniformly abstracted as schedulable resources; the computing layer includes functional modules such as hardware abstraction, resource allocation, resource monitoring and container orchestration; the scheduling layer mainly includes functional modules such as scenario adaptation, business perception, resource profiling and decision optimization.
[0028] This application pre-constructs a triple-structured task model based on the characteristics of the power business. The triple-tuple task model can be expressed as Task = {Type, QoS, Hardware}, where Type represents the task category, QoS represents quality attribute information, i.e., quality of service, and Hardware represents hardware resources, i.e., computing resources. In this application, task categories include protection control, fault diagnosis, or condition monitoring, and quality attribute information includes the maximum delay of the current task, reliability level, and data freshness. Data freshness is the target data processing time for the current task.
[0029] The steps for building the task model include: 1. Determine the task category and quality attribute information of the current task; Among them, the task category Type∈{protection control (0), fault diagnosis (1), condition monitoring (2)}. 0, 1, and 2 are used to represent the highest level of task execution. The larger the number, the lower the level, and the smaller the number, the higher the level. In this application, the protection control task has the highest execution level, so its task identifier is configured as 0.
[0030] Quality of Service (QoS) = (maximum latency, reliability level, data freshness), where data freshness = T_processing - T_generate. T_generate represents the timestamp of data generation, for example, the moment when the sensor collects data, and T_processing represents the timestamp when the AI task completes processing. For example, in a fault diagnosis task, the time it takes for the input data, i.e., the raw data collected by the sensor, to be generated is T_generate, and the time it takes for the AI model to completely diagnose the fault based on the input data and output the diagnosis result is T_processing. The above time units are milliseconds (ms), and power protection tasks generally require a time of ≤10ms. For example, in an insulator temperature monitoring task, if the infrared thermal imager collects images at T = 0ms and the AI model outputs the fault diagnosis result at T = 150ms, then the data freshness = 150ms.
[0031] In this application, QoS is a comprehensive quantitative requirement for task execution performance, encompassing three core dimensions: timeliness, reliability, and data value assurance. Timeliness is defined as the maximum allowable delay from task triggering to completion. Typical requirements for power systems are as follows: Protection and control tasks: ≤50ms (such as relay protection); Fault diagnosis: 100ms~1s (such as identification of insulator rupture); Condition monitoring: 1s~5min (such as transformer temperature rise trend analysis); If the task time limit is exceeded, it may cause the protection action to be delayed, and then cause the fault to expand.
[0032] Reliability is defined as the probability of successful task execution. Typical requirements for power systems include: protection and control: 99.99% (annual failure time ≤ 52 minutes); fault diagnosis: 99.9%; and condition monitoring: 99%. Reliability requirements can be achieved through hardware redundancy, task migration, and retry mechanisms.
[0033] Data value assurance is defined as: Data freshness = processing completion time - data generation time. Typical requirements for power systems include: protection and control: ≤10ms (e.g., current sudden change analysis); fault recording: ≤100ms; and load forecasting: ≤5min.
[0034] 2. Based on the task category and / or quality attribute information of the current task, a mapping relationship is established between the current task and the corresponding computing resource units of at least one of the first computing resource pool, the second computing resource pool, and the third computing resource pool, and the mapping relationship is determined to be the computing resource requirement information of the current task category. Hardware resources can be expressed as Hardware = {CPU core count, GPU memory, FPGA logic unit}. Hardware resources reflect the computing resources required by different types of tasks under different service quality requirements. It is understandable that each task can simultaneously occupy multiple different types of computing resources, for example, simultaneously occupying the CPU and GPU.
[0035] In this application, the computing resource pool can be divided into a first computing resource pool, a second computing resource pool, and a third computing resource pool according to different categories; computing resource pools of different categories are obtained by pre-pooling multiple computing devices of corresponding categories, including: To pool multiple serial processing devices: Each serial processing device is divided into multiple computing resource units, and a first computing resource pool is constructed using the computing resource units of all serial processing devices, wherein the serial processing device is a CPU, there can be multiple CPUs, and different CPUs can be deployed at different nodes according to the structure of the power system.
[0036] Each CPU can be divided into multiple computing resource units by pooling the CPU. Then, each serial processing device is divided into multiple computing resource units, including: For each serial processing device, at least one computing resource unit is designated as an exclusive computing resource unit, and the remaining computing resource units are designated as shared computing resource units. Exclusive computing resource units are configured to execute tasks belonging to a specified task category, while shared computing resource units are configured to execute tasks belonging to non-specified task categories. For example, the physical cores of a CPU are divided into a real-time zone (exclusive cores) and a flexible zone (shared cores). For an 8-core CPU, Cores 0-1 are dedicated to protection control tasks, while Cores 2-7 are dynamically allocated. It is understood that each physical core of the CPU represents a computing resource unit.
[0037] Pooling operations on multiple parallel processing devices: Each parallel processing device is divided into multiple computing resource units, and the computing resource units of all parallel processing devices are used to form a second computing resource pool. The parallel processing devices can be GPUs, and there can be multiple GPUs deployed at different nodes based on the power system structure. For each GPU device, the GPU's video memory is divided into independent banks (e.g., 8 x 256 MB). Each bank has its own dedicated power supply channel, and critical tasks (such as fault diagnosis) have their own dedicated bank to avoid contention for video memory bandwidth. As you can see, each bank is a computing resource unit.
[0038] Pooling operations on multiple hardware reconfigurable processing devices: Each hardware reconfigurable processing device is divided into multiple computing resource units, and a third computing resource pool is constructed using the computing resource units of all hardware reconfigurable processing devices. The hardware reconfigurable processing device includes multiple logic units, one or more of which can be configured to perform a specified task; dividing each hardware reconfigurable processing device into multiple computing resource units includes: determining at least one preset specified task; for each hardware reconfigurable processing device, determining the number of logic units required for each specified task and the control logic of the current specified task; for each specified task, determining a target logic unit based on the number of logic units required for the current specified task, configuring each target logic unit based on the control logic of the current specified task, and determining each configured target logic unit as the computing resource unit for the current specified task. In this application, the hardware reconfigurable processing device can be an FPGA. Similarly, there can be multiple FPGA devices, deployed at different nodes based on the power system structure. For each FPGA device, the FPGA's programmable logic units are pre-configured into different reconfigurable pipelines (Pipes). Each Pipe is a fixed number of logic units (LEs). For example: Pipe1 = 80kLEs, dedicated to the differential protection algorithm; Pipe2 = 60kLEs, dedicated to the partial discharge detection algorithm; Pipe3 = 50kLEs, dedicated to harmonic analysis. It can be understood that each pipeline is a computing resource unit of the FPGA device.
[0039] In the present application, a mapping relationship between the current task and the corresponding computing resource units of at least one of the first computing resource pool, the second computing resource pool and the third computing resource pool is constructed based on the task category of the current task and / or the quality attribute information of the current task, and the mapping relationship is determined to be the computing resource demand information of the current task category, including: when the task category of the current task is protection control, if the maximum delay of the current task is not greater than the maximum delay threshold, a mapping relationship between the current task and the specified exclusive computing resource unit in the first computing resource pool and the specified computing resource unit in the third computing resource pool is established. For example, if the current task is a differential protection task, if the delay of the differential protection current calculation is ≤50ms, then the computing resources of the current task need to be mapped to FPGA pipeline + CPU real-time core; when the task category of the current task is fault diagnosis, if the current The reliability level of the task is not less than the reliability level threshold, and a mapping relationship is established between the current task and the specified shared computing resource unit in the first computing resource pool and / or the specified computing resource unit in the second computing resource pool. For example, if the current task is an insulator rupture identification task, if the reliability of insulator rupture image recognition is ≥99.9%, it is necessary to map the GPU memory Bank exclusively; when the task category of the current task is condition monitoring, a mapping relationship is established between the current task and the specified shared computing resource unit in the first computing resource pool based on the data freshness of the current task. For example, if the current task is a transformer vibration monitoring task, if the transformer vibration monitoring freshness is ≤100ms, then in order to avoid cross-node transmission, the current task mapping needs to be allocated nearby, for example, the shared core of the CPU closest to the monitoring device such as the vibration sensor is allocated to the current task.
[0040] The present application performs dynamic feedback adjustment on the computing resources of each task by monitoring the real-time execution status of each currently executing task in real time. In the case that the real-time execution status of the current task is abnormal, a switching operation is performed on the computing resource unit of the current task, including: when the task category of the current task is protection control or status monitoring, if the real-time delay of the current task is greater than the maximum delay of the current task, the computing resource unit executing the current task is switched to the corresponding computing resource unit in the third computing resource pool. For example, the task delay deviation of each task can be collected in real time through the monitoring agent, wherein the task delay deviation can be expressed as ΔT=T_actual-T_QoS. Among them, T_QoS represents the preset maximum delay of the task (such as protection task = 50ms), and T_actual represents the actual completion delay of the task. For task delay deviation, that is, the difference between the real-time delay of the current task and the maximum delay of the current task is greater than the preset delay deviation threshold, the current task is upgraded to hardware acceleration by migrating the current task from the CPU to the FPGA pipeline. For example, in the lightning arrester leakage analysis task, if the task delay exceeds the standard, such as ΔT>20ms, the computing resources of the current task are scheduled and the current task is mapped to the FPGA pipeline with faster processing speed to reduce the task delay.
[0041] In this application, when the real-time operating status of each computing resource pool is abnormal, a switching operation is performed on the computing resource units occupied by each task based on the current occupation of the computing resource units by all tasks. This includes: if the occupancy rate of the second computing resource pool is greater than the occupancy rate threshold, if it is determined that any computing resource unit in the second computing resource pool is occupied by multiple tasks, and the multiple tasks occupying the computing resource unit include a designated task, the non-designated tasks in the computing resource unit are migrated to other computing resource units in the second computing resource pool. In this application, the overall hardware load rate (U) of the system can be expressed as: U = 0.4U_CPU + 0.3U_GPU + 0.3U_FPGA, where U is the combined load rate, U_CPU is the CPU load rate, U_GPU is the GPU load rate, and U_FPGA is the FPGA load rate. Various warning intervals for the computing resource hardware load rate can be pre-set. For example, the safe zone can be set to U < 70%; the warning zone can be set to 70% ≤ U ≤ 90%; and the danger zone can be set to U > 90%. In a specific example, for example, in an application scenario where multiple video diagnostic tasks are being performed, resulting in various tasks competing for video memory, if U_GPU>90%, then each task running on the GPU device is migrated. For example, if the current computing resource unit Bank0 is running multiple tasks simultaneously, then the non-critical tasks in Bank0, such as the tasks with the lowest task level, are moved to Bank1. It is understandable that if the current computing resource unit is running multiple critical tasks simultaneously, for example, the task level is greater than the set level, such as tasks greater than level 2 can be considered critical tasks, then by detecting whether the computing resource units of other GPU devices are running critical tasks, some of the critical tasks running on the current computing resource unit, such as half of the critical tasks, can be migrated to other computing resource units that are not running critical tasks, and the non-critical tasks in the computing resource unit can be migrated to other computing resource units, so that each computing resource unit is only used to run a lower number of critical tasks to ensure the processing efficiency of critical tasks.
[0042] In the present application, when the real-time operating status of each computing resource pool is abnormal, a switching operation is performed on the computing resource units occupied by each task based on the occupation of the computing resource units by all current tasks, including: when the operating temperature of the third computing resource pool is higher than the temperature threshold, if it is determined that any computing resource unit in the third computing resource pool is occupied by a non-designated task, a specified proportion of non-designated tasks are migrated to the corresponding computing resource units of the second computing resource pool. For example, for FPGA devices, a temperature warning threshold can be pre-set, such as FPGA junction temperature > 85°. Taking the power prediction task scenario during the high temperature period in summer as an example, if the FPGA junction temperature of the FPGA device is detected to be > 85°, a load balancing operation is performed to migrate 50% of the logical calculations in the currently running tasks of the FPGA device to the GPU device.
[0043] In this application, when each computing device is battery-powered, the energy efficiency status of each computing resource device is also monitored. For example, the battery level and peak power consumption of the computing device are monitored. The battery level is the remaining power of the edge node (%), and the peak power consumption is the instantaneous power consumption of the hardware accelerator card (W). Taking the inspection task application scenario in emergency power mode as an example, if the battery level of the computing resource device is monitored to be lower than the preset power threshold, such as the battery level of the CPU or GPU device is monitored to be less than 30%, GPU acceleration is disabled, or the CPU frequency is reduced by 30%.
[0044] In the present application, when the task category of the current task is protection control, at least one target computing resource unit of the current task is determined from the computing resource pool of the corresponding category, so as to execute the current task through the at least one target computing resource unit, including: if the at least one target computing resource unit is occupied by a task with the task category of fault diagnosis or status monitoring, the occupation of the at least one target computing resource unit by the corresponding task is interrupted, so as to execute the current task through the at least one target computing resource unit. For example, in a sudden short circuit fault processing scenario, when a protection task arrives, if the target computing resource unit, such as the target FPGA pipeline of the current protection task, is already occupied by other tasks, then a forced preemption mechanism is initiated to interrupt low-priority tasks in the corresponding FPGA pipeline, such as fault diagnosis or status monitoring tasks.
[0045] The method of this application is described below with a specific example: Taking this application as an example, when it is applied to a 220kV smart substation, the following three tasks need to be processed simultaneously: (1) Periodic infrared temperature measurement: Scan the main transformer bushing temperature every 30 seconds (condition monitoring type); (2) Insulator rupture identification: UAVs transmit insulator images in real time (fault diagnosis); (3) Sudden protection command: Line short circuit triggers GOOSE tripping command (protection control type).
[0046] Step 1: The feature modeling process is as follows: (1) Infrared temperature measurement task modeling Business type: Parsing task configuration cycle parameters (30 seconds), classified as status monitoring (Type=2); QoS quantification: Maximum delay = 30000 milliseconds (synchronized with the cycle); Reliability = 99% (allowing 1% failure); Data freshness = 5000 milliseconds (temperature data is valid within 5 seconds); Hardware requirements: Only one CPU shared core is required (no GPU or FPGA required).
[0047] (2) Insulator rupture identification modeling Service type: Detect the insulator_crack tag in the image metadata and classify it as fault diagnosis (Type=1); QoS quantification: Maximum delay = 1000 milliseconds (response required within 1 second); Reliability = 99.9% (failure rate of one in a thousand); Data freshness = 200 milliseconds (images need to be processed within 200 milliseconds); Hardware requirements: 2 CPU cores + 512MB GPU memory (e.g., running the AI model YOLOv5).
[0048] (3) Protection instruction modeling Service type: parse the GOOSE message appID=0x0001 field and classify it as protection control (Type=0); QoS quantification: Maximum delay = 50 milliseconds (mandatory requirement of national standards); Reliability = 99.99% (failure rate of one in ten thousand); Data freshness = 10 milliseconds (current data is valid within 10 milliseconds); Hardware requirements: 2 CPU real-time cores + 80K FPGA logic units (to execute the differential algorithm).
[0049] Step 2: The scheduling decision execution process is as follows: (1) Initial allocation: The infrared temperature measurement task is assigned to the shared core in the CPU elastic zone; The insulator identification task is bound to GPU memory Bank 1 (exclusive 512 MB).
[0050] (2) Burst protection command response: The scheduler detects a Type=0 task and immediately triggers the preemption mechanism: Interrupt the infrared temperature measurement task (because Type=2); Preempt FPGA pipeline Pipe1 (preload differential protection algorithm); Bind to CPU real-time core Core0-1; Resource reorganization takes 4.3 milliseconds, and the total response time for protection instructions is 38 milliseconds.
[0051] (3) Dynamic feedback regulation: The actual delay of the insulator identification task reached 1200 milliseconds (exceeding the 1000 millisecond threshold); The monitoring agent detects a delay deviation of ΔT = 200 milliseconds and triggers a migration action: Migrate tasks from GPU to FPGA for acceleration; After the migration, the latency dropped to 210 milliseconds, meeting the QoS requirements.
[0052] In summary, this application constructs a task triplet model based on the characteristics of power services and builds a hybrid computing resource pool architecture of "CPU time-sharing isolation + GPU memory banking + FPGA pipeline reorganization" to break through the bottleneck of heterogeneous hardware scheduling. At the same time, a two-level scheduling mechanism based on QoS awareness is used to decouple service classification from hardware acceleration. A multi-dimensional dynamic feedback adjustment policy library is established to support a self-healing resource allocation method with ΔT / U / E linkage. Through the above methods, this application effectively solves the problems of insufficient real-time performance and reduced reliability caused by resource competition for various AI tasks (protection control, fault diagnosis, and status monitoring) in power edge scenarios, as well as the low utilization of heterogeneous computing resources in power systems, poor system fault tolerance, and insufficient energy efficiency. This not only meets the stringent requirements of strong real-time performance and high reliability of power systems, but also resolves the contradiction between resource constraints and AI computing power requirements in edge scenarios. It is applicable to the optimized allocation of real-time heterogeneous computing resources in scenarios such as power dispatching and control, power grid equipment status monitoring, and grid connection of new energy stations.
[0053] like Figure 3 As shown, in a second aspect of the present application, a power system resource scheduling device is provided, comprising: a data acquisition module configured to determine a task category of a current task and obtain computing resource requirement information of the current task through a pre-built task model, wherein the task model includes computing resource requirement information corresponding to the task category; a computing resource configuration module configured to determine, based on computing resource requirement information of a current task, at least one target computing resource unit for the current task from a computing resource pool of a corresponding category, so as to execute the current task using the at least one target computing resource unit, wherein computing resource pools of different categories are obtained by pre-pooling a plurality of computing devices of corresponding categories, each computing resource pool including a plurality of computing resource units, wherein computing devices of different categories have different data processing logics; The feedback adjustment module is configured to perform a switching operation on the computing resource unit of the current task when the real-time execution status of the current task is abnormal, or to perform a switching operation on the computing resource unit occupied by each task based on the occupation of the computing resource unit by all current tasks when the real-time operation status of each computing resource pool is abnormal.
[0054] In a third aspect of the present application, a machine-readable storage medium is provided, on which instructions are stored. When the instructions are executed by a processor, the processor is configured to execute the power system resource scheduling method as described above.
[0055] In a fourth aspect of the present application, a terminal device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the above-mentioned power system resource scheduling method when executing the computer program.
[0056] It is understandable that those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.
[0057] like Figure 4 FIG is a schematic diagram of a terminal device provided in an embodiment of the present application. Figure 4 As shown, the terminal device 10 of this embodiment includes: a processor 100, a memory 101, and a computer program 102 stored in the memory 101 and executable on the processor 100. When the processor 100 executes the computer program 102, the steps of the above-described method embodiment are implemented. Alternatively, when the processor 100 executes the computer program 102, the functions of the modules / units in the above-described apparatus embodiments are implemented.
[0058] Exemplarily, the computer program 102 may be divided into one or more modules / units, one or more of which are stored in the memory 101 and executed by the processor 100 to complete the present application. The one or more modules / units may be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program 102 in the terminal device 10.
[0059] The terminal device 10 may be a computing device such as a desktop computer, a notebook, a PDA, or a cloud server. The terminal device 10 may include, but is not limited to, a processor 100 and a memory 101. Those skilled in the art will understand that Figure 4It is only an example of the terminal device 10 and does not constitute a limitation of the terminal device 10. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the terminal device may also include input and output devices, network access devices, buses, etc.
[0060] The processor 100 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc.
[0061] The memory 101 can be an internal storage unit of the terminal device 10, such as the terminal device 10's hard drive or memory. Alternatively, the memory 101 can be an external storage device of the terminal device 10, such as a plug-in hard drive, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. Furthermore, the memory 101 can include both the terminal device 10's internal storage unit and an external storage device. The memory 101 is used to store computer programs and other programs and data required by the terminal device 10. The memory 101 can also be used to temporarily store data that has been output or is about to be output.
[0062] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0063] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.
[0064] The above are merely embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should all be included within the scope of the claims of the present application.
Claims
1. A method for dispatching power system resources, characterized in that: include: Determine the task category of the current task, and obtain computing resource requirement information of the current task through a pre-built task model, wherein the task model includes computing resource requirement information corresponding to the task category; Determining, based on computing resource requirement information of a current task, at least one target computing resource unit for the current task from a computing resource pool of a corresponding category, so as to execute the current task using the at least one target computing resource unit, wherein computing resource pools of different categories are obtained by pre-pooling a plurality of computing devices of corresponding categories, and each computing resource pool includes a plurality of computing resource units, wherein computing devices of different categories have different data processing logics; When the real-time execution status of the current task is abnormal, a switching operation is performed on the computing resource unit of the current task, or when the real-time operation status of each computing resource pool is abnormal, a switching operation is performed on the computing resource units occupied by each task based on the occupation of the computing resource units by all current tasks.
2. The power system resource scheduling method according to claim 1, characterized in that: The different types of computing resource pools include a first computing resource pool, a second computing resource pool, and a third computing resource pool. The different types of computing resource pools are obtained by pre-pooling a plurality of computing devices of corresponding types, including: Performing a pooling operation on multiple serial processing devices, dividing each serial processing device into multiple computing resource units, and constructing the first computing resource pool with the computing resource units of all serial processing devices; Performing a pooling operation on the plurality of parallel processing devices, dividing each parallel processing device into a plurality of computing resource units, and constructing the second computing resource pool with the computing resource units of all the parallel processing devices; A pooling operation is performed on multiple hardware reconfigurable processing devices, each hardware reconfigurable processing device is divided into multiple computing resource units, and the computing resource units of all hardware reconfigurable processing devices are used to construct the third computing resource pool.
3. The power system resource scheduling method according to claim 2, characterized in that: Each serial processing device is divided into multiple computing resource units, including: For each serial processing device, determining at least one computing resource unit as an exclusive computing resource unit and determining the remaining computing resource units as shared computing resource units; The exclusive computing resource unit is configured to execute tasks of a specified task category, and the shared computing resource unit is configured to execute tasks not of the specified task category.
4. The power system resource scheduling method according to claim 2, characterized in that: The hardware reconfigurable processing device includes a plurality of logic units, one or more of which can be configured to perform a specified task; Each hardware reconfigurable processing device is divided into multiple computing resource units, including: Determining at least one preset designated task; For each hardware reconfigurable processing device, determine the number of logic units required for each specified task and the control logic of the current specified task; For each specified task, the target logic unit is determined according to the number of logic units required for the current specified task, each target logic unit is configured based on the control logic of the current specified task, and each configured target logic unit is determined to be the computing resource unit of the current specified task.
5. The power system resource scheduling method according to claim 3, characterized in that: The task categories include protection control, fault diagnosis or condition monitoring, and the task model further includes: Quality attribute information of the current task, including the maximum delay, reliability level, and data freshness of the current task, where the data freshness is the target data processing time of the current task; The steps of constructing the task model include: Determine the task category and quality attribute information of the current task; Based on the task category of the current task and / or the quality attribute information of the current task, a mapping relationship between the current task and the corresponding computing resource units of at least one of the first computing resource pool, the second computing resource pool and the third computing resource pool is constructed, and the mapping relationship is determined to be the computing resource requirement information of the current task category.
6. The power system resource scheduling method according to claim 5, characterized in that: Establishing a mapping relationship between the current task and corresponding computing resource units of at least one of the first computing resource pool, the second computing resource pool, and the third computing resource pool based on the task category of the current task and / or the quality attribute information of the current task, and determining that the mapping relationship is computing resource requirement information of the current task category includes: In the case where the task category of the current task is protection control, if the maximum delay of the current task is not greater than the maximum delay threshold, establishing a mapping relationship between the current task and the specified exclusive computing resource unit in the first computing resource pool and the specified computing resource unit in the third computing resource pool; In the case where the task category of the current task is fault diagnosis, if the reliability level of the current task is not less than the reliability level threshold, establishing a mapping relationship between the current task and the specified shared computing resource unit in the first computing resource pool and / or the specified computing resource unit in the second computing resource pool; When the task category of the current task is status monitoring, a mapping relationship between the current task and a specified shared computing resource unit in the first computing resource pool is established according to the data freshness of the current task.
7. The power system resource scheduling method according to claim 6, characterized in that: When the real-time execution state of the current task is abnormal, a switching operation is performed on the computing resource unit of the current task, including: When the task category of the current task is protection control or status monitoring, if the real-time delay of the current task is greater than the maximum delay of the current task, the computing resource unit executing the current task will be switched to the corresponding computing resource unit in the third computing resource pool.
8. The power system resource scheduling method according to claim 2, characterized in that: When the real-time running status of each computing resource pool is abnormal, the computing resource units occupied by each task are switched based on the current occupation of computing resource units by all tasks, including: When the occupancy rate of the second computing resource pool is greater than the occupancy rate threshold, if it is determined that any computing resource unit in the second computing resource pool is occupied by multiple tasks, and the multiple tasks occupying the computing resource unit include designated tasks, the non-designated tasks in the computing resource unit are migrated to other computing resource units in the second computing resource pool.
9. The power system resource scheduling method according to claim 2, characterized in that: When the real-time running status of each computing resource pool is abnormal, the computing resource units occupied by each task are switched based on the current occupation of computing resource units by all tasks, including: When the operating temperature of the third computing resource pool is higher than the temperature threshold, if it is determined that any computing resource unit in the third computing resource pool is occupied by non-designated tasks, a specified proportion of non-designated tasks will be migrated to the corresponding computing resource units in the second computing resource pool.
10. The power system resource scheduling method according to claim 5, characterized in that: When the task category of the current task is protection control, determining at least one target computing resource unit of the current task from a computing resource pool of a corresponding category, so as to execute the current task through the at least one target computing resource unit, includes: If the at least one target computing resource unit is occupied by a task of fault diagnosis or status monitoring, the occupation of the at least one target computing resource unit by the corresponding task is interrupted to execute the current task through the at least one target computing resource unit.
11. A power system resource scheduling device, characterized in that: include: a data acquisition module configured to determine a task category of a current task and obtain computing resource requirement information of the current task through a pre-built task model, wherein the task model includes computing resource requirement information corresponding to the task category; a computing resource configuration module configured to determine, based on computing resource requirement information of a current task, at least one target computing resource unit for the current task from a computing resource pool of a corresponding category, so as to execute the current task using the at least one target computing resource unit, wherein computing resource pools of different categories are obtained by pre-pooling a plurality of computing devices of corresponding categories, each computing resource pool including a plurality of computing resource units, wherein computing devices of different categories have different data processing logics; The feedback adjustment module is configured to perform a switching operation on the computing resource unit of the current task when the real-time execution status of the current task is abnormal, or to perform a switching operation on the computing resource unit occupied by each task based on the occupation of the computing resource unit by all current tasks when the real-time operation status of each computing resource pool is abnormal.
12. A machine-readable storage medium having instructions stored thereon, characterized in that: When the instruction is executed by a processor, the processor is configured to execute the power system resource scheduling method according to any one of claims 1 to 10.
13. A terminal device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the power system resource scheduling method according to any one of claims 1 to 10 are implemented.
Citation Information
Patent Citations
Real-time flexible scheduling method for big data tasks under heterogeneous cluster
CN115495202A
Calculation task scheduling method and device in multivariate heterogeneous environment and medium
CN119415240A
Method and system for releasing acceleration capability of physical GPU (Graphic Processing Unit) of cloud server
CN120448133A
Methods and apparatus for low latency operation in user space networking
US20210099391A1
UE operation method related to sidelink PDB in wireless communication system
US20240155460A1