Efficient large-scale distributed parallel computing deduction simulation platform and design method thereof
By designing an efficient, large-scale distributed parallel computing simulation platform, the problems of uneven resource allocation and high data processing latency in large-scale real-time human-in-the-loop simulation were solved. It achieved efficient scheduling of computing and communication resources, supports large-scale parallel simulation and real-time human-in-the-loop operation, and improves the efficiency and adaptability of the simulation system.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- PLA PEOPLES LIBERATION ARMY OF CHINA STRATEGIC SUPPORT FORCE AEROSPACE ENG UNIV
- Filing Date
- 2025-12-08
- Publication Date
- 2026-05-01
AI Technical Summary
Existing simulation systems suffer from problems such as uneven allocation of computing resources, congestion of computing and communication, high data processing latency, and inability to realize human-in-the-loop operations in large-scale real-time human-in-the-loop simulations, making it difficult to support large-scale distributed and efficient parallel computing.
A high-efficiency, large-scale distributed parallel computing simulation platform was designed. It adopts a hybrid B/S and C/S architecture, combining Spring Cloud microservice architecture and C/S architecture written in C++. It integrates middleware such as Kafka and Flink to provide reusable model development, parallel simulation scheduling, massive data acquisition and situation display services, and realizes unified allocation and optimization of computing and communication resources.
It improves resource utilization, shortens the running time of large sample tasks, supports large-scale real-time human-in-the-loop simulation, enhances model development efficiency, and adapts to continuously expanding simulation needs.
Smart Images

