Resource competition optimization distribution method and device under multi-core heterogeneous architecture and medium
By decomposing services into subtasks in a multi-core heterogeneous architecture, dividing resource pools, and dynamically adjusting resource allocation according to task priorities and loads, the performance degradation caused by improper resource allocation in a multi-core heterogeneous architecture is solved, and more efficient resource utilization and system performance improvement is achieved.
Patent Information
- Application Number
- CN202510054623.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-14
- Publication Date
- 2025-05-30
AI Technical Summary
In a multi-core heterogeneous architecture, there is a lack of effective resource allocation strategies, which leads to overloading of some cores while idleness of other cores, degrading overall system performance, inefficient task execution, and long system response time.
By decomposing the distribution network monitoring and control services into multiple subtasks, identifying the task type and resource requirements of each subtask, designing a physical resource pool with a multi-core heterogeneous architecture, physical resource allocation is performed according to the resource priority and task load of the subtask, and monitoring and adjusting the resource quota of the resource pool and the resource configuration of the subtask in real time.
Effectively manage physical resources of multi-core heterogeneous architectures, avoid resource conflicts and waste, and ensure that sufficient resources are obtained for mission-critical tasks, thereby improving system performance and reliability.
Smart Images

Figure CN120066764A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of heterogeneous multi-core architectures, and particularly to a method, device, and medium for optimizing resource competition allocation under a heterogeneous multi-core architecture. Background Art
[0002] A heterogeneous multi-core architecture refers to a computing system that contains two or more different types of processing units, which may have different architectures, performance characteristics, and functional specializations; thus, more efficient task processing and resource utilization can be achieved by combining the advantages of different types of processing units.
[0003] With the rapid development of information technology, heterogeneous multi-core architectures have become an important means to improve computing efficiency and system performance. However, in a heterogeneous multi-core architecture, different processing units may have different processing capabilities, memory access speeds, and dedicated hardware accelerators, which requires the resource management strategy to dynamically allocate and schedule resources according to the characteristics and requirements of tasks.
[0004] However, there is a lack of an effective resource allocation strategy in current heterogeneous multi-core systems, so there are often situations where some cores are overloaded while others are idle, resulting in a decline in the overall performance of the system. Moreover, existing task scheduling algorithms often cannot well adapt to heterogeneous environments, leading to low task execution efficiency and long system response times. Summary of the Invention
[0005] In view of this, embodiments of the present invention provide a method, device, and medium for optimizing resource competition allocation under a heterogeneous multi-core architecture.
[0006] The first aspect of the present invention provides a method for optimizing resource competition allocation under a heterogeneous multi-core architecture, including the following steps:
[0007] Decompose the distribution network monitoring and control service into multiple subtasks, and identify the task type and resource requirements of each subtask;
[0008] Design a heterogeneous multi-core architecture; overall plan the physical resources of the heterogeneous multi-core architecture to form multiple physical resource pools;
[0009] Allocate physical resources to the subtasks according to the task type and resource requirements of each subtask;
[0010] Monitor the heterogeneous multi-core architecture, and adjust the physical resources of each subtask in real time according to the operation data of the heterogeneous multi-core architecture;
[0011] Design a resource allocation strategy, and allocate the physical resources of the multi-core heterogeneous architecture to the distribution network monitoring and control service through the resource allocation strategy;
[0012] Monitor the multi-core heterogeneous architecture; adjust the resources of the multi-core heterogeneous architecture according to the operating conditions of the multi-core heterogeneous architecture.
[0013] Further, the distribution network monitoring and control service specifically includes a data acquisition service, a status detection service, a control and protection service, and a communication management service; the physical resources specifically include computing resources, memory resources, storage resources, and communication resources.
[0014] Further, overall plan the physical resources of the multi-core heterogeneous architecture to form multiple physical resource pools, which are implemented through virtualization technology, and specifically include the following steps:
[0015] Define multiple resource pools and determine the physical resource quotas of each resource pool; the physical resource quota represents the limit of physical resources that the resource pool can use;
[0016] Establish an access control list for each resource pool, and record one or more subtasks allowed to use the resource pool in the access control list;
[0017] Establish the mapping relationship between each resource pool and the physical resources of the multi-core heterogeneous architecture.
[0018] Further, allocating physical resources to subtasks according to the task type and resource requirements of each subtask specifically includes the following steps:
[0019] Determine the task load of each subtask according to the task type of the subtask; the task load is used to determine the minimum physical resource configuration amount of the subtask;
[0020] Determine the resource priority of each subtask according to the resource requirements of the subtask; the resource priority includes computing resource priority, memory resource priority, storage resource priority, and communication resource priority; the resource priority is used to determine the physical resource configuration priority of the subtask;
[0021] Determine the physical resources allocated to the subtask according to the resource priority and task load of each subtask, combined with the corresponding weights.
[0022] Further, adjusting the resources of the multi-core heterogeneous architecture according to the operating conditions of the multi-core heterogeneous architecture specifically includes:
[0023] Turn on or off the resource pool according to the operating conditions of the physical resource pool;
[0024] Adjust the physical resource quota of the physical resource pool according to the operation of the physical resource pool;
[0025] Modify the physical resources allocated to the subtasks according to the operation of the physical resource pool;
[0026] Switch the subtasks to other physical resource pools for execution according to the operation of the physical resource pool.
[0027] Furthermore, it further includes the following steps: Process the communication between each subtask using a message queue.
[0028] Furthermore, it further includes the following steps:
[0029] Scan the memory resources of each resource pool, determine the memory areas with the same written content in multiple resource pools as the target memory areas;
[0030] Merge the target memory areas to form a shared memory area;
[0031] Modify the mapping relationship between the resource pool and the physical resources so that the mappings of multiple resource pools to the target memory area point to the shared memory area.
[0032] Furthermore, it further includes the following steps:
[0033] Determine the critical subtasks;
[0034] Allocate the critical subtasks to at least two computing cores for processing; one computing core is used as the main core, and the remaining computing cores are used as secondary cores;
[0035] Use the main core and the secondary cores to synchronously perform the data processing operations of the critical subtasks;
[0036] Compare the data processing operation results of the main core and the secondary cores; when the operation results are consistent, output the data processing operation result of the main core as the execution result of the critical subtask; when the operation results are inconsistent, perform a fault detection on the physical resources allocated to the critical subtask.
[0037] A second aspect of the present invention discloses an electronic device, including a processor and a memory;
[0038] The memory is used to store programs;
[0039] The processor executes the program to implement the resource competition optimization allocation method under a multi-core heterogeneous architecture as described above.
[0040] A third aspect of the present invention discloses a computer-readable storage medium, the storage medium stores a program, and the program is executed by a processor to implement the resource competition optimization allocation method under a multi-core heterogeneous architecture as described above.
[0041] An embodiment of the present invention also discloses a computer program product or a computer program. The computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of a computer device can read the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the foregoing method.
[0042] The embodiments of the present invention have the following beneficial effects: A method, device, and medium for optimizing resource competition allocation under a multi-core heterogeneous architecture according to the present invention divide the physical resources of the multi-core heterogeneous architecture into different resource pools, and design a resource allocation strategy and a resource monitoring and dynamic adjustment strategy, which can effectively manage the physical resources of the multi-core heterogeneous architecture, avoid resource conflicts and waste, ensure that critical tasks obtain sufficient resources, and thus improve system performance and reliability.
[0043] Additional aspects and advantages of the present invention will be given in the following description section, some of which will become apparent from the following description, or can be learned through the practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0045] Figure 1 It is a schematic diagram of the basic process of a method for optimizing resource competition allocation under a multi-core heterogeneous architecture according to the present invention.
[0046] Figure 2 It is a schematic diagram of the implementation process of allocating physical resources to subtasks according to the task type and resource requirements of each subtask according to the present invention.
[0047] Figure 3 It is a schematic diagram of the implementation process of adjusting the resources of a multi-core heterogeneous architecture according to the running conditions of the multi-core heterogeneous architecture according to the present invention.
[0048] Figure 4 It is a schematic diagram of the structure of an electronic device according to the present invention.
[0049] Figure 5 It is a schematic diagram of the structure of a computer-readable storage medium according to the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0050] To make the objectives, technical solutions and advantages of this application more clear and understandable, the following further details this application in combination with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not used to limit this application.
[0051] As Figure 1 shown, the first embodiment of the present invention discloses a method for optimizing resource competition allocation under a multi-core heterogeneous architecture, including the following steps:
[0052] S1. Decompose the distribution network monitoring and control service into multiple subtasks, and identify the task type and resource requirements of each subtask;
[0053] S2. Design a multi-core heterogeneous architecture; make an overall plan for the physical resources of the multi-core heterogeneous architecture to form multiple physical resource pools;
[0054] S3. Allocate physical resources to the subtasks according to the task type and resource requirements of each subtask;
[0055] S4. Monitor the multi-core heterogeneous architecture, and adjust the physical resources of each subtask in real time according to the operation data of the multi-core heterogeneous architecture;
[0056] S5. Design a resource allocation strategy, and allocate the physical resources of the multi-core heterogeneous architecture to the distribution network monitoring and control service through the resource allocation strategy;
[0057] S6. Monitor the multi-core heterogeneous architecture; adjust the resources of the multi-core heterogeneous architecture according to the operation conditions of the multi-core heterogeneous architecture.
[0058] The following specifically describes the implementation processes of each step of the present invention:
[0059] S1. Decompose the distribution network monitoring and control service into multiple subtasks, and identify the task type and resource requirements of each subtask:
[0060] In step S1, the distribution network monitoring and control service is a series of technical measures and management activities in the power system to ensure the safe, reliable and efficient operation of the distribution network (that is, the network part that receives electric energy from the transmission network and distributes it to end users). It involves real-time monitoring, data analysis, fault detection and isolation, load management and optimal scheduling of the distribution network. Specifically, the distribution network monitoring and control service includes the following aspects:
[0061] Data acquisition: Collect voltage, current, and temperature data from sensors and devices;
[0062] Status monitoring: Analyze the collected data to judge the operation status of the distribution network, whether there is overload, short circuit, or fault;
[0063] Protection control: According to the status monitoring results, perform corresponding protection actions, disconnect the faulty line, and adjust the voltage.
[0064] Communication management: Send the monitoring data and control instructions to other devices or systems.
[0065] In the embodiments of the present invention, the distribution network monitoring and control service is decomposed into multiple end - level subtasks. Each distribution network monitoring and control service is used as a task type to label the subtasks, and the resource requirements of each subtask are identified. Exemplarily, the subtasks under various task types may have the following resource requirements:
[0066] Data acquisition: Requires a high - speed ADC and a large amount of memory for data storage;
[0067] Status monitoring: Requires a high - performance CPU for data analysis and calculation;
[0068] Protection control: Requires a fast response time to ensure the timeliness of protection actions;
[0069] Communication management: Requires a high - speed network interface and protocol stack support.
[0070] In the embodiments of the present invention, the physical resources of the multi - core heterogeneous architecture are allocated according to the task types and resource requirements of the subtasks, so that each subtask can execute using the corresponding hardware resources.
[0071] S2. Design a multi - core heterogeneous architecture; overall plan the physical resources of the multi - core heterogeneous architecture to form multiple physical resource pools.
[0072] The multi - core heterogeneous architecture can accommodate processing units with different architectures, different processing capabilities, and different performance characteristics. In the embodiments of the present invention, the physical resources of the multi - core heterogeneous architecture are divided into four categories: computing resources, memory resources, storage resources, and communication resources according to functions. Resource pools are established for each type of physical resource to achieve more efficient task processing and resource utilization. The multi - core heterogeneous architecture designed in the embodiments of the present invention includes at least two CPU cores with different processing capabilities for executing subtasks in status monitoring and protection control; at least one accelerator for executing subtasks in data acquisition; and connects the CPU, accelerator, and memory through a network - on - chip to ensure the efficiency and reliability of data transmission.
[0073] As a preferred embodiment, in step S2, the physical resources of the multi - core heterogeneous architecture are overall planned to form multiple physical resource pools, which is achieved through virtualization technology. Virtualization technology can create an abstraction layer between the physical hardware and the subtasks to be executed, manage and schedule the physical resources of the multi - core heterogeneous architecture through this abstraction layer, and provide a virtualized environment for each subtask to execute.
[0074] Through virtualization technology, overall planning is carried out on the physical resources of the multi-core heterogeneous architecture to form multiple physical resource pools, which specifically include the following steps:
[0075] S2-1. Define multiple resource pools and determine the physical resource quota for each resource pool; the physical resource quota represents the limit of physical resources that the resource pool can use. In the embodiments of the present invention, multiple resource pools are defined at the abstraction layer, and each resource pool has different physical resource quotas to meet the resource requirements of different subtasks. In the embodiments of the present invention, a certain amount of physical resources is allocated to each resource pool by determining the quota of the resource pool, so that processing units with different architectures, different processing capabilities, and different performance characteristics are allocated to different resource pools to execute subtasks with different resource requirements. In some embodiments, the total physical resources of each resource pool are equivalent to the sum of the physical resources of the multi-core heterogeneous architecture. In other embodiments, virtualization technology over-allocates the physical resources of the multi-core heterogeneous architecture through resource sharing and dynamic resource scheduling, and makes full use of the physical resources of the multi-core heterogeneous architecture by controlling the execution timing of different subtasks without resource contention.
[0076] S2-2. Establish an access control list for each resource pool respectively, and record one or more subtasks allowed to use the resource pool in the access control list. After defining the resource pool, in the embodiments of the present invention, the subtasks executed by the resource pool are determined according to the physical resources allocated to the resource pool. For example, compute-intensive subtasks are suitable to be allocated to resource pools rich in computing resources for execution, while data-intensive subtasks are suitable to be allocated to resource pools rich in storage resources for execution. In the embodiments of the present invention, the resource potential of the multi-core heterogeneous architecture is fully exploited through the reasonable configuration of subtasks, and various subtasks are executed more efficiently.
[0077] S2-3. Establish the mapping relationship between each resource pool and the physical resources of the multi-core heterogeneous architecture. In the embodiments of the present invention, after establishing multiple resource pools in the abstraction layer, the hardware resources of the resource pool are mapped onto the physical resources of the multi-core heterogeneous architecture by establishing the mapping relationship, making the resource pool available.
[0078] S3. Allocate physical resources to the subtasks according to the task type and resource requirements of each subtask.
[0079] As Figure 2 shown, in step S3, allocating physical resources to the subtasks according to the task type and resource requirements of each subtask specifically includes the following steps:
[0080] S3-1. Determine the task load of each subtask according to the task type of the subtask; the task load is used to determine the minimum physical resource configuration amount of the subtask.
[0081] In the embodiments of the present invention, a sub-task has a rated task load according to different task types, and this load reflects the minimum resource requirements needed for the sub-task. In the embodiments of the present invention, the minimum physical resource allocation amount for each sub-task is determined according to the task type, preventing the sub-task from being unable to execute due to insufficient resources.
[0082] S3-2. Determine the resource priority for each sub-task according to the resource requirements of the sub-task; the resource priority includes computing resource priority, memory resource priority, storage resource priority, and communication resource priority; the resource priority is used to determine the physical resource allocation priority for the sub-task.
[0083] In the embodiments of the present invention, a priority scheduling strategy is adopted to reflect the resource requirements of different sub-tasks for different physical resources, and the resource allocation for sub-tasks is carried out according to the resource priority of each sub-task and the resource quota of each resource pool. For high-priority tasks, a preemptive scheduling algorithm can be used to ensure that these tasks can obtain physical resources in a timely manner and guarantee the safe and stable operation of the distribution network. For low-priority tasks, a round-robin scheduling algorithm can be used to ensure that all tasks can obtain physical resources fairly.
[0084] S3-3. Determine the physical resources allocated to the sub-task according to the resource priority and task load of each sub-task, and combine the corresponding weights.
[0085] In the embodiments of the present invention, the resource allocation strategy can be calculated using the following formula:
[0086] Resource_usage=α*task_priority+β*task_load;
[0087] In the formula, α and β are weight coefficients, which are adjusted according to actual needs.
[0088] S4. Monitor the multi-core heterogeneous architecture and adjust the physical resources of each sub-task in real time according to the running data of the multi-core heterogeneous architecture.
[0089] The resource monitoring mechanism in the embodiments of the present invention uses performance counters to record the real-time usage of resources such as CPU, memory, storage, and network. At the same time, a threshold warning method is adopted: when the resource utilization rate reaches a preset threshold, an alarm is triggered to remind the system administrator to intervene.
[0090] Exemplarily, as Figure 3 shown, the resources of the multi-core heterogeneous architecture are adjusted according to the running situation of the multi-core heterogeneous architecture, specifically including:
[0091] Turn on or off the resource pool according to the running situation of the physical resource pool;
[0092] Adjust the physical resource quota of the physical resource pool according to the operating conditions of the physical resource pool;
[0093] Modify the physical resources allocated to subtasks according to the operating conditions of the physical resource pool;
[0094] Switch subtasks to other physical resource pools for execution according to the operating conditions of the physical resource pool.
[0095] In the embodiments of the present invention, the physical resources of the multi-core heterogeneous architecture are dynamically adjusted by means of opening or closing resource pools, adjusting the physical resource quota of the physical resource pool, modifying the physical resources allocated to subtasks, and switching subtasks to other physical resource pools for execution. The workload is dynamically allocated to the most suitable resource pool according to the requirements of subtasks, thereby improving the overall efficiency, response speed, and resource utilization rate of the multi-core heterogeneous architecture. For example, tasks with high load can be migrated to idle processors, or compute-intensive tasks can be migrated to high-performance CPUs, and data-intensive tasks can be migrated to dedicated accelerators, which can achieve reasonable utilization of resources, avoid resource waste, and improve system performance.
[0096] In some embodiments, in order to avoid communication blocking, message queues are used to process the communication between each subtask in the multi-core heterogeneous architecture. The message queue mechanism can use the following formula for data transmission:
[0097] enqueue_message(queue,message);
[0098] dequeue_message(queue);
[0099] Where: queue represents the message queue; message represents the message to be transmitted. In addition, data compression processing can also be performed on the communication data between each subtask to reduce the amount of data transmission and improve communication efficiency.
[0100] In another part of the embodiments, in order to achieve efficient content communication between data. In the embodiments of the present invention, the shared memory mechanism is used to point the memory data of different subtasks to the same memory area for access, avoiding the overhead of data replication and transmission. The shared memory mechanism specifically includes the following steps:
[0101] Scan the memory resources of each resource pool to determine the memory areas with the same written content in multiple resource pools as the target memory areas;
[0102] Merge the target memory areas to form a shared memory area;
[0103] Modify the mapping relationship between the resource pool and the physical resources so that the mapping of multiple resource pools to the target memory area points to the shared memory area.
[0104] In the embodiments of the present invention, by using a shared memory mechanism, a message queue mechanism, and an efficient data compression algorithm, the overhead of communication between tasks can be reduced, and the communication efficiency can be improved. By using the message queue mechanism, tasks that require asynchronous communication are connected to the message queue, and data is transmitted through the message queue, avoiding communication blocking and improving communication efficiency.
[0105] In another part of the embodiments, in order to improve the system reliability of the multi-core heterogeneous architecture, the embodiments of the present invention implement resource redundancy design for critical subtasks, specifically including the following steps:
[0106] Determine critical subtasks;
[0107] Allocate critical subtasks to at least two computing cores for processing; one of the computing cores serves as the main core, and the remaining computing cores serve as secondary cores;
[0108] Use the main core and the secondary cores to synchronously perform data processing operations on critical subtasks;
[0109] Compare the data processing operation results of the main core and the secondary cores; when the operation results are the same, output the data processing operation result of the main core as the execution result of the critical subtask; when the operation results are different, perform a fault detection on the physical resources allocated to the critical subtask.
[0110] In the embodiments of the present invention, the data of critical subtasks is stored simultaneously on multiple CPU cores and data synchronization is performed in real time. Then, the instructions of critical subtasks are executed simultaneously on multiple CPU cores and instruction synchronization is performed in real time, effectively ensuring the effective execution of critical subtasks.
[0111] In summary, the present invention divides the physical resources of the multi-core heterogeneous architecture into different resource pools, and designs resource allocation strategies and resource monitoring and dynamic adjustment strategies, which can effectively manage the physical resources of the multi-core heterogeneous architecture, avoid resource conflicts and waste, ensure that critical tasks obtain sufficient resources, and thus improve the system performance and reliability.
[0112] Figure 4It is a schematic structural diagram of the electronic device proposed in the second embodiment of the present invention. In this embodiment, the memory stores program instructions for implementing the resource competition optimization allocation method under a multi-core heterogeneous architecture in any of the above embodiments. The processor is used to execute the program instructions stored in the memory to perform resource competition optimization allocation under a multi-core heterogeneous architecture. Among them, the processor can also be called a CPU (Central Processing Unit, central processing unit). The processor may be an integrated circuit chip with signal processing capabilities. The processor can also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.
[0113] The content of the method in the first embodiment of the present invention is applicable to this embodiment of the electronic device. The functions specifically implemented in this embodiment of the electronic device are the same as those in the above method embodiment, and the beneficial effects achieved are also the same as those achieved by the above method.
[0114] Figure 5 It is a schematic structural diagram of the computer-readable storage medium according to the third embodiment of the present invention. The computer-readable storage medium according to the fourth embodiment of the present invention stores program instructions capable of implementing the resource competition optimization allocation method under the above multi-core heterogeneous architecture. Among them, the program instructions can be stored in the above storage medium in the form of a software product, including several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the methods in various embodiments of the present invention. The aforementioned computer-readable storage medium includes: various media such as USB flash drives, mobile hard disks, read-only memories (ROM, Read-Only Memory), random access memories (RAM, Random Access Memory), magnetic disks, or optical discs that can store program codes, or terminal devices such as computers, servers, mobile phones, and tablets.
[0115] The content of the method in the first embodiment of the present invention is applicable to this embodiment of the computer-readable storage medium. The functions specifically implemented in this embodiment of the computer-readable storage medium are the same as those in the above method embodiment, and the beneficial effects achieved are also the same as those achieved by the above method.
[0116] This embodiment also provides a computer program product. When the computer program product runs on a computer, it causes the computer to execute the above relevant steps to implement the resource competition optimization allocation method provided in the above embodiment.
[0117] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in the embodiments of the present invention are all information and data that have been authorized by the user or fully authorized by all parties. And the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of relevant countries and regions, and corresponding operation entrances are provided for users to choose to authorize or refuse.
[0118] Those skilled in the art can understand that the modules in the devices in the embodiments of the present invention can be adaptively changed and arranged in one or more devices different from this embodiment. The modules or units or components in the embodiments of the present invention can be combined into one module or unit or component, and in addition, they can be divided into multiple sub-modules or sub-units or sub-components. Except that at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all the features disclosed in this specification (including the corresponding claims, abstract, and drawings) and all the processes or units of any method or device so disclosed. Unless otherwise explicitly stated, each feature disclosed in this specification (including the corresponding claims, abstract, and drawings) can be replaced by an alternative feature that provides the same, equivalent, or similar purpose.
[0119] Through the description of the above embodiments, those skilled in the art can understand that for the convenience and conciseness of description, only the above division of each functional module is used as an example. In actual applications, the above functions can be allocated to different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above.
[0120] Note that the logic and / or steps represented in the flowchart or described otherwise herein, for example, can be considered as a definite sequence list of executable instructions for implementing logical functions, and can be specifically implemented in any computer-readable medium for use by an instruction execution system, apparatus, or device (such as a computer-based system, a system including a processor, or other systems that can fetch instructions from the instruction execution system, apparatus, or device and execute the instructions), or used in combination with these instruction execution systems, apparatuses, or devices. For the purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. More specific examples (non-exhaustive list) of the computer-readable medium include the following: an electrical connection portion having one or more wirings (electronic device), a portable computer diskette (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber device, and a portable compact disc read-only memory (CDROM). Additionally, the computer-readable medium can even be paper or other suitable medium on which the program can be printed, because the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpretation, or other appropriate processing as necessary, and then stored in a computer memory.
[0121] Moreover, each embodiment in this specification is described in a progressive manner, and the same or similar parts among the embodiments can be referred to each other. In particular, for embodiments of devices, apparatuses, etc., since they are basically similar to the method embodiments, the relevant parts can be referred to the descriptions of the method embodiments. The embodiments of the devices, apparatuses, etc. described above are merely illustrative. The modules, units, etc. described as separate components may or may not be physically separated, that is, they can be located in one place, or distributed to multiple places, such as the nodes of a system network. Specifically, some or all of the modules, units can be selected according to actual needs to achieve the purpose of the above embodiment solutions. Those skilled in the art can understand and implement them without creative efforts.
[0122] It should be understood that each part of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above embodiments, multiple steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, any one or a combination of the following techniques well known in the art can be used: discrete logic circuits with logic gate circuits for implementing logical functions on data signals, application specific integrated circuits with suitable combinational logic gate circuits, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
[0123] In the description of this specification, the description referring to terms such as "one embodiment", "some embodiments", "example", "specific example", or "some examples", etc. means that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in a suitable manner in any one or more embodiments or examples.
[0124] In addition, the terms "first", "second", etc. used in the embodiments of the present invention are only for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly specifying the quantity of the technical features indicated in this embodiment. Thus, the features defined with terms such as "first", "second", etc. in the embodiments of the present invention can explicitly or implicitly indicate that at least one such feature is included in this embodiment. In the description of the present invention, the meaning of the word "plural" is at least two or more than two, such as two, three, four, etc., unless otherwise specifically defined in the embodiment.
[0125] In the embodiments of the present invention, the term "comprising", "including" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements but also includes other elements not explicitly listed, or further includes elements inherent to such process, method, article or device. Without further limitation, the element defined by the statement "including one..." does not exclude the existence of additional identical elements in the process, method, article or device including that element. In addition, components, features, and elements with the same name in different embodiments of the present invention may have the same meaning or may have different meanings, and their specific meanings need to be determined according to their explanations in the specific embodiment or further in combination with the context of the specific embodiment.
[0126] Although the embodiments of the present invention have been shown and described above, it can be understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those of ordinary skill in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of the present invention. After considering the specification and practicing the present invention, those skilled in the art will readily conceive of other embodiments of the present invention. This application is intended to cover any variations, uses, or adaptations of the present invention that follow the general principles of the present invention and include known common general knowledge or conventional technical means in the technical field not disclosed in the present invention. The specification and embodiments are only regarded as exemplary, and the true scope and spirit of the present invention are pointed out by the following claims.
Claims
1. A resource competition optimization allocation method under a multi-core heterogeneous architecture, characterized in that: The following steps are involved: Decompose the distribution network monitoring and control business into multiple subtasks, and identify the task type and resource requirements of each subtask; Design multi-core heterogeneous architectures; Comprehensively plan the physical resources of the multi-core heterogeneous architecture to form multiple physical resource pools; Allocate physical resources to subtasks based on the task type and resource requirements of each subtask; Monitoring the multi-core heterogeneous architecture, and adjusting the physical resources of each subtask in real time according to the operation data of the multi-core heterogeneous architecture; Design a resource allocation strategy, and allocate physical resources of the multi-core heterogeneous architecture to the distribution network monitoring and control service through the resource allocation strategy; The multi-core heterogeneous architecture is monitored; and resources of the multi-core heterogeneous architecture are adjusted according to the operation status of the multi-core heterogeneous architecture.
2. The resource competition optimization allocation method under a multi-core heterogeneous architecture according to claim 1, characterized in that: The distribution network monitoring and control services specifically include data collection services, status detection services, control and protection services, and communication management services; the physical resources specifically include computing resources, memory resources, storage resources, and communication resources.
3. The resource competition optimization allocation method under a multi-core heterogeneous architecture according to claim 1, characterized in that: The overall planning of the physical resources of the multi-core heterogeneous architecture to form multiple physical resource pools is implemented through virtualization technology, and specifically includes the following steps: Defining multiple resource pools and determining a physical resource quota for each resource pool; the physical resource quota represents a limit on the physical resources that can be used by the resource pool; An access control list is established for each resource pool, wherein the access control list records one or more subtasks that are allowed to use the resource pool; A mapping relationship between each resource pool and the physical resources of the multi-core heterogeneous architecture is established.
4. The resource competition optimization allocation method under a multi-core heterogeneous architecture according to claim 3 is characterized in that: The physical resources are allocated to the subtasks according to the task type and resource requirements of each subtask, specifically including the following steps: Determine the task load of each subtask according to the task type of the subtask; the task load is used to determine the minimum physical resource configuration amount of the subtask; Determine the resource priority of each subtask according to the resource requirements of the subtask; the resource priority includes computing resource priority, memory resource priority, storage resource priority and communication resource priority; the resource priority is used to determine the physical resource configuration priority of the subtask; The physical resources allocated to each subtask are determined based on the resource priority and task load of each subtask and the corresponding weight.
5. The resource competition optimization allocation method under a multi-core heterogeneous architecture according to claim 4 is characterized in that: The adjusting resources of the multi-core heterogeneous architecture according to the operation status of the multi-core heterogeneous architecture specifically includes: Enable or disable resource pools based on the operation status of physical resource pools; Adjust the physical resource quota of the physical resource pool according to the operation status of the physical resource pool; Modify the physical resources allocated to the subtask according to the operation status of the physical resource pool; The subtask is switched to another physical resource pool for execution based on the operation status of the physical resource pool.
6. The resource competition optimization allocation method under a multi-core heterogeneous architecture according to claim 1, characterized in that: The following steps are also included: Message queues are used to process the communication between subtasks.
7. The resource competition optimization allocation method under a multi-core heterogeneous architecture according to claim 1, characterized in that: The following steps are also included: Scan the memory resources of each resource pool and determine the memory areas with the same written content in multiple resource pools as the target memory areas; Merge the target memory areas to form a shared memory area; The mapping relationship between the resource pool and the physical resource is modified so that the mapping of the target memory area by the multiple resource pools points to the shared memory area.
8. The resource competition optimization allocation method under a multi-core heterogeneous architecture according to claim 1, characterized in that: The following steps are also included: Identify key subtasks; Allocating the key subtask to at least two computing cores for processing; One of the computing cores is used as the main core, and the remaining computing cores are used as secondary cores; Using the main core and the sub-core to synchronously perform data processing operations of the key subtasks; Compare the data processing operation results of the main core and the secondary core; When the operation results are consistent, the data processing operation result of the main core is output as the execution result of the key subtask; when the operation results are inconsistent, fault detection is performed on the physical resources allocated to the key subtask.
9. An electronic device, characterized in that: including a processor and a memory; The memory is used to store programs; The processor executes the program to implement a resource competition optimization allocation method under a multi-core heterogeneous architecture as described in any one of claims 1-8.
10. A computer-readable storage medium, characterized in that: The storage medium stores a program, and the program is executed by a processor to implement a resource competition optimization allocation method under a multi-core heterogeneous architecture according to any one of claims 1 to 8.
Citation Information
Cited By
Real-time control multi-core efficient synchronization method
CN120276879A