CN110196773B - Multi-time-scale security check system and method for unified scheduling computing resources - Google Patents

Multi-time-scale security check system and method for unified scheduling computing resources Download PDF

Info

Publication number
CN110196773B
CN110196773B CN201910334830.0A CN201910334830A CN110196773B CN 110196773 B CN110196773 B CN 110196773B CN 201910334830 A CN201910334830 A CN 201910334830A CN 110196773 B CN110196773 B CN 110196773B
Authority
CN
China
Prior art keywords
computing
security check
calculation
application
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910334830.0A
Other languages
Chinese (zh)
Other versions
CN110196773A (en
Inventor
吕颖
贾育培
罗治强
王岗
嵇士杰
何春江
常乃超
于之虹
谢昶
史东宇
鲁广明
戴红阳
康建东
解梅
高波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
China Electric Power Research Institute Co Ltd CEPRI
State Grid Jiangsu Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
China Electric Power Research Institute Co Ltd CEPRI
State Grid Jiangsu Electric Power Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, China Electric Power Research Institute Co Ltd CEPRI, State Grid Jiangsu Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201910334830.0A priority Critical patent/CN110196773B/en
Publication of CN110196773A publication Critical patent/CN110196773A/en
Application granted granted Critical
Publication of CN110196773B publication Critical patent/CN110196773B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06312Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/06Electricity, gas or water supply
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention discloses a multi-time scale security check system and a multi-time scale security check method for uniformly scheduling computing resources. The method comprises the following steps: dividing each security check application into a plurality of computing subtasks according to the acquired computing content of at least one security check application; distributing each calculation subtask divided by the at least one security check application to n calculation nodes; according to a preset multi-application scheduling strategy, controlling the n computing nodes to compute the at least one security check application in parallel to obtain computing results corresponding to each computing subtask of the at least one security check application; and combining the calculation results which are completed by the n calculation nodes in parallel aiming at each safety check application to obtain the safety check result of at least one safety check application. The method not only improves the utilization efficiency of computing resources, but also shortens the computation time consumption of various security check applications, and further improves the satisfaction degree of parallel computation response time.

Description

Multi-time-scale security check system and method for unified scheduling computing resources
Technical Field
The invention belongs to the field of safety and stability analysis of power systems, and particularly relates to a multi-time-scale safety check system and method for uniformly scheduling computing resources.
Background
With the development of the electric power market reform and the development of a cross-region extra-high voltage alternating current-direct current interconnected power grid, the uncertainty of electric power transaction, new energy power generation prediction and load prediction brings great challenges to the safe and stable operation of the power grid while the integrated characteristic of the power grid is increasingly prominent. The risk prevention and control of the power system are expanded to a plurality of time scales such as month, day ahead, day in, real time and the like while the conventional online safety and stability check and auxiliary decision making are deepened and perfected, the advanced recognition and prevention and control capability for advancing the scheduling plan to the lean and intelligent development and improving the safety and stability risk of the cross-region power grid becomes an urgent requirement for the power grid operation.
Most of the power grids above the provincial level in China currently realize the safety and stability checking functions of day-ahead, day-in and real-time scheduling plans, but the calculation time consumption is long, and the requirements of the current power grid scheduling operation business cannot be met.
Disclosure of Invention
The invention provides a multi-time scale safety check system and a multi-time scale safety check method for uniformly scheduling computing resources, which are used for solving the problem that the computing time consumption is long in the existing power grid scheduling plan safety check application.
In a first aspect, the present invention provides a multi-time scale security check method for uniformly scheduling computing resources, including the following steps:
dividing each security check application into a plurality of calculation subtasks according to the obtained calculation content of at least one security check application, wherein each security check application has a corresponding time scale;
distributing each calculation subtask divided by the at least one security check application to n calculation nodes, wherein the n calculation nodes are uniform calculation resources for multi-time-scale security check;
according to a preset multi-application scheduling strategy, controlling the n computing nodes to compute the at least one security check application in parallel to obtain computing results corresponding to each computing subtask of the at least one security check application;
and combining the calculation results which are completed by the n calculation nodes in parallel aiming at each safety check application to obtain the safety check result of at least one safety check application.
In a second aspect, the present invention provides a multi-time scale security check system for uniformly scheduling computing resources, including:
a parallel computing scheduling server;
a plurality of parallel computing nodes communicatively coupled to the parallel computing scheduling server;
the parallel computing scheduling server is configured to perform the multi-time scale security check method of any one of claims 1 to 8;
each of the parallel computing nodes is configured to perform the multi-time scale security check method of any one of claims 1 to 8.
The system and the method for uniformly scheduling the multi-time-scale security check of the computing resources uniformly schedule the computing resources for the multi-time-scale security check; according to the computing period, computing content and parallel computing resource requirements of the security check application with different time scales, a parallel computing framework during unified management of computing resources is provided, and a parallel computing task decomposition method of various security check applications is generated, so that the utilization efficiency of the computing resources is improved, the computing time consumption of various security check applications is shortened, and the parallel computing response time satisfaction is further improved.
Drawings
Exemplary embodiments of the present invention may be more completely understood in consideration of the following drawings:
FIG. 1 is a flow chart of a multi-time scale security check method for uniformly scheduling computing resources according to an embodiment of the present invention;
FIG. 2 is a schematic diagram illustrating the components of a multi-time scale security check system for uniformly scheduling computing resources according to one embodiment of the present invention;
FIG. 3 is a subtask decomposition diagram of a security check calculation in one embodiment of the invention;
fig. 4 is a comparison chart of calculation time consumption of a security check of a plurality of time scale plans when the method for uniformly scheduling the calculation resources and the method for independently scheduling the calculation resources of each time scale are applied in the embodiment of the invention.
Detailed Description
The exemplary embodiments of the present invention will now be described with reference to the accompanying drawings, however, the present invention may be embodied in many different forms and is not limited to the examples described herein, which are provided to fully and completely disclose the present invention and fully convey the scope of the invention to those skilled in the art. The terminology used in the exemplary embodiments illustrated in the accompanying drawings is not intended to be limiting of the invention. In the drawings, like elements/components are referred to by like reference numerals.
Unless otherwise indicated, terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. In addition, it will be understood that terms defined in commonly used dictionaries should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense.
At present, the power grid above the provincial level in China has mostly realized the safety and stability checking functions of day-ahead, day-in and real-time scheduling plans at present. However, since the calculation amount of safety and stability evaluation and decision assistance is extremely large for a plurality of planning modes of the dispatch plan and a large-scale expected failure set, the calculation time is long.
In recent years, parallel computer group management technology has been developed dramatically, so that the number of CPU cores capable of utilizing computing resources is developed from single four cores to single twenty four cores in the early years, and the computing power is remarkably enhanced. With the construction of a smart grid dispatching control support system, the distributed parallel computing platform is used as a basic functional component, and plays a key and basic platform support role in the field of power system analysis.
The invention provides a multi-time-scale security check method for uniformly scheduling computing resources, which is used for centralizing computing resources for security check of each time scale and uniformly scheduling security check applications of a plurality of time scales in parallel. The parallel scheduling method of single safety check application is solved; aiming at parallel computing tasks of a plurality of time scale safety check applications, 5 parallel computing scheduling strategies are provided. According to the method, targeted algorithms are adopted for response time requirements of security check applications of different time scales, and the response time satisfaction degree of parallel computing is further improved.
Specifically, the method provided by the invention firstly provides a parallel computing task division scheme of the multi-time scale safety check application according to the computing period, the computing content and the parallel computing resource requirements of the safety check application of different time scales; and then, comprehensively considering the calculation priority and response time requirements of different safety check applications, and generating a multi-time scale plan safety check parallel calculation scheduling method based on unified management of calculation resources.
As shown in fig. 1, the multi-plan security check parallel scheduling method based on unified computing resources according to one embodiment of the present invention includes:
dividing each security check application into a plurality of calculation subtasks according to the obtained calculation content of at least one security check application, wherein each security check application has a corresponding time scale;
distributing each calculation subtask divided by the at least one security check application to n calculation nodes, wherein the n calculation nodes are uniform calculation resources for multi-time-scale security check;
according to a preset multi-application scheduling strategy, controlling the n computing nodes to compute the at least one security check application in parallel to obtain computing results corresponding to each computing subtask of the at least one security check application;
and combining the calculation results which are completed by the n calculation nodes in parallel aiming at each safety check application to obtain the safety check result of at least one safety check application.
Further, in the method,
security check applications of different time scales have corresponding response time requirements;
correspondingly, the controlling the n computing nodes to compute the at least one security check application in parallel according to a preset multi-application scheduling policy includes:
determining response time requirements corresponding to each security check application according to time scales corresponding to each security check application;
and controlling the n computing nodes to sequentially and parallelly compute each safety check application according to the response time requirements corresponding to each safety check application.
It should be understood that, in the specific implementation, the priority parameter may be temporarily set manually according to the current checking requirement when generating the checking task; and controlling the n computing nodes to sequentially and parallelly compute the security check applications according to the priorities corresponding to the security check applications.
Further, in the method,
security check applications of different time scales have corresponding response time requirements;
correspondingly, the controlling the n computing nodes to compute the at least one security check application in parallel according to a preset multi-application scheduling policy includes:
determining response time requirements and drawing identifiers corresponding to at least one security check application according to time scales corresponding to the security check applications, respectively, wherein the security check application with high response time requirements has a large weight of the drawing identifier corresponding to the security check application;
setting drawing identifiers corresponding to the at least one security check application for each calculation subtask divided by the at least one security check application respectively;
forming a shared computing task queue by the computing subtasks divided by the at least one security check application;
and controlling the n computing nodes to select computing tasks from the shared computing task queue in a rotating way by taking the weight of the drawing mark as probability so as to compute the at least one security check application in parallel.
Further, in the method,
the distributing each computing subtask divided by the at least one security check application to n computing nodes includes:
determining task types corresponding to the calculation subtasks according to the calculation resource requirements corresponding to the divided calculation subtasks, wherein each task type has corresponding weight;
obtaining the load equivalent of each computing node:
load equivalent lw i The number of various tasks and the weight beta of the task types allocated to each computing node j Is a weighted sum of:
wherein j is more than or equal to 1 and less than or equal to m, Y ji The number of j-th computing tasks distributed on the i-th computing node is more than or equal to 1 and less than or equal to n;
β j the weight of the j-th class task;
the vector LW formed by the load equivalents of all the compute nodes is noted as:
LW={lw 1 ,lw 2 ,lw 3 ,...,lw i ...,lw n }
the load equivalent of the most loaded computing node is recorded as lw max =max{LW};
The load equivalent of the computing node with the lightest load is recorded as lw min =max{LW};
Defining the load equivalent difference as lw diff =lw max -lw min
Define average load as
Defining a load equivalent difference threshold lw thresh =α*lw average Alpha is a threshold coefficient, and alpha is more than 0 and less than or equal to 1;
when the load equivalent difference lw diff Not less than the threshold lw thresh And sequentially distributing the calculation subtasks divided by the at least one security check application to n calculation nodes according to the sequence from the lightest load to the lightest load.
Further, in the method,
according to the obtained calculation content of at least one security check application, dividing each security check application into a plurality of calculation subtasks respectively, including:
dividing the security check application into a plurality of sequentially executed step-type computing sub-tasks according to the computing content of each security check application, and
dividing the step type subtasks into a plurality of tasking computing subtasks;
step identifiers corresponding to the corresponding step-type subtasks are set for the calculation subtasks of each task, wherein the step identifiers of the step-type subtasks needing to be executed first have large values.
Further, in the method,
each security check application is any one of the following:
moon safety check, day-ahead safety check, day-in safety check and real-time safety check;
the calculation frequency of the monthly security check is once per natural month;
the calculation frequency of the daily safety check is at least twice daily;
the calculation frequency of the daily safety check is at least twice daily;
the calculation frequency of the real-time safety check is not less than 4 times per hour.
And the response time requirements of the monthly safety check, the daily safety check and the real-time safety check are sequentially increased.
Further, in the method,
the multi-application scheduling policy is any one of the following:
sequential scheduling policies, shared sequential policies, global priority scheduling policies, round-robin scheduling policies, prioritized round-robin scheduling policies.
Further, in the method,
in any safety check application, the control check section power flow calculation, the safety stability check, the auxiliary decision or the stability margin evaluation are sequentially executed;
the checking section tide calculation, the safety and stability check and the auxiliary decision or the stability margin evaluation are sequentially executed step-type subtasks;
the auxiliary decision and the stability margin are evaluated as two functional subtasks under the same step subtask.
As shown in fig. 2, a multi-plan security check parallel scheduling system based on unified computing resources according to an embodiment of the present invention includes:
a parallel computing scheduling server 10;
a plurality of parallel computing nodes 20 communicatively coupled to the parallel computing scheduling server;
the parallel computing scheduling server 10 is configured to execute the aforementioned multi-time-scale security check method;
each of the parallel computing nodes 20 is configured to perform the multi-time scale security check method described above.
Further, the checking system is used for checking the position of the object,
the parallel computing scheduling server has at least one CPU core;
each of the parallel computing nodes has a plurality of CPU cores.
In summary, the multi-time-scale plan safety check parallel scheduling method and system based on the unified computing resource in the embodiment of the invention manage the computing resources for plan safety check of different time scales in a unified way; on the premise of considering the response time requirements of different safety check applications, parallel computing tasks are configured according to the difference of computing capacities among different computing nodes, the parallel computing capacity of computing resources is utilized to the maximum extent, the computing time consumption of the power grid scheduling plan safety check application is shortened, and the response time satisfaction of the power grid scheduling plan safety check application is improved.
The multi-time scale plan safety check parallel computing scheduling method of another embodiment of the invention comprises the following steps:
1) Dividing parallel computing tasks of a plurality of time scale safety check applications, and determining a task granularity dividing scheme;
2) Parallel computing scheduling of single time scale safety check application is realized;
3) And parallel computing scheduling of the security check application of a plurality of time scales is realized.
In the step 1), the dividing of the parallel computing tasks of the multi-time scale security check application includes:
acquiring a plurality of security check applications arriving according to a time sequence, and determining a plurality of corresponding security check tasks which may have the same or different time scales;
determining at least one scheduling plan included in each safety check task, determining a check section corresponding to each scheduling plan, and a fault mode set corresponding to each check section;
dividing a subtask set of each security check task according to the calculation contents of section power flow check, section fault check, auxiliary decision and stability margin evaluation in sequence, and determining the calculation resource requirement of each subtask.
It should be understood that the security check applications of different time scales arrive at the parallel computing scheduling server sequentially according to the time sequence according to the computing period; one security check application corresponds to one security check task; the subtask set of each security check task constitutes the computational content of the security check application.
It should be understood that each subtask, after being calculated in parallel on a plurality of computing nodes, further includes the step of merging the calculation results from the plurality of computing nodes.
It should be understood that the safety check application forms a flow corresponding to the check section for the dispatch plan such as the maintenance plan, the power generation plan, etc., then performs comprehensive safety and stability check including static safety, transient stability, dynamic stability, voltage stability, etc., and performs auxiliary decision making and stability margin evaluation calculation after the check is completed.
Specifically, for each security check task or application, when task scheduling and dispatch are performed, the method sequentially comprises the following steps:
and (3) decomposing the task. For example, the computing task J with the computing amount S is decomposed into N sub-tasks, wherein the computing amount of each sub-task is S 1 ,…,S N
And (2) performing parallel computation. For example, the P computing nodes are assigned to complete the computation of the N subtasks in parallel, so as to obtain the computation results corresponding to the N subtasks: r is R 1 ,…,R N
And (3) merging results. For example, based on the calculation results corresponding to the N subtasks: r is R 1 ,…,R N And obtaining a final result R of the security check calculation content corresponding to the calculation task J with the calculated quantity S.
In specific implementation, for a security check task, the task decomposition in step (1) can be divided into two cases:
and (1.1) dividing a security check task into a plurality of sub-tasks according to the calculation flow. The subtasks of the step formulas have a dependency relationship, and the calculation order has a definite sequence, so each subtask has a definite execution priority. A security check task shown in fig. 3 may be sequentially divided into three steps according to the execution sequence: step one, checking section power flow calculation, step two, safety and stability fault checking and step three, auxiliary decision making and stability margin assessment. Step two depends on the calculation result of step one; step three depends on the calculation result of step two.
There are both dependencies and data interactions between these sequentially performed steps. Thus, the safety check task shown in fig. 3 may be divided into a check section power flow calculation sub-task, a safety and stability fault check sub-task, an auxiliary decision sub-task, and a stability margin evaluation sub-task, which are sequentially decreased in execution priority.
(1.2) further decomposing the one-step subtask into a plurality of functional subtasks. These functional subtasks have neither dependencies nor data interactions with each other. For example, for a safety check of a certain day-ahead plan, the check section power flow calculation sub-task can be decomposed into 96 time-period check section power flow calculations, and the power flow calculations in the 96 time periods are independent of each other and have no correlation and dependency relationship with each other.
Similarly, the fault mode analysis tasks in the safety and stability fault checking subtasks are mutually independent; the calculations that aid in decision making and stability margin evaluation are also independent of each other.
Wherein, the parallel computing scheduling of the single security check application in the step 2) includes:
and carrying out parallel computing scheduling on each subtask by adopting a task scheduling algorithm related to computing resources. The information related to the computing resources includes reliability of the work machine, hardware resource information of the work machine, and other information useful for parallel computing scheduling.
Specifically, the parallel computing scheduling server uses the information about the computing resources to determine a scheduling method at which parallel computing is performed on each of the work machines.
It should be appreciated that either a work machine or a computing server may act as a computing node. The parallel computing scheduling server is responsible for scheduling all computing nodes or work machines.
Preferably, for a single time scale security check application or task, an average allocation method is adopted to complete parallel computing scheduling. That is, the parallel computing tasks are distributed as evenly as possible to each computing node in consideration of the load equivalent (also called load factor) of each computing node.
Preferably, the number of each type of computing task and the weight beta of the task type allocated by the load equivalent to each computing node are defined j Is a weighted sum of:
wherein j is more than or equal to 1 and less than or equal to m, Y ji The number of j-th tasks allocated on the i-th computing node; beta j The weight of the j-th class task is the value of the j-th class task and depends on the type of the task.
It should be appreciated that the computational time required for different task types is different; the load equivalent of each node is related to the task type and the number of various tasks.
The vector LW formed by the load equivalents of all the compute nodes is noted as:
LW={lw 1 ,lw 2 ,lw 3 ,...,lw i ...,lw n } (1)
recording the load equivalent of the most loaded computing node aslw max =max { LW }, the load equivalent of the lightest loaded compute node is LW min =max { LW }; defining the load equivalent difference as lw diff =lw max -lw min The method comprises the steps of carrying out a first treatment on the surface of the Define average load asSetting a load equivalent difference threshold lw thresh =α*lw average The method comprises the steps of carrying out a first treatment on the surface of the Preferably, α is 20%.
Specifically, during parallel computing scheduling, the load equivalent of each computing node is counted;
when the load equivalent difference lw diff Less than threshold lw thresh When the calculation tasks are distributed according to the node sequence; when the load equivalent difference lw diff Not less than the threshold lw thresh And when the load equivalent is large and small or from small to large, sequencing the computing nodes, sequentially distributing the task types and the task quantity according to the sequence from the lightest load to the heaviest load, and distributing more computing tasks to the computing nodes with the smallest load equivalent.
Specifically, the computing power of each computing node may be the same or different; the node order of the computing nodes is preset, e.g., numbered sequentially based on the spatial location of the seats or the topological relationship in the communication network.
By introducing load equivalent, when each subtask checked by each security application is distributed to a plurality of computing nodes, parallel computing tasks can be configured according to the difference of computing capacities among different computing nodes, and the computing capacity of the unified computing resource parallel computing scheduling system is utilized to the maximum extent.
It should be appreciated that for some security check task or application that has been scheduled, the load equivalents are not dynamically adjusted during execution of the check; load equivalent balancing is applied when there is a newly added security check task. Specifically, when a new check task is distributed, counting the load equivalent formed by the safety check task distributed before each node is executed; and load balancing is employed for new check task assignments.
Wherein, the implementing multi-time scale security check application parallel computing scheduling of the step 3) includes:
improving the single-application parallel computing scheduling algorithm in the step 2), and providing the following parallel computing scheduling method for the multi-time scale safety check application:
(3.1) sequential scheduling, i.e. scheduling is arranged according to the arrival order of computing tasks of different applications. At this time, all computing resources in the parallel computing scheduling system are mutually exclusive distributed to the current application, and when the computing task of the current application is executed, other applications are not executed; and restarting to execute the next arrived computing task until all the subtasks of the current application are computed. The sequential scheduling method is simple to realize, and can be realized by simply improving a single-application parallel scheduling algorithm.
(3.2) shared sequential scheduling. The sequential scheduling method is improved, and when a new application arrives, the new application is not mutually exclusive; once there are free computing resources, other tasks can enter the computation at any time.
As with the sequential scheduling method, the subtasks in the new application are allocated to execute when the CPU of the working machine (i.e. the computing node) is idle according to the arriving sequence of the applications (such as the day-before check application, the day-in check application and the real-time check application).
(3.3) overall priority scheduling. Considering that the waiting time periods of different task types are different, priorities can be set for different applications, and the computing resources are not allocated according to the arrival sequence of the applications, but are allocated according to the priorities of the applications. Preferentially distributing the idle computing resources to the application with high computing priority; after all the subtask calculations of the high priority application are completed, the computing resources are reassigned to the low priority application.
(3.4) round robin scheduling. The overall priority scheduling method and the sequential scheduling method are different in ordering principle, but all the methods are firstly calculated when the ordering is forward, and the calculation can only be started when the ordering is finished after the ordering is backward, or the task allocation is finished and idle calculation resources exist, so that the waiting time of the application after the ordering is excessively long, and the response time requirement cannot be met.
For this purpose, a round-robin scheduling method is proposed, in which all the subtasks of each application are stored in a unified computation queue and then the computation resources are allocated in a fixed round-robin manner, with the computation subtasks of all the applications being selected to allocate the computation resources with the same probability.
(3.5) prioritized round robin scheduling. The round-robin scheduling considers the fairness with which each application occupies computing resources, but cannot consider the priorities of different applications. For this improvement, a round-robin scheduling method with priority is proposed, and when round-robin determination is performed on a computing task queue to determine computing resource allocation, drawing is performed according to the priority, so that the probability of drawing an application with high priority is high (i.e. drawing weight is high). Thus, each application can start calculation in time, and the priority order of different applications can be properly considered.
It should be understood that there is no dependency between security check applications of different time scales; for any security check application, the most sensitive attribute is task response time (i.e., response time requirement).
In general, since the task response time required for real-time planning of safety check applications is the shortest due to the closed-loop operation of control measures such as automatic power generation control (Automatic Generation Control, abbreviated as AGC), it is significant that the task response time must be completed within a specified time. In order to ensure quick response to the real-time plan safety check task, in specific implementation, a higher priority is set for the real-time plan safety check, and a round-robin scheduling method with priority is adopted to schedule computing resources in parallel, so that safety check of submitted scheduling plans with multiple time scales is completed in a shorter time.
The method for uniformly scheduling parallel computing resources according to the embodiment of the present invention is described in detail below.
The computing resources of the security check configuration of the three different time scale scheduling plans in the day before, in the day and in real time of a certain power grid are listed in table 1. The model of the calculation server for real-time plan checking is old, and 20 CPU cores are arranged in each node; the model of the computing server for the daily schedule check and the daily schedule check is newer, and 40 CPU cores are arranged in each node.
Table 1 computing resources for different security check applications
The calculated amount and statistical data of the security check of 3 different time scales in real time before, during and after the day are shown in table 2. Under the respective computing resource configurations, the average time consumption of the day-ahead and day-ahead planned safety check application is 16 minutes, and the average time consumption of the real-time planned safety check application is 10 minutes.
TABLE 2 calculation of different security check applications
And uniformly scheduling the computing resources of the safety check configuration of three different time scale scheduling plans of the power grid, namely, the daily front time, the daily inner time and the real time, and sequentially selecting a shared sequential scheduling method (namely, the (3.2)), a rotary scheduling method (namely, the (3.4)) and a rotary scheduling method with priority (namely, the (3.5)) to analyze the computing time consumption of the application of the 3 different time scale safety checks in the daily front time, the daily inner time and the real time in the formulated investigation period.
Specifically, the calculation starting mode and the calculation time of the 3 different time scales safety check before, during and in the day are listed in table 3. When the method is applied specifically, the real-time planning safety check is started every 15 minutes as a period, and the daily and daily planning safety check randomly determines the calculation time in the set calculation time period.
TABLE 3 calculation cycles for different security check applications
The security check is first performed within 10 consecutive days using the algorithm (3.2) described above. Within the 10 days, the daily planned safety check is calculated 20 times, the daily planned safety check is calculated 30 times, and the real-time planned safety check is calculated 960 times. The average, maximum and minimum time consumption for each security check calculation are listed in table 4.
Table 4 comparison of computational time consuming for different security check applications
The average time consumption for each of the security check applications in tables 2 and 4 was compared and the results are shown in fig. 4. It can be seen that the average time consumption of the security check application calculation of different time scales is greatly shortened by adopting a parallel calculation mode based on unified scheduling calculation resources, for example, the time consumption of the security check calculation of a day-ahead plan is less than 12 minutes; the time for the safety check of the daily plan is less than 7 minutes; real-time planning security check takes less than 5 minutes).
The safety check calculation was performed within 10 consecutive days according to the calculation frequency of table 3 by applying the above (3.4) algorithm and the above (3.5) algorithm, respectively. The average, maximum and minimum time consumption for each security check calculation are listed in table 5. It can be seen that the (3.4) algorithm real-time planning security check takes 532 seconds at maximum, which is less than 600 seconds; the (3.5) algorithm can plan the safety check in real time for 466 seconds and less than 600 seconds. But correspondingly, the maximum time consumption of the daily planned safety check and the daily planned safety check is increased compared with the algorithm (3.2), but still less than the average time consumption of the original independent calculation as listed in the table 2.
Specifically, in the foregoing (3.5) algorithm, a higher drawing weight is set for the real-time plan security check, that is, the probability of being allocated to the idle computing resource is greater, so that the maximum time consumption of the real-time plan check is less than that of both the foregoing (3.2) algorithm and the foregoing (3.4) algorithm.
Table 5 comparison of computational time consuming for different security check applications
In summary, the parallel task scheduling algorithm for uniformly scheduling the computing resources is adopted, by dividing the checking task of each time scale into a plurality of subtasks, and aiming at the difference of computing capacities among different computing nodes when the computing resources are uniformly scheduled, the load balancing principle is adopted to adjust the load rate of each node, so that the computing capacity of a parallel computing system is utilized to the maximum extent, and the computing time consumption of the checking task of each time scale is shortened.
The invention has been described above with reference to a few embodiments. However, as is well known to those skilled in the art, other embodiments than the above disclosed invention are equally possible within the scope of the invention, as defined by the appended patent claims.
Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise therein. All references to "a/an/the [ means, component, etc. ]" are to be interpreted openly as referring to at least one instance of said means, component, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated.