Figure CN121615362B_ABST
Abstract
Description
A High-Efficiency Large-Scale Distributed Parallel Computing Inference and Simulation Platform and Its Design Method Technical Field
[0001] This invention belongs to the fields of computer simulation and deduction technology, large-scale parallel computing technology, and big data processing technology, and particularly relates to an efficient large-scale distributed parallel computing deduction and simulation platform and its design method. Background Technology
[0002] With the continuous development of simulation applications, simulation scenarios are becoming increasingly diversified, the scale of simulation entities is gradually expanding, the granularity of simulation models is becoming finer, and the business logic is becoming more complex. This places increasingly higher demands on the processing power, performance, and computing resources of simulation platforms. Existing simulation requirements typically have the following characteristics:
[0003] 1. Large scale: Large-scale simulations typically involve a large number of simulation entities, and each entity contains multiple models. The interactions between entities and models are complex.
[0004] 2. Parallel simulation: With the promotion of simulation applications and the increasingly widespread use of large-sample simulation, the number of simulation tasks that need to be run on the simulation platform at the same time is also increasing. At the same time, there are causal interactions between simulation entities. In order to obtain correct and reliable simulation results, multiple entities often need to run in parallel and process collaboratively during the simulation process.
[0005] 3. Complex models: The current simulation field is extensive and requires a high degree of precision. The models and data need to fully reflect the static characteristics and state transition processes of the simulated entities. Therefore, the models are very complex, require a high degree of granularity, and their computational load is growing exponentially.
[0006] Existing simulation systems can only support small-scale single-machine operation for real-time human-in-the-loop simulations or ultra-real-time multi-sample simulations. For example, in application number 202411075350.4, publication number CN119004812A, entitled "A Method and System for Combining and Reusing Model Resources Based on Interfaces," interface intervention is required during simulation to provide the conditions for "human-in-the-loop" operation, laying the foundation for the platform to achieve efficient large-scale distributed parallel computing simulations. However, when encountering large-scale entity simulations such as system-on-system combat training and space attack and defense research, the simulation speed drops sharply, and simulations can only be performed in an off-the-loop manner, with situational awareness displayed through replay after the simulation is completed. This method of running large-scale simulations greatly prolongs the simulation time and fails to fully utilize hardware resources. Therefore, large-scale distributed efficient parallel computing real-time simulation has become an important trend in simulation development.
[0007] In traditional simulation systems, distributed simulation technology, covering all stages from model development, scenario design, simulation execution to data acquisition and situational awareness, is quite mature, as shown in Figure 1. Traditional simulation generally consists of five main steps: model development, scheduling and control, simulation calculation, data acquisition, and situational awareness projection. Each step can potentially become a bottleneck affecting the overall platform's operational efficiency. However, it does not adequately support large-scale real-time human-in-the-loop simulations. For example, real-time human-in-the-loop simulations support small-scale entities, but simulations for large-scale entities only support post-event review and playback, mainly due to the following problems:
[0008] 1. It is difficult to uniformly allocate, schedule and manage the computing resources of the entire system according to the computational consumption and interaction relationships of the model, resulting in low resource utilization and congestion and imbalance in computing and communication.
[0009] 2. The parallel computing capability is weak. For example, traditional serial or distributed computing methods are used for a large number of parallel simulations, large-scale entity deductions, and complex model calculations, which result in large communication volume and long computing time.
[0010] 3. In order to ensure the order of data during real-time simulation, a single-threaded mode is usually used to process and transmit simulation data. When collecting massive amounts of data in real time, the processing capacity is often too large, resulting in a larger and larger delay in situation display compared to the simulation operation, making it impossible to realize human-in-the-loop operation.
[0011] Terminology Explanation:
[0012] Simulation entity: A virtual instance created during simulation operation based on the simulation scenario, data, and simulation model to simulate a real-world system or process for analysis.
[0013] Model granularity: refers to the precision or granularity used when building a model, which determines the level of detail in how the model describes the phenomena or problems. Specifically, the finer the model granularity, the more accurate the phenomena and processes described by the model will be, but the modeling difficulty and computational load will also increase accordingly.
[0014] Human-in-the-loop: This refers to the ability to intervene in simulation decisions through human intervention during the simulation process, with the simulation adjusting based on human feedback.
[0015] Large sample: The process of using a large amount of data or samples for simulation, aiming to improve the accuracy and reliability of the results through detailed simulation data analysis.
[0016] SharedArrayBuffer is an object used to share a fixed-length binary data buffer among multiple threads.
[0017] JS: JavaScript is a dynamic programming language widely used in web development, primarily to enhance the interactivity and dynamism of web pages.
[0018] IOCM specification: A simulation model that meets the Input / Output / Calculate / Model interfaces, and has a well-defined simulation framework and interface description. Summary of the Invention
[0019] To address the aforementioned technical issues, this invention provides an efficient large-scale distributed parallel computing simulation platform and its design method, which can effectively support multi-task parallel large-scale human-in-the-loop entity simulation, and can efficiently and quickly collect, process, store, and push situational visualization displays of massive simulation data.
[0020] The objective of this invention is specifically achieved through the following technical solutions:
[0021] This invention discloses a high-efficiency, large-scale distributed parallel computing simulation platform, comprising: a reusable model development service module, a parallel simulation scheduling service module, a large-scale parallel computing engine module, a high-throughput data acquisition service module, and a scenario service module; wherein,
[0022] The reusable model development service module provides a visual model development and encapsulation environment, enabling users to design, develop, and encapsulate reusable simulation models that meet IOCM specifications more efficiently and conveniently.
[0023] The parallel simulation scheduling service module provides a visual simulation operation control tool, including the creation, configuration, start, pause, resume, and stop of simulation tasks; it supports automatic and manual distribution of simulation entities, and users can determine the appropriate distribution method based on the solution complexity of the simulation model, the type of simulation entity, and the interaction relationship between entities to achieve communication optimization and load balancing in the simulation.
[0024] The massively parallel computing engine module is used to drive the simulation model by using a continuous-time / discrete-event-driven simulation mechanism. It provides a transparent event scheduling and parallel processing mechanism, an efficient single-machine and distributed communication optimization mechanism, and realizes the generation and output of process data and result data.
[0025] The high-throughput data acquisition service module is used to collect the output data of the simulation entities during the simulation process, and uses an asynchronous multi-task mechanism to process, sort, and store massive amounts of simulation data, and combines an efficient communication mechanism to achieve real-time data push.
[0026] The scenario planning service module is used to enable users to design and deploy simulation scenarios based on the basic digital earth framework through a browser, providing core and key driving data for subsequent model calculations and application problem analysis. At the same time, it combines real-time simulation output data collected by the high-throughput data acquisition service to visualize the simulation scenario, and users can issue commands to the simulation entities in the interface to achieve human-in-the-loop intervention in the simulation operation.
[0027] The platform adopts a hybrid B / S and C / S architecture. The server uses the Spring Cloud distributed microservice architecture solution based on the JAVA language, while the large-scale parallel computing engine adopts a platform-independent standard C++ C / S architecture. It also integrates high-throughput big data collection and processing middleware such as KAFKA and Flink, forming a platform architecture with high concurrency, high throughput, high availability, and high performance.
[0028] The platform's operation process is as follows:
[0029] First, users design and develop simulation models in the reusable model development service module, build model interaction relationships, and save them into the simulation model resource library;
[0030] Then, the scenario design module in the scenario situation service module is used to perform scenario visualization editing and deployment;
[0031] Once the deployment is complete, the parallel simulation scheduling service module is used to create simulation tasks, simulation computing nodes, allocate model resources and send them to the simulation task startup. The massively parallel computing engine generates simulation entities based on the data and drives the model, while outputting simulation data.
[0032] Finally, the high-throughput data acquisition service module processes, sorts, and stores the simulation data, and pushes it to the situation display module in the scenario service for data visualization.
[0033] Furthermore, the reusable model development service module adopts a service-oriented architecture and visual programming technology, providing intuitive graphical model protocols, port design, rule orchestration, and behavior tree editing. It enables the visual assembly and reuse of models and the design of interactive relationships through an intuitive and easy-to-use drag-and-drop method, ultimately building a simulation model library that can support certain application scenarios.
[0034] Furthermore, the parallel simulation scheduling service module adopts a decentralized distributed cluster service architecture, where each service node is equal to the others and each node has a high degree of autonomy, and the service nodes communicate with each other to maintain data consistency.
[0035] The service manages and schedules the large-scale computing engine cluster in a load-balanced manner. The engines are connected to different services in the cluster and share the managed engine data through data communication between the services. When a service goes down or becomes unresponsive, the engine it manages will automatically schedule to connect to other surviving service nodes in the cluster to ensure the availability of the engine.
[0036] Furthermore, the massively parallel computing engine module, with its continuous-time / discrete-event simulation advancement mechanism, combines object-oriented business models with high-performance computing to provide efficient operation of large-scale distributed parallel simulations.
[0037] Furthermore, the high-throughput data acquisition service module employs a main / secondary thread collaborative parallel processing technology to achieve multi-task parallel processing and parsing of massive data, and combines it with point-to-point high-performance transmission technology to achieve real-time push of big data.
[0038] Furthermore, the scenario situation service module adopts a pure web architecture with CesiumJS as the underlying service library, combined with WebGL and GIS visualization development technologies. It provides convenient, fast, flexible, versatile, and intuitive graphical scenario deployment design and large-scale simulation entity modeling. This includes a scenario design module and a situation display module.
[0039] This invention also provides a design method for an efficient large-scale distributed parallel computing simulation platform, comprising:
[0040] By designing, developing, encapsulating, and reusing simulation models, a model library that meets user needs is established, resulting in a reusable model development service module.
[0041] By designing and deploying hypothetical scenarios, real-time visualization of large-scale simulated physical scenarios, and human-in-the-loop processing, a hypothetical situation service module is obtained.
[0042] By unifying the allocation, distribution, and scheduling of simulation resources, as well as controlling the operation of the simulation, a parallel simulation scheduling service module is obtained.
[0043] Through distributed parallel computing, propulsion, and data communication of large-scale simulated entity models, a large-scale parallel computing engine module is obtained.
[0044] A high-throughput data acquisition service module is obtained through the real-time acquisition, processing, storage, and push of massive simulation data;
[0045] A highly efficient, large-scale distributed parallel computing simulation platform is composed of a reusable model development service module, a parallel simulation scheduling service module, a large-scale parallel computing engine module, a high-throughput data acquisition service module, and a scenario service module.
[0046] The beneficial effects of this invention are:
[0047] Employing a high-efficiency, large-scale distributed parallel computing simulation platform effectively solves the problems of inability to run simulations in a distributed parallel manner and low simulation model settlement efficiency under large-scale entity conditions. It also addresses the issues of high latency in data acquisition and processing, and the inability to achieve human-in-the-loop functionality due to the asynchrony between situation display and simulation operation caused by massive amounts of data in traditional data acquisition services. The platform enables unified allocation, scheduling, and optimization of computing and communication resources, improving resource utilization. Combined with multi-simulation parallel capabilities, it effectively shortens the runtime of large-sample tasks, thereby saving valuable human and material resources. Furthermore, the reusable model development and assembly method significantly reduces the user's development workload, improves model development efficiency, and lowers development difficulty, well adapting to the continuously expanding and improving needs of simulation applications. This technology and system can be widely applied in large-scale real-time training simulations and large-sample system simulations, realizing social and economic value. Attached Figure Description
[0048] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments.
[0049] Figure 1 is a schematic diagram of the traditional simulation operation steps provided by the present invention.
[0050] Figure 2 is a schematic diagram of the functional modules of the platform provided by the present invention.
[0051] Figure 3 is a schematic diagram of the platform technical architecture provided by the present invention.
[0052] Figure 4 is a schematic diagram of the main operation flow of the platform provided by the present invention.
[0053] Figure 5 is a schematic diagram of the reusable model development service provided by the present invention.
[0054] Figure 6 is a schematic diagram of the management of the massively parallel computing engine provided by the present invention.
[0055] Figure 7 is a schematic diagram of the scheduling process of the parallel simulation scheduling service provided by the present invention.
[0056] Figure 8 is a schematic diagram of the composition of the large-scale parallel computing engine provided by the present invention.
[0057] Figure 9 is a schematic diagram of the main / secondary thread collaborative parallel processing of the high-throughput data acquisition service provided by the present invention.
[0058] Figure 10 is a schematic diagram of non-blocking I / O multi-threaded communication for the high-throughput data acquisition service provided by the present invention.
[0059] Figure 11 is a schematic diagram of the multi-threaded technology for scenario-based services provided by the present invention. Detailed Implementation
[0060] This invention realizes a high-efficiency, large-scale distributed parallel computing simulation platform that can effectively support multi-task parallel large-scale human-in-the-loop entity simulation, and can efficiently and quickly collect, process, store, and push situation visualization display of massive simulation data.
[0061] 1.1 Design Concept:
[0062] As shown in Figure 1, traditional simulation generally consists of five main steps: model development, scheduling and control, simulation calculation, data acquisition, and situational analysis. Each step can potentially become a bottleneck affecting the overall platform's operational efficiency. Therefore, this paper considers dividing the platform into five service modules, and performing separate bottleneck analysis, performance processing, and distributed cluster architecture design optimization for each module's business processes. This aims to enable the entire platform to meet the requirements of efficient, large-scale distributed parallel computing simulation.
[0063] 1.2 Platform Components:
[0064] As shown in Figure 2, the software adopts a B / C hybrid architecture, and all functions can be accessed through a browser. It mainly consists of five service modules: a reusable model development service module, a parallel simulation scheduling service module, a massively parallel computing engine module, a high-throughput data acquisition service module, and a scenario situation service module.
[0065] Reusable Model Development Service Module: Provides a visual model development and encapsulation environment, enabling users to design, develop, and encapsulate reusable simulation models that meet IOCM specifications more efficiently and conveniently.
[0066] The parallel simulation scheduling service module provides a visual simulation operation control tool, including simulation task creation, configuration, startup, pause, resumption, and stopping. It supports automatic and manual distribution of simulation entities, allowing users to determine the appropriate distribution method based on the computational complexity of the simulation model, the type of simulation entity, and the interaction relationships between entities, thereby achieving optimized communication and load balancing in the simulation.
[0067] Massive Parallel Computing Engine Module: Drives simulation model operation using continuous-time / discrete-event-driven simulation mechanisms, provides transparent event scheduling and parallel processing mechanisms, efficient single-machine and distributed communication optimization mechanisms, and realizes the generation and output of process data and result data.
[0068] High-throughput data acquisition service module: Acquires output data of simulation entities during simulation operation, and uses an asynchronous multi-task mechanism to process, sort, and store massive amounts of simulation data, and combines an efficient communication mechanism to achieve real-time data push.
[0069] The scenario planning service module utilizes a browser-based digital earth platform to enable users to design and deploy simulation scenarios, providing core and critical driving data for subsequent model calculations and application problem analysis. Simultaneously, it visualizes the simulation scenario by combining real-time simulation output data collected through a high-throughput data acquisition service. Furthermore, users can issue commands to simulated entities within the interface to achieve human-in-the-loop intervention in the simulation.
[0070] 1.3 Technical Architecture:
[0071] The platform adopts a hybrid B / S and C / S architecture. The server uses the Spring Cloud distributed microservice architecture solution based on the JAVA language, while the massive parallel computing engine adopts a platform-independent standard C++ C / S architecture. At the same time, it integrates high-throughput big data collection and processing middleware such as KAFKA and Flink, forming a platform architecture with high concurrency, high throughput, high availability, and high performance. The overall technical architecture diagram is shown in Figure 3.
[0072] 1.4 Business Process:
[0073] The main operation flow of the five services is shown in Figure 4.
[0074] First, users design and develop simulation models in the reusable model development service, build model interaction relationships, and save them to the simulation model resource library. Then, they use the scenario design module in the scenario situation service to visually edit and deploy the scenario. After the scenario deployment is completed, the parallel simulation scheduling service is used to create simulation tasks, allocate simulation computing nodes, and distribute model resources to the simulation task startup. The massively parallel computing engine generates simulation entities based on the data and drives the model, while simultaneously outputting simulation data. Finally, the high-throughput data acquisition service processes, sorts, and stores the simulation data, and pushes it to the situation display module in the scenario situation service for data visualization.
[0075] 1.5 Module Design:
[0076] 1.5.1 Reusable Model Development Service:
[0077] The reusable model development service adopts a service-oriented architecture and visual programming technology, providing intuitive graphical model protocols, port design, rule orchestration, and behavior tree editing. It enables visual assembly and reuse of models and design of interaction relationships through an intuitive drag-and-drop interface, ultimately building a simulation model library capable of supporting specific application scenarios. The specific process of the reusable model development service is shown in Figure 5.
[0078] The service supports one-click generation of model development frameworks that conform to IOCM modeling specifications. Development languages supported include C++ and Python. Developers do not need to understand the technical details of parallel programming and low-level communication calls; they only need to implement the model's business algorithms within the generated framework. Once the model is developed and the business algorithms meet the requirements, users do not even need to write any other code. They can simply assemble the model by connecting and setting up interaction ports, configure different initial model parameters, and rearrange rules or behavior trees to complete the reuse and development of simulation models and create a model library.
[0079] 1.5.2 Parallel Simulation Scheduling Service:
[0080] The parallel simulation scheduling service adopts a decentralized, distributed cluster service architecture. Each service node is equal to the others and highly autonomous, communicating with each other to maintain data consistency. The service manages and schedules the large-scale computing engine cluster using a load-balanced approach. Engines connect to different services within the cluster and share managed engine data through service data communication. When a service fails or becomes unresponsive, its managed engines automatically reconnect to other surviving service nodes in the cluster to ensure engine availability. The computing engine management is illustrated in Figure 6.
[0081] The service provides a visual simulation operation control mode to enable the configuration, start, pause, continue, and stop of the simulation. Simulation engine nodes and simulation model instances can be allocated manually or automatically through the interface. It also supports real-time monitoring of the resource status of simulation engine nodes, model calculation status, and model output data.
[0082] Deploying services through a distributed cluster effectively reduces connection and communication data bottlenecks under large-scale engine node management. It also allows for manual or automatic scheduling to determine the appropriate distribution method for the model, achieving communication optimization and load balancing during simulation. The service scheduling process is shown in Figure 7.
[0083] 1.5.3 Massive Parallel Computing Engine:
[0084] The massively parallel computing engine uses a continuous-time / discrete-event simulation mechanism to combine object-oriented business models with high-performance computing, providing efficient operation of large-scale distributed parallel simulations.
[0085] Continuous time progression employs a fixed-increment method. After setting a fixed time increment and a start time, the simulation advances time based on these increments. In this mode, the simulated clock advances incrementally according to the length of the time increment. Each time time increases by one unit, the current event is simulated and assessed. Discrete event progression uses an event scheduling method. Event routines serve as the basic model units of the simulation model, executing corresponding routines sequentially according to the order in which events occur. Each deterministic event with a predictable occurrence time has an event routine to handle the impact on the entity's state after the event and to schedule subsequent events.
[0086] The engine employs transparent shared memory, TCP / IP, reflected memory networks, MPI, and other plug-in adaptive communication mechanisms. Model developers do not need to worry about TCP / IP, OpenMP, or reflected memory network programming to effectively utilize the multi-layered communication resources provided by high-performance computers. It also provides attribute acquisition technology based on simulation instances and data matching, allowing the model to transparently obtain attributes of remote instances locally. Furthermore, it provides a data transmission filtering mechanism to reduce system communication volume, thereby improving system communication efficiency in large-scale or distributed environments. Figure 8 shows a schematic diagram of the massively parallel computing engine components.
[0087] 1.5.4 High-throughput data acquisition service:
[0088] The high-throughput data acquisition service employs a main / secondary thread collaborative parallel processing technology to achieve multi-task parallel processing and parsing of massive data, and combines it with point-to-point high-performance transmission technology to achieve real-time push of big data.
[0089] The core idea of the main / secondary thread collaborative parallel processing technology is that a main thread and multiple secondary threads work together. In the service, the main thread is responsible for receiving, processing, and distributing simulation data. By dynamically increasing or decreasing the number of secondary threads based on real-time monitoring of the data processing rate and backlog, it avoids excessive resource usage. Secondary threads parse, store, and transmit the simulation data. After each secondary thread completes its data processing, it feeds back the results to the main thread for summarization and aggregation, ensuring that all simulation data acquisition is completed. For each simulation task, a main / secondary thread group is started in parallel for data acquisition and processing. In this processing mode, the main thread is responsible for listening to and receiving all data, while the secondary threads handle specific events and business logic, separating data listening and processing. This allows the main thread to efficiently receive simulation data, while the secondary threads can process actual data in parallel, fully utilizing the resources of multi-core CPUs and significantly improving the service's concurrent processing capabilities and response speed. Figure 9 illustrates the main / secondary thread collaborative parallel processing of a high-throughput data acquisition service.
[0090] The simulated data transmission employs non-blocking I / O multi-threaded high-performance TCP communication. This I / O thread aggregates multiplexed selectors, enabling it to concurrently handle hundreds or thousands of client connections. Since data read and write operations are non-blocking, the efficiency of the I / O thread is significantly improved, avoiding thread suspension caused by frequent I / O blocking. A single I / O thread can concurrently handle multiple client connections and read / write operations, solving the traditional synchronous blocking I / O one-connection-one-thread model. This provides superior performance and scalability when handling large amounts of concurrent and massive data communication. Figure 10 illustrates the non-blocking I / O multi-threaded communication in the high-throughput data acquisition service.
[0091] 1.5.5 Scenario-based services:
[0092] The scenario deployment service adopts a pure web architecture with CesiumJS as the underlying service library, combined with WebGL and GIS visualization development technologies. It provides convenient, fast, flexible, versatile, and intuitive graphical scenario deployment design and large-scale simulation entity modeling. It includes a scenario design module and a situation display module.
[0093] The scenario design module provides 2D / 3D visualization and rendering of digital earth scenes. Users can quickly create / delete scenario simulation entities using simple drag-and-drop. It also features situational mapping capabilities, allowing users to plot scenario data elements such as deployment locations, flight paths, and extents of simulation entities on the digital earth. Furthermore, it can load / output scenario script files in XML format, conforming to publicly available standards.
[0094] The situation display module provides scenario simulation display based on two-dimensional / three-dimensional methods. It adopts high-speed WebSocket full-duplex communication network technology, supports real-time reception of simulation data and sending of human-in-the-loop command data, and combines WebWorker multi-threading technology, SharedArrayBuffer data sharing, and WebGL hardware acceleration technology that utilizes both CPU and GPU to realize the parsing and rendering of massive amounts of data of large-scale entities.
[0095] JavaScript uses a single-threaded model, meaning all tasks are completed on a single thread. This implies that all tasks must queue, with the next task only executing after the previous one is finished. Web Workers allow for a separate thread outside the JavaScript thread to handle additional JavaScript code. Because it's an independent thread, Web Workers can run concurrently with the main JavaScript thread without interfering with each other. We can delegate complex and time-consuming calculations to Web Workers, and then hand them over to the main JavaScript thread for consumption after the Worker completes its calculations. This way, the main thread only needs to focus on business logic and page rendering, without spending time on computation, significantly improving smoothness. SharedArrayBuffer can be shared between different Workers without needing to be copied, meaning the two objects in the two processes are essentially in the same memory. WebGL allows GPU-accelerated graphics to run within the canvas without external plugins. A schematic diagram of the parallel and coordinated processing of these three components is shown in Figure 11.
[0096] The beneficial effects of the embodiments of the present invention are:
[0097] Employing a high-efficiency, large-scale distributed parallel computing simulation platform effectively solves the problems of inability to run simulations in a distributed parallel manner and low simulation model settlement efficiency under large-scale entity conditions. It also addresses the issues of high latency in data acquisition and processing, and the inability to achieve human-in-the-loop functionality due to the asynchrony between situation display and simulation operation caused by massive amounts of data in traditional data acquisition services. The platform enables unified allocation, scheduling, and optimization of computing and communication resources, improving resource utilization. Combined with multi-simulation parallel capabilities, it effectively shortens the runtime of large-sample tasks, thereby saving valuable human and material resources. Furthermore, the reusable model development and assembly method significantly reduces the user's development workload, improves model development efficiency, and lowers development difficulty, well adapting to the continuously expanding and improving needs of simulation applications. This technology and system can be widely applied in large-scale real-time training simulations and large-sample system simulations, realizing social and economic value.
[0098] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. A high-efficiency, large-scale distributed parallel computing simulation platform, characterized in that, include: The system comprises four modules: a reusable model development service module, a parallel simulation scheduling service module, a massively parallel computing engine module, a high-throughput data acquisition service module, and a scenario service module. The reusable model development service module provides a visual model development and encapsulation environment, enabling users to more efficiently and conveniently design, develop, and encapsulate reusable simulation models that meet IOCM specifications. The parallel simulation scheduling service module provides visual simulation operation control tools, including simulation task creation, configuration, startup, pause, resumption, and stopping; it supports automatic and manual distribution of simulation entities, allowing users to determine the distribution method based on the simulation model's solution complexity, simulation entity type, and interactions between entities to achieve optimized communication and load balancing. The massively parallel computing engine module drives simulation model operation using a continuous-time / discrete-event-driven simulation mechanism, providing transparent event scheduling and parallel processing mechanisms, efficient single-machine and distributed communication optimization mechanisms, and generating output of process and result data. The high-throughput data acquisition service module collects simulation entity output data during simulation operation and utilizes an asynchronous multi-tasking mechanism to process massive amounts of simulation data. The system integrates data processing, sorting, and storage, along with an efficient communication mechanism to achieve real-time data push. The scenario situation service module, based on a browser and utilizing the basic digital earth framework, enables users to design and deploy simulation scenarios, providing core and crucial driving data for subsequent model calculations and application problem analysis. Simultaneously, it visualizes simulation scenarios using real-time simulation output data acquired through a high-throughput data acquisition service, allowing users to issue commands to simulation entities within the interface to achieve human-in-the-loop intervention. The platform's operational flow is as follows: First, users design and develop simulation models in the reusable model development service module, constructing model interaction relationships and saving them to the simulation model resource library. Then, the scenario design module within the scenario situation service module is used for scenario visualization editing and deployment. After scenario deployment, the parallel simulation scheduling service module creates simulation tasks, allocates simulation computing nodes, distributes model resources, and initiates the simulation task. The massively parallel computing engine generates simulation entities based on the data and drives the model, while simultaneously outputting simulation data. Finally, the high-throughput data acquisition service module processes, sorts, and stores the simulation data, then pushes it to the scenario situation display module within the scenario situation service for data visualization.
2. The efficient large-scale distributed parallel computing simulation platform as described in claim 1 is characterized in that the platform adopts a hybrid B / S and C / S architecture design, the server uses a Spring Cloud distributed microservice architecture solution based on the JAVA language, the large-scale parallel computing engine adopts a platform-independent standard C++ C / S architecture, and integrates KAFKA and Flink high-throughput big data acquisition and processing middleware, thus forming a platform architecture with high concurrency, high throughput, high availability, and high performance processing.
3. The efficient large-scale distributed parallel computing simulation platform as described in claim 1 is characterized by a reusable model development service module, which adopts a service-oriented architecture and visual programming technology to provide intuitive graphical model protocols, port design, rule orchestration, and behavior tree editing. It has the ability to realize the visual assembly and reuse of models and the design of interactive relationships through intuitive and easy-to-use drag-and-drop methods, and finally builds a simulation model library that can support certain application scenarios.
4. The efficient large-scale distributed parallel computing simulation platform as described in claim 1 is characterized in that the parallel simulation scheduling service module adopts a decentralized distributed cluster service architecture, where each service node is equal to the others and each node has a high degree of autonomy, and the service nodes communicate with each other to maintain data consistency; the service manages and schedules the large-scale computing engine cluster in a load-balanced manner, the engine is connected to different services in the cluster, and the managed engine data is shared through the data communication of the service; when a service crashes or becomes unresponsive, the engine it manages will automatically schedule and connect to other surviving service nodes in the cluster to ensure the availability of the engine.
5. The efficient large-scale distributed parallel computing simulation platform as described in claim 1, characterized in that the large-scale parallel computing engine module combines object-oriented business models and high-performance computing with a continuous-time / discrete-event simulation advancement mechanism to provide efficient operation of large-scale distributed parallel simulation.
6. The efficient large-scale distributed parallel computing simulation platform as described in claim 1 is characterized in that the high-throughput data acquisition service module adopts main / secondary thread collaborative parallel processing technology to realize multi-task parallel massive data processing and parsing, and combines it with point-to-point high-performance transmission technology to realize real-time push of big data.
7. The efficient large-scale distributed parallel computing simulation platform as described in claim 1, characterized in that the scenario service module adopts a pure WEB architecture with CesiumJS as the underlying service library, combined with WebGL and GIS visualization development technology, to provide convenient, fast, flexible, versatile, and intuitive graphical scenario deployment design and large-scale simulation entity simulation; including a scenario design module and a situation display module.
8. The design method of a high-efficiency large-scale distributed parallel computing simulation platform as described in claim 1, characterized in that it includes: By designing, developing, encapsulating, and reusing simulation models, a model library that meets user needs is established, resulting in a reusable model development service module. The scenario service module is obtained through the design and deployment of hypothetical scenarios, real-time visualization of large-scale simulated physical scenarios, and human-in-the-loop processing; and through the unified allocation, distribution, and scheduling of simulation resources, as well as the operation control of the simulation. Obtain the parallel simulation scheduling service module; Through distributed parallel computing, propulsion, and data communication of large-scale simulated entity models; Obtain the massively parallel computing engine module; A high-throughput data acquisition service module is obtained through the real-time acquisition, processing, storage, and push of massive simulation data; A highly efficient, large-scale distributed parallel computing simulation platform is composed of a reusable model development service module, a parallel simulation scheduling service module, a large-scale parallel computing engine module, a high-throughput data acquisition service module, and a scenario service module.
Citation Information
Patent Citations
Interface-oriented model resource combination reusing method and system
CN119004812A
A confrontation simulation and efficiency evaluation system based on equipment parameterization
CN109948228A
Cooperative confrontation scene construction method and system
CN115019017A