Intelligent computing resource agile dynamic allocation method, system, equipment and medium

The dynamic resource allocation method using PCI e exchange domains with shared memory communication optimizes resource distribution in edge embedded systems, addressing inefficiencies in existing point-to-point allocation methods by enhancing resource utilization and flexibility.

CN119883624AActive Publication Date: 2025-04-25XIAN AVIATION COMPUTING TECH RES INST OF AVIATION IND CORP OF CHINA
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411956963.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-29
Publication Date
2025-04-25
Estimated Expiration
2044-12-29

AI Technical Summary

Technical Problem

Existing intelligent resource allocation methods in edge embedded systems suffer from inefficiencies in resource distribution due to point-to-point connectivity, leading to suboptimal and ineffective utilization.

Method used

A method involving PCI e exchange domains with shared memory communication to dynamically allocate resources based on task and resource information, utilizing a resource planning and scheduling mechanism to optimize resource distribution across multiple PCI e exchange domains.

Benefits of technology

Enhances resource utilization and flexibility in edge embedded systems by implementing a dynamic resource allocation system that balances load and optimizes resource distribution, addressing inefficiencies in existing point-to-point allocation methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119883624A_ABST
    Figure CN119883624A_ABST
Patent Text Reader

Abstract

The invention belongs to the field of edge embedded terminal comprehensive core intelligent processing, and provides an intelligent computing resource agile dynamic distribution method, system, device and medium, the method comprises the following steps: establishing a communication link between two PC I e switching domains; the current resource information of the domain is written into a shared memory according to a first set period, the current resource information of the opposite domain is obtained from the shared memory according to a second set period, and the first set period is smaller than the second set period; and the PC I e switching domain selects a computing resource allocation mode to dynamically allocate computing resources according to the current task load, the current resource information of the domain and the current resource information of the opposite domain and a mode selection logic. According to the method, computing resources can be flexibly allocated, so that software and hardware can efficiently and cooperatively work, and the method is suitable for a multi-chip high-computing-power application scene.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of integrated core intelligent processing of edge embedded terminals, relates to multi-intelligent computing node scheduling technology, and specifically relates to an agile dynamic allocation method, system, device and medium for intelligent computing resources based on a PCIe bus. Background Art

[0002] With the continuous development of intelligent computing technology, its application fields are becoming more and more extensive, especially in the fields of aviation / aerospace, where it can process image processing, large model reasoning, etc. At present, intelligent resources are usually allocated through point-to-point interconnection, which has the limitation that resources cannot be fully and effectively allocated. Summary of the invention

[0003] In order to solve the limitation that resources cannot be fully and effectively allocated due to the point-to-point interconnection allocation of existing intelligent resources, the present invention discloses an agile dynamic allocation method for intelligent computing resources, which includes the following steps:

[0004] S4, connecting two PCIe switch domains on the user side to establish a communication link between the two PCIe switch domains;

[0005] S5, the PCIe switch domain writes the current resource information of the domain into the shared memory according to the first set period, and obtains the current resource information of the other domain from the shared memory according to the second set period, wherein the first set period is less than the second set period;

[0006] S6. The PCIe switch domain selects a computing resource allocation mode according to the current task volume, the current resource information of the domain and the current resource information of the other domain, and performs dynamic allocation of computing resources according to the mode selection logic.

[0007] Furthermore, the above-mentioned intelligent computing resource agile dynamic allocation method further includes:

[0008] S1. Construct a shared memory and two PCIe switch domains. Each of the PCIe switch domains includes a switch domain host. The switch domain host includes a resource planning and orchestration scheduler. One end of the switch domain host is connected to the user end, and the other end is connected to each of the downstream co-intelligent processors. The resource planning and orchestration scheduler is connected to the shared memory.

[0009] Furthermore, the above-mentioned intelligent computing resource agile dynamic allocation method further includes:

[0010] S2. Designing the computing resource allocation mode including the exchange domain private mode, the single span occupancy mode and the cross-border occupancy mode according to the task amount and computing resources of the task;

[0011] S31, when the amount of tasks received by the domain is defined to be less than or equal to the computing resources of the domain, the computing resources of the domain are dynamically allocated using the exchange domain private mode;

[0012] S32, defining that when the amount of tasks received by the domain is greater than the computing resources of the domain, and the computing resources of the other domain are greater than the difference between the amount of tasks and the computing resources of the domain, the computing resources of the domain and the other domain are dynamically allocated using a single-span occupancy mode;