Claims (8)

1. A multi-time scale security check method for uniformly scheduling computing resources is characterized by comprising the following steps:
dividing each security check application into a plurality of calculation subtasks according to the obtained calculation content of at least one security check application, wherein each security check application has a corresponding time scale, and security check applications with different time scales have corresponding response time requirements;
distributing each calculation subtask divided by the at least one security check application to n calculation nodes, wherein the n calculation nodes are uniform calculation resources for multi-time-scale security check; according to a preset multi-application scheduling policy, controlling the n computing nodes to compute the at least one security check application in parallel to obtain computing results respectively corresponding to computing sub-tasks of the at least one security check application, including:
determining response time requirements and drawing identifiers corresponding to at least one security check application according to time scales corresponding to the security check applications, respectively, wherein the security check application with high response time requirements has a large weight of the drawing identifier corresponding to the security check application;
setting drawing identifiers corresponding to the at least one security check application for each calculation subtask divided by the at least one security check application respectively;
forming a shared computing task queue by the computing subtasks divided by the at least one security check application;
controlling the n computing nodes to select computing tasks from the shared computing task queue in a rotating manner by taking the weight of the drawing mark as probability so as to compute the at least one security check application in parallel;
and combining the calculation results which are completed by the n calculation nodes in parallel aiming at each safety check application to obtain the safety check result of at least one safety check application.
2. The method of claim 1, wherein the step of determining the position of the substrate comprises,
the distributing each computing subtask divided by the at least one security check application to n computing nodes includes:
determining task types corresponding to the calculation subtasks according to the calculation resource requirements corresponding to the divided calculation subtasks, wherein each task type has corresponding weight;
obtaining the load equivalent of each computing node:
load equivalent lw i The number of various tasks and the weight beta of the task types allocated to each computing node j Is a weighted sum of:
wherein j is more than or equal to 1 and less than or equal to m, Y ji The number of j-th computing tasks distributed on the i-th computing node is more than or equal to 1 and less than or equal to n;
β j the weight of the j-th class task;
the vector LW formed by the load equivalents of all the compute nodes is noted as:
LW={lw 1 ,lw 2 ,lw 3 ,...,lw i ...,lw n }
the load equivalent of the most loaded computing node is recorded as lw max =max{LW};
The load equivalent of the computing node with the lightest load is recorded as lw min =max{LW};
Defining the load equivalent difference as lw diff =lw max -lw min
Define average load as
Defining a load equivalent difference threshold lw thresh =α*lw average Alpha is a threshold coefficient, and alpha is more than 0 and less than or equal to 1;
when the load equivalent difference lw diff Not less than the threshold lw thresh And sequentially distributing the calculation subtasks divided by the at least one security check application to n calculation nodes according to the sequence from the lightest load to the lightest load.
3. The method of claim 1, wherein the step of determining the position of the substrate comprises,
according to the obtained calculation content of at least one security check application, dividing each security check application into a plurality of calculation subtasks respectively, including:
dividing the security check application into a plurality of sequentially executed step-type computing sub-tasks according to the computing content of each security check application, and
dividing the step type subtasks into a plurality of tasking computing subtasks;
step identifiers corresponding to the corresponding step-type subtasks are set for the calculation subtasks of each task, wherein the step identifiers of the step-type subtasks needing to be executed first have large values.
4. The method of claim 1, wherein the step of determining the position of the substrate comprises,
each security check application is any one of the following:
moon safety check, day-ahead safety check, day-in safety check and real-time safety check;
the calculation frequency of the monthly security check is once per natural month;
the calculation frequency of the daily safety check is at least twice daily;
the calculation frequency of the daily safety check is at least twice daily;
the calculation frequency of the real-time safety check is not less than 4 times per hour;
and the response time requirements of the monthly safety check, the daily safety check and the real-time safety check are sequentially increased.
5. The method of claim 1, wherein the step of determining the position of the substrate comprises,
the multi-application scheduling policy is any one of the following:
sequential scheduling policies, shared sequential policies, global priority scheduling policies, round-robin scheduling policies, prioritized round-robin scheduling policies.
6. The method according to any one of claim 1 to 5, wherein,
in any safety check application, the control check section power flow calculation, the safety stability check, the auxiliary decision or the stability margin evaluation are sequentially executed;
the checking section tide calculation, the safety and stability check and the auxiliary decision or the stability margin evaluation are sequentially executed step-type subtasks;
the auxiliary decision and the stability margin are evaluated as two functional subtasks under the same step subtask.
7. A multi-time scale security check system for uniformly scheduling computing resources, comprising:
a parallel computing scheduling server;
a plurality of parallel computing nodes communicatively coupled to the parallel computing scheduling server;
the parallel computing scheduling server is configured to perform the multi-time scale security check method of any one of claims 1 to 6;
each of the parallel computing nodes is configured to perform the multi-time scale security check method of any one of claims 1 to 6.
8. The checking system according to claim 7, wherein,
the parallel computing scheduling server has at least one CPU core;
each of the parallel computing nodes has a plurality of CPU cores.
CN201910334830.0A 2019-04-24 2019-04-24 Multi-time-scale security check system and method for unified scheduling computing resources Active CN110196773B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910334830.0A CN110196773B (en) 2019-04-24 2019-04-24 Multi-time-scale security check system and method for unified scheduling computing resources

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910334830.0A CN110196773B (en) 2019-04-24 2019-04-24 Multi-time-scale security check system and method for unified scheduling computing resources

