Parallel computing method, resource scheduling method, device, equipment, medium and product

Through parallel computing methods, resource scheduling is performed using non-dominant sorting and local outlier factor calculation, which solves the problem of low resource utilization in the existing technology, and improves the computing efficiency and reliability of resource scheduling.

CN119960955APending Publication Date: 2025-05-09CHINA TELECOM CORP LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411766180.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-03
Publication Date
2025-05-09

AI Technical Summary

Technical Problem

In the prior art, there are problems such as low resource utilization rates in computing and network resource scheduling, which cannot meet the users' efficient and secure computing power needs.

Method used

Through the parallel calculation method, non-dominant sorting and local outlier factor calculations are used to cross, mutation and merge the first population and the second population to generate a new population, and the calculation results are determined based on the preset number of iterations or convergence conditions.

Benefits of technology

It improves the computing efficiency and reliability of parallel computing, optimizes the efficiency and reliability of resource scheduling, and meets the users' efficient and safe computing power needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119960955A_ABST
    Figure CN119960955A_ABST
Patent Text Reader

Abstract

The invention provides a parallel computing method and device, a resource scheduling method and device, equipment, a medium and a product, and the parallel computing method comprises the steps: carrying out the non-dominated sorting of a first population and a second population, and carrying out the first local outlier factor calculation; performing crossover, variation and combination processing between the individuals of the first population and the individuals of the second population based on the optimal solution calculated by the first local outlier factor; performing non-dominated sorting on the first population and the second population, and performing second local outlier factor calculation; generating a new first population and a new second population according to the non-dominated level, a preset population number constraint pair and a second local outlier factor calculation result; and after one iteration is completed, feeding back a parallel computing result to a specified terminal based on a parallel computing judgment result, or circularly carrying out one iteration of parallel computing. Through the embodiment of the invention, the calculation efficiency and reliability in a multi-factor and multi-element scene are improved, and the resource scheduling efficiency is also improved.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] At present, with the continuous development of technologies such as cloud-network integration, large models, cloud games, cloud rendering, industrial Internet, etc., have driven industry customers to put forward service supply requirements such as cloud-edge collaboration and cloud-computing-network integration for computing and network resources.

[0003] Currently, computing power, network and other capabilities are relatively fragmented and cannot meet users' large-scale, efficient and secure computing power needs. Therefore, through multi-factor collaborative scheduling technology, geographically dispersed computing and network resources are mobilized to achieve integrated scheduling of computing and network resources oriented to customer needs.

[0004] In the related technology, the existing parallel computing solutions further propose the scheduling of resource requests, but due to the limitations of multiple parameters and multiple factors, they mainly reflect the effective scheduling of resource information of each node by business requests.

[0005] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0006] The purpose of the present disclosure is to provide a parallel computing method, resource scheduling method, device, equipment, medium and product, which are used to overcome the problems of low resource utilization caused by the limitations and defects of related technologies to at least a certain extent.

[0007] According to a first aspect of an embodiment of the present disclosure, a parallel computing method is provided, comprising: performing one iteration of parallel computing on the first population and the second population, comprising: performing non-dominated sorting on the first population and the second population, respectively, and performing first local outlier factor calculation; performing crossover, mutation, and merging processing between individuals of the first population and individuals of the second population based on the optimal solution of the first local outlier factor calculation; after screening the first population and the second population after the merge processing, performing non-dominated sorting on the first population and the second population, respectively, and performing second local outlier factor calculation; generating a new first population and a new second population according to the non-dominated level and a preset population number constraint and the result of the second local outlier factor calculation; after completing the one iteration, judging whether the number of iterations of the parallel computing reaches a preset number of iterations or satisfies a preset convergence condition; determining the result of the parallel computing based on the new first population and the new second population based on the judgment result of the parallel computing and feeding it back to a designated terminal, or performing one iteration of the parallel computing on the new first population and the new second population in a loop.

[0008] In an exemplary embodiment of the present disclosure, performing crossover, mutation, and merging processing between individuals of the first population and individuals of the second population based on the optimal solution calculated by the first local outlier factor includes: Determine an individual in the first population corresponding to the optimal solution calculated by the first local outlier factor, and record it as the optimal individual of the first population; Determine an individual in the second population corresponding to the optimal solution calculated by the first local outlier factor, and record it as the optimal individual of the second population; Crossing the best individual of the first population with the individuals in the second population, and crossing the best individual of the second population with the individuals in the first population; Mutating the first population and the second population after the crossover respectively according to a preset probability; The first population before the mutation and the first population after the mutation are merged, and the second population before the mutation and the second population after the mutation are merged.

[0009] In an exemplary embodiment of the present disclosure, before performing one iteration of parallel calculation on the first population and the second population, the method further includes: Initialize the first population and the second population to be parallelized, and randomly generate individuals of the first population and individuals of the second population according to preset constraints.

[0010] In an exemplary embodiment of the present disclosure, performing non-dominated sorting on the first population and the second population respectively, and calculating a first local outlier factor includes: The individuals of the first population and the individuals of the second population are divided into a plurality of Pareto fronts by using non-dominated sorting, and first local outlier factors are calculated for the individuals of the first population and the individuals of the second population according to the non-dominated levels after the division.

[0011] In an exemplary embodiment of the present disclosure, after screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated, which includes: After screening the merged first population and the second population, the individuals of the screened first population and the individuals of the screened second population are divided into multiple Pareto fronts using non-dominated sorting, and the second local outlier factor is calculated for the individuals of the first population and the individuals of the second population according to the non-dominated levels after the division.

[0012] In an exemplary embodiment of the present disclosure, determining the result of the parallel calculation according to the new first population and the new second population based on the determination result of the parallel calculation and feeding back to the designated terminal, or performing one iteration of the parallel calculation on the new first population and the new second population in a loop includes: If it is determined that the preset number of iterations is reached or the preset convergence condition is met, the result of the parallel calculation is determined according to the new first population and the new second population and fed back to the designated terminal; If it is determined that the preset number of iterations is not reached or the preset convergence condition is not satisfied, one iteration of the parallel calculation is cyclically performed on the new first population and the new second population.