[0013] S33. Define that when the domain receives a new task while executing the task assigned by the other domain, a cross-border occupancy mode is used to dynamically allocate computing resources of the domain and the other domain, thereby completing the construction of the mode selection logic.

[0014] Furthermore, in the above step S32, when it is defined that the amount of tasks received by the local domain is greater than the computing resources of the local domain, and the computing resources of the other domain are greater than the difference between the amount of tasks and the computing resources of the local domain, the computing resources of the local domain and the other domain are dynamically allocated using a single spanning occupation mode, including:

[0015] S321, defining that when the amount of tasks received by the domain is greater than the amount of remaining resources in the domain, and any one of the sub-computing resources of the other domain is greater than the difference between the amount of tasks in the domain and the computing resources, a single-span occupancy mode is used to dynamically allocate computing resources of the domain and the other domain;

[0016] S322. When the amount of tasks received by this domain is defined to be greater than the amount of remaining resources in this domain, and all sub-computing resources in the other domain are less than the difference between the amount of tasks and the computing resources of this domain, it is determined whether the task can be split. If the task can be split, the computing resources of this domain and the other domain are dynamically allocated using a single-span occupancy mode. If the task cannot be split, the task is put into a waiting state.

[0017] Furthermore, in the above step S5, the PCIe switch domain writes the current resource information of the domain into the shared memory according to the first set period, and obtains the current resource information of the other domain from the shared memory according to the second set period, including:

[0018] S51, each of the co-intelligent processors connected downstream of the PCIe switch domain reports the current usage status and the current sub-computing resources according to the first set period, obtains the current total computing resources according to the current sub-computing resources of all the co-intelligent processors connected downstream of the PCIe switch domain, and writes the current total computing resources and the current usage status and the current sub-computing resources of each co-intelligent processor into the shared memory as the current resource information of the local domain;

[0019] S52: The PCIe switch domain obtains the current resource information of the counterpart domain according to the second set period.

[0020] Furthermore, in the above step S6, the PCIe switch domain selects a computing resource allocation mode according to the current task amount, the current resource information of the local domain and the current resource information of the other domain according to the mode selection logic to dynamically allocate computing resources, including:

[0021] S61, the PCIe switch domain estimates the received current task to obtain the current task amount, and obtains the current total computing resources and current sub-computing resources of the domain;

[0022] S62: When the current task amount of the domain is less than or equal to the current total computing resources, select the exchange domain private mode to dynamically allocate the current total computing resources of the domain;

[0023] S63, when the current task amount of the local domain is greater than the current total computing resources, and the difference between the current task amount of the local domain and the current total computing resources is less than any one of the current sub-computing resources in the other domain, select the single-span occupancy mode to dynamically allocate computing resources of the local domain and the other domain;

[0024] S64. When the current task volume of this domain is greater than the current total computing resources, and all current sub-computing resources in the other domain are less than the difference between the current task volume of this domain and the current total computing resources, determine whether the current task of this domain can be split. If it can be split, select the single-span occupancy mode to dynamically allocate the computing resources of this domain and the other domain. If it cannot be split, perform task waiting.

[0025] An embodiment of the present invention also provides an intelligent computing resource agile dynamic allocation system, including two PCIe switch domains, a communication module, a resource writing module, a resource reading module and a computing resource dynamic allocation module.

[0026] The two PCIe switch domains are connected via an NT port, the PCIe switch domain includes a switch domain host and a plurality of co-intelligent processors, the host is provided with a resource planning and scheduling scheduler, and the resource planning and scheduling scheduler is located between the co-intelligent processor and the user end;

[0027] The communication module is used to establish a communication link between the two PCIe switch domains;

[0028] The resource writing module is used to write the current total computing resources of the PCIe switch domain and the current usage status and current sub-computing resources of each downstream co-intelligent processor into the shared memory according to the first set period;

[0029] The resource reading module is used to obtain the current total computing resources of the other domain and the current usage status and current sub-computing resources of each downstream co-intelligent processor from the shared memory according to a second set period, and the first set period is less than the second set period;

[0030] The computing resource dynamic allocation module is used for the PCIe switch domain to dynamically allocate computing resources by selecting a computing resource allocation mode according to the mode selection logic based on the current task volume, the current resource information of the domain and the current resource information of the other domain.

