Method, apparatus, and electronic device for matching load and computing resources
By building a binary neural network structure and using hard constraints and numerical features to match load and computing resources, the problem of low matching efficiency of load and computing resources in hybrid architecture cloud computing platform is solved, and efficient matching across architectures is achieved.
Patent Information
- Application Number
- CN202211686678.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-27
- Publication Date
- 2025-08-05
- Estimated Expiration
- 2042-12-27
AI Technical Summary
In the prior art, the matching efficiency between load and computing resources is low, especially in cloud computing platforms with hybrid architectures, the heterogeneity between load and computing resources leads to low matching efficiency.
A binary neural network structure is constructed, and the output layer neurons of the load branch and the computing resource branch are arranged in the same order. The load and computing resources are matched by matching branches, and feature extraction and matching are used using hard constraints and numerical features.
It improves the matching efficiency of load and computing resources, realizes effective matching of load and computing resources across architectures, and improves the accuracy and efficiency of matching.
Smart Images

Figure CN116126524B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of neural network models, and more specifically, to a method, device, computer-readable storage medium, processor, and electronic device for matching load and computing resources. Background Art
[0002] In the hybrid cloud and even cloud computing fields, existing technologies cover a wide range of workload deployment and scheduling. However, matching workloads with computing resources generally employs simple matching methods, such as finding computing resources that can meet a workload's maximum resource requirements. However, hybrid cloud computing platforms include resource pools with various architectures, each containing a variety of server resources. This results in significant heterogeneity in the matching of workloads and computing resources. Specifically, workloads and computing resources are not homogeneous; they must interact with each other, rather than directly calculating the similarity between them. Summary of the Invention
[0003] The main purpose of this application is to provide a method, device, computer-readable storage medium, processor and electronic device for matching load and computing resources to solve the problem of low efficiency in matching load and computing resources in the prior art.
[0004] According to one aspect of an embodiment of the present invention, a method for matching load and computing resources is provided, the method comprising: constructing a two-branch neural network structure, wherein the two branches of the two-branch neural network structure are a load branch and a computing resource branch, and the arrangement order of neurons in the output layer of the load branch is the same as the arrangement order of neurons in the output layer of the computing resource branch; matching the load branch and the computing resource branch to match the load and the computing resource.
[0005] Optionally, matching the load branch and the computing resource branch includes: obtaining a first neuron group output by the load branch, the first neuron group including at least one neuron output by the load branch; obtaining a second neuron group output by the computing resource branch, the second neuron group including at least one neuron output by the computing resource branch; inputting the first neuron group and the second neuron group into a matching branch; and using the matching branch to match the neurons of the first neuron group with the neurons of the second neuron group.
[0006] Optionally, the matching branch is used to match the neurons of the first neuron group with the neurons of the second neuron group, including: obtaining a third neuron group of the input layer of the load branch, the third neuron group including at least one neuron of the input layer of the load branch; obtaining a fourth neuron group of the input layer of the computing resource branch, the fourth neuron group including at least one neuron of the input layer of the computing resource branch; and according to the third neuron group and the fourth neuron group, using the matching branch to match the neurons of the first neuron group with the neurons of the second neuron group.
[0007] Optionally, each neuron of the output layer of the load branch corresponds to a feature of the input layer of the load branch, and each neuron of the output layer of the computing resource branch corresponds to a feature of the input layer of the computing resource branch.
[0008] Optionally, the final output layer of the two-branch neural network structure is used to output a matching degree, and the matching degree is used to characterize the matching degree between the load branch and the computing resource branch.
[0009] Optionally, the input layer of the load branch is the number of each resource required by the load branch, or the vector corresponding to the text of each resource required by the load branch, and the input layer of the computing resource branch is the number of each resource that the computing resource branch can provide, or the vector corresponding to the text of each resource that the computing resource branch can provide.
[0010] According to another aspect of an embodiment of the present invention, a device for matching load and computing resources is also provided, which includes a construction unit and a matching unit. The construction unit is used to construct a two-branch neural network structure, wherein the two branches of the two-branch neural network structure are a load branch and a computing resource branch, and the arrangement order of neurons in the output layer of the load branch is the same as the arrangement order of neurons in the output layer of the computing resource branch; the matching unit is used to match the load branch and the computing resource branch to match the load and the computing resource.
[0011] According to another aspect of an embodiment of the present invention, a computer-readable storage medium is further provided, wherein the computer-readable storage medium includes a stored program, wherein the program executes any one of the methods for matching loads and computing resources.
[0012] According to another aspect of an embodiment of the present invention, a processor is further provided, wherein the processor is used to run a program, wherein the program executes any one of the methods for matching loads and computing resources when running.
[0013] According to another aspect of an embodiment of the present invention, an electronic device is also provided, which includes one or more processors, a memory and one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs include a method for executing any one of the load and computing resource matching methods.
[0014] In an embodiment of the present invention, a two-branch neural network structure is constructed, thereby constructing a QA architecture to match the load branch and the computing resource branch, thereby improving the matching efficiency and solving the problem of low efficiency in matching load and computing resources in the prior art. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] The drawings that constitute part of this application are used to provide a further understanding of this application. The illustrative embodiments of this application and their descriptions are used to explain this application and do not constitute an improper limitation on this application. In the drawings:
[0016] Figure 1 A flow chart showing a method for matching load and computing resources according to an embodiment of the present application is shown;
[0017] Figure 2 A schematic diagram of a device for matching load and computing resources according to an embodiment of the present application is shown. DETAILED DESCRIPTION
[0018] It should be noted that, in the absence of conflict, the embodiments and features of the embodiments in this application can be combined with each other. The present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0019] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.
[0020] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present application described here. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0021] It should be understood that when an element (such as a layer, film, region, or substrate) is described as being "on" another element, the element may be directly on the other element or intervening elements may be present. Moreover, in the specification and claims, when it is described that an element is "connected to" another element, the element may be "directly connected to" the other element or "connected to" the other element through a third element.
[0022] As mentioned in the background technology, a cloud computing platform with a hybrid architecture includes resource pools of multiple architectures, and each resource pool includes various server resources. This makes the matching of load and computing resources show obvious heterogeneity, that is, the load and computing resources do not belong to the same type of things, and the two cooperate with each other, and the similarity between the load and computing resources should not be directly calculated. In order to solve the problem of low efficiency in the matching of load and computing resources in the prior art, in a typical embodiment of the present application, a method, device, computer-readable storage medium, processor and electronic device for matching load and computing resources are provided.
[0023] According to an embodiment of the present application, a method for matching load and computing resources is provided.
[0024] Figure 1 FIG is a flow chart of a method for matching load and computing resources according to an embodiment of the present application. Figure 1 As shown, the method includes the following steps:
[0025] Step S101, constructing a two-branch neural network structure, wherein the two branches of the two-branch neural network structure are a load branch and a computing resource branch, and the arrangement order of neurons in the output layer of the load branch is the same as the arrangement order of neurons in the output layer of the computing resource branch;
[0026] Step S102: Match the load branch and the computing resource branch to match the load and the computing resource.
[0027] In the above steps, by constructing a two-branch neural network structure, a QA architecture is constructed to match the above load branch and the above computing resource branch, thereby improving the matching efficiency and solving the problem of low efficiency in matching load and computing resources in the existing technology.
[0028] Some neurons in the input layers of the load and computing resource branches must meet hard constraints. These hard constraints arise from numerical constraints imposed when matching the load and computing resources. For example, if the remaining storage space of the computing resource exceeds the storage requirements of the load, the workload will not run if the remaining storage space is insufficient, even if it is only a few MB short. However, most numerical features of the load and computing resource matching do not require hard constraints. For example, the workload can run even if the bandwidth or CPU frequency requirements are slightly reduced. Only numerical constraints that must be met are added to the matching branch. These hard constraints are added separately to the matching branch. Hard constraints, primarily those related to storage space, must be met; otherwise, the computation cannot proceed. Therefore, the upper limit of the hard constraints is used.
[0029] In one embodiment of the present application, matching the load branch and the computing resource branch includes: obtaining a first neuron group output by the load branch, the first neuron group including at least one neuron output by the load branch; obtaining a second neuron group output by the computing resource branch, the second neuron group including at least one neuron output by the computing resource branch; inputting the first neuron group and the second neuron group into a matching branch; and matching the neurons of the first neuron group with the neurons of the second neuron group using the matching branch.
[0030] Specifically, for example, 3 neurons are taken from the neurons output by the load branch, and 3 neurons are taken from the neurons output by the above-mentioned computing resource branch, and these 6 neurons are input into the value matching branch at the same time, and the matching branch is used to match these 6 neurons.
[0031] In one embodiment of the present application, the matching branch is used to match the neurons of the first neuron group and the neurons of the second neuron group, including: obtaining a third neuron group of the input layer of the load branch, the third neuron group including at least one neuron of the input layer of the load branch; obtaining a fourth neuron group of the input layer of the computing resource branch, the fourth neuron group including at least one neuron of the input layer of the computing resource branch; and according to the third neuron group and the fourth neuron group, matching the neurons of the first neuron group and the neurons of the second neuron group using the matching branch.
[0032] Specifically, by using neurons in the input layer to join the matching work of the neurons of the above-mentioned first neuron group and the neurons of the above-mentioned second neuron group, a reference value is provided for the matching branch, thereby improving the accuracy of the matching branch in matching the neurons of the above-mentioned first neuron group and the neurons of the above-mentioned second neuron group.
[0033] In one embodiment of the present application, matching the load branch and the computing resource branch includes: obtaining a first value output by the load branch; obtaining a second value output by the computing resource branch; inputting the first value and the second value into a matching branch; and matching the first value and the second value using the matching branch.
[0034] Based on a two-branch neural network, the matching problem of load and computing resources in cross-architecture hybrid clouds is handled. The load branch is used to extract the feature representation of the load, and the computing resource branch is used to extract the feature representation of the computing resource. This allows cross-architecture loads and cross-architecture computing resources to use two unified branches for feature extraction, and realizes cross-architecture support for load and computing resource matching.
[0035] Based on the matching branch above the two branches, the load characteristics and computing resource characteristics are matched to obtain a numerical matching result. This enables comparable numerical results for cross-architecture matching. The hard constraint also associates the load branch and the computing resource branch in the matching branch. Since the neural networks of the two branches will map the numerical values or vectors of the original inputs, the numerical pairs in the original inputs of the two branches that must meet a specific numerical relationship (for example, the disk space value of the load is less than or equal to the disk space value of the computing resource) should not be mapped through the neural network of the two branches, but directly added to the matching branch for numerical comparison. This implementation method avoids the disadvantage that the traditional two-branch structure cannot directly compare the original input across branches, and improves the accuracy of matching.
[0036] In one embodiment of the present application, the output matching branches of the load branch and the computing resource branch, and the input matching branches of the load branch and the computing resource branch, each of which further receives hard constraint inputs, wherein the hard constraint inputs are numerical features. By setting hard constraints, the matching branches are made to perform matching closer to expectations.
[0037] In one embodiment of the present application, each neuron of the output layer of the above-mentioned load branch corresponds to a feature of the input layer of the above-mentioned load branch, and each neuron of the output layer of the above-mentioned computing resource branch corresponds to a feature of the input layer of the above-mentioned computing resource branch.
[0038] To support both numerical and textual features of loads and computing resources, the load and computing resource branches are further subdivided into the load numerical branch and the load textual branch; and the computing resource branch is further subdivided into the computing resource numerical branch and the computing resource textual branch. This incorporates textual descriptions, which were previously difficult to match, into the feature range.
[0039] For numerical features, the same features of different architectures are comparable. For example, for processor instruction sets, the X86 architecture and the ARM architecture can be used as discrete numerical features, represented by "1" and "2". For another example, for processor frequency, continuous numerical features can be used directly, using the number before GHz to represent it. For text features, it is difficult to compare different architectures. On the one hand, text descriptions have a long tail, and the keywords extracted from text descriptions are diverse and numerous, but the frequency is not high. On the other hand, text descriptions have semantic characteristics such as the ambiguity of natural language, and need to be processed with the help of text semantic models.
[0040] If the above text features are further subdivided into computing capability text features, storage capability text features, and network capability text features, the matching degree of the computing capability text features, the matching degree of the storage capability text features, and the matching degree of the network capability text features can be calculated respectively.
[0041] The numerical features of load and computing resources can be easily represented as vectors. Both numerical features consist of the following components: computing power, storage capacity, and network capacity. By arranging the numerical features of different resource types, we can obtain the input vector of numerical features: [computing power, storage capacity, network capacity]. These components, as well as their subfeatures, can be organized into vectors in order. Suppose the computing power feature consists of two subfeatures: CPU frequency and CPU utilization. Suppose the storage capacity feature consists of two subfeatures: memory size and hard disk size. Suppose the network capacity feature consists of two subfeatures: bandwidth and network latency. These subfeatures can be placed in the corresponding positions of the vector in order. The numerical feature vectors of both load and computing resources can then be represented as: [CPU frequency, CPU utilization, CPU frequency, CPU utilization, bandwidth, network latency]. Each subfeature can be represented as a vector of a specific dimension length. If the vector dimension used by the above six sub-features is 1, that is, all six sub-features are represented by one numerical value, then the numerical feature vector composed of the six sub-features is a vector with a dimension of 6; if the vector dimensions used by the above six sub-features are d1, d2, d3, d4, d5, and d6 respectively, then the numerical feature vector composed of the six sub-features is a vector with a dimension of d1+d2+d3+d4+d5+d6.
[0042] If the above numerical features are further subdivided into computing power numerical features, storage capacity numerical features, and network capacity numerical features, the matching degree of the computing power numerical features, the matching degree of the storage capacity numerical features, and the matching degree of the network capacity numerical features can be calculated respectively.
[0043] From the perspective of computer task execution, the resources required by the above loads and the resources that the above computing resources can provide can be divided into the following categories: computing power, storage capacity, network capacity, etc.
[0044] Computing power includes resources such as the central processing unit (CPU) and graphics processing unit (GPU). Its physical measurement indicator is processor frequency, and its unit is Hertz (Hz). The computing power already in use includes processor utilization (including CPU utilization, GPU utilization, etc.). The above computing power characteristics are numerical characteristics. The above computing power characteristics also include computing power scalability (elasticity). The scalability characteristics of the above computing power refer to the ability of computing power to increase and decrease as needed. Scalability characteristics can be artificially divided into different levels. Since the above grading process is relatively subjective and there are no specific quantitative indicators, it is used as a text feature, for example: high scalability; for example: the resource pool does not support automatic expansion; etc. The above computing power characteristics are non-numerical features.
[0045] Storage capacity includes memory, hard disks, and other storage capabilities. Its physical metric is the size of the storage space, measured in bits. Storage capacity characteristics also include disk bandwidth (throughput) and input / output per second (IOPS). Disk bandwidth can be divided into disk read bandwidth and disk write bandwidth. IOPS refers to the number of input / output requests that the storage system can process per unit time. In-use storage capacity characteristics include disk utilization. These storage capacity characteristics are numerical. Storage capacity characteristics also include scalability and disaster recovery capabilities. The scalability feature of storage capacity refers to the ability to increase or decrease computing power as needed. Similar to the scalability feature of computing power, it is a non-numerical feature and can be expressed as text. The disaster recovery feature of storage capacity requires a comprehensive consideration of both numerical and non-numerical characteristics. Numerical characteristics include recovery time objectives (RTO) and recovery point objectives (RPO). Both are time-dependent features. It also includes the recovery reliability objective (RRO) and the recovery integrity objective (RIO). Both of these metrics are numerical proportions or probabilities. However, numerical characteristics such as RTP, RPO, RRO, and RIO require multiple disaster recovery tests to calculate, which inherently presents statistical difficulties. The disaster recovery capability characteristics of the aforementioned storage capacity can also be represented by non-numerical features, such as the distance to the disaster recovery site and the disaster recovery level. The distance to the disaster recovery site, for example, can be local or remote. The disaster recovery level refers to the degree to which disaster recovery can be achieved; this level can be categorized vertically across the data, application, and business levels, or it can be the seven levels of disaster recovery defined by the international SHARE78 standard. Due to the numerous factors influencing these disaster recovery capability characteristics, descriptions of disaster recovery capabilities are largely based on accumulated experience. Therefore, they are represented as textual features, such as "having hot standby" or "regular database backups." The aforementioned storage capacity characteristics such as scalability and disaster recovery capability are non-numerical features.
[0046] Network capabilities include metrics such as network speed (bandwidth), network latency, jitter, and packet loss rate. Network speed measures the maximum amount of data that can be transmitted from one point in the network to another in a unit of time, measured in bits per second (bps). Network latency refers to the time required to travel from one point in the network to another, measured in seconds. Jitter is the difference between the maximum and minimum latency. Packet loss rate refers to the proportion of data packets that fail to reach their destination. Network capability characteristics can be numerical. Similar to some of the aforementioned characteristics of computing resources and storage capacity, characteristics such as packet loss rate and jitter require multiple tests to obtain, which inherently presents statistical challenges. Network capability characteristics can be described through empirical experience. These characteristics can be expressed as textual features, for example: network latency is higher during peak data usage times; the probability of connection failure is higher when using wireless networks. Network capability quality characteristics such as packet loss rate, jitter, and even network quality and latency can be non-numerical.
[0047] Operating systems include common operating systems such as Windows Server, Linux, and Unix. Databases include common databases such as Oracle, MySQL, and SQL Server. Middleware, such as message processing and transaction processing middleware, sits above the operating system, network, and database, and underlies the application software. Software services include software for various application areas. Operating systems and databases represent relatively common workload and computing resource characteristics. The workload's configuration requirements for the operating system and database serve as features, while the operating system and database capabilities provided by the computing resources serve as features. Middleware and software services also exhibit a long tail, meaning they are diverse and infrequent, making them difficult to fully analyze in advance. For these long-tail features, text descriptions are appropriate. For example, if a workload requires a PHP version greater than 5.7, a feature field for this PHP version requirement is already prepared. Therefore, this feature is used as a text description. Using text feature extraction, keywords such as "PHP," "version," and "5.7" are extracted and further represented as text features.
[0048] In one embodiment of the present application, the final output layer of the two-branch neural network structure is used to output a matching degree, and the matching degree is used to characterize the matching degree between the load branch and the computing resource branch.
[0049] In one embodiment of the present application, the input layer of the load branch is the number of resources required by the load branch, and the input layer of the computing resource branch is the number of resources that can be provided by the computing resource branch. The number of various resources required by the load, such as the number of CPUs required, the amount of memory required, etc., and the number of resources that the computing resources (virtual machines) can currently provide, such as the number of CPUs and the amount of memory, are input to the load branch as a line of demand, while the computing resource branch inputs the remaining amount as a line of remaining amount. The role of the two-branch neural network structure is to generally match the load branch with the computing resource branch.
[0050] It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and that, although a logical order is shown in the flowcharts, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0051] The present application also provides a device for matching loads and computing resources. It should be noted that the device for matching loads and computing resources in the present application can be used to execute the method for matching loads and computing resources provided in the present application. The following describes the device for matching loads and computing resources provided in the present application.
[0052] Figure 2 Schematic diagram of a device for matching load and computing resources according to an embodiment of the present application. Figure 2 As shown, the device includes a construction unit 21 and a matching unit 22; the construction unit 21 constructs a two-branch neural network structure, wherein the two branches of the two-branch neural network structure are a load branch and a computing resource branch, and the arrangement order of neurons in the output layer of the load branch is the same as the arrangement order of neurons in the output layer of the computing resource branch; the matching unit 22 matches the load branch and the computing resource branch to match the load and the computing resource.
[0053] In the above-mentioned device, a two-branch neural network structure is constructed, thereby constructing a QA architecture to match the above-mentioned load branch and the above-mentioned computing resource branch, thereby improving the matching efficiency and solving the problem of low efficiency in matching load and computing resources in the existing technology.
[0054] In one embodiment of the present application, the matching unit includes a first acquisition module, a second acquisition module, an input module and a matching module, the first acquisition module is used to acquire the first neuron group output by the above-mentioned load branch, and the above-mentioned first neuron group includes at least one neuron output by the above-mentioned load branch; the second acquisition module is used to acquire the second neuron group output by the above-mentioned computing resource branch, and the above-mentioned second neuron group includes at least one neuron output by the above-mentioned computing resource branch; the input module is used to input the above-mentioned first neuron group and the above-mentioned second neuron group into the matching branch; the matching module is used to use the above-mentioned matching branch to match the neurons of the above-mentioned first neuron group with the neurons of the above-mentioned second neuron group.
[0055] In one embodiment of the present application, the matching module includes a first acquisition submodule, a second acquisition submodule and a matching submodule, the first acquisition submodule is used to acquire the third neuron group of the input layer of the above-mentioned load branch, and the above-mentioned third neuron group includes at least one neuron of the input layer of the above-mentioned load branch; the second acquisition submodule is used to acquire the fourth neuron group of the input layer of the above-mentioned computing resource branch, and the above-mentioned fourth neuron group includes at least one neuron of the input layer of the above-mentioned computing resource branch; the matching submodule is used to match the neurons of the above-mentioned first neuron group and the neurons of the above-mentioned second neuron group using the above-mentioned matching branch based on the above-mentioned third neuron group and the above-mentioned fourth neuron group.
[0056] In one embodiment of the present application, the output matching branch of the above-mentioned load branch and the above-mentioned computing resource branch and the input matching branch of the above-mentioned load branch and the above-mentioned computing resource branch, the above-mentioned output matching branch and the above-mentioned input matching branch also receive hard constraint input, and the input of the above-mentioned hard constraint is a numerical feature.
[0057] In one embodiment of the present application, each neuron of the output layer of the above-mentioned load branch corresponds to a feature of the input layer of the above-mentioned load branch, and each neuron of the output layer of the above-mentioned computing resource branch corresponds to a feature of the input layer of the above-mentioned computing resource branch.
[0058] In one embodiment of the present application, the final output layer of the two-branch neural network structure is used to output a matching degree, and the matching degree is used to characterize the matching degree between the load branch and the computing resource branch.
[0059] In one embodiment of the present application, the input layer of the load branch is the quantity of each resource required by the load branch, and the input layer of the computing resource branch is the quantity of each resource that can be provided by the computing resource branch.
[0060] The above-mentioned load and computing resource matching device includes a processor and a memory. The above-mentioned construction unit and matching unit, etc. are all stored in the memory as program units, and the processor executes the above-mentioned program units stored in the memory to realize corresponding functions.
[0061] The processor includes a kernel, which retrieves the corresponding program unit from the memory. One or more kernels can be set, and the problem of low efficiency in matching load and computing resources in the existing technology can be solved by adjusting kernel parameters.
[0062] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.
[0063] An embodiment of the present invention provides a computer-readable storage medium having a program stored thereon, which implements the above-mentioned method for matching loads and computing resources when executed by a processor.
[0064] An embodiment of the present invention provides a processor, which is used to run a program, wherein the method for matching the load and computing resources is executed when the program is running.
[0065] An embodiment of the present invention provides a device comprising a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, the device implements at least the following steps: constructing a two-branch neural network structure, wherein the two branches of the two-branch neural network structure are a load branch and a computing resource branch, and the arrangement order of the neurons in the output layer of the load branch is the same as the arrangement order of the neurons in the output layer of the computing resource branch; and matching the load branch and the computing resource branch to match the load and the computing resource. The device herein may be a server, a PC, a PAD, a mobile phone, etc.
[0066] The present application also provides a computer program product, which, when executed on a data processing device, is suitable for executing an initialization program having at least the following method steps: constructing a two-branch neural network structure, wherein the two branches of the two-branch neural network structure are a load branch and a computing resource branch, and the arrangement order of the neurons in the output layer of the load branch is the same as the arrangement order of the neurons in the output layer of the computing resource branch; matching the load branch and the computing resource branch to match the load and the computing resource.
[0067] The present application also provides an electronic device, which includes one or more processors, a memory and one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs include a method for executing any of the above-mentioned load and computing resource matching methods by constructing a two-branch neural network structure, thereby constructing a QA architecture to match the above-mentioned load branch and the above-mentioned computing resource branch, thereby improving the matching efficiency, and thus solving the problem of low efficiency of load and computing resource matching in the prior art.
[0068] In addition, the functional units in the various embodiments of the present invention may be integrated into a single processing unit, each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0069] If the above-mentioned integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server or network device, etc.) to execute all or part of the steps of the above-mentioned methods of each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
[0070] From the above description, it can be seen that the above embodiments of the present application achieve the following technical effects:
[0071] 1) The load and computing resource matching method of the present application constructs a two-branch neural network structure, thereby constructing a QA architecture to match the above-mentioned load branch and the above-mentioned computing resource branch, thereby improving the matching efficiency and solving the problem of low efficiency of load and computing resource matching in the existing technology.
[0072] 2) The load and computing resource matching device of the present application constructs a two-branch neural network structure, thereby constructing a QA architecture to match the above-mentioned load branch and the above-mentioned computing resource branch, thereby improving the matching efficiency and solving the problem of low efficiency of load and computing resource matching in the prior art.
[0073] 3) The electronic device of the present application constructs a two-branch neural network structure, thereby constructing a QA architecture to match the above-mentioned load branch and the above-mentioned computing resource branch, thereby improving the matching efficiency and solving the problem of low efficiency in matching load and computing resources in the existing technology.
[0074] The above description is merely a preferred embodiment of the present application and is not intended to limit the present application. Various modifications and variations are possible for those skilled in the art. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present application shall be included within the scope of protection of the present application.
Claims
1. A method for matching load and computing resources, characterized in that: include: Constructing a two-branch neural network structure, wherein the two branches of the two-branch neural network structure are a load branch and a computing resource branch, and the arrangement order of neurons in the output layer of the load branch is the same as the arrangement order of neurons in the output layer of the computing resource branch; Matching the load branch and the computing resource branch to match the load and the computing resource; Matching the load branch with the computing resource branch includes: Acquire a first neuron group output by the load branch, wherein the first neuron group includes at least one neuron output by the load branch; Acquire a second neuron group output by the computing resource branch, wherein the second neuron group includes at least one neuron output by the computing resource branch; inputting the first neuron group and the second neuron group into a matching branch; Using the matching branch to match neurons of the first neuron group with neurons of the second neuron group; Using the matching branch to match neurons of the first neuron group with neurons of the second neuron group includes: Acquire a third neuron group of the input layer of the load branch, wherein the third neuron group includes at least one neuron of the input layer of the load branch; Acquire a fourth neuron group of the input layer of the computing resource branch, wherein the fourth neuron group includes at least one neuron of the input layer of the computing resource branch; According to the third neuron group and the fourth neuron group, the matching branch is used to match neurons of the first neuron group with neurons of the second neuron group.
2. The method according to claim 1, characterized in that Each neuron of the output layer of the load branch corresponds to a feature of the input layer of the load branch, and each neuron of the output layer of the computing resource branch corresponds to a feature of the input layer of the computing resource branch.
3. The method according to claim 1 or 2, characterized in that The final output layer of the two-branch neural network structure is used to output a matching degree, and the matching degree is used to characterize the matching degree between the load branch and the computing resource branch.
4. The method according to claim 1 or 2, characterized in that The input layer of the load branch is the number of each resource required by the load branch, or the vector corresponding to the text of each resource required by the load branch. The input layer of the computing resource branch is the number of each resource that the computing resource branch can provide, or the vector corresponding to the text of each resource that the computing resource branch can provide.
5. A device for matching load and computing resources, characterized in that: include: A construction unit is used to construct a two-branch neural network structure, wherein the two branches of the two-branch neural network structure are a load branch and a computing resource branch, and the arrangement order of neurons in the output layer of the load branch is the same as the arrangement order of neurons in the output layer of the computing resource branch; a matching unit, configured to match the load branch with the computing resource branch to match the load with the computing resource; The matching unit includes a first acquisition module, a second acquisition module, an input module and a matching module, wherein the first acquisition module is used to acquire a first neuron group output by the load branch, wherein the first neuron group includes at least one neuron output by the load branch; The second acquisition module is used to acquire a second neuron group output by the computing resource branch, wherein the second neuron group includes at least one neuron output by the computing resource branch; The input module is used to input the first neuron group and the second neuron group into the matching branch; The matching module is used to match the neurons of the first neuron group with the neurons of the second neuron group using the matching branch; The matching module includes a first acquisition submodule, a second acquisition submodule and a matching submodule, wherein the first acquisition submodule is used to acquire a third neuron group of the input layer of the load branch, wherein the third neuron group includes at least one neuron of the input layer of the load branch; The second acquisition submodule is used to acquire a fourth neuron group of the input layer of the computing resource branch, wherein the fourth neuron group includes at least one neuron of the input layer of the computing resource branch; The matching submodule is configured to match neurons of the first neuron group with neurons of the second neuron group using the matching branch according to the third neuron group and the fourth neuron group.
6. A computer-readable storage medium, characterized in that The computer-readable storage medium includes a stored program, wherein the program executes the method for matching loads and computing resources according to any one of claims 1 to 4.
7. A processor, characterized in that: The processor is configured to run a program, wherein the program, when running, executes the method for matching load and computing resources as claimed in any one of claims 1 to 4.
8. An electronic device, characterized in that: include: One or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and are configured to be executed by the one or more processors, and the one or more programs include a method for matching loads and computing resources according to any one of claims 1 to 4.
Citation Information
Patent Citations
Edge computing resource allocation method based on priority and cooperation
CN111813539A