[0013] In an exemplary embodiment of the present disclosure, after completing the one iteration, determining whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition includes: After generating the new first population and the new second population, determining that the one iteration is completed; Determine whether the number of iterations of the parallel computing reaches the preset number of iterations; If it is determined that the number of iterations of the parallel calculation does not reach the preset number of iterations, non-dominated sorting is performed on the new first population and the new second population respectively, and a third local outlier factor is calculated; Determine the number of individuals in the first level of the non-dominated sorting of the new first population, recorded as the number of the first level of the new first population; Determine the number of individuals in the first level of the non-dominated sorting of the new second population, and record it as the number of the first level of the new second population; Whether the parallel calculation satisfies the preset convergence conditions is determined based on the relationship between the number of individuals of the first level of the new first population and the number of individuals of the first level of the initialized first population, as well as the relationship between the number of individuals of the first level of the new second population and the number of individuals of the first level of the initialized second population.

[0014] In an exemplary embodiment of the present disclosure, determining whether the parallel computing satisfies a preset convergence condition according to the size relationship between the number of individuals of the first level of the new first population and the number of individuals of the first level of the initialized first population, and the size relationship between the number of individuals of the first level of the new second population and the number of individuals of the first level of the initialized second population includes: If it is determined that the number of individuals of the first level of the new first population is equal to the number of individuals of the first level of the initialized first population, and it is determined that the number of individuals of the first level of the new second population is equal to the number of individuals of the first level of the initialized second population, then it is determined that the parallel calculation meets the preset convergence condition; If it is determined that the number of individuals of the first level of the new first population is not equal to the number of individuals of the first level of the initialized first population, or if it is determined that the number of individuals of the first level of the new second population is not equal to the number of individuals of the first level of the initialized second population, it is determined that the parallel calculation does not meet the preset convergence condition.

[0015] According to a second aspect of an embodiment of the present disclosure, a resource scheduling method is provided, including: Determine the hard constraints corresponding to resource scheduling; Determining the hard constraint condition as a constraint condition for performing the parallel computing method described in any one of the above technical solutions; Based on the parallel computing method, parallel computing is performed on the first population and the second population, the individuals of the first population and the individuals of the second population are both generated according to the client tasks of resource scheduling, the dependent variable of the objective function of the first population includes at least one of the cost, efficiency and power consumption after the resource scheduling, and the dependent variable of the objective function of the second population includes at least one of the cost, efficiency and power consumption after the resource scheduling; The result of the resource scheduling is determined according to the result of the parallel computing method and output to a designated resource scheduling terminal.

[0016] According to a third aspect of an embodiment of the present disclosure, there is provided a parallel computing device, including: The computing module is configured to perform one iteration of parallel computing on the first population and the second population, specifically comprising: performing non-dominated sorting on the first population and the second population respectively, and calculating a first local outlier factor; Performing crossover, mutation, and merging processing between individuals of the first population and individuals of the second population based on the optimal solution calculated by the first local outlier factor; After screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated; Generate a new first population and a new second population according to the non-dominated level, the preset population number constraint pair and the result of calculating the second local outlier factor; A judgment module, configured to judge whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition after completing the one iteration; The feedback module is configured to determine the result of the parallel calculation based on the new first population and the new second population based on the determination result of the parallel calculation and feed it back to the designated terminal, or to perform one iteration of the parallel calculation on the new first population and the new second population in a loop.

[0017] According to a fourth aspect of an embodiment of the present disclosure, a resource scheduling device is provided, including: A determination module is set to determine the hard constraints corresponding to resource scheduling; The determination module is further configured to determine the hard constraint condition as a constraint condition for performing the parallel computing method as described in any one of the above technical solutions; a parallel computing module, configured to perform parallel computing on a first population and a second population based on the parallel computing method, wherein the individuals of the first population and the individuals of the second population are both generated according to client tasks of resource scheduling, the dependent variable of the objective function of the first population includes at least one of cost, efficiency and power consumption after the resource scheduling, and the dependent variable of the objective function of the second population includes at least one of cost, efficiency and power consumption after the resource scheduling; The output module is configured to determine the result of the resource scheduling according to the result of the parallel computing method, and output it to a designated resource scheduling terminal.

[0018] According to a fifth aspect of the present disclosure, there is provided an electronic device, comprising: a memory; and a processor coupled to the memory, wherein the processor is configured to execute any one of the methods described above based on instructions stored in the memory.

[0019] According to a sixth aspect of the present disclosure, a computer-readable storage medium is provided, on which a program is stored, and when the program is executed by a processor, the parallel computing method as described in any one of the above items is implemented.

[0020] According to a seventh aspect of the present disclosure, there is provided a computer program product, comprising a computer program, wherein the computer program implements any one of the above-described parallel computing methods when executed by a processor.

[0021] Based on the embodiments of the present disclosure, the first population and the second population are non-dominatedly sorted and the first local outlier factor is calculated respectively, and the individuals of the first population and the individuals of the second population are crossover, mutation and merging processing is performed based on the optimal solution of the first local outlier factor calculation, and then the first population and the second population are non-dominatedly sorted and the second local outlier factor is calculated respectively. Furthermore, a new first population and a new second population are generated according to the non-dominated level and the preset population number constraint and the result of the second local outlier factor calculation. Based on this, after completing one iteration, the result of the parallel calculation is fed back to the designated terminal based on the judgment result of the parallel calculation, or one iteration of the parallel calculation is performed in a loop, thereby improving the computational efficiency and reliability of the parallel calculation.

[0022] Furthermore, the above parallel computing method is applied to resource scheduling scenarios, which improves the efficiency and reliability of resource scheduling for user tasks with multiple factors, multiple constraints and multiple objectives.