Publications (2)

Publication Number Publication Date
CN110196773A CN110196773A (en) 2019-09-03
CN110196773B true CN110196773B (en) 2024-02-27

Family

ID=67752070

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910334830.0A Active CN110196773B (en) 2019-04-24 2019-04-24 Multi-time-scale security check system and method for unified scheduling computing resources

Country Status (1)

Country Link
CN (1) CN110196773B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110874271B (en) * 2019-11-20 2022-03-11 山东省国土测绘院 Method and system for rapidly calculating mass building pattern spot characteristics
CN111429033A (en) * 2020-04-21 2020-07-17 贵州新致普惠信息技术有限公司 Workflow task scheduling system and method and service terminal
CN111711185B (en) * 2020-05-25 2021-11-19 国网青海省电力公司 Day safety checking and blocking management method based on linearized alternating current power flow

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010037297A1 (en) * 2008-09-27 2010-04-08 国家电力调度通信中心 Parallel computing method and computing platform for security and stability analysis of large power grid
CN102254245A (en) * 2011-06-16 2011-11-23 国网电力科学研究院 Method for checking safety and stability of scheduling daily plans of power system in time-interval sharing parallel mode
CN103325012A (en) * 2013-06-18 2013-09-25 国家电网公司 Parallel computing dynamic task distribution method applicable to grid security correction

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010037297A1 (en) * 2008-09-27 2010-04-08 国家电力调度通信中心 Parallel computing method and computing platform for security and stability analysis of large power grid
CN102254245A (en) * 2011-06-16 2011-11-23 国网电力科学研究院 Method for checking safety and stability of scheduling daily plans of power system in time-interval sharing parallel mode
CN103325012A (en) * 2013-06-18 2013-09-25 国家电网公司 Parallel computing dynamic task distribution method applicable to grid security correction