[0031] An embodiment of the present invention also provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements any of the above-mentioned agile dynamic allocation methods for intelligent computing resources, thereby resolving the limitation that the existing intelligent resources cannot be fully and effectively allocated due to the point-to-point interconnection allocation method.

[0032] An embodiment of the present invention also provides a computer-readable storage medium, which stores a computer program for executing any of the above-mentioned agile dynamic allocation methods for intelligent computing resources, thereby solving the limitation that resources cannot be fully and effectively allocated due to the point-to-point interconnection allocation method of existing intelligent resources.

[0033] Compared with the prior art, the beneficial effects that can be achieved by at least one of the above-mentioned technical solutions adopted in the embodiments of this specification include at least the following: the method of the present invention constructs two PCIe switch domains on the user side, each switch domain has a switch domain host and multiple co-intelligent processors, and maps NT (non-transparent) port communication between the two PCIe switch domains. At the same time, a resource planning and orchestration scheduler is designed in each switch domain host to realize the shielding of underlying resources. By constructing a resource exchange network to perceive the underlying resource value in real time in a shared memory communication manner, the switch domain private, single-span occupation, cross-border occupation and other modes are flexibly configured. The present invention solves the problems of low computing power resources, inflexible resource scheduling, insufficient utilization of resources and complicated upper-level application design in the existing edge embedded intelligent computing center. By constructing a shieldable resource planning and orchestration scheduler, the load balancing of computing resources in the intelligent computing center is improved, and resources are flexibly scheduled. At the same time, the dual switch domain cross-border communication mode is used to improve the computing power configuration. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0035] Figure 1 A flowchart of a method for agile dynamic allocation of intelligent computing resources disclosed in an embodiment of the present invention;

[0036] Figure 2 A schematic diagram of a method for agile dynamic allocation of intelligent computing resources disclosed in an embodiment of the present invention;

[0037] Figure 3 A schematic diagram of a computing architecture based on a PCI e bus is disclosed in an embodiment of the present invention;

[0038] Figure 4 A schematic diagram of computing resource allocation is disclosed in accordance with an embodiment of the present invention. DETAILED DESCRIPTION

[0039] The embodiments of the present application are described in detail below with reference to the accompanying drawings.

[0040] The following describes the implementation methods of the present application through specific specific examples, and those skilled in the art can easily understand other advantages and effects of the present application from the content disclosed in this specification. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. The present application can also be implemented or applied through other different specific implementation methods, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present application. It should be noted that the following embodiments and the features of the embodiments can be combined with each other in the absence of conflict. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without making creative work belong to the scope of protection of the present application.

[0041] The embodiment of the present invention discloses a method for agile dynamic allocation of intelligent computing resources. Figure 1 and Figure 2 As shown, the method comprises the following steps:

[0042] S4, connecting two PCIe switch domains on the user side to establish a communication link between the two PCIe switch domains;

[0043] S5, the PCIe switch domain writes the current resource information of the domain into the shared memory according to the first set period, and obtains the current resource information of the other domain from the shared memory according to the second set period, wherein the first set period is less than the second set period;

[0044] S6. The PCIe switch domain selects a computing resource allocation mode according to the current task volume, the current resource information of the domain and the current resource information of the other domain, and performs dynamic allocation of computing resources according to the mode selection logic.

[0045] Furthermore, the above intelligent computing resource agile dynamic allocation method, see Figure 1 and Figure 2 As shown, it also includes:

[0046] S1. Construct a shared memory and two PCIe switch domains. Each of the PCIe switch domains includes a switch domain host. The switch domain host includes a resource planning and orchestration scheduler. One end of the switch domain host is connected to the user end, and the other end is connected to each of the downstream co-intelligent processors. The resource planning and orchestration scheduler is connected to the shared memory.

[0047] Specifically, if Figure 3 and Figure 4 As shown in the figure, each PCIe switch domain has a switch domain host (i.e. Host) and three co-intelligent processors (i.e. EP). The two PCIe switch domains communicate through the NT port, and the switch domain host can access and call the co-intelligent processor across domains. Setting a resource planning and scheduling scheduler in the switch domain host can shield the lower-level resources from the upper-level applications, and only provide a data input interface for user applications, without paying attention to the resource scheduling of the underlying co-intelligent processor.

[0048] At the same time, the switch domain host can use dynamic monitoring to perceive the computing resources of the downstream co-intelligent processor in real time, that is, using the shared memory communication method, a shared memory is allocated to each other host and all EPs on the two switch domain hosts, and the EP writes its own usage status and resource quantity into the memory, and the host writes instructions and other information into the corresponding shared memory. For example, when each PC I e switch domain is connected to 3 divided co-intelligent processors, 7 segments of shared memory can be set, belonging to local node 1, local node 2, local node 3, host 2, cross-domain node 1, cross-domain node 2, and cross-domain node 3. The local domain node writes the XX_POI NT_BUSY / FREE instruction to the corresponding shared memory area every 200ms, and the master node reads the value in the shared memory every 205ms. When the XX_POI NT_FREE command is obtained, it indicates that the computing resources of the node are idle. When the XX_POI NT_BUSY instruction is obtained, it indicates that the node resources are being used. At this time, the host writes the resource value inquiry instruction XX_POI NT_LEVEL to the corresponding shared memory area, and waits for the slave node to reply to the instruction after writing, so as to obtain the number of idle NPU cores of the slave node and perceive the progress of the underlying computing tasks in real time through shared memory.

[0049] Furthermore, the above intelligent computing resource agile dynamic allocation method, see Figure 1 and Figure 2 As shown, it also includes:

[0050] S2. According to the task amount and computing resources of the task, design the computing resource allocation mode including the exchange domain private mode, the single spanning occupation mode and the cross-border occupation mode. Specifically, the computing resource allocation mode is designed based on the principle of minimum resource overhead.

[0051] S3. Design mode selection logic, including:

[0052] S31, when the amount of tasks received by the domain is defined to be less than or equal to the computing resources of the domain, the computing resources of the domain are dynamically allocated using the exchange domain private mode;

[0053] S32, defining that when the amount of tasks received by the domain is greater than the computing resources of the domain, and the computing resources of the other domain are greater than the difference between the amount of tasks and the computing resources of the domain, the computing resources of the domain and the other domain are dynamically allocated using a single-span occupancy mode;

[0054] S33. Define that when the domain receives a new task while executing the task assigned by the other domain, a cross-border occupancy mode is used to dynamically allocate computing resources of the domain and the other domain, thereby completing the construction of the mode selection logic.

[0055] Furthermore, in the above step S32, when it is defined that the amount of tasks received by the local domain is greater than the computing resources of the local domain, and the computing resources of the other domain are greater than the difference between the amount of tasks and the computing resources of the local domain, the computing resources of the local domain and the other domain are dynamically allocated using a single spanning occupation mode, including:

[0056] S321, defining that when the amount of tasks received by the domain is greater than the amount of remaining resources in the domain, and any one of the sub-computing resources of the other domain is greater than the difference between the amount of tasks in the domain and the computing resources, a single-span occupancy mode is used to dynamically allocate computing resources of the domain and the other domain;

[0057] S322. When the amount of tasks received by this domain is defined to be greater than the amount of remaining resources in this domain, and all sub-computing resources in the other domain are less than the difference between the amount of tasks and the computing resources of this domain, it is determined whether the task can be split. If the task can be split, the computing resources of this domain and the other domain are dynamically allocated using a single-span occupancy mode. If the task cannot be split, the task is put into a waiting state.

[0058] Specifically, in the above steps S31 to S33, the dynamic allocation of computing resources specifically includes the following process, wherein the two exchange domain hosts can be distinguished by the cross-domain host and the task host respectively:

[0059] (1) Estimate the current task amount of the current task received by the task host. If the resource N required by the task (i.e., the task amount, i.e., the current task amount in steps S61 to S64 below) is less than the computing resource M perceived in the current domain (i.e., the computing resource, i.e., the current total computing resource in steps S61 to S64 below), i.e., N<M, the resource scheduling scheduler starts the exchange domain private mode, i.e., completes the task scheduling allocation in the current domain;

[0060] (2) According to the current task volume, if the resource N required by the task is greater than the computing resource M in the domain perceived at this moment, that is, N>M, the resource scheduling scheduler starts the single-span occupancy mode and writes the required resource NM value (i.e., the difference) into the shared memory area between the cross-domain host and the task host. After the cross-domain host receives the task request of this value, it compares it with the perceived domain resource value P at this moment (i.e., the current sub-computing resource in the following steps S61 to S64). If NM<P, the idle slave node authority is released, and the task host accesses the cross-domain slave node resources through the NT port to implement task deployment.

[0061] (3) If NM>P, the cross-domain host writes the P value into the shared memory to inform the task host with the task. The resource scheduling scheduler of the task host then determines whether the task can be further split. If it can be split, the NMP resources are split and distributed to the cross-domain host. The host continues to perceive the resources of the local node in real time and inquires the cross-domain host about the remaining resource value in real time through the shared memory. When there are idle resources, they are allocated immediately.

[0062] (4) If a single-span event is occurring, and the spanned host receives a new computing task with a required resource value of Q, it senses the resource value of the domain at this moment, R. If Q>R, it needs to inform the other host of the required resource value QR through shared memory. If the other host senses the resource value at this moment as S, and S>QR, a cross-span occupancy mode occurs, and the resource orchestration scheduler scheduling task is more complicated.

[0063] (5) When all tasks have completed their computing tasks, all co-intelligent processors write XX_POI NT_FREE commands to their corresponding switch domain hosts to release sub-resources and to return the usage rights of the slave nodes to the switch domain hosts in the same domain after single-span occupation or cross-border occupation occurs.

[0064] Furthermore, in the above step S5, the PCIe switch domain writes the current resource information of the domain into the shared memory according to the first set period, and obtains the current resource information of the other domain from the shared memory according to the second set period, including:

[0065] S51, each of the co-intelligent processors connected downstream of the PCIe switch domain reports the current usage status and the current sub-computing resources according to the first set period, obtains the current total computing resources according to the current sub-computing resources of all the co-intelligent processors connected downstream of the PCIe switch domain, and writes the current total computing resources and the current usage status and the current sub-computing resources of each co-intelligent processor into the shared memory as the current resource information of the local domain;

[0066] S52: The PCIe switch domain obtains the current resource information of the counterpart domain according to the second set period.

[0067] Furthermore, in the above step S6, the PCIe switch domain selects a computing resource allocation mode according to the current task amount, the current resource information of the local domain and the current resource information of the other domain according to the mode selection logic to dynamically allocate computing resources, including:

[0068] S61, the PCIe switch domain estimates the received current task to obtain the current task amount, and obtains the current total computing resources and current sub-computing resources of the domain;

[0069] S62: When the current task amount of the domain is less than or equal to the current total computing resources, select the exchange domain private mode to dynamically allocate the current total computing resources of the domain;

[0070] S63, when the current task amount of the local domain is greater than the current total computing resources, and the difference between the current task amount of the local domain and the current total computing resources is less than any one of the current sub-computing resources in the other domain, select the single-span occupancy mode to dynamically allocate computing resources of the local domain and the other domain;

[0071] S64. When the current task volume of this domain is greater than the current total computing resources, and all current sub-computing resources in the other domain are less than the difference between the current task volume of this domain and the current total computing resources, determine whether the current task of this domain can be split. If it can be split, select the single-span occupancy mode to dynamically allocate the computing resources of this domain and the other domain. If it cannot be split, perform task waiting.

[0072] Based on the same inventive concept, an intelligent computing resource agile dynamic allocation system is also provided in an embodiment of the present invention, as described in the following embodiments. Since the principle of solving the problem by the intelligent computing resource agile dynamic allocation system is similar to the intelligent computing resource agile dynamic allocation method provided in the above embodiments, the implementation of the intelligent computing resource agile dynamic allocation system can refer to the implementation of the intelligent computing resource agile dynamic allocation method, and the repeated parts will not be repeated. As used below, the term "unit" or "module" can be a combination of software and / or hardware that implements predetermined functions. Although the device described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceived.

[0073] An embodiment of the present invention discloses an intelligent computing resource agile dynamic allocation system, which includes two PCIe switch domains, a communication module, a resource writing module, a resource reading module and a computing resource dynamic allocation module. The structure is described below.

[0074] The two PCIe switch domains are connected via an NT port, the PCIe switch domain includes a switch domain host and a plurality of co-intelligent processors, the host is provided with a resource planning and scheduling scheduler, and the resource planning and scheduling scheduler is located between the co-intelligent processor and the user end;

[0075] The communication module is used to establish a communication link between the two PCIe switch domains;

[0076] The resource writing module is used to write the current total computing resources of the PCIe switch domain and the current usage status and current sub-computing resources of each downstream co-intelligent processor into the shared memory according to the first set period;

[0077] The resource reading module is used to obtain the current total computing resources of the other domain and the current usage status and current sub-computing resources of each downstream co-intelligent processor from the shared memory according to a second set period, and the first set period is less than the second set period;

[0078] The computing resource dynamic allocation module is used for the PCIe switch domain to dynamically allocate computing resources by selecting a computing resource allocation mode according to the mode selection logic based on the current task volume, the current resource information of the domain and the current resource information of the other domain.

[0079] The method of the present invention constructs two PCIe switching domains on the user side, each switching domain is equipped with a switching domain host and multiple co-intelligent processors, and NT (non-transparent) port communication is mapped between the two PCIe switching domains. At the same time, a resource planning and scheduling scheduler is designed in each switching domain host to realize the shielding of underlying resources. By constructing a resource exchange network, the underlying resource value is perceived in real time in a shared memory communication mode, and the switching domain private, single-spanning occupation, cross-border occupation and other modes are flexibly configured. The present invention solves the problems of low computing power resources, inflexible resource scheduling, insufficient utilization of resources and complicated upper-layer application design in the existing edge embedded intelligent computing center. By constructing a shieldable resource planning and scheduling scheduler, the load balancing of computing resources in the intelligent computing center is improved, and resources are flexibly scheduled. At the same time, the dual switching domain cross-connection communication mode is used to improve the computing power configuration.

[0080] In this embodiment, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, any of the above-mentioned intelligent computing resource agile dynamic allocation methods is implemented.

[0081] Specifically, the computer device may be a computer terminal, a server or a similar computing device.

[0082] In this embodiment, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program for executing any of the above-mentioned intelligent computing resource agile dynamic allocation methods.

[0083] Specifically, computer-readable storage media include permanent and non-permanent, removable and non-removable media that can store information by any method or technology. Information can be computer-readable instructions, data structures, program modules or other data. Examples of computer-readable storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer-readable storage media does not include transitory media such as modulated data signals and carrier waves.

[0084] Obviously, those skilled in the art should understand that the modules or steps of the above-mentioned embodiments of the present invention can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, and optionally, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that here, or they can be made into individual integrated circuit modules, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. In this way, the embodiments of the present invention are not limited to any specific combination of hardware and software.

[0085] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the embodiments of the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A method for agile dynamic allocation of intelligent computing resources, characterized in that: The method comprises: Connecting two PCIe switch domains on the user side to establish a communication link between the two PCIe switch domains; The PCIe switch domain writes the current resource information of the domain into the shared memory according to a first set period, and obtains the current resource information of the other domain from the shared memory according to a second set period, wherein the first set period is smaller than the second set period; The PCIe switch domain selects a computing resource allocation mode according to the current task amount, the current resource information of the domain and the current resource information of the other domain, and performs dynamic allocation of computing resources according to the mode selection logic.

2. The method for agile dynamic allocation of intelligent computing resources according to claim 1, characterized in that: The method further comprises: Construct a shared memory and two PCIe switch domains, each of the PCIe switch domains includes a switch domain host, the switch domain host includes a resource planning and orchestration scheduler, one end of the switch domain host is connected to the user end, and the other end is connected to each of the downstream co-intelligent processors, and the resource planning and orchestration scheduler is connected to the shared memory.

3. The method for agile dynamic allocation of intelligent computing resources according to claim 1, characterized in that: The method further comprises: According to the task amount and computing resources of the task, design the computing resource allocation mode including the exchange domain private mode, the single span occupation mode and the cross-border occupation mode; When the amount of tasks received by this domain is defined to be less than or equal to the computing resources of this domain, the computing resources of this domain are dynamically allocated using the exchange domain private mode; when the amount of tasks received by this domain is defined to be greater than the computing resources of this domain, and the computing resources of the other domain are greater than the difference between the amount of tasks of this domain and the computing resources, the computing resources of this domain and the other domain are dynamically allocated using the single-span occupation mode. When this domain is defined to receive new tasks while executing tasks assigned by the other domain, the computing resources of this domain and the other domain are dynamically allocated using the cross-border occupation mode, thereby completing the construction of the mode selection logic.

4. The method for agile dynamic allocation of intelligent computing resources according to claim 3, characterized in that: It is defined that when the amount of tasks received by the domain is greater than the computing resources of the domain, and the computing resources of the other domain are greater than the difference between the amount of tasks and the computing resources of the domain, the computing resources of the domain and the other domain are dynamically allocated using a single spanning occupation mode, including: It is defined that when the amount of tasks received by the domain is greater than the amount of remaining resources in the domain, and any of the sub-computing resources of the other domain is greater than the difference between the amount of tasks and the computing resources of the domain, the computing resources of the domain and the other domain are dynamically allocated using the single-span occupancy mode; It is defined that when the amount of tasks received by this domain is greater than the remaining resources of this domain, and all sub-computing resources in the other domain are less than the difference between the amount of tasks and the computing resources of this domain, it is judged whether the task can be split. If the task can be split, the computing resources of this domain and the other domain are dynamically allocated using a single-span occupancy mode. If the task cannot be split, the task is waited.

5. The method for agile dynamic allocation of intelligent computing resources according to any one of claims 1 to 4, characterized in that: The PCIe switch domain writes the current resource information of the domain into the shared memory according to the first set period, and obtains the current resource information of the other domain from the shared memory according to the second set period, including: Each of the co-intelligent processors connected downstream of the PCIe switch domain reports the current usage status and the current sub-computing resources according to the first set period, obtains the current total computing resources according to the current sub-computing resources of all the co-intelligent processors connected downstream of the PCIe switch domain, and writes the current total computing resources and the current usage status and the current sub-computing resources of each co-intelligent processor into the shared memory as the current resource information of the domain; The PCIe switch domain obtains the counterpart domain current resource information of the counterpart domain according to the second set period.

6. The method for agile dynamic allocation of intelligent computing resources according to claim 3 or 4, characterized in that: The PCIe switch domain selects a computing resource allocation mode according to a current task amount, current resource information of the domain, and current resource information of the other domain, and performs dynamic allocation of computing resources according to a mode selection logic, including: The PCIe switch domain estimates the received current task to obtain the current task amount, and acquires the current total computing resources and current sub-computing resources of the domain; When the current task amount of the domain is less than or equal to the current total computing resources, selecting the exchange domain private mode to dynamically allocate the current total computing resources of the domain; When the current task amount of the local domain is greater than the current total computing resources, and the difference between the current task amount of the local domain and the current total computing resources is less than any one of the current sub-computing resources in the other domain, a single-span occupancy mode is selected to dynamically allocate computing resources of the local domain and the other domain; When the current task volume of this domain is greater than the current total computing resources, and all current sub-computing resources in the other domain are less than the difference between the current task volume of this domain and the current total computing resources, it is judged whether the current task of this domain can be split. If it can be split, the single-span occupancy mode is selected to dynamically allocate the computing resources of this domain and the other domain. If it cannot be split, the task is waited.

7. An intelligent computing resource agile dynamic allocation system, characterized in that: include: Two PCIe switch domains, the two PCIe switch domains are connected via NT ports, the PCIe switch domains include a switch domain host and multiple co-intelligent processors, the host is provided with a resource planning and scheduling scheduler, and the resource planning and scheduling scheduler is located between the co-intelligent processor and the user end; A communication module, the communication module is used to establish a communication link between the two PCIe switch domains; A resource writing module, the resource writing module is used to write the current total computing resources of the PCIe switch domain and the current usage status and current sub-computing resources of each downstream co-intelligent processor into the shared memory according to a first set period; A resource reading module, the resource reading module is used to obtain the current total computing resources of the other domain and the current usage status and current sub-computing resources of each downstream co-intelligent processor from the shared memory according to a second set period, wherein the first set period is less than the second set period; A computing resource dynamic allocation module is used for the PCIe switch domain to dynamically allocate computing resources by selecting a computing resource allocation mode according to a mode selection logic based on the current task volume, the current resource information of the domain and the current resource information of the other domain.

8. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method for agile dynamic allocation of intelligent computing resources described in any one of claims 1 to 6 is implemented.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program for executing the method for agile dynamic allocation of intelligent computing resources according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Method and device for realizing pooling of distributed I / O (Input / Output) resources

    CN103353861A

  • Resource management for peripheral component interconnect-express domains

    CN105408879A

  • Virtual machine data communication method and system, and virtual machine configuration method and apparatus

    CN109445905A

  • Calculation resource aggregation method and system based on pooling memory

    CN118519753A

  • SYSTEM, DEVICE AND METHOD FOR GENERATING AND TRANSMITTING FLITS OF VARIOUS PROTOCOLS IN DIFFERENT MODES

    DE112013007842B3