[0023] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0025] Figure 1 A schematic diagram showing an exemplary system architecture to which the parallel computing or resource scheduling solution of an embodiment of the present invention can be applied; Figure 2 is a flow chart of a parallel computing method in an exemplary embodiment of the present disclosure; Figure 3 is a flow chart of another parallel computing method in an exemplary embodiment of the present disclosure; Figure 4 is a flow chart of another parallel computing method in an exemplary embodiment of the present disclosure; Figure 5 is a flow chart of another parallel computing method in an exemplary embodiment of the present disclosure; Figure 6 is a flow chart of another parallel computing method in an exemplary embodiment of the present disclosure; Figure 7 is a flow chart of another parallel computing method in an exemplary embodiment of the present disclosure; Figure 8is a flow chart of another parallel computing method in an exemplary embodiment of the present disclosure; Fig. 9 is a flow chart of a resource scheduling method in an exemplary embodiment of the present disclosure; Fig.10 is a schematic diagram of an architecture of a parallel computing solution in an exemplary embodiment of the present disclosure; Fig.11 is a schematic diagram of executing another parallel computing solution in an exemplary embodiment of the present disclosure; Fig.12 is a block diagram of a parallel computing device in an exemplary embodiment of the present disclosure; Fig.13 is a block diagram of a resource scheduling device in an exemplary embodiment of the present disclosure; Fig.14 is a block diagram of an electronic device in an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION

[0026] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as being limited to the examples set forth herein; on the contrary, these embodiments are provided so that the present disclosure will be more comprehensive and complete, and the concepts of the example embodiments are fully conveyed to those skilled in the art. The described features, structures, or characteristics may be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced while omitting one or more of the specific details, or other methods, components, devices, steps, etc. may be adopted. In other cases, known technical solutions are not shown or described in detail to avoid obscuring various aspects of the present disclosure.

[0027] In addition, the accompanying drawings are only schematic diagrams of the present disclosure, and the same reference numerals in the drawings represent the same or similar parts, so their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities, which do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.

[0028] Figure 1 A schematic diagram showing an exemplary system architecture to which the parallel computing or resource scheduling solution of an embodiment of the present invention can be applied is shown.

[0029] like Figure 1As shown, the system architecture 100 may include one or more of terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used to provide a medium for communication links between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or optical fiber cables, etc.

[0030] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. According to the implementation requirements, there may be any number of terminal devices, networks and servers. For example, the server 105 may be a server cluster composed of multiple servers.

[0031] Users can use terminal devices 101, 102, 103 to interact with server 105 through network 104 to receive or send messages, etc. Terminal devices 101, 102, 103 can be various electronic devices with display screens, including but not limited to smart phones, tablet computers, portable computers, desktop computers, etc.

[0032] In some embodiments, the parallel computing or resource scheduling method provided in the embodiments of the present invention is generally executed by the server 105. Accordingly, the parallel computing or resource scheduling device is generally set in the terminal device 103 (which may also be the terminal device 101 or 102). In other embodiments, some terminals may have functions similar to those of the server device to execute the method.

[0033] The exemplary embodiments of the present disclosure are described in detail below with reference to the accompanying drawings.

[0034] Figure 2 is a flow chart of a parallel computing method in an exemplary embodiment of the present disclosure.

[0035] refer to Figure 2 , parallel computing methods may include: Step S202, one iteration of performing parallel calculation on the first population and the second population includes: performing non-dominated sorting on the first population and the second population respectively, and calculating a first local outlier factor; Performing crossover, mutation, and merging processing between individuals of the first population and individuals of the second population based on the optimal solution calculated by the first local outlier factor; After screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated; Generate a new first population and a new second population according to the non-dominated level, the preset population number constraint pair and the result of calculating the second local outlier factor; Step S204, after completing the one iteration, determining whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition; Step S206, based on the determination result of the parallel calculation, determine the result of the parallel calculation according to the new first population and the new second population and feed it back to the designated terminal, or perform one iteration of the parallel calculation on the new first population and the new second population in a loop.

[0036] Based on the embodiments of the present disclosure, the first population and the second population are non-dominatedly sorted and the first local outlier factor is calculated respectively, and the individuals of the first population and the individuals of the second population are crossover, mutation and merging processing is performed based on the optimal solution of the first local outlier factor calculation, and then the first population and the second population are non-dominatedly sorted and the second local outlier factor is calculated respectively. Furthermore, a new first population and a new second population are generated according to the non-dominated level and the preset population number constraint and the result of the second local outlier factor calculation. Based on this, after completing one iteration, the result of the parallel calculation is fed back to the designated terminal based on the judgment result of the parallel calculation, or one iteration of the parallel calculation is performed in a loop, thereby improving the computational efficiency and reliability of the parallel calculation.

[0037] Furthermore, the above parallel computing method is applied to resource scheduling scenarios, which improves the efficiency and reliability of resource scheduling for user tasks with multiple factors, multiple constraints and multiple objectives.

[0038] Next, each step of the parallel computing method is described in detail.

[0039] In an exemplary embodiment of the present disclosure, Figure 3 As shown, performing crossover, mutation and merging processing between individuals of the first population and individuals of the second population based on the optimal solution calculated by the first local outlier factor includes: Step S302, determining an individual in the first population corresponding to the optimal solution calculated for the first local outlier factor, and recording it as the optimal individual of the first population; Step S304, determining an individual in the second population corresponding to the optimal solution of the first local outlier factor calculation, and recording it as the optimal individual of the second population; Step S306, cross the best individual of the first population with the individuals in the second population, and cross the best individual of the second population with the individuals in the first population; Step S308, mutating the first population and the second population after the crossover respectively according to a preset probability; Step S310, merging the first population before mutation and the first population after mutation, and merging the second population before mutation and the second population after mutation.

[0040] In an exemplary embodiment of the present disclosure, Figure 4 As shown, before performing one iteration of parallel calculation on the first population and the second population, the method further includes: Step S402, initializing a first population and a second population to be parallelized, and randomly generating individuals of the first population and individuals of the second population according to preset constraints.

[0041] In an exemplary embodiment of the present disclosure, Figure 5 As shown, performing non-dominated sorting on the first population and the second population respectively, and calculating the first local outlier factor includes: Step S502: Use non-dominated sorting to divide the individuals of the first population and the individuals of the second population into multiple Pareto fronts, and calculate the first local outlier factors of the individuals of the first population and the individuals of the second population according to the non-dominated levels after the division.

[0042] In an exemplary embodiment of the present disclosure, Figure 6 As shown, after screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated, including: Step S602, after screening the merged first population and the second population, use non-dominated sorting to divide the individuals of the screened first population and the individuals of the screened second population into multiple Pareto fronts, and calculate the second local outlier factor for the individuals of the first population and the individuals of the second population according to the non-dominated levels after the division.

[0043] In an exemplary embodiment of the present disclosure, Figure 7 As shown, determining the result of the parallel calculation based on the new first population and the new second population based on the determination result of the parallel calculation and feeding it back to the designated terminal, or performing one iteration of the parallel calculation on the new first population and the new second population in a loop includes: Step S702: if it is determined that the preset number of iterations is reached or the preset convergence condition is met, the result of the parallel calculation is determined according to the new first population and the new second population and fed back to the designated terminal; Step S704: If it is determined that the preset number of iterations has not been reached or the preset convergence condition is not satisfied, then one iteration of the parallel calculation is cyclically performed on the new first population and the new second population.

[0044] In an exemplary embodiment of the present disclosure, Figure 8 As shown, after completing the one iteration, determining whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition includes: Step S802, after generating a new first population and a new second population, determining that the one iteration is completed; Step S804, determining whether the number of iterations of the parallel calculation reaches the preset number of iterations; Step S806, if it is determined that the number of iterations of the parallel calculation does not reach the preset number of iterations, non-dominated sorting is performed on the new first population and the new second population respectively, and a third local outlier factor is calculated; Step S808, determining the number of individuals in the first level of the non-dominated sorting of the new first population, recorded as the number of individuals in the first level of the new first population; Step S810, determining the number of individuals in the first level of the non-dominated sorting of the new second population, recorded as the number of individuals in the first level of the new second population; Step S812, determining whether the parallel calculation meets the preset convergence conditions based on the relationship between the number of individuals of the first level of the new first population and the number of individuals of the first level of the initialized first population, and the relationship between the number of individuals of the first level of the new second population and the number of individuals of the first level of the initialized second population.

[0045] In an exemplary embodiment of the present disclosure, Fig. 9 As shown, determining whether the parallel calculation satisfies a preset convergence condition according to the size relationship between the number of individuals of the first level of the new first population and the number of individuals of the first level of the initialized first population, and the size relationship between the number of individuals of the first level of the new second population and the number of individuals of the first level of the initialized second population includes: Step S902, if it is determined that the number of individuals of the first level of the new first population is equal to the number of individuals of the first level of the initialized first population, and it is determined that the number of individuals of the first level of the new second population is equal to the number of individuals of the first level of the initialized second population, then it is determined that the parallel calculation meets the preset convergence condition; Step S904, if it is determined that the number of individuals of the first level of the new first population is not equal to the number of individuals of the first level of the initialized first population, or if it is determined that the number of individuals of the first level of the new second population is not equal to the number of individuals of the first level of the initialized second population, it is determined that the parallel calculation does not meet the preset convergence condition.

[0046] Based on the above Figures 2 to 9 The parallel computing method shown in the figure, using the above parallel computing solution for resource scheduling may include the following steps: Determine the hard constraints corresponding to resource scheduling; Determining the hard constraint condition as a constraint condition for performing the parallel computing method described in any one of the above technical solutions; Based on the parallel computing method, parallel computing is performed on the first population and the second population, the individuals of the first population and the individuals of the second population are both generated according to the client tasks of resource scheduling, the dependent variable of the objective function of the first population includes at least one of the cost, efficiency and power consumption after the resource scheduling, and the dependent variable of the objective function of the second population includes at least one of the cost, efficiency and power consumption after the resource scheduling; The result of the resource scheduling is determined according to the result of the parallel computing method and output to a designated resource scheduling terminal.

[0047] like Fig.10 As shown, the architecture 1000 of the multi-factor and multi-element parallel computing solution proposed in the present disclosure achieves a comprehensive optimal decision-making process based on the input computing resource and network resource information under the condition of satisfying various constraints. The two constraints of the multi-factor and multi-element computing and network resource scheduling method are: (1) Customer's hard constraints: Performance indicators that must be achieved through resource scheduling solutions to meet customer computing and network resource requirements. For example, AI training applications require at least 64 GPU cores and 1TB of storage for training samples, and the data upload time cannot be greater than 10 hours. Such constraints impose hard requirements on resource scheduling. Resource pools whose remaining resources do not meet the conditions (such as insufficient remaining GPU resources, insufficient storage capacity, and resource pools are distributed over long distances) will not be considered for scheduling; (2) Multi-objective optimization constraints: In order to optimize the overall operation of the system, the scheduling requirement is actually to search for the best overall option in terms of cost, efficiency, power consumption, etc., that is, the optimal solution, from a large number of resource pools that meet the hard constraints required by the above customers.

[0048] Furthermore, based on the above-mentioned constraints, the process of the multi-factor and multi-element parallel computing solution disclosed in the present invention has the following specific steps: (1) Initialize the population: Randomly generate individuals according to the range of solutions and calculate their objective functions to initialize the population; (2) Non-dominated sorting and local outlier factor calculation: Using non-dominated sorting, the individuals in the population are divided into multiple Pareto frontiers, and the non-dominated level of each individual is determined; and the local outlier factor of the individuals at each level is calculated. After each non-dominated sorting, the individuals in the population can be divided into n non-dominated sorting levels, which can be recorded as rank1, rank2, ... rank n, etc., where n is a positive integer; (3) Selection: Select the current optimal solution from the population as the main individual, exchange the main individual in pop1 with the main individual in pop2, and then proceed to the subsequent steps; (4) Crossover: One main individual in pop1 and M individuals in pop2 are crossover transformed, and one main individual in pop2 and M individuals in pop1 are crossover transformed. After the crossover, the number of individuals in the population remains M. (5) Mutation: Perform mutation operations on all individuals in pop1 and pop2 according to the preset probability; (6) Population merging: merge the new population consisting of M individuals with the original population consisting of M individuals. The number of individuals in the merged population is 2M. (7) Non-dominated sorting and local outlier factor calculation: Remove the individuals in the merged population whose individual verification is not feasible, use non-dominated sorting on the remaining individuals in the population, divide the individuals in the population into multiple Pareto frontiers, determine the non-dominated level of each individual, and calculate the local outlier factor for the individuals at each level; (8) Generate a population: start from the first level according to the non-dominated level of the individual, and then select individuals in turn according to the local outlier factor until the population size reaches the number of individuals in the original population; After the new population is generated by (8), the new pop1 and pop2 are again subjected to non-dominated sorting and local outlier factor calculation, and the number of individuals in rank1 of the new pop1 and the number of individuals in rank1 of the initialized pop1 are determined.

[0049] (9) Ending: Determine whether the number of iterations has been reached or whether convergence has occurred. If it is the end, otherwise let Gen = Gen + 1 and start again from (3). The conditions for the end of the iteration include the following two: (9.1) Whether the number of iterations has been reached: Determine whether the number of iterations Gen is greater than or equal to the set value; (9.2) Convergence: Determine whether convergence is achieved based on the number of individuals in the new pop1's rank1 and the number of individuals in the initialized pop1's rank1.

[0050] Combine the following Fig.11Describe the specific implementation plan for resource scheduling based on the above parallel computing solution.

[0051] like Fig.11 As shown, the steps of the method for implementing resource scheduling based on the above parallel computing solution include: Step S1102, initializing population pop1; Step S1104, non-dominated sorting and local outlier factor calculation; Step S1106, Gen=1; Step S1108, non-dominated sorting and local outlier factor calculation; Step S1110, selection; Step S1112, crossover; Step S1114, mutation; Step S1116, new pop1 and pop1 are merged; Step S1118, non-dominated sorting and local outlier factor calculation; Step S1120, generating a pop1 population; Step S1122, initializing population pop2; Step S1124, non-dominated sorting and local outlier factor calculation; Step S1126, Gen=1; Step S1128, non-dominated sorting and local outlier factor calculation; Step S1130, selection; Step S1132, crossover; Step S1134, mutation; Step S1136, new pop2 and pop2 are merged; Step S1138, non-dominated sorting and local outlier factor calculation; Step S1140, generating a pop2 population; Step S1142, Gen=Gen+1; Step S1144, Gen=Gen+1; Step S1146, Gen ≥ set value? Or converged? If yes, then end, if no, then execute step S1142 and step S1144 respectively.

[0052] In an exemplary embodiment of the present disclosure, in computing and network resource scheduling, considering that there are N=10 resource pools (labeled 0-9), there are x=5 customer tasks, each task has different requirements for computing and network resources, and the computing and network resource scheduling scheme with the best overall cost, efficiency, and power consumption is studied.

[0053] (1) Initialize populations pop1 and pop2 respectively: According to the range of the resource pool, randomly generate M individuals X=(x1,x2,x3,x4,x5), which is the representation of the customer task, and calculate its objective function Y=(y1,y2,y3), as population pop1; then generate population pop2 with the same number of individuals; populations pop1 and pop2 are shown in Tables 1 and 2 respectively: Table 1

[0054] Table 2

[0055] (2) Non-dominated sorting and local outlier factor calculation: Perform non-dominated sorting on the individuals in population pop1, divide the individuals in the population into multiple Pareto frontiers, determine the non-dominated level of each individual, i.e., rank1, rank2, ..., and calculate the local outlier factor LOF(x1), LOF(x2), ... for the individuals at each level; perform the same operation on population pop2; (3) Selection: Select the current optimal solution from rank1 of populations pop1 and pop2 as the main individuals Xf1 and Xf2 respectively, exchange the main individual Xf1 in pop1 with the main individual Xf2 in pop2, and proceed to the subsequent steps; (4) Crossover: In population pop1, the main individual Xf2 is used to crossover all individuals in the population to form a new population pop1'; in population pop2, the main individual Xf1 is used to crossover all individuals in the population to form a new population pop2'; (5) Mutation: In population pop1', all individuals x1, x2, x3, x4, x5 may mutate, forming a new population pop1''; in population pop2', all individuals x1, x2, x3, x4, x5 may mutate, forming a new population pop2''; (6) Population merging: merge the new population pop1'' with the original population pop1; merge the new population pop2'' with the original population pop2; (7) Non-dominated sorting and local outlier factor calculation: Perform non-dominated sorting on the individuals in the population pop1'', divide the individuals in the population into multiple Pareto frontiers, determine the non-dominated level of each individual, i.e., rank1, rank2, ..., and calculate the local outlier factor LOF(x1), LOF(x2), ... for the individuals at each level; then perform the same operation on the population pop2''; (8) Generate population: In population pop1'', according to the non-dominated level of individuals, starting from the first level, and then selecting individuals according to the local outlier factor, until the number of individuals reaches M, as population pop1; in population pop2'', according to the non-dominated level of individuals, starting from the first level, and then selecting individuals according to the local outlier factor, until the number of individuals reaches M, as population pop2; (9) Ending: If the number of iterations Gen reaches the set value or the population generated by pop1 converges with the rank 1 individual in the original population and the population generated by pop2 converges with the rank 1 individual in the original population, then the process ends; otherwise, let Gen = Gen + 1 and start again from (3).

[0056] Based on the above embodiments of the present disclosure, the beneficial effects of the multi-factor and multi-element calculation and network resource scheduling method include: (1) Resource optimization: Rationally allocate computing and network resources to ensure that resources are effectively utilized and avoid resource waste; (2) Cost saving: reduce costs by optimizing resource usage and reducing unnecessary resource consumption; (3) Flexibility and scalability: Able to adapt to changing customer needs and expand to handle more customer applications or larger data volumes; (4) Service quality assurance: meeting the service quality requirements of different customers or applications, such as response time; (5) Energy efficiency: Efficient scheduling can reduce energy consumption and achieve green computing.

[0057] In summary, the embodiments of the present disclosure are based on customer needs and real-time perceived computing and network resource information, based on parallel computing technology and local outlier factor calculation, with customer computing and network resource needs as hard constraints, and cost, efficiency, power consumption, etc. as optimization constraints, to find the optimal solution, decide on the best resource scheduling strategy, schedule customer services to the best node through the best path, and achieve efficient resource management.

[0058] Corresponding to the above method embodiments, the present disclosure also provides a parallel computing device and a resource scheduling device, which can be used to execute the above method embodiments.

[0059] Fig.12 is a block diagram of a parallel computing device in an exemplary embodiment of the present disclosure.

[0060] refer to Fig.12 , the parallel computing device 1200 may include: The calculation module 1202 is configured to perform one iteration of parallel calculation on the first population and the second population, specifically including: performing non-dominated sorting on the first population and the second population respectively, and calculating a first local outlier factor; Performing crossover, mutation, and merging processing between individuals of the first population and individuals of the second population based on the optimal solution calculated by the first local outlier factor; After screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated; Generate a new first population and a new second population according to the non-dominated level, the preset population number constraint pair and the result of calculating the second local outlier factor; The judgment module 1204 is configured to judge whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition after completing the one iteration; Feedback module 1206 is configured to determine the result of the parallel calculation based on the new first population and the new second population based on the determination result of the parallel calculation and feed it back to the designated terminal, or to perform one iteration of the parallel calculation on the new first population and the new second population in a loop.

[0061] In an exemplary embodiment of the present disclosure, the calculation module 1202 is further configured to: Determine an individual in the first population corresponding to the optimal solution calculated by the first local outlier factor, and record it as the optimal individual of the first population; Determine an individual in the second population corresponding to the optimal solution calculated by the first local outlier factor, and record it as the optimal individual of the second population; Crossing the best individual of the first population with the individuals in the second population, and crossing the best individual of the second population with the individuals in the first population; Mutating the first population and the second population after the crossover respectively according to a preset probability; The first population before the mutation and the first population after the mutation are merged, and the second population before the mutation and the second population after the mutation are merged.

[0062] In an exemplary embodiment of the present disclosure, before performing one iteration of parallel calculation on the first population and the second population, the method further includes: Initialize the first population and the second population to be parallelized, and randomly generate individuals of the first population and individuals of the second population according to preset constraints.

[0063] In an exemplary embodiment of the present disclosure, performing non-dominated sorting on the first population and the second population respectively, and calculating a first local outlier factor includes: The individuals of the first population and the individuals of the second population are divided into a plurality of Pareto fronts by using non-dominated sorting, and first local outlier factors are calculated for the individuals of the first population and the individuals of the second population according to the non-dominated levels after the division.

[0064] In an exemplary embodiment of the present disclosure, after screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated, which includes: After screening the merged first population and the second population, the individuals of the screened first population and the individuals of the screened second population are divided into multiple Pareto fronts using non-dominated sorting, and the second local outlier factor is calculated for the individuals of the first population and the individuals of the second population according to the non-dominated levels after the division.

[0065] In an exemplary embodiment of the present disclosure, determining the result of the parallel calculation according to the new first population and the new second population based on the determination result of the parallel calculation and feeding back to the designated terminal, or performing one iteration of the parallel calculation on the new first population and the new second population in a loop includes: If it is determined that the preset number of iterations is reached or the preset convergence condition is met, the result of the parallel calculation is determined according to the new first population and the new second population and fed back to the designated terminal; If it is determined that the preset number of iterations is not reached or the preset convergence condition is not satisfied, one iteration of the parallel calculation is cyclically performed on the new first population and the new second population.

[0066] In an exemplary embodiment of the present disclosure, after completing the one iteration, determining whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition includes: After generating the new first population and the new second population, determining that the one iteration is completed; Determine whether the number of iterations of the parallel computing reaches the preset number of iterations; If it is determined that the number of iterations of the parallel calculation does not reach the preset number of iterations, non-dominated sorting is performed on the new first population and the new second population respectively, and a third local outlier factor is calculated; Determine the number of individuals in the first level of the non-dominated sorting of the new first population, recorded as the number of the first level of the new first population; Determine the number of individuals in the first level of the non-dominated sorting of the new second population, and record it as the number of the first level of the new second population; Whether the parallel calculation satisfies the preset convergence conditions is determined based on the relationship between the number of individuals of the first level of the new first population and the number of individuals of the first level of the initialized first population, as well as the relationship between the number of individuals of the first level of the new second population and the number of individuals of the first level of the initialized second population.

[0067] In an exemplary embodiment of the present disclosure, determining whether the parallel computing satisfies a preset convergence condition according to the size relationship between the number of individuals of the first level of the new first population and the number of individuals of the first level of the initialized first population, and the size relationship between the number of individuals of the first level of the new second population and the number of individuals of the first level of the initialized second population includes: If it is determined that the number of individuals of the first level of the new first population is equal to the number of individuals of the first level of the initialized first population, and it is determined that the number of individuals of the first level of the new second population is equal to the number of individuals of the first level of the initialized second population, then it is determined that the parallel calculation meets the preset convergence condition; If it is determined that the number of individuals of the first level of the new first population is not equal to the number of individuals of the first level of the initialized first population, or if it is determined that the number of individuals of the first level of the new second population is not equal to the number of individuals of the first level of the initialized second population, it is determined that the parallel calculation does not meet the preset convergence condition.

[0068] Fig.13 It is a block diagram of a resource scheduling device in an exemplary embodiment of the present disclosure.

[0069] refer to Fig.13 , the resource scheduling device 1300 may include: A determination module 1302 is configured to determine hard constraints corresponding to resource scheduling; The determination module 1302 is further configured to determine the hard constraint condition as a constraint condition for performing the parallel computing method described in any one of the above technical solutions; A parallel computing module 1304 is configured to perform parallel computing on a first population and a second population based on the parallel computing method, wherein both individuals of the first population and individuals of the second population are generated according to client tasks of resource scheduling, and the dependent variable of the objective function of the first population includes at least one of cost, efficiency and power consumption after the resource scheduling, and the dependent variable of the objective function of the second population includes at least one of cost, efficiency and power consumption after the resource scheduling; The output module 1306 is configured to determine the result of the resource scheduling according to the result of the parallel computing method, and output it to the designated resource scheduling terminal.

[0070] Since the functions of the parallel computing device 1200 and the resource scheduling device 1300 have been described in detail in the corresponding method embodiments, the present disclosure will not elaborate on them here.

[0071] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.

[0072] In an exemplary embodiment of the present disclosure, an electronic device capable of implementing the above method is also provided.

[0073] It will be appreciated by those skilled in the art that various aspects of the present invention may be implemented as a system, method or program product. Therefore, various aspects of the present invention may be specifically implemented in the following forms, namely: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software, which may be collectively referred to herein as a "circuit", "module" or "system".

[0074] Refer to the following Fig.14 14 to 15. The electronic device 1400 according to this embodiment of the present invention is described. Fig.14 The electronic device 1400 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0075] like Fig.14 As shown, the electronic device 1400 is in the form of a general computing device. The components of the electronic device 1400 may include but are not limited to: at least one processing unit 1410, at least one storage unit 1420, and a bus 1430 connecting different system components (including the storage unit 1420 and the processing unit 1410).

[0076] The storage unit stores program codes, which can be executed by the processing unit 1410, so that the processing unit 1410 performs the steps according to various exemplary embodiments of the present invention described in the above “Exemplary Method” section of this specification. For example, the processing unit 1410 can perform the method shown in the embodiment of the present disclosure.

[0077] The storage unit 1420 may include a readable medium in the form of a volatile storage unit, such as a random access storage unit (RAM) 14201 and / or a cache storage unit 14202 , and may further include a read-only storage unit (ROM) 14203 .

[0078] The storage unit 1420 may also include a program / utility 14204 having a set (at least one) of program modules 14205, such program modules 14205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0079] Bus 1430 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0080] The electronic device 1400 may also communicate with one or more external devices 1440 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device 1400, and / or may communicate with any device that enables the electronic device 1400 to communicate with one or more other computing devices (e.g., routers, modems, etc.). Such communication may be performed via an input / output (I / O) interface 1450. In addition, the electronic device 1400 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter 1460. As shown, the network adapter 1460 communicates with other modules of the electronic device 1400 via a bus 1430. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 1400, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.

[0081] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes a number of instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0082] In an exemplary embodiment of the present disclosure, a computer-readable storage medium is also provided, on which a program product capable of implementing the above method of the present specification is stored. In some possible implementations, various aspects of the present invention can also be implemented in the form of a program product, which includes a program code, and when the program product is run on a terminal device, the program code is used to enable the terminal device to execute the steps according to various exemplary embodiments of the present invention described in the above "Exemplary Method" section of the present specification.

[0083] The program product for implementing the above method according to an embodiment of the present invention can adopt a portable compact disk read-only memory (CD-ROM) and include program code, and can be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto, and in this document, a readable storage medium can be any tangible medium containing or storing a program, which can be used by or in combination with an instruction execution system, an apparatus or a device.

[0084] Among them, the readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0085] Computer readable signal media may include data signals propagated in baseband or as part of a carrier wave, in which readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Readable signal media may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0086] The program code embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.

[0087] In an exemplary embodiment of the present disclosure, a computer program product is also provided, which can be loaded or stored in any combination of one or more readable media, and can be written in any combination of one or more programming languages ​​to perform the program code of the present invention, wherein the programming language includes an object-oriented programming language, such as Java, C++, etc., and also includes a conventional procedural programming language, such as "C" language or similar programming language. The program code can be executed completely on the user computing device, partially on the user device, as an independent software package, partially on the user computing device and partially on the remote computing device, or completely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).

[0088] In addition, the above-mentioned figures are only schematic illustrations of the processes included in the method according to an exemplary embodiment of the present invention, and are not intended to be limiting. It is easy to understand that the processes shown in the above-mentioned figures do not indicate or limit the time sequence of these processes. In addition, it is also easy to understand that these processes can be performed synchronously or asynchronously, for example, in multiple modules.

[0089] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The specification and examples are to be considered exemplary only, and the true scope and concept of the present disclosure are indicated by the claims.

Claims

1. A parallel computing method, characterized in that: include: One iteration of parallel computation of the first and second populations consists of: performing non-dominated sorting on the first population and the second population respectively, and calculating a first local outlier factor; Performing crossover, mutation, and merging processing between individuals of the first population and individuals of the second population based on the optimal solution calculated by the first local outlier factor; After screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated; Generate a new first population and a new second population according to the non-dominated level, the preset population number constraint pair and the result of calculating the second local outlier factor; After completing the one iteration, determining whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition; Based on the determination result of the parallel calculation, the result of the parallel calculation is determined according to the new first population and the new second population and fed back to the designated terminal, or the parallel calculation is cyclically performed on the new first population and the new second population for one iteration.

2. The parallel computing method according to claim 1, characterized in that: Performing crossover, mutation, and merging processing between individuals of the first population and individuals of the second population based on the optimal solution calculated based on the first local outlier factor includes: Determine an individual in the first population corresponding to the optimal solution calculated by the first local outlier factor, and record it as the optimal individual of the first population; Determine an individual in the second population corresponding to the optimal solution calculated by the first local outlier factor, and record it as the optimal individual of the second population; Crossing the best individual of the first population with the individuals in the second population, and crossing the best individual of the second population with the individuals in the first population; Mutating the first population and the second population after the crossover respectively according to a preset probability; The first population before the mutation and the first population after the mutation are merged, and the second population before the mutation and the second population after the mutation are merged.

3. The parallel computing method according to claim 1, characterized in that: Before performing one iteration of parallel computing on the first population and the second population, the method further includes: Initialize the first population and the second population to be parallelized, and randomly generate individuals of the first population and individuals of the second population according to preset constraints.