Also Published As

Publication number Publication date
CN110196773A (en) 2019-09-03

Similar Documents

Publication Publication Date Title
Calheiros et al. Cost-effective provisioning and scheduling of deadline-constrained applications in hybrid clouds
US8656404B2 (en) Statistical packing of resource requirements in data centers
CN110825520B (en) Cluster extremely-fast elastic telescoping method for realizing efficient resource utilization
US10474504B2 (en) Distributed node intra-group task scheduling method and system
Zhu et al. Scheduling stochastic multi-stage jobs to elastic hybrid cloud resources
US9218213B2 (en) Dynamic placement of heterogeneous workloads
CN110196773B (en) Multi-time-scale security check system and method for unified scheduling computing resources
CN103761147B (en) The management method and system of calculated examples in a kind of cloud platform
Zhu et al. A cost-effective scheduling algorithm for scientific workflows in clouds
WO1995012847A1 (en) Resource allocation methods
CN109861850B (en) SLA-based stateless cloud workflow load balancing scheduling method
CN104102544A (en) Multi QoS (quality of service)-constrained parallel task scheduling cost optimizing method under mixed cloud environment
CN109783225B (en) Tenant priority management method and system of multi-tenant big data platform
Hoseinyfarahabady et al. Handling uncertainty: Pareto-efficient bot scheduling on hybrid clouds
US20050144234A1 (en) Decentralized processing system, job decentralized processing method, and program
Mastelic et al. Predicting resource allocation and costs for business processes in the cloud
Ghasemzadeh et al. Deadline-budget constrained scheduling algorithm for scientific workflows in a cloud environment
CN108123980A (en) A kind of resource regulating method and system
Genez et al. Using time discretization to schedule scientific workflows in multiple cloud providers
CN115134371A (en) Scheduling method, system, equipment and medium containing edge network computing resources
Matani et al. A fault-tolerant workflow scheduling algorithm for grid with near-optimal redundancy
Doğan et al. Scheduling of a meta-task with QoS requirements in heterogeneous computing systems
Dubey et al. QoS driven task scheduling in cloud computing
JP7432087B2 (en) Data structures containing energy schedules and methods for providing data structures containing energy schedules
Natarajan Parallel queue scheduling in dynamic cloud environment using backfilling algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant