Molecular dynamics computing apparatus based on distributed storage
By using a molecular dynamics computing device based on distributed storage, and through spatial domain decomposition and task decomposition, the problem of improving the computational performance of molecular dynamics simulation in multi-chip clusters is solved, achieving efficient parallel computing and reducing network communication overhead.
Patent Information
- Application Number
- CN202511624990.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-07
- Publication Date
- 2026-02-17
- Estimated Expiration
- 2045-11-07
AI Technical Summary
Existing molecular dynamics simulations struggle to achieve significantly increased computational performance on multi-chip distributed clusters as the scale expands. Network bandwidth and transmission latency become bottlenecks, and hardware such as GPUs and FPGAs lack flexibility and efficiency in large-scale simulations.
A molecular dynamics computing device based on distributed storage is adopted. Through modules such as atomic position pool, neighborhood search engine and nonbonded force computing array, spatial domain decomposition and task decomposition are realized to reduce the communication requirements between nodes. Multi-level filters and interactive atom pair generators are used to optimize data flow transmission.
It significantly improves the efficiency and parallelism of molecular dynamics calculations, reduces network communication overhead, and effectively reduces network bandwidth and transmission latency, especially in large-scale and long-term simulations, enabling efficient pipelined computation.
Smart Images

Figure CN121075458B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of molecular dynamics calculation, and particularly relates to a molecular dynamics calculation device based on distributed storage. BACKGROUND
[0002] Molecular dynamics is a computer simulation technology that describes the interaction between atoms through a series of potential functions. Non-bonding force is the main calculation part. Molecular dynamics can study a large number of molecules and their dynamic behavior. In addition to simulating the macroscopic physical properties of materials, it can also help researchers explore microstructures at scales that cannot be observed by experimental methods. It is widely used in the fields of protein folding, drug design, and cell membrane mechanism.
[0003] Molecular dynamics simulation achieves microscale simulation by analyzing the force relationship of atoms in discrete infinitesimal time intervals and iterating the state of atoms. Due to the extensive interaction of atoms and the iterative nature of computation, molecular dynamics simulation has coupling in space and time. Single simulation cannot achieve high-speed operation through large-scale parallelism, which is why molecular dynamics simulation is so expensive in terms of computation. Therefore, hardware accelerators play an important role in the field of molecular dynamics simulation, including graphics processing units (GPU), field programmable gate arrays (FPGA), and application specific integrated circuits (ASIC). Using these advanced hardware not only speeds up the computation, but also expands the scope and scale of molecular dynamics research, promoting breakthrough discoveries in various scientific disciplines.
[0004] Most mature molecular dynamics software packages (such as Amber, Gromacs, and NAMD) support GPU, and have good performance on a single chip. The advantage of GPU is the mature development environment and resources, as well as the lower cost. However, GPU lacks hardware flexibility, and the control flow overhead leads to discontinuous computation execution, which makes it difficult to effectively increase the computing performance as the scale expands on a multi-chip distributed cluster.
[0005] Specialized hardware such as FPGA and ASIC can adopt customized circuit structure, has higher flexibility in data scheduling and computing resource allocation, can form large-scale simulation cluster through high-bandwidth network, and can realize considerable acceleration performance, however, the bandwidth and transmission delay of the network in the huge simulation system often become the bottleneck of the cluster performance, which includes the calculation interaction of atomic interaction between distributed nodes, and how to perform reasonable task decomposition becomes crucial. SUMMARY
[0006] The application provides a molecular dynamics calculation device based on distributed storage, which specifically adopts the following technical scheme:
[0007] A molecular dynamics calculation device based on distributed storage, comprising:
[0008] An atomic position pool for storing atomic position information;
[0009] A neighborhood search engine connected to the atomic position pool and configured to obtain atomic position information from the atomic position pool;
[0010] The atomic position pool comprises:
[0011] A position information pre-distribution module configured to send atomic information of a calculation region to an import region of a neighboring node and receive atomic information from the neighboring node, so as to realize spatial domain decomposition;
[0012] A local main memory for storing atomic information in the calculation region;
[0013] An adjacent storage for storing the atomic information received from the neighboring node and storing the atomic information according to neighborhood types;
[0014] The neighborhood search engine comprises:
[0015] An interactive atomic pair generator configured to generate atomic pairs,
[0016] A multi-stage filter configured to screen out atomic pairs meeting a cutoff radius condition.
[0017] Further, the adjacent storage stores the atomic information in corresponding cache queues according to neighborhood types, and the neighborhood types include an angular domain, an XY-edge domain, an XZ-edge domain, a YZ-edge domain, an X-face domain, a Y-face domain and a Z-face domain.
[0018] Further, the local main memory comprises:
[0019] A random access memory for storing atomic position and type information in the calculation region;
[0020] A state machine is used to control the read and write operations of the local main memory and adjacent storage in different states such as data initialization, neighborhood search, and motion update, so as to ensure the correct flow and processing of data.
[0021] Furthermore, the location information pre-distribution module not only sends the atomic information of the computation region to the import region of the adjacent node, but also receives atomic information from the adjacent node. The received atomic information is filtered and transformed into coordinates and then stored in the adjacency storage to support cross-region atomic interaction computation.
[0022] Furthermore, the atom pair generator of the neighborhood search engine can dynamically adjust the number of atom pairs generated each time according to the load of the subsequent computing unit to optimize the data flow transmission efficiency. In addition, the atom pair generator adopts a multi-level caching mechanism to keep the data in the register until the next clock cycle, forming a pipelined atom pairing queue, thereby improving the generation efficiency of atom pairs.
[0023] Furthermore, the interactive atom pair generator includes an intra-domain atom pair generator and an inter-domain atom pair generator. The intra-domain atom pair generator is used to process atom pair pairing within the computational region, and the inter-domain atom pair generator is used to process atom pair pairing between the computational region and its neighboring regions, as well as atom pair pairing between neighboring regions.
[0024] Furthermore, the multi-level filter of the neighborhood search engine reduces the resource overhead of the filter by step-by-step screening. Specifically, it includes: quickly eliminating obviously unqualified atomic pairs in the initial screening stage, and gradually calculating the accurate distance and screening according to the midpoint method and cutoff radius conditions in the subsequent refinement stage. After each filtering, multiple queues are re-arbitrated to merge qualified atomic pairs into one queue, providing an efficient data flow for subsequent calculations.
[0025] Furthermore, the molecular dynamics computing device based on distributed storage also includes:
[0026] A nonbonding force calculation array, connected to the neighborhood search engine, is used to calculate the nonbonding forces between the filtered atom pairs.
[0027] Furthermore, the molecular dynamics computing device based on distributed storage also includes:
[0028] Force accumulation cache is used to cache the calculated non-bonded forces for subsequent force accumulation operations.
[0029] Furthermore, the molecular dynamics computing device based on distributed storage also includes:
[0030] Motion iterators are used to update the position and velocity information of atoms based on the calculated forces.
[0031] The advantage of this invention lies in the fact that the molecular dynamics computing device based on distributed storage provided reduces the communication requirements between nodes through a distributed atomic information storage scheme based on domain partitioning and a neighborhood search method, enabling tasks to be fully parallelized on a distributed system and achieving efficient pipelined computing, thereby significantly improving the efficiency and parallelism of molecular dynamics computing.
[0032] The advantage of this invention lies in the molecular dynamics computing device based on distributed storage provided. Through location information pre-distribution and adjacency storage module, this invention achieves spatial domain decomposition. Each node only needs to exchange necessary atomic information with adjacent nodes, reducing communication overhead in large-scale distributed computing. In particular, when dealing with large-scale, long-term molecular dynamics simulations, it effectively reduces the impact of network bandwidth and transmission latency. Attached Figure Description
[0033] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0034] Figure 1 This is a schematic diagram of the spatial division;
[0035] Figure 2 This is a schematic diagram illustrating the relationship between the calculation region and the import region;
[0036] Figure 3 This is a schematic diagram of the planar region division;
[0037] Figure 4 This is a schematic diagram of the molecular dynamics simulation process at a single node in this application;
[0038] Figure 5 This is a schematic diagram of the local main memory used in this application;
[0039] Figure 6 This is a schematic diagram of the seven types of cache queues in the adjacency storage of this application;
[0040] Figure 7 A schematic diagram illustrating the operation of the location pre-distribution module in this application;
[0041] Figure 8 This application presents a schematic diagram illustrating the working relationship between the location pre-distribution module and the adjacent storage.
[0042] Figure 9 This is a schematic diagram of the neighborhood search engine proposed in this application. Detailed Implementation
[0043] The embodiments of this application are described in detail below. Examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.
[0044] Furthermore, the terms "first" and "second" in the specification, claims, and drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those described herein. At the same time, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. Unless otherwise expressly specified and limited, the terms "set," "arranged," "installed," "connected," and "linked" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral connection; they can refer to the internal connection of two components or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal connection of two components. Those skilled in the art can understand the specific meaning of the above terms in this case based on the specific circumstances and in conjunction with the prior art.
[0045] In molecular dynamics simulations, the computational cost of non-bonded interactions between all atoms is prohibitively high. For a system with n atoms, the time complexity reaches O(n²). Therefore, a cutoff radius is often set in the simulation. Each atom interacts only with atoms within the cutoff radius (adjacent atoms). Neighborhood search, which involves filtering out all adjacent atom pairs in the entire system (the two atoms whose non-bonding forces need to be calculated, hereinafter referred to as atom pairs), is the first step in molecular dynamics simulation.
[0046] Atomic information is distributed and stored across nodes based on spatial domain decomposition. Within the simulation system, space is divided into cubic lattices with side length b, such as... Figure 1 As shown.
[0047] The space corresponding to each grid point is used as the computation region for the distributed nodes. In the midpoint method, nodes are responsible for processing atomic pairs whose midpoints lie within the computation region, thereby dividing the computational tasks among the distributed nodes. Based on this condition, nodes need to obtain atomic information from adjacent spaces; the space required to obtain this information, corresponding to the computation region, is called the import region. Figure 2The diagram illustrates the relationship between the computation region (red) and the import region. The import region has three different shapes, consisting of eight corner regions, twelve edge regions, and six face regions, represented in yellow, green, and orange respectively in the diagram.
[0048] Based on spatial relationships, the import region has 26 directional sources. For easy indexing, it is divided into three layers (upper, middle, and lower) along the Z-axis. Each layer is parallel to the XY plane, and the region on each plane is divided into a 3x3 grid, distinguished according to the cardinal directions (north, south, east, west). Figure 3 As shown.
[0049] Because b> Furthermore, regarding the midpoint condition, nodes only need to calculate the atomic pairs between certain regions. For example, atoms in a corner region only interact with atoms in the computational region, while atoms in a boundary region only interact with diagonally intersecting surface regions and the computational region. Through inductive analysis, the 26 imported regions can be divided into 7 categories, as shown in Table 1. Boundary regions and surface regions are further subdivided using coordinate axes, allowing regions with the same interaction conditions to be grouped into one category.
[0050] Table 1 Import Region Types
[0051] Imported region type Containing region Corner region Upper north-west, upper north-east, upper south-west, upper south-east, lower north-west, lower north-east, lower south-west, lower south-east XY-edge region Mid north-west, mid north-east, mid south-west, mid south-east XZ-edge region Upper north, upper south, lower north, lower south YZ-edge region Upper west, upper east, lower west, lower east X-face region North, south Y-face region West, east Z-face region Upper, lower
[0052] Therefore, the areas that need to interact are shown in Table 2. o represents the interaction area that conforms to the midpoint method, and x represents the two areas that do not need to interact. In addition to all imported areas needing to interact with the calculation area, there are only three other interactions: XY-edge and Z-face, XZ-edge and Y-face, and YZ-edge and X-face.
[0053] Table 2. Schematic diagram of the interactive area
[0054] Region type Computed region Corner region XY-edge region XZ-edge region YZ-edge region X-face region Y-face region Z-face region Computed region o Corner region o x XY-edge region o x x XZ-edge region o x x x YZ-edge region o x x x x X-face region o x x x o x Y-face region o x x o x x x Z-face region o x o x x x x x
[0055] What each node needs to calculate is the nonbonded interaction generated by the atomic pairs in these interactive regions. The neighborhood search engine matches and filters atomic pairs that meet the cutoff radius condition in the interactive regions, providing the coordinates and type information of the atomic pairs for the nonbonded resultant force calculation unit.
[0056] like Figure 4The diagram illustrates the molecular dynamics simulation flow on a single node. Each node corresponds to a distributed storage-based molecular dynamics computational device. This device includes: an atomic position pool, a neighborhood search engine, an unbonded force calculation array, a force accumulation cache, and a motion iterator. The atomic position pool stores the position information of atoms. The neighborhood search engine, connected to the atomic position pool, retrieves atomic position information from it. The unbonded force calculation array, connected to the neighborhood search engine, calculates the unbonded forces between selected atom pairs. The force accumulation cache caches the calculated unbonded forces for subsequent force accumulation operations. The motion iterator updates the position and velocity information of atoms based on the calculated forces. The following sections describe these modules in detail.
[0057] The atom position pool records the position information of atoms, including local atoms and neighboring atoms, which are stored in local main memory and adjacency memory, respectively. The neighborhood search engine constructs atom queue information by accessing the position information, performs queue matching in the atom pair generator to generate all possible atom pairs, and filters them through multi-level filters, only sending valid atom pairs to the nonbonding force calculator for calculation.
[0058] Specifically, the atomic location pool includes: a location information pre-distribution module, local main memory, and adjacency storage.
[0059] The location information pre-distribution module sends atomic information from the computation region to the import regions of neighboring nodes and receives atomic information from neighboring nodes, thus achieving spatial domain decomposition. Local main memory stores atomic information within the computation region. Adjacency storage stores atomic information received from neighboring nodes and categorizes it according to neighborhood type.
[0060] Specifically, such as Figure 5 As shown, the local main memory includes a random access memory (RAM) and a state machine. The RAM stores the atomic positions and type information within the computation region. The state machine controls the read and write operations of the local main memory and adjacency storage in different states such as data initialization, neighborhood search, and motion update, ensuring correct data flow and processing. Whenever data is written, the written data is simultaneously transmitted to the position pre-distribution module. The main memory operates in three states. The state machine defaults to the initialization state, continuing until all initial atomic information is written. When the local main memory and adjacency storage have finished loading data, it enters the neighborhood search state. At this time, the memory is controlled by the neighborhood search engine, reading the required atomic information. When the neighborhood search engine releases its control, it enters the motion update waiting state to respond to the motion iterator's request. The motion iterator reads atomic positions sequentially and writes the new position data sequentially. Afterward, the state machine operates in both the neighborhood search and motion update states until the system's computational goal is achieved.
[0061] Based on the neighborhood classification of domain decomposition, adjacency storage is further subdivided into seven corresponding cache queues, such as... Figure 6 As shown, adjacency storage categorizes and stores atomic information into corresponding cache queues based on neighborhood type. Neighborhood types include corner domain, XY-edge domain, XZ-edge domain, YZ-edge domain, X-plane domain, Y-plane domain, and Z-plane domain. The data in adjacency storage originates from the pre-distribution module of adjacent node location information.
[0062] When the atoms of each node's computation region are loaded into local main memory, a similar copy is input to the location pre-distribution sending end, preparing to send the atoms of that edge region as the import region to adjacent nodes. Since the atom coordinates use relative coordinates, in addition to filtering out atoms not adjacent to the target node, the coordinates of the imported atoms also need to be transformed. Therefore, the location information pre-distribution module not only sends the atom information of the computation region to the import regions of adjacent nodes, but also receives atom information from adjacent nodes. The received atom information, after filtering and coordinate transformation, is stored in the adjacency storage to support cross-region atom interaction computation. Figure 7 As shown. To save resources on filters and coordinate transformers, overlapping target nodes share the same filters and coordinate transformers, with each level of filtering and transformation involving only one of the three dimensions.
[0063] The location information pre-distribution module's sending end generates 26 data paths, and similarly, its receiving end also has 26 data sources. Based on the classification in Table 1, atomic information from regions of the same category is arbitrated and aggregated, and then stored in adjacency storage. Figure 8 As shown.
[0064] The neighborhood search engine structure of this invention, as shown in the schematic table of atomic pairs generated by the intra-domain atomic pair generator, consists of an interactive atomic pair generator and a multi-level filter. The atomic pair generator sequentially reads atomic positions from the atomic position pool. When there is only one data reading interface, multi-level caching is needed to improve pairing efficiency. The interactive atomic pair generator is used to generate atomic pairs, and the multi-level filter is used to select atomic pairs that meet the truncation radius condition.
[0065] Interactive atom pair generators include intra-domain atom pair generators and inter-domain atom pair generators. Intra-domain atom pair generators are used to process atom pair pairings within a computational region, while inter-domain atom pair generators are used to process atom pair pairings between a computational region and its neighboring regions, as well as atom pair pairings between neighboring regions.
[0066] Table 3. Schematic diagram of atom pairs generated by the intra-domain atom pair generator
[0067] Clock cycle 0 1 2 3 4 …… N-1 N N+1 N+2 Original queue 0 1 2 3 4 … N-1 0 1 2 Register 1 queue 0 1 2 3 … N-2 N-1 0 1 Register 2 queue 0 1 2 … N-3 N-2 N-1 0 Register 3 queue 0 1 … N-4 N-3 N-2 N-1 Register 4 queue 0 … N-5 N-4 N-3 N-2 Register... queue … … … … …
[0068] Table 4. Schematic diagram of atom pairs generated by the inter-domain atom pair generator
[0069] Clock cycle 0 1 2 3 4 … N-1 N N+1 N+2 Region X original queue 0 1 2 3 4 … N-1 0 1 2 Region Y original queue A B C … … … … … … X register 1 queue 0 1 2 3 4 … N-1 0 1 Y register 1 queue A A A A A A A X register 2 queue 0 1 2 3 4 … N-1 0 Y register 2 queue B B B B B B B X register 3 queue 0 1 2 3 4 … N-1 Y register 3 queue C C C C C C C X register... queue … … … … … … X register... queue … … … … … …
[0070] For pairing atoms within a computational region, i.e., the intra-domain atom pair generator, assuming there are N atoms in the computational region, numbered 0 to N-1, they are read sequentially, with the reading incrementing each clock cycle, as shown in the original queue in the atom pair generation diagram table for inter-domain atom pair generators. The data in the queue is maintained in registers until the next clock cycle, as shown in register 1 queue, and so on. The original queue and each level of register queue can be combined to form a pipelined atom pairing queue, as shown in the red area formed by register 1 queue and the original queue, the green area formed by register 2 queue and the original queue, and so on.
[0071] The inter-domain atom pair generator is responsible for handling atom pairings between the computational region and its neighboring regions, as well as atom pairings between neighboring regions. To avoid conflicts with intra-domain atom pairings within the computational region, the atom pairing pattern within the computational region is kept consistent. As shown in Table 4, assuming there are N atoms (0, 1, 2…) in region X and M atoms (A, B, C…) in region Y, the original queue and registered queue of region X are consistent with the intra-domain atom pairings in the figure. Atoms in region Y are read sequentially, registered once, and then retained, ensuring that each atom in region Y can generate an atom pair with all N atoms in region X, such as atom A with atoms 0~N-1.
[0072] The atom pair generator of the neighborhood search engine can dynamically adjust the number of atom pairs generated each time according to the load of the subsequent computing units to optimize the data flow transmission efficiency. In addition, the atom pair generator adopts a multi-level caching mechanism to keep the data in the register until the next clock cycle, forming a pipelined atom pairing queue, thereby improving the generation efficiency of atom pairs.
[0073] Atom pairs generated by the atom pair generator may not necessarily satisfy the conditions of the midpoint method and the cutoff radius, therefore, it is necessary to filter out atom pairs that do not meet the conditions. For the atom pair i and j, assume that their position coordinates relative to the origin of the computational region are (x, j) and (j), respectively. i ,y i ,z i ) and (x j ,y j ,z j The midpoint method requires that the midpoints of the two atoms fall within a calculation region of side length b.
[0074]
[0075] In addition, the cutoff radius needs to ensure that the distance between atomic pairs is less than 1. ,Right now
[0076]
[0077] Since directly calculating the atomic pair distances across multiple queues is too costly, this condition is approximated as a series of loosely implemented conditions:
[0078]
[0079]
[0080]
[0081] The neighborhood search engine's multi-level filters reduce the resource overhead of subsequent filters and computing units by progressively filtering. Specifically, this includes: quickly eliminating obviously unqualified atomic pairs in the initial screening stage, and progressively calculating precise distances and filtering based on midpoint and cutoff radius conditions in the subsequent refinement stage. After each filtering, multiple queues are re-arbitrated, and qualified atomic pairs are merged into one queue, providing an efficient data flow for subsequent calculations.
[0082] This invention achieves spatial domain decomposition through location information pre-distribution and adjacency storage modules, enabling tasks to be fully parallelized on a distributed system, achieving efficient pipelined computation, and efficiently reusing pre-distributed and stored resources, reducing resource overhead. Secondly, the parallelism of the interactive atom pair generator can be adjusted according to different sizes of subsequent computing arrays to adapt to actual hardware overhead and design, and the multi-level filtering structure can save a significant number of second- and third-level filters, improving hardware utilization efficiency.
[0083] The foregoing has shown and described the basic principles, main features, and advantages of the present invention. Those skilled in the art should understand that the above embodiments do not limit the present invention in any way, and all technical solutions obtained by equivalent substitution or equivalent transformation fall within the protection scope of the present invention.
Claims
1. A device for molecular dynamics calculation based on distributed storage, characterized by, The method comprises the following steps: An atomic position pool is used to store the position information of atoms; A neighborhood search engine is connected to the atomic position pool and used to obtain atomic position information from the atomic position pool; The atomic position pool comprises: A position information pre-distribution module is used to send atomic information of a calculation region to an import region of a neighboring node and receive atomic information from the neighboring node, thereby realizing spatial domain decomposition; A local main memory is used to store atomic information within the calculation region; An adjacency storage is used to store atomic information received from the neighboring node and store the atomic information according to neighborhood types; The neighborhood search engine comprises: An interactive atomic pair generator is used to generate atomic pairs; A multi-stage filter is used to screen atomic pairs that meet the cut-off radius condition; The adjacency storage stores atomic information in corresponding cache queues according to neighborhood types, and the neighborhood types include an angular domain, an XY-edge domain, an XZ-edge domain, a YZ-edge domain, an X-face domain, a Y-face domain and a Z-face domain.
2. The molecular dynamics calculation device based on distributed storage according to claim 1, wherein The local main memory comprises: A random access memory is used to store atomic position and type information within the calculation region; A state machine is used to control the read-write operation of the local main memory and the adjacency storage in different states of data initialization, neighborhood search and motion update, so as to ensure the correct flow and processing of data.
3. The molecular dynamics calculation device based on distributed storage according to claim 1, wherein The position information pre-distribution module not only sends atomic information of the calculation region to the import region of the neighboring node, but also receives atomic information from the neighboring node, and the received atomic information is stored in the adjacency storage after being filtered and converted in coordinates, so as to support atomic interaction calculation across regions.
4. The molecular dynamics calculation device based on distributed storage according to claim 1, wherein The atomic pair generator of the neighborhood search engine can dynamically adjust the number of atomic pairs generated each time according to the load condition of the subsequent calculation unit, so as to optimize the transmission efficiency of data flow, and the atomic pair generator adopts a multi-stage cache mechanism, keeps data to the next clock cycle through a register, forms a pipeline type atomic pairing queue, and thereby improves the generation efficiency of atomic pairs.
5. The molecular dynamics calculation device based on distributed storage according to claim 1, wherein The interactive atomic pair generator comprises an intra-domain atomic pair generator and an inter-domain atomic pair generator, the intra-domain atomic pair generator is used to process atomic pair pairing within the calculation region, the inter-domain atomic pair generator is used to process atomic pair pairing between the calculation region and the neighborhood, and the atomic pair pairing between the neighborhoods.
6. The molecular dynamics calculation device based on distributed storage according to claim 1, wherein The multi-stage filter of the neighborhood search engine reduces the resource overhead of the filter by step-by-step screening, specifically including: a preliminary screening stage for quickly excluding obviously non-compliant atom pairs, and a subsequent refinement stage for gradually calculating accurate distances and screening according to the midpoint method condition and the cutoff radius condition, re-arbitrating multiple queues after each filtering, and merging the atom pairs that meet the conditions into one queue to provide efficient data flow for subsequent level calculations.
7. The distributed storage based molecular dynamics calculation device according to claim 1, wherein the distributed storage based molecular dynamics calculation device further comprises: a non-bonding force calculation array connected to the neighborhood search engine and configured to calculate non-bonding forces between the screened atom pairs.
8. The distributed storage based molecular dynamics calculation device according to claim 1, wherein the distributed storage based molecular dynamics calculation device further comprises: a force accumulation cache configured to cache the calculated non-bonding forces for subsequent force accumulation operations.
9. The distributed storage based molecular dynamics calculation device according to claim 1, wherein the distributed storage based molecular dynamics calculation device further comprises: a motion iterator configured to update the position and velocity information of the atoms according to the calculated forces.
Citation Information
Patent Citations
Large-scale high-speed molecular dynamics calculation method based on FPGA heterogeneous calculation platform
CN115527617A
Searching method and device of spatial neighbor particles, electronic equipment and storage medium
CN116956778A