Electromagnetic simulation parallel computing method, device, computer equipment and storage medium
Through the distributed parallel computing method, the electromagnetic simulation task is divided into multiple simulation computing tasks. The master control node and task agent node allocate the computing node for process-level and thread-level multi-machine parallel computing, solving the utilization of computing resources in the existing technology The problem of low rate significantly improves the computing performance and resource utilization rate of electromagnetic simulation.
Patent Information
- Application Number
- CN202210765646.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-01
- Publication Date
- 2024-12-31
- Estimated Expiration
- 2042-07-01
AI Technical Summary
When performing large-scale or ultra-large-scale electromagnetic simulation calculations, the computing resource utilization rate is low, and the computing power of the computer cluster cannot be fully utilized, affecting the performance and solution capabilities of the simulation program.
Using distributed parallel computing methods, the electromagnetic simulation tasks are divided into multiple simulation computing tasks. The calculation nodes are allocated through the main control node and the task agent node, and the process-level and thread-level multi-machine parallel computing mode is adopted to realize secondary resource scheduling and control. , improve computing efficiency.
It greatly improves the computing performance and solution capabilities of electromagnetic simulation, improves resource utilization, and realizes efficient electromagnetic simulation of large-scale and ultra-large-scale physical models.
Smart Images

Figure CN114996969B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of computer technology, and in particular to a method, apparatus, computer device and storage medium for parallel computing of electromagnetic simulation. Background Art
[0002] In recent years, as the design of microwave / electronic systems has become more complex, with more functions, higher indicators, smaller sizes, and shorter design cycles, it is inevitable to use microwave / electronic EDA software to numerically solve electromagnetic fields, that is, to perform electromagnetic simulation. The process is usually divided into several stages, such as system modeling, pre-processing, simulation calculation, and post-processing, and iterate until the design requirements are met.
[0003] In the related technology, numerical methods are used to solve the system characteristic parameters within a certain frequency range in the simulation calculation stage, which is a typical computationally intensive application. For large-scale or ultra-large-scale system models, a large amount of computing resources are required. Using a single machine is no longer enough to complete the computing task. Usually, computer clusters are used for parallel solving. If there is no efficient parallel computing method, it will directly affect the computing performance and solving ability of the electromagnetic simulation program, and the computing resources of the cluster cannot be fully utilized. Summary of the invention
[0004] The present application provides a method, device and storage medium for electromagnetic simulation parallel computing, a device and storage medium. The technical solution is as follows:
[0005] In one aspect, a method for parallel computing of electromagnetic simulation is provided, the method being applied to a master control node in a computer cluster, the computer cluster comprising the master control node, task agent nodes and computing nodes, the method comprising:
[0006] Setting the master control node to a master control mode, loading a physical geometric model of electromagnetic simulation, and determining a frequency calculation range of the physical geometric model;
[0007] Generate N simulation computing tasks based on a selected set of frequency points to be calculated, and send the N simulation computing tasks to the task proxy nodes in the computer cluster respectively, so that the task proxy nodes allocate the computing nodes based on the simulation computing tasks and perform model simulation computing; wherein each simulation computing task corresponds to a task proxy node, and the task proxy node and the M computing nodes that execute the same simulation computing task adopt a process-level and thread-level multi-machine parallel computing mode, and M and N are positive integers;
[0008] The calculation result returned by the simulation task is received, and a judgment is made based on the convergence condition and accuracy of the calculation result, and the electromagnetic simulation result is output; the calculation result includes characteristic parameters of the electromagnetic simulation at each frequency point.
[0009] On the other hand, a method for parallel computing of electromagnetic simulation is provided, the method being applied to a task agent node in a computer cluster, the computer cluster comprising a master control node, the task agent node and a computing node, the method comprising:
[0010] receiving a simulation calculation task issued by the master control node, and setting the task agent node to a slave calculation mode; the simulation calculation task is generated by the master control node according to the frequency point to be calculated determined by the physical geometric model loaded with electromagnetic simulation, and different simulation calculation tasks correspond to different calculation frequency points;
[0011] Determine the M computing nodes for multi-machine parallel solution based on the simulation computing task, and control the computing nodes to perform process-level and thread-level multi-machine parallel solution according to the simulation computing task to obtain a calculation result; the calculation result includes characteristic parameters of electromagnetic simulation at each frequency point, and M is a positive integer;
[0012] Send the calculation result of the target frequency point to the master control node.
[0013] In another aspect, a method and apparatus for parallel computing of electromagnetic simulation is provided, wherein the apparatus is applied to a master control node in a computer cluster, wherein the computer cluster includes the master control node, a task agent node and a computing node, and the apparatus includes:
[0014] A first determination module is used to set the master control node to a master control mode, load a physical geometric model of electromagnetic simulation, and determine a frequency calculation range of the physical geometric model;
[0015] A first sending module is used to generate N simulation computing tasks based on a selected set of frequency points to be calculated, and to send the N simulation computing tasks to the task agent nodes in the computer cluster respectively, so that the task agent nodes allocate the computing nodes based on the simulation computing tasks and perform model simulation computing; wherein each simulation computing task corresponds to a task agent node, and the task agent node and the M computing nodes that execute the same simulation computing task adopt a process-level and thread-level multi-machine parallel computing mode, and M and N are positive integers;
[0016] The first receiving module is used to receive the calculation results returned by the simulation task, and make judgments based on the convergence conditions and accuracy of the calculation results to output electromagnetic simulation results; the calculation results include characteristic parameters of electromagnetic simulation at each frequency point.
[0017] In another aspect, an electromagnetic simulation parallel computing device is provided, the device is applied to a task agent node in a computer cluster, the computer cluster includes a master control node, the task agent node and a computing node, the device includes:
[0018] The second receiving module is used to receive the simulation calculation task issued by the master control node and set the task agent node to a slave calculation mode; the simulation calculation task is generated by the master control node according to the frequency point to be calculated determined by the physical geometric model loaded with the electromagnetic simulation, and different simulation calculation tasks correspond to different calculation frequency points;
[0019] A simulation calculation module, used to determine the M computing nodes for performing multi-machine parallel solution based on the simulation calculation task, and control the computing nodes to perform process-level and thread-level multi-machine parallel solution according to the simulation calculation task to obtain calculation results; the calculation results include characteristic parameters of electromagnetic simulation at each frequency point, and M is a positive integer;
[0020] The second sending module is used to send the calculation result of the target frequency point to the main control node.
[0021] On the other hand, a computer device is provided, which includes a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by the processor to implement the electromagnetic simulation parallel computing method mentioned in the above aspect.
[0022] On the other hand, a computer-readable storage medium is provided, in which at least one instruction, at least one program, code set or instruction set is stored. The at least one instruction, the at least one program, the code set or instruction set is loaded and executed by the processor to implement the electromagnetic simulation parallel computing method described in the above aspect.
[0023] On the other hand, a computer program product or a computer program is provided, the computer program product or the computer program comprising computer instructions, the computer instructions being stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs the electromagnetic simulation parallel computing method described in any one of the above aspects.
[0024] The beneficial effects brought by the above technical solution include at least: by using distributed parallel computing to divide large-scale electromagnetic simulation tasks into a main control program and multiple simulation computing tasks, the formed simulation tasks are divided into task agent nodes in the computer cluster according to the frequency points; the task agent node further determines the computing node according to the simulation computing task, and sets it to the slave mode, performs process-level and thread-level multi-machine parallel solution to obtain the calculation results and returns to the main control node for convergence and accuracy evaluation, and then outputs the results. The entire simulation system is executed in a two-level resource scheduling and control mode, and the simulation execution efficiency is higher. The multi-level parallel characteristics of electromagnetic simulation calculations are explored from multiple levels such as task level, process level, and thread level, and the calculation time of electromagnetic simulation is reduced with larger-scale computing resources and more efficient mutual collaboration, which greatly improves the computing performance and solution capability of electromagnetic simulation, improves resource utilization, and realizes electromagnetic simulation of large-scale / ultra-large-scale physical models. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] Figure 1 is a network topology diagram of a computer cluster provided by an embodiment of the present application;
[0026] Figure 2 is a flow chart of the electromagnetic simulation parallel computing method provided in an embodiment of the present application;
[0027] Figure 3 is a flow chart of an electromagnetic simulation parallel computing method provided by another embodiment of the present application;
[0028] Figure 4 It is a structural diagram of the electromagnetic simulation parallel computing method provided in an embodiment of the present application;
[0029] Figure 5 is a structural block diagram of an electromagnetic simulation parallel computing device provided in an embodiment of the present application;
[0030] Figure 6 It is a structural block diagram of the electromagnetic simulation parallel computing device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0031] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.
[0032] The term "multiple" as used herein refers to two or more than two. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the related objects are in an "or" relationship.
[0033] Figure 1It is a network topology diagram of a computer cluster provided by an embodiment of the present application. It includes a master control node 110, a task agent node 120 and a computing node 130. The master control node 110 is a computer or server running an electromagnetic simulation master control program in a computer cluster, the task agent node 120 is a computer or server receiving various instructions and data from the master control node, and the computing node 130 is a computer or server performing simulation calculations. The master control node 110, the task agent node 120 and the computing node 130 form a computer cluster network through a specific connection structure. The master control computer may include one or more. The master control computer in this solution is mainly used to run the electromagnetic simulation master control program, issue relevant instructions and simulation calculation tasks to the task agent nodes in the computer cluster, and collect feedback results from each task agent node. The task agent node is a secondary controlled computer in a computer cluster, which runs the electromagnetic simulation program in a slave mode, that is, it is used to receive simulation calculation tasks from the master control node, and can schedule the computing nodes in the cluster, calculate and generate simulation results, and provide feedback. The task agent nodes and computing nodes in this scheme work together to complete multi-machine parallel computing tasks at the process level (MPI) and thread level (OpenMP). The computing nodes are responsible for receiving resource scheduling from the task agent nodes, participating in electromagnetic simulation calculations, and generating electromagnetic simulation results.
[0034] Figure 2 is a flowchart of the electromagnetic simulation parallel computing method provided in the embodiment of the present application, which is applied to Figure 1 The master node and task agent node in the process include the following steps:
[0035] Step 201 : setting the master control node to the master control mode, loading the physical geometric model of electromagnetic simulation, and determining the frequency calculation range of the physical geometric model.
[0036] The main control node runs the main program for electromagnetic simulation. Setting it to the master control mode can be used to generate simulation calculation tasks and perform task allocation. The master control node needs to start and load the physical geometry model of electromagnetic simulation in order to determine the frequency calculation range of the physical geometry model, and then select the frequency band and frequency point for simulation calculation.
[0037] Step 202: The main control node generates N simulation computing tasks based on a selected set of frequency points to be calculated, and sends the N simulation computing tasks to task agent nodes in the computer cluster respectively.
[0038] After determining the frequency band range, the master node needs to select a set of calculation frequency points (N calculation frequency points) from it, and then generate N simulation calculation tasks based on these N groups of calculation frequency points. The simulation calculation tasks need to be executed by the task agent nodes in the computer cluster, so the selected simulation calculation tasks need to be sent to the N task agent nodes. Among them, each simulation calculation task corresponds to a calculation frequency point.
[0039] Step 203: The task agent node receives the simulation computing task sent by the master node, and sets the task agent node to a slave computing mode.
[0040] After receiving the simulation calculation task sent by the master control node, the task agent node sets itself to slave mode. The electromagnetic simulation program running in slave mode is controlled by the master control node and performs related operations according to the instructions of the master control node.
[0041] Step 204, the task agent node determines M computing nodes for multi-machine parallel solution based on the simulation computing task, and performs process-level and thread-level parallel computing in collaboration with the computing nodes according to the simulation computing task to obtain computing results.
[0042] This solution uses distributed parallel computing to perform simulation computing tasks, and assigns frequency simulation tasks to each task agent node. Based on the simulation computing tasks, the task agent node schedules resources from the computer cluster and determines the computing nodes used for process-level and thread-level multi-machine parallel solutions. The task agent nodes and computing nodes that perform simulation tasks use a process-level parallel mode, while a single computer uses a multi-threaded parallel mode. The task agent nodes and computing nodes perform calculations in a process-level and thread-level multi-machine parallel solution mode to obtain calculation results. The entire simulation logic uses a secondary resource scheduling and control mode to perform electromagnetic simulation tasks. The calculation results include the characteristic parameters of the electromagnetic simulation at the frequency point, which are used for subsequent judgment and evaluation. For different simulation computing tasks, the M value determined by the corresponding task agent node may be different, and M is a positive integer.
[0043] Step 205: The task agent node sends the calculation result of the target frequency point to the master control node.
[0044] The task agent nodes and computing nodes use process-level and thread-level parallel computing modes to perform simulations, and the calculation results are then sent back to the master node. For the N simulation computing tasks established, N task agent nodes send the calculation results of their respective target frequencies to the master node.
[0045] Step 206, receiving the calculation results returned by the simulation task, and making judgments based on the convergence conditions and accuracy of the calculation results, and outputting the electromagnetic simulation results.
[0046] After receiving the calculation results fed back by the N task agent nodes, the master control node also needs to evaluate the calculation results, including the judgment of convergence and accuracy. When the judgment result meets the convergence and accuracy conditions, the electromagnetic simulation result is output. Otherwise, return to step 202 and reselect a set of frequency points to continue the simulation calculation until the result meets the requirements.
[0047] In summary, the present invention divides large-scale electromagnetic simulation tasks into a main control program and multiple simulation computing tasks by using distributed parallel computing, and divides the formed simulation tasks into task agent nodes in the computer cluster according to the frequency points; the task agent node further determines the computing node according to the simulation computing task, and sets it to the slave mode, executes the process level and thread level multi-machine parallel solution to obtain the calculation results and returns to the main control node for convergence and accuracy evaluation, and then outputs the results. The entire simulation system is executed using a two-level resource scheduling and control mode, and the simulation execution efficiency is higher. The multi-level parallel characteristics of electromagnetic simulation calculations are explored from multiple levels such as task level, process level, and thread level, and the calculation time of electromagnetic simulation is reduced with larger-scale computing resources and more efficient mutual collaboration, which greatly improves the computing performance and solution capability of electromagnetic simulation, and realizes electromagnetic simulation of large-scale / ultra-large-scale physical models.
[0048] Figure 3 This is a flow chart of an electromagnetic simulation parallel computing method provided by another embodiment of the present application. It includes the following steps:
[0049] Step 301 : setting the master control node to the master control mode, loading the physical geometric model of electromagnetic simulation, and determining the frequency calculation range of the physical geometric model.
[0050] Step 302 : Select N discrete calculation frequency points from the frequency calculation range in the physical geometric model by using a discrete frequency sweep method, and generate N simulation calculation tasks based on the discrete calculation frequency points.
[0051] This solution combines continuous discrete frequency sweep and interpolation frequency sweep. Here, discrete continuous frequency sweep is used to select N discrete calculation frequency points from the frequency calculation range, and the sampling points are selected according to a fixed sampling interval. For example, 50 frequency points are selected at an interval of 1KHZ, and then 50 simulation calculation tasks are generated with 50 frequency points respectively.
[0052] Step 303: The master control node sends the simulation computing task to the task agent node.
[0053] The master node, task agent node and computing node form a computer cluster in a specific way (not limited to Figure 1The architecture in the system can also adopt star structure, ring structure, bus structure, distributed structure, tree structure, mesh structure and honeycomb structure, etc.). The simulation computing task is sent to the task agent node using the cluster connection structure. The master control node and the task agent node communicate with the master control program using the specified communication port.
[0054] Step 304: The task agent node receives the simulation computing task sent by the master node and is set to a slave computing mode.
[0055] The master control node runs the main program and manages N task agent nodes. After receiving the simulation computing tasks, the N task agent nodes are automatically set to slave computing mode and execute the simulation computing tasks. Figure 4 As shown, the master control node establishes N simulation computing tasks and sends the simulation computing tasks to the task agent node through a specific communication port.
[0056] Step 305, based on the independent computing resources required to execute the simulation computing task of the target frequency point, determine M computing nodes for performing process-level and thread-level multi-machine parallel solving, and set the computing nodes to slave computing mode.
[0057] Since the master node does not directly control the computing nodes, the task agent node is required to schedule and allocate resources, determine the independent computing resources required for the simulation computing task at each target frequency, and then determine a certain number (M) of computing nodes and set the computing nodes to slave computing mode. The computing nodes and task agent nodes are in a collaborative computing relationship, jointly executing simulation computing tasks, using process-level and thread-level multi-machine parallel computing methods.
[0058] Step 306: Establish a master-slave control channel and a high-speed data transmission channel based on the simulation computing task master control node and the task agent node.
[0059] After determining and issuing the simulation task plan, the master control node also needs to establish a master-slave control channel and a high-speed data transmission channel with N task agent nodes. The master-slave control channel is used to send control instructions and interact with the task agent node, and the high-speed data transmission channel is used to transmit related model data. The master control program and the simulation computing task use the specified port for handshake, verification, and registration, assign a unique ID number to each simulation computing task and maintain a long connection as the master-slave control channel. At the same time, the master control program and the simulation computing task create an MPI communication domain to realize the high-speed data transmission channel.
[0060] Step 307: The master control node sends the model data and frequency data of the electromagnetic simulation to the task agent node through the corresponding high-speed data transmission channel.
[0061] Different task agent nodes receive simulation calculation tasks of different target frequencies through high-speed data transmission channels established with the master node. Model data includes at least geometric topology, mesh generation, finite element wave equation solution, excitation source, and boundary conditions, and frequency data is the target frequency of each calculation task.
[0062] Step 308: Send a solution instruction to the task agent node through the master-slave control channel.
[0063] After determining that the task agent node has received the model data and frequency data, the master control node further sends a solution instruction to it through the master-slave control channel. The solution instruction is used to control the task agent node to start simulation calculation.
[0064] Step 309: receiving the model data and frequency data of the electromagnetic simulation sent by the master control node based on the high-speed data transmission channel; and receiving the solution instruction sent by the master control node based on the master-slave control channel.
[0065] Step 310, perform task-level calculation of the target frequency based on the solution instruction, broadcast model data, frequency data and control instructions to the computing nodes, control the computing nodes to perform process-level and thread-level multi-machine parallel calculation of the target frequency, and obtain characteristic parameters of the target frequency.
[0066] After receiving the model data, the task agent node broadcasts the relevant data and control instructions to the computing node to control and synchronize the computing tasks. The nodes that perform different simulation computing tasks (task agent nodes) belong to the task-level parallel mode, while the nodes that perform the same simulation computing task belong to the process-level and thread-level multi-machine parallel mode. The entire computing system uses task-level, process-level and thread-level parallel computing modes to obtain the characteristic parameters of the target frequency point. The characteristic parameters include parameters such as the electric field, magnetic field, current density and power of the electromagnetic simulation model.
[0067] Step 311: The task agent node generates a calculation result based on the characteristic parameters of the target frequency point, and sends the calculation result to the master control node through the master-slave control channel.
[0068] Each task agent node calculates and obtains the data of the computing node under the same simulation computing task, that is, it integrates and collects the data of the thread-level calculation, obtains the characteristic parameters and calculation results of the target frequency point, and then returns them to the main control node through the established master-slave control channel. At this time, the process for the task agent node and the computing node ends.
[0069] Step 312: The master control node obtains the calculation results returned by the task agent node through a high-speed data transmission channel, and extracts characteristic parameters therein.
[0070] Step 313: The master control node integrates the characteristic parameters under different frequency parameters, and determines the convergence condition and precision value after integration.
[0071] For the selected N frequency points, the master control node needs to evaluate the results, including the integration of various characteristic parameters and the accuracy judgment. The integrated results are used in the post-processing stage of electromagnetic simulation.
[0072] Step 314: When the integrated data meets the convergence condition and the accuracy value meets the simulation requirement, the electromagnetic simulation result is output.
[0073] like Figure 4 As shown in the figure, when the master control node (master control program) judges that the N calculation results meet the convergence and accuracy requirements, the simulation results are directly output to facilitate the subsequent post-processing process. However, when the integrated results cannot meet the accuracy and convergence judgment, that is, the model system error (the system model obtained by integrating the characteristic parameters of each frequency point and the comparison with the real model) does not meet the convergence conditions or accuracy requirements, the special frequency point with the largest error is selected. This special frequency point is the frequency point that needs further simulation calculation. The master control program starts the next batch of electromagnetic simulation calculation tasks according to the number of frequency points and distributes the frequency point data, performs interpolation and frequency sweep, and repeats the above process until the results meet the convergence and accuracy requirements.
[0074] In summary, the method provided in the embodiment of the present application adopts a master-slave structure, and splits a complete electromagnetic simulation task into a master control program and a simulation solver program using a distributed computing mode, which are executed by a master control node and a task agent node in a computer cluster respectively; at the same time, in order to improve the efficiency of execution, a two-level control mode is adopted, and a master-slave control channel and a high-speed data transmission channel are established between the master control node and the task agent node, which are used for command control, transmission of model data and frequency data, etc., to realize parallel calculation of multiple subtasks; and for the task agent node, a two-level control mode is adopted, and the computing node is determined according to the respective simulation calculation tasks, and the task agent node is controlled to perform simulation calculations. The computing node and the task agent node use thread-level and process-level computing modes to perform simulation calculation tasks to obtain the characteristic parameters of the same target frequency point, and the calculation results are fed back to the master control node through the task agent node; the master control node collects and integrates the calculation results, evaluates whether the output conditions are met in terms of convergence and accuracy, and outputs the calculation results if the conditions are met.
[0075] This solution exploits the multi-level parallel characteristics of electromagnetic simulation calculations from multiple levels, such as task level, process level, and thread level, and reduces the calculation time of electromagnetic simulation with larger-scale computing resources and more efficient mutual collaboration, greatly improving the computing performance and solution capabilities of electromagnetic simulation, and realizing electromagnetic simulation of large-scale / ultra-large-scale physical models.
[0076] Figure 5: is a structural block diagram of an electromagnetic simulation parallel computing device provided in an embodiment of the present application, which is used for a master control node, and the device includes:
[0077] The first determination module 501 is used to set the master control node to a master control mode, load a physical geometric model of electromagnetic simulation, and determine a frequency calculation range of the physical geometric model;
[0078] The first sending module 502 is used to generate N simulation computing tasks based on a selected set of frequency points to be calculated, and to send the N simulation computing tasks to the task proxy nodes in the computer cluster respectively, so that the task proxy nodes allocate the computing nodes based on the simulation computing tasks and perform model simulation computing; wherein each simulation computing task corresponds to a task proxy node, and the M task proxy nodes and computing nodes that execute the same simulation computing task adopt a process-level and thread-level multi-machine parallel computing mode, and M and N are positive integers;
[0079] The first receiving module 503 is used to receive the calculation results returned by the simulation task, and make judgments based on the convergence conditions and accuracy of the calculation results to output electromagnetic simulation results; the calculation results include characteristic parameters of electromagnetic simulation at each frequency point.
[0080] Figure 6 : is a structural block diagram of an electromagnetic simulation parallel computing device provided in an embodiment of the present application, which is used for a task agent node, and the device includes:
[0081] The second receiving module 601 is used to receive the simulation calculation task issued by the master control node and set the task agent node to the slave calculation mode; the simulation calculation task is generated by the master control node according to the frequency point to be calculated determined by the physical geometric model loaded with electromagnetic simulation, and different simulation calculation tasks correspond to different calculation frequency points;
[0082] The simulation calculation module 602 is used to determine the M computing nodes for performing multi-machine parallel computing based on the simulation calculation task, and control the computing nodes to perform multi-machine parallel computing according to the simulation calculation task to obtain a calculation result; the calculation result includes characteristic parameters of electromagnetic simulation at each frequency point, and M is a positive integer;
[0083] The second sending module 603 is used to send the calculation result of the target frequency point to the main control node.
[0084] In an embodiment of the present application, a computer device is also provided, which includes a processor and a memory; the memory stores at least one instruction, and the at least one instruction is used to be executed by the processor to implement the electromagnetic simulation parallel computing method provided by the above-mentioned method embodiments.
[0085] In an embodiment of the present application, a computer program product or a computer program is also provided, the computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the electromagnetic simulation parallel computing method described in any one of the above aspects.
[0086] The preferred embodiments of the present invention are described above; it should be understood that the present invention is not limited to the above-mentioned specific embodiments, and the devices and structures not described in detail should be understood to be implemented in a common manner in the art; any technician familiar with the art can make many possible changes and modifications without departing from the technical solution of the present invention, or modify them into equivalent embodiments with equivalent changes, which does not affect the essential content of the present invention; therefore, any simple modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present invention without departing from the content of the technical solution of the present invention are still within the scope of protection of the technical solution of the present invention.
Claims
1. A parallel computing method for electromagnetic simulation, characterized in that: The method is applied to a master control node in a computer cluster, the computer cluster includes the master control node, a task agent node and a computing node, and the method includes: Setting the master control node to a master control mode, loading a physical geometric model of electromagnetic simulation, and determining a frequency calculation range of the physical geometric model; Generate N simulation computing tasks based on a selected set of frequency points to be calculated, and send the N simulation computing tasks to the task proxy nodes in the computer cluster respectively, so that the task proxy nodes allocate the computing nodes based on the simulation computing tasks and perform model simulation computing; wherein each simulation computing task corresponds to a task proxy node, and the task proxy node and the M computing nodes that execute the same simulation computing task adopt a process-level and thread-level multi-machine parallel computing mode, and M and N are positive integers; The calculation result returned by the simulation task is received, and a judgment is made based on the convergence condition and accuracy of the calculation result, and the electromagnetic simulation result is output; the calculation result includes characteristic parameters of the electromagnetic simulation at each frequency point.
2. The method according to claim 1, characterized in that The generating of N simulation computing tasks based on a selected set of frequency points to be calculated, and sending the N simulation computing tasks to the task agent nodes in the computer cluster respectively, comprises: Selecting N discrete calculation frequency points from the frequency calculation range of the physical geometric model by using a discrete frequency sweep method, and generating N simulation calculation tasks based on the N discrete calculation frequency points; Sending the N simulation computing tasks to the N task proxy nodes respectively; the computing frequencies of different simulation computing tasks are different; Establishing N master-slave control channels and N high-speed data transmission channels based on the N simulation computing tasks and the N task proxy nodes in the computer cluster; The model data and frequency data of the electromagnetic simulation are sent to the N task agent nodes through the corresponding high-speed data transmission channels respectively, and the model data includes at least one of geometric topology, mesh generation, finite element solution of wave equations, excitation source and boundary conditions.
3. The method according to claim 2, characterized in that After sending the electromagnetic simulation model data and frequency data to the N task agent nodes through the corresponding high-speed data transmission channels, the method further includes: Through the N master-slave control channels, a solution instruction is sent to the task agent node to control the task agent nodes and the computing nodes corresponding to the N simulation computing tasks to perform process-level and thread-level multi-machine parallel computing to obtain characteristic parameters at corresponding frequency points; the characteristic parameters include at least one of electric field, magnetic field, current density and power.
4. The method according to claim 3, characterized in that: The receiving the calculation result returned by the simulation task, and judging based on the convergence condition and accuracy of the calculation result, and outputting the electromagnetic simulation result, includes: Obtaining the calculation results returned by the N task agent nodes respectively through the N high-speed data transmission channels, and extracting the characteristic parameters therein; Integrate the characteristic parameters under different frequency parameters, and judge the convergence and accuracy of the integrated data; When the integrated data meets the convergence conditions and the accuracy value meets the simulation requirements, the electromagnetic simulation results are output.
5. The method according to claim 4, characterized in that The method further comprises: When the integrated data does not meet the convergence condition and / or accuracy value requirements, the special frequency point with the largest error is selected; Interpolation sweep is performed based on the special frequency points to obtain a second group of frequency points to be calculated, a second group of simulation calculation tasks is generated based on the second group of frequency points to be calculated, and the steps of issuing the second group of simulation calculation tasks and receiving calculation results are continued until the integrated data meets the convergence conditions and the accuracy value meets the simulation requirements, and the electromagnetic simulation results are output.
6. A parallel computing method for electromagnetic simulation, characterized in that: The method is applied to a task agent node in a computer cluster, the computer cluster includes a master control node, the task agent node and a computing node, and the method includes: receiving a simulation calculation task issued by the master control node, and setting the task agent node to a slave calculation mode; the simulation calculation task is generated by the master control node according to the frequency point to be calculated determined by the physical geometric model loaded with electromagnetic simulation, and different simulation calculation tasks correspond to different calculation frequency points; Determine the M computing nodes for multi-machine parallel solution based on the simulation computing task, and control the computing nodes to perform process-level and thread-level parallel computing according to the simulation computing task to obtain computing results; the computing results include characteristic parameters of electromagnetic simulation at each frequency point, and M is a positive integer; Send the calculation result of the target frequency point to the master control node.
7. The method according to claim 6, characterized in that The determining of the M computing nodes for performing multi-machine parallel solving based on the simulation computing task, and controlling the computing nodes to perform process-level and thread-level multi-machine parallel computing according to the simulation computing task to obtain computing results includes: Based on the independent computing resources required to perform the simulation computing task of the target frequency point, determine the M computing nodes for performing process-level and thread-level multi-machine parallel computing, and set the computing nodes to a slave computing mode; Establishing a master-slave control channel and a high-speed data transmission channel based on the simulation computing task and the master control node; Receiving the model data and frequency data of the electromagnetic simulation sent by the master control node based on the high-speed data transmission channel; receiving the solution instruction sent by the master control node based on the master-slave control channel; Based on the solution instruction, task-level parallel calculation of the target frequency point is performed, and model data, frequency data and control instructions are sent to the computing node to control the computing node to execute process-level and thread-level multi-machine parallel calculation of the target frequency point to obtain characteristic parameters of the target frequency point.
8. The method according to claim 7, characterized in that After acquiring the characteristic parameters of the target frequency point, the method further includes: The calculation results are generated based on the characteristic parameters of the target frequency point, and the calculation results are sent to the master control node through the established master-slave control channel, so that the master control node can judge the convergence conditions and accuracy and output the electromagnetic simulation results.
9. An electromagnetic simulation parallel computing device, characterized in that: The device is applied to a master control node in a computer cluster, the computer cluster includes the master control node, a task agent node and a computing node, and the device includes: A first determination module is used to set the master control node to a master control mode, load a physical geometric model of electromagnetic simulation, and determine a frequency calculation range of the physical geometric model; A first sending module is used to generate N simulation computing tasks based on a selected set of frequency points to be calculated, and to send the N simulation computing tasks to the task agent nodes in the computer cluster respectively, so that the task agent nodes allocate the computing nodes based on the simulation computing tasks and perform model simulation computing; wherein each simulation computing task corresponds to a task agent node, and the task agent node and the M computing nodes that execute the same simulation computing task adopt a process-level and thread-level multi-machine parallel computing mode, and M and N are positive integers; The first receiving module is used to receive the calculation results returned by the simulation task, and make judgments based on the convergence conditions and accuracy of the calculation results to output electromagnetic simulation results; the calculation results include characteristic parameters of electromagnetic simulation at each frequency point.
10. An electromagnetic simulation parallel computing device, characterized in that: The device is applied to a task agent node in a computer cluster, the computer cluster includes a master control node, the task agent node and a computing node, and the device includes: The second receiving module is used to receive the simulation calculation task issued by the master control node and set the task agent node to a slave calculation mode; the simulation calculation task is generated by the master control node according to the frequency point to be calculated determined by the physical geometric model loaded with the electromagnetic simulation, and different simulation calculation tasks correspond to different calculation frequency points; A simulation calculation module, used to determine the M computing nodes for multi-machine parallel solution based on the simulation calculation task, and control the computing nodes to perform process-level and thread-level multi-machine parallel solution according to the simulation calculation task to obtain calculation results; the calculation results include characteristic parameters of electromagnetic simulation at each frequency point, and M is a positive integer; The second sending module is used to send the calculation result of the target frequency point to the main control node.
11. A computer device, characterized in that: The computer device includes a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by the processor to implement the electromagnetic simulation parallel computing method as described in any one of claims 1 to 5 or 6 to 8.
12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by the processor to implement the electromagnetic simulation parallel computing method as described in any one of claims 1 to 5 or 6 to 8.
Citation Information
Patent Citations
Multilevel parallel simulation method for quasi-three-dimensional equation in complex electromagnetic environment
CN103605872A
Ship electromagnetic scattering prediction method and system based on sub-domain modeling
CN104317984A
Distributed group intelligent system
CN110278249A
Integrated circuit board simulation multistage distributed parallel computing method
CN113722966A