4. The parallel computing method according to claim 1, wherein: Performing non-dominated sorting on the first population and the second population respectively, and calculating a first local outlier factor includes: The individuals of the first population and the individuals of the second population are divided into a plurality of Pareto fronts by using non-dominated sorting, and first local outlier factors are calculated for the individuals of the first population and the individuals of the second population according to the non-dominated levels after the division.

5. The parallel computing method according to claim 1, wherein: After screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated, including: After screening the merged first population and the second population, the individuals of the screened first population and the individuals of the screened second population are divided into multiple Pareto fronts using non-dominated sorting, and the second local outlier factor is calculated for the individuals of the first population and the individuals of the second population according to the non-dominated levels after the division.

6. The parallel computing method according to claim 1, characterized in that: Determining the result of the parallel calculation based on the new first population and the new second population and feeding back the result of the parallel calculation to the designated terminal, or performing one iteration of the parallel calculation on the new first population and the new second population in a loop includes: If it is determined that the preset number of iterations is reached or the preset convergence condition is met, the result of the parallel calculation is determined according to the new first population and the new second population and fed back to the designated terminal; If it is determined that the preset number of iterations is not reached or the preset convergence condition is not satisfied, one iteration of the parallel calculation is cyclically performed on the new first population and the new second population.

7. The parallel computing method according to claim 1, wherein: After completing the one iteration, determining whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition includes: After generating the new first population and the new second population, determining that the one iteration is completed; Determine whether the number of iterations of the parallel computing reaches the preset number of iterations; If it is determined that the number of iterations of the parallel calculation does not reach the preset number of iterations, non-dominated sorting is performed on the new first population and the new second population respectively, and a third local outlier factor is calculated; Determine the number of individuals in the first level of the non-dominated sorting of the new first population, recorded as the number of the first level of the new first population; Determine the number of individuals in the first level of the non-dominated sorting of the new second population, and record it as the number of the first level of the new second population; Whether the parallel calculation satisfies the preset convergence conditions is determined based on the relationship between the number of individuals of the first level of the new first population and the number of individuals of the first level of the initialized first population, as well as the relationship between the number of individuals of the first level of the new second population and the number of individuals of the first level of the initialized second population.

8. The parallel computing method according to claim 7, characterized in that: Determining whether the parallel computation satisfies a preset convergence condition according to the size relationship between the number of individuals of the first level of the new first population and the number of individuals of the first level of the initialized first population, and the size relationship between the number of individuals of the first level of the new second population and the number of individuals of the first level of the initialized second population includes: If it is determined that the number of individuals of the first level of the new first population is equal to the number of individuals of the first level of the initialized first population, and it is determined that the number of individuals of the first level of the new second population is equal to the number of individuals of the first level of the initialized second population, then it is determined that the parallel calculation meets the preset convergence condition; If it is determined that the number of individuals of the first level of the new first population is not equal to the number of individuals of the first level of the initialized first population, or if it is determined that the number of individuals of the first level of the new second population is not equal to the number of individuals of the first level of the initialized second population, it is determined that the parallel calculation does not meet the preset convergence condition.

9. A resource scheduling method, characterized in that: include: Determine the hard constraints corresponding to resource scheduling; Determining the hard constraint condition as a constraint condition for performing the parallel computing method according to any one of claims 1 to 8; Based on the parallel computing method, parallel computing is performed on the first population and the second population, the individuals of the first population and the individuals of the second population are both generated according to the client tasks of resource scheduling, the dependent variable of the objective function of the first population includes at least one of the cost, efficiency and power consumption after the resource scheduling, and the dependent variable of the objective function of the second population includes at least one of the cost, efficiency and power consumption after the resource scheduling; The result of the resource scheduling is determined according to the result of the parallel computing method and output to a designated resource scheduling terminal.

10. A parallel computing device, characterized in that: include: The calculation module is configured to perform one iteration of parallel calculation on the first population and the second population, specifically including: performing non-dominated sorting on the first population and the second population respectively, and calculating a first local outlier factor; Performing crossover, mutation, and merging processing between individuals of the first population and individuals of the second population based on the optimal solution calculated by the first local outlier factor; After screening the merged first population and the second population, non-dominated sorting is performed on the first population and the second population respectively, and a second local outlier factor is calculated; Generate a new first population and a new second population according to the non-dominated level, the preset population number constraint pair and the result of calculating the second local outlier factor; A judgment module, configured to judge whether the number of iterations of the parallel calculation reaches a preset number of iterations or satisfies a preset convergence condition after completing the one iteration; The feedback module is configured to determine the result of the parallel calculation based on the new first population and the new second population based on the determination result of the parallel calculation and feed it back to the designated terminal, or to perform one iteration of the parallel calculation on the new first population and the new second population in a loop.

11. A resource scheduling device, characterized in that: include: A determination module is set to determine the hard constraints corresponding to resource scheduling; The determination module is further configured to determine the hard constraint condition as a constraint condition for performing the parallel computing method according to any one of claims 1 to 8; a parallel computing module, configured to perform parallel computing on a first population and a second population based on the parallel computing method, wherein the individuals of the first population and the individuals of the second population are both generated according to client tasks of resource scheduling, the dependent variable of the objective function of the first population includes at least one of cost, efficiency and power consumption after the resource scheduling, and the dependent variable of the objective function of the second population includes at least one of cost, efficiency and power consumption after the resource scheduling; The output module is configured to determine the result of the resource scheduling according to the result of the parallel computing method, and output it to a designated resource scheduling terminal.

12. An electronic device, characterized in that: include: Memory; as well as A processor coupled to the memory, the processor being configured to execute the parallel computing method according to any one of claims 1 to 8 or the resource scheduling method according to claim 9 based on instructions stored in the memory.

13. A computer-readable storage medium having a program stored thereon, wherein when the program is executed by a processor, the parallel computing method according to any one of claims 1 to 8 or the resource scheduling method according to claim 9 is implemented.

14. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the parallel computing method according to any one of claims 1 to 8 or the resource scheduling method according to claim 9 is implemented.