Atomic stress calculation method and device, electronic equipment, storage medium and computer program product

By offloading the atomic graph generation process to the computational storage module, the problem of low CPU utilization during atomic graph generation is solved, achieving efficient utilization of CPU resources and improved computational efficiency.

CN121963958APending Publication Date: 2026-05-01SAMSUNG (CHINA) SEMICONDUCTOR CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SAMSUNG (CHINA) SEMICONDUCTOR CO LTD
Filing Date
2025-12-30
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

In existing technologies, CPUs consume a lot of resources when generating atomic diagrams due to simple and repetitive computational tasks, resulting in low utilization and difficulty in fully leveraging their computational advantages.

Method used

By offloading the atomic graph generation process to a host-associated compute storage module, such as CMM-DC, and leveraging its ability to handle simple and repetitive computations, CPU resources are freed up to handle more complex tasks, thereby improving CPU computational efficiency.

Benefits of technology

It improves CPU utilization, reduces economic costs, and enhances computational efficiency and accuracy by optimizing the atomic simulation process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121963958A_ABST
    Figure CN121963958A_ABST
Patent Text Reader

Abstract

The invention relates to an atomic stress calculation method and device, electronic equipment, a storage medium and a computer program product, and the method comprises the steps: generating an atomic graph based on the first feature data of a plurality of atoms to be processed through a calculation storage module associated with a host, and transmitting the second feature data of the plurality of atoms to a processor of the host, the second feature data comprises at least one part of feature data in the first feature data of the multiple atoms and topological information of the multiple atoms in the atomic graph; and calculating energy and stress of the plurality of atoms based on the second characteristic data of the plurality of atoms through the processor.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of molecular dynamics simulation technology, and more specifically, to methods, apparatus, electronic devices, storage media, and computer program products for calculating atomic forces. Background Technology

[0002] Molecular potential energy simulations place high demands on memory capacity. Therefore, it is typically necessary to expand the capacity of the Central Processing Unit (CPU) to generate the required simulation results. Related technologies mainly utilize additional expansion devices to increase CPU capacity. For example, these devices can be solid-state drives (SSDs) or dynamic random access memory (DRAM). In this case, all atomic data is stored within the expanded device. During the molecular potential energy simulation, the atomic data is read from the expanded device and loaded into the CPU. The CPU then generates atomic graphs and graph embedding features based on the read atomic data. Finally, the Graphics Processing Unit (GPU) performs deep molecular model inference based on the graph embedding features to obtain the final potential energy simulation results.

[0003] However, the generation process of atomic diagrams is simple and repetitive, while CPUs are suitable for handling complex calculations. Using CPUs to perform a large number of simple and repetitive calculations makes it difficult to fully utilize the CPU's computing advantages, resulting in low CPU utilization. Summary of the Invention

[0004] This disclosure provides a method, apparatus, electronic device, storage medium, and computer program product for calculating atomic forces, to at least solve the problem in the aforementioned related technologies where using a CPU to perform atomic diagram generation leads to difficulty in fully utilizing the CPU's computational advantages, resulting in low CPU utilization.

[0005] According to a first aspect of the present disclosure, a method for calculating atomic forces is provided. The method may include: generating an atomic diagram based on first feature data of a plurality of atoms to be processed by a computing storage module associated with a host, and sending second feature data of the plurality of atoms to a processor of the host, wherein the second feature data may include at least a portion of feature data from the first feature data of the plurality of atoms and topological information of the plurality of atoms within the atomic diagram; and calculating the energy and forces of the plurality of atoms based on the second feature data of the plurality of atoms by the processor.

[0006] Optionally, the processor may include a central processing unit (CPU) and a graphics processing unit (GPU); the process of sending the second feature data of the plurality of atoms to the host may include: sending the second feature data of the plurality of atoms to the CPU; the process of calculating the energy and force of the plurality of atoms based on the second feature data of the plurality of atoms by the processor may include: calculating graph embedding features by the CPU based on the second feature data of the plurality of atoms, and sending the graph embedding features to the GPU; and calculating the energy and force of each atom in the plurality of atoms by the GPU using the graph embedding features.

[0007] Optionally, the atomic force calculation method may further include: calculating the importance of each atom based on the second feature data of each atom in the plurality of atoms using the computing storage module, and determining important atoms from the plurality of atoms, wherein the important atoms may include multiple atoms with high importance among the plurality of atoms; sending the second feature data of the plurality of atoms to the CPU may further include: storing the second feature data of at least one important atom among the important atoms in the CPU; calculating the energy and force of each atom in the plurality of atoms using the graph embedding feature by the GPU may include: reading the second feature data of the at least one important atom from the CPU using the GPU, and reading the second feature data of other atoms in the plurality of atoms besides the at least one important atom from the computing storage module, thereby obtaining the second feature data of the plurality of atoms; calculating the energy and force of each atom in the plurality of atoms using the graph embedding feature and the second feature data of the plurality of atoms by the GPU.

[0008] Optionally, the plurality of atoms may be divided into multiple batches for processing; storing the second feature data of at least one important atom among the important atoms in the CPU may include performing the following operations for each batch of important atoms: selecting the at least one important atom from the important atoms of the current batch based on the importance of the important atoms in the current batch and the importance of atoms currently stored in the CPU, and storing the second feature data of the at least one important atom in the current batch into the CPU.

[0009] Optionally, the step of selecting at least one important atom from the important atoms in the current batch based on the importance of important atoms in the current batch and the importance of atoms currently stored in the CPU, and storing the second feature data of the at least one important atom in the current batch into the CPU, may include: storing the second feature data of the at least one important atom in the current batch whose importance is greater than the importance of each currently stored atom in the CPU into the CPU; the atomic force calculation method may further include: moving the second feature data of currently stored atoms in the CPU whose importance is less than the importance of each of the at least one important atom from the CPU to the computing storage module.

[0010] Optionally, the atomic force calculation method may further include: during the process of performing atomic energy and force calculations for the current batch via the GPU, performing the generation process of the next batch of atomic diagrams for the current batch via the computing storage module.

[0011] Optionally, the step of calculating the importance of each atom based on the second feature data of each atom in the plurality of atoms through the calculation and storage module may include: for each atom, performing the following operations: calculating the geometric attribute index, physical attribute index, and topological attribute index of the atom based on the second feature data of the atom; calculating the importance of the atom based on the geometric attribute index, physical attribute index, and topological attribute index of the atom, wherein the geometric attribute index can be determined based on the initial position coordinates of the atom and its neighboring atoms, the physical attribute index can be determined based on the initial forces of the atom and its neighboring atoms, the topological attribute index can be determined by the number of edges in the atomic graph that are connected to the atom, and the neighboring atoms of the atom are atoms within the desired / preset spatial range centered on the atom in the plurality of atoms.

[0012] According to a second aspect of the present disclosure, an atomic force calculation apparatus is provided. The atomic force calculation apparatus may include: an atomic diagram generation module configured to generate an atomic diagram based on first feature data of a plurality of atoms to be processed through a computing storage module associated with a host, and to send second feature data of the plurality of atoms to a processor of the host, wherein the second feature data may include at least a portion of feature data from the first feature data of the plurality of atoms and topological information of the plurality of atoms within the atomic diagram; and an atomic force calculation module configured to calculate the energy and force of the plurality of atoms based on the second feature data of the plurality of atoms through the processor.

[0013] Optionally, the processor may include a central processing unit (CPU) and a graphics processing unit (GPU); the atomic graph generation module may be configured to send the second feature data of the plurality of atoms to the CPU; the atomic force calculation module may be configured to: calculate graph embedding features based on the second feature data of the plurality of atoms through the CPU, and send the graph embedding features to the GPU; and calculate the energy and force of each atom in the plurality of atoms using the graph embedding features through the GPU.

[0014] Optionally, the atomic force calculation device may further include: an importance calculation module, configured to calculate the importance of each atom based on the second feature data of each atom among the plurality of atoms through the calculation storage module, and determine important atoms from the plurality of atoms, wherein the important atoms may include a plurality of atoms with high importance among the plurality of atoms; the atomic graph generation module may be configured to: store the second feature data of at least one important atom among the important atoms in the CPU; the atomic force calculation module may be configured to: read the second feature data of the at least one important atom from the CPU through the GPU, and read the second feature data of other atoms among the plurality of atoms besides the at least one important atom from the calculation storage module, thereby obtaining the second feature data of the plurality of atoms; and calculate the energy and force of each atom among the plurality of atoms through the GPU using the graph embedding features and the second feature data of the plurality of atoms.

[0015] Optionally, the plurality of atoms can be divided into multiple batches for processing; the atom diagram generation module can be configured to perform the following operations for important atoms in each of the multiple batches: based on the importance of the important atoms in the current batch and the importance of the atoms currently stored in the CPU, select at least one important atom from the important atoms in the current batch, and store the second feature data of the at least one important atom in the current batch into the CPU.

[0016] Optionally, the atomic map generation module may be configured to store the second feature data of at least one important atom in the current batch whose importance is greater than that of each currently stored atom in the CPU into the CPU; the atomic force calculation device may further include: a moving module configured to move the second feature data of currently stored atoms in the CPU whose importance is less than that of each of the at least one important atom from the CPU to the calculation storage module.

[0017] Optionally, the atomic force calculation device may further include: an execution module configured to, during the execution of atomic energy and force calculations for the current batch via the GPU, execute the generation process of the next batch of atomic diagrams for the current batch via the computational storage module.

[0018] Optionally, the importance calculation module can be configured to perform the following operations for each atom: calculate the geometric attribute index, physical attribute index, and topological attribute index of the atom based on the second feature data of the atom; calculate the importance of the atom based on the geometric attribute index, physical attribute index, and topological attribute index of the atom, wherein the geometric attribute index can be determined based on the initial position coordinates of the atom and its neighboring atoms, the physical attribute index can be determined based on the initial forces of the atom and its neighboring atoms, the topological attribute index can be determined by the number of edges connected to the atom in the atomic graph, and the neighboring atoms of the atom can be atoms within a desired / preset spatial range centered on the atom among the plurality of atoms.

[0019] According to a third aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory including a computing storage module; wherein the computing storage module is configured to generate an atomic map based on first feature data of a plurality of atoms to be processed, and to send second feature data of the plurality of atoms to the processor, wherein the second feature data may include at least a portion of feature data from the first feature data of the plurality of atoms and topological information of the plurality of atoms within the atomic map; wherein the processor is configured to calculate the energy and force of the plurality of atoms based on the second feature data of the plurality of atoms.

[0020] Optionally, the computing storage module may include a high-speed interconnect computing storage module.

[0021] Optionally, the processor may include a central processing unit (CPU) and a graphics processing unit (GPU); the computing and storage module is configured to send the second feature data of the plurality of atoms to the CPU; the processor is configured to: calculate graph embedding features based on the second feature data of the plurality of atoms through the CPU, and send the graph embedding features to the GPU; and calculate the energy and force of each atom in the plurality of atoms using the graph embedding features through the GPU.

[0022] Optionally, the computation and storage module is configured to calculate the importance of each atom based on the second feature data of each atom in the plurality of atoms, and to determine important atoms from the plurality of atoms, wherein the important atoms may include a plurality of atoms with high importance among the plurality of atoms.

[0023] Optionally, the CPU stores second feature data of at least one of the important atoms; the GPU is further configured to read the second feature data of the at least one important atom from the CPU, and read the second feature data of the other atoms in the plurality of atoms besides the at least one important atom from the computing storage module, thereby obtaining the second feature data of the plurality of atoms; using the graph embedding feature and the second feature data of the plurality of atoms, the energy and force of each atom in the plurality of atoms are calculated.

[0024] Optionally, the plurality of atoms can be divided into multiple batches for processing; the computing storage module is further configured to perform the following operations for each important atom in the multiple batches: based on the importance of the important atoms in the current batch and the importance of the atoms currently stored in the CPU, select at least one important atom from the important atoms in the current batch, and store the second feature data of the at least one important atom in the current batch into the CPU.

[0025] Optionally, the computing storage module is further configured to: store the second feature data of at least one important atom in the current batch whose importance is greater than the importance of each currently stored atom in the CPU into the CPU; the processor is further configured to: move the second feature data of currently stored atoms in the CPU whose importance is less than the importance of each of the at least one important atom from the CPU to the computing storage module.

[0026] Optionally, during the execution of the atomic energy and force calculations for the current batch via the GPU, the computational storage module is configured to execute the generation process for the next batch of atomic diagrams for the current batch.

[0027] Optionally, the computation and storage module is configured to perform the following operations for each atom: calculate the geometric, physical, and topological attribute indices of the atom based on the atom's second feature data; calculate the importance of the atom based on the geometric, physical, and topological attribute indices, wherein the geometric attribute indices can be determined based on the initial position coordinates of the atom and its neighboring atoms, the physical attribute indices can be determined based on the initial forces acting on the atom and its neighboring atoms, and the topological attribute indices can be determined by the number of edges connected to the atom in the atomic graph, wherein the neighboring atoms of the atom are atoms within a desired / preset spatial range centered on the atom among the plurality of atoms.

[0028] According to a fourth aspect of the present disclosure, an electronic device is provided, comprising: a processor; a memory for storing instructions; wherein the processor is configured to execute the instructions to implement an atomic force calculation method according to the present disclosure.

[0029] According to a fifth aspect of the present disclosure, a computer-readable storage medium is provided that, when instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform an atomic force calculation method according to the present disclosure.

[0030] According to a sixth aspect of the present disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the atomic force calculation method according to the present disclosure.

[0031] The technical solutions provided by the embodiments of this disclosure have at least the following beneficial effects: In this disclosure, by offloading the generation process of the atomic graph from the CPU to a computing storage module associated with the host, the CPU's computing resources can be freed up to process more complex tasks from the atoms currently stored that are less important than the at least one, thereby giving full play to the CPU's computing advantages and improving CPU utilization.

[0032] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0033] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure, and are not intended to unduly limit this disclosure.

[0034] Figure 1 This is a schematic diagram illustrating the expansion of equipment for atomic simulation using SSDs in related technologies; Figure 2 This is a comparative schematic diagram illustrating the generation of atomic graphs using a CPU in related technologies and the generation of atomic graphs through a computational storage module according to exemplary embodiments of this disclosure; Figure 3 This is a schematic diagram illustrating the implementation logic of an atomic force calculation method according to an exemplary embodiment of the present disclosure; Figure 4 This is a flowchart illustrating an atomic force calculation method according to an exemplary embodiment of the present disclosure; Figure 5 This is a schematic diagram illustrating the process of generating atomic maps in related technologies; Figure 6 This is a schematic diagram showing a comparison between the generation of atomic maps in related technologies and the generation of atomic maps according to exemplary embodiments of this disclosure; Figure 7 This is a schematic diagram illustrating an atomic force calculation architecture according to an exemplary embodiment of the present disclosure; Figure 8 This is a schematic diagram illustrating the interleaving of atomic force calculations for the current batch and atomic map generation for the next batch according to an exemplary embodiment of the present disclosure; Figure 9A This is a block diagram illustrating an atomic force calculation device according to an exemplary embodiment of the present disclosure; Figure 9B This is a block diagram illustrating another atomic force calculation device according to an exemplary embodiment of the present disclosure; Figure 10 This is a block diagram illustrating an electronic device according to exemplary embodiments of the present disclosure. Detailed Implementation

[0035] To enable those skilled in the art to better understand the technical solutions of this disclosure, the technical solutions in the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings.

[0036] It should be noted that the terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this disclosure 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 disclosure described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following examples do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.

[0037] It should be noted that the phrase "at least one of several items" in this disclosure refers to three parallel cases: "any one of the several items", "a combination of any number of the several items", and "all of the several items". For example, "including at least one of A and B" includes the following three parallel cases: (1) including A; (2) including B; (3) including A and B. Another example is "performing at least one of step one and step two", which means the following three parallel cases: (1) performing step one; (2) performing step two; (3) performing both step one and step two.

[0038] For atomic simulation tasks, current methods, such as large-scale atomic data sampling and quantization of deep molecular models, all impact the accuracy of atomic simulations. Furthermore, molecular dynamics simulations in actual industrial production have extremely stringent accuracy requirements; even small errors can have serious consequences. Therefore, achieving high-precision atomic simulations has become a pressing issue. Additionally, the excessive data interaction between various modules in the current atomic simulation process leads to underutilization of modules with computational advantages. Moreover, as the amount of data and model complexity increases, the memory requirements of atomic simulations become increasingly demanding. At this point, additional memory expansion equipment is needed to complete large-scale atomic simulations on deep molecular potential energy models. Related technologies primarily utilize SSDs or DRAM to expand the CPU's capacity.

[0039] (1) SSD-based device expansion method.

[0040] Figure 1 This is a schematic diagram illustrating the expansion of equipment used for atomic simulation in related technologies. (Refer to...) Figure 1 Atomic simulation based on SSD mainly includes the following steps: 1. First, all atomic data can be stored in an SSD, where the SSD acts as an extension of the CPU memory.

[0041] 2. When using the current batch of atomic data for inference, the atomic data of this batch needs to be placed in the CPU to generate the atomic graph.

[0042] 3. Use the generated atomic graph to generate graph embedding features in the CPU.

[0043] 4. Input graph embedding features into the GPU for deep molecular model inference. For example, the GPU can be used to predict the energy and force of each atom based on graph embedding features.

[0044] (2) DRAM-based device expansion method.

[0045] When the number of input atoms is very large, multiple DRAMs can be used to expand the CPU capacity, enabling the storage of the intermediate variable—the fully directed graph—during the generation of the atomic graph. Similar to SSD-based atomic simulation, DRAM-based atomic simulation mainly includes the following steps: 1. First, all atomic data can be offloaded to multiple DRAM blocks. At this time, the multiple DRAM blocks will serve as an extension of the CPU memory.

[0046] 2. When using the current batch of atomic data for inference, the atomic data of this batch needs to be placed in the CPU to generate the atomic graph.

[0047] 3. Use the generated atomic graph to generate graph embedding features in the CPU.

[0048] 4. Input the graph embedding features into the GPU for deep molecular model inference.

[0049] Both of the aforementioned expansion methods involve generating atomic maps within the CPU. However, the generation process of atomic maps is simple and repetitive, while the CPU is better suited for handling complex calculations. Utilizing the CPU to perform a large number of simple and repetitive computational operations fails to fully leverage its computational advantages, resulting in low CPU utilization. Furthermore, expanding device capacity using DRAM typically requires a large number of server devices, which incurs significant economic costs.

[0050] To address the aforementioned problems in related technologies, this disclosure provides a method for large-scale atomic inference optimization on deep molecular models using a computational storage module. This method allows the atomic graph generation process to be offloaded from the CPU to the computational storage module. By leveraging the characteristic of the computational storage module to handle simple and repetitive computational tasks, rapid generation of atomic graphs can be achieved.

[0051] Figure 2 This is a comparative schematic diagram illustrating the generation of atomic graphs using a CPU in related technologies and the generation of atomic graphs using a computational storage module according to exemplary embodiments of this disclosure. (Refer to...) Figure 2 In (a), if the CPU is not upgraded, an error may occur because the amount of atomic data exceeds the CPU's memory limit; see reference... Figure 2 In (b) of this example, when using SSDs or DRAM to expand the CPU's capacity, the CPU is used to generate the atomic graph. Since the CPU is better suited for handling complex calculations, using the CPU to generate the atomic graph will not fully utilize its computational advantages, resulting in low CPU utilization; see reference... Figure 2 In (c) of this disclosure, by offloading the generation process of the atomic graph from the CPU to a compute storage module (e.g., but not limited to: Compute Express Link Memory Module (DRAM Computing, CMM-DC)), the CPU's computing resources can be freed up to handle more complex tasks, thereby fully leveraging the CPU's computing advantages and improving CPU utilization. Furthermore, compared to the use of DRAM for device expansion in related technologies, the use of only CMM-DC for expansion in this disclosure saves economic costs.

[0052] Figure 3 This is a schematic diagram illustrating the implementation logic of an atomic force calculation method according to an exemplary embodiment of the present disclosure. (Refer to...) Figure 3 The atomic force calculation method in this disclosure can be completed by four modules, which are: atomic diagram generation module, important atom selection module, diagram embedding feature extraction module, and energy and force calculation module.

[0053] The atomic graph generation module is primarily used to generate atomic graphs based on atomic data, and this generation process is memory-intensive. The generated atomic graph can be a directed graph with each atom as a node and the torques between atoms as edges.

[0054] The important atom selection module is primarily used to select several key atoms from a pool of atoms and send their feature data to the CPU for storage. For the other atoms besides the key ones, their feature data can be stored in the atom graph generation module. Furthermore, the process of selecting important atoms from a pool of atoms is memory-intensive. Therefore, by sending the feature data of important atoms to the CPU for storage, data movement between the GPU and the atom graph generation module can be reduced, thereby improving the GPU's data retrieval efficiency.

[0055] The graph embedding feature extraction module is primarily used to extract graph embedding features. Furthermore, this module can also be used to execute prefetching and eviction strategies for important atoms. Additionally, the process of extracting graph embedding features is a weakly computationally intensive process.

[0056] The energy and force calculation module is primarily used to calculate the energy value and force value of each atom based on graph embedding features. Furthermore, this module can perform interleaving and overlapping processing on multiple batches of atomic data. This reduces device idle time and thus improves inference efficiency. Additionally, the energy and force calculation process can be computationally intensive. It should be noted that conventional calculation methods can be used when calculating the energy of each atom based on graph embedding features. For example, but not limited to, the energy of an atom can be calculated by inputting the graph embedding features into a deep learning potential energy model to obtain the atom's energy.

[0057] Figure 4 This is a flowchart illustrating an atomic force calculation method according to an exemplary embodiment of the present disclosure.

[0058] Reference Figure 4In step 401, an atomic graph can be generated based on the first feature data of the multiple atoms to be processed by the computing storage module associated with the host, and the second feature data of the multiple atoms can be sent to the host's processor. The second feature data may include at least a portion of the feature data from the first feature data of the multiple atoms and the topological information of the multiple atoms within the atomic graph.

[0059] The following explains the various concepts involved in generating atomic diagrams.

[0060] 1. Atomic Graph: An atomic graph is a graphical data structure that establishes the geometric and physical relationships between all atoms in a current system. Each atom is a node in the atomic graph, and the edge between two atoms represents the torque between the two atoms. Furthermore, an atomic graph can be a graphical data structure obtained by filtering redundant edges in a fully directed graph through truncation distances between atoms and a mask matrix.

[0061] 2. Completely directed graph: In a graph consisting of multiple atoms, there are two directed edges between any pair of atoms. These two directed edges can point in opposite directions. The multiple atoms and the directed edges between them together form a completely directed graph.

[0062] 3. Mask Matrix: A matrix consisting of selections (TRUE, T) or masking (FALSE, F), primarily used to filter redundant edges in a fully directed graph. TRUE indicates that the value at this location is accessible; FALSE indicates that the value at this location is masked. Furthermore, the mask matrix can be calculated based on the initial position coordinates, initial velocity, initial torque, and other characteristics of each atom in all atoms.

[0063] In step 402, the processor can calculate the energy and force of multiple atoms based on the second characteristic data of multiple atoms.

[0064] Figure 5 This is a schematic diagram illustrating the process of generating atomic maps in related technologies. (Refer to...) Figure 5 First, in step 1, assume there are a total of 5 atoms, which can be randomly distributed in the simulation system. Then, in step 2, a fully directed graph can be generated based on these 5 atoms, where the nodes in the fully directed graph can be individual atoms. Furthermore, if two atoms interact, an edge will be generated between them. Next, in step 3, given the cutoff distance, the torque between atoms can be determined by the coordinates of the surrounding neighboring atoms and the coordinates of the second-order neighboring atoms. At this point, edges greater than the torque will be filtered out using a mask matrix, where… " represents the mask operator. In step 4, the final atomic graph with redundant edges filtered out can be obtained.

[0065] Figure 6 This is a schematic diagram comparing the generation of atomic maps in related technologies with the generation of atomic maps according to exemplary embodiments of this disclosure. (Refer to...) Figure 6 In related technologies, the mask calculation process in generating atomic graphs needs to be completed within the CPU. This leads to the CPU being occupied by simple and repetitive computational tasks, making it difficult to fully utilize the CPU's computational advantages and resulting in low CPU utilization. In this disclosure, CMM-DC, with its advantages of parallel processing, low power consumption, hardware acceleration, real-time processing, ease of operation, and suitability for repetitive operations, is more suitable for handling repetitive and simple operators, such as addition and masking operators. Therefore, in this disclosure, CMM-DC can be used to expand the CPU's capacity, that is, the atomic graph generation process can be offloaded from the CPU to the CMM-DC. This not only leverages the advantages of CMM-DC for simple and repetitive computational operations to accelerate atomic graph generation but also frees up CPU computing resources to handle more complex tasks, thereby fully utilizing the CPU's computational advantages and improving CPU utilization.

[0066] According to an exemplary embodiment of this disclosure, the aforementioned first feature data may include the following items: the type of atom, the initial position coordinates of the atom, the initial force on the atom, the initial velocity of the atom, and the initial torque of the atom; the aforementioned second feature data may also include the following items: the type of atom, the initial position coordinates of the atom, and the initial force on the atom.

[0067] Figure 7 This is a schematic diagram illustrating an atomic force calculation architecture according to an exemplary embodiment of the present disclosure. (Refer to...) Figure 7 The CMM-DC can include storage units and computation units. For example, the storage unit can be, but is not limited to, DRAM. The storage unit is mainly used to store the characteristic data of each atom, and the computation unit is mainly used to calculate the atom map and screen important atoms from multiple atoms. It should be noted that all atoms in the simulation system are undergoing Brownian motion. Some atoms are more active and may move over longer distances; while some atoms are more stable and their movement distance is limited. Those more active atoms can be considered important atoms, such as key atoms.

[0068] Furthermore, in this disclosure, the CPU may include a DRAM cache and a computation unit. The DRAM cache is primarily used to store feature data of important atoms selected by CMM-DC, and can also maintain the atoms in the DRAM cache as relatively important atoms through appropriate algorithms. The computation unit in the CPU is mainly used to extract graph embedding features based on feature data such as the initial position coordinates of atoms, initial forces, and the topological properties of the corresponding atoms in the atomic graph. For example, it can use one-hot encoding to extract graph embedding features.

[0069] According to exemplary embodiments of this disclosure, the processor may include a central processing unit (CPU) and a graphics processing unit (GPU). Second feature data of multiple atoms can be sent to the CPU, wherein the second feature data may include the initial force on the atom, the initial position coordinates of the atom, and the topological properties of the corresponding atom in the atom graph. Then, the CPU can calculate graph embedding features based on the second feature data of multiple atoms, and the graph embedding features can be sent to the GPU. Next, the GPU can use the graph embedding features to calculate the energy and force of each atom among the multiple atoms. It should be noted that conventional calculation methods can be used when calculating the graph embedding features based on the second feature data of multiple atoms and when calculating the energy of the atoms using the graph embedding features. For example, one-hot encoding can be used, but is not limited to, to calculate the graph embedding features; the energy of the atoms can be calculated by inputting the graph embedding features into a deep learning potential energy model, thereby obtaining the energy of the atoms.

[0070] According to an exemplary embodiment of this disclosure, the importance (field priority) of each atom can be calculated separately by a computational storage module based on the second feature data of each atom in a plurality of atoms, and important atoms can be determined from the plurality of atoms. The important atoms can be a desired number or a predetermined number of atoms with high importance among the plurality of atoms. This desired number or predetermined number can be represented by k, where k... And k is an integer.

[0071] It should be noted that the calculation of field priority only includes addition, subtraction, and multiplication operators, and these operators are frequently reused. As mentioned earlier, CMM-DC has advantages such as parallel processing, low power consumption, hardware acceleration, real-time processing, ease of operation, and suitability for repetitive operations, making it more suitable for handling repetitive and simple operators. Therefore, in this disclosure, CMM-DC can be used to calculate the field priority of each atom, ensuring the computational efficiency of field priority. Furthermore, by calculating the importance of atoms, atoms that play a crucial role in the energy and force fields of the current physical system can be accurately selected, thereby ensuring the accuracy of the inference results.

[0072] Then, the second characteristic data of at least one important atom among the important atoms can be stored in the CPU. That is, in this disclosure, the second characteristic data of at least one important atom among k important atoms can be sent to the CPU and stored, and the second characteristic data of other atoms among the multiple atoms, excluding at least one important atom, can be sent to the CPU and stored but not allowed. In other words, in this disclosure, the second characteristic data of at least one important atom can be stored in the CPU's DRAM cache, and the second characteristic data of other important atoms among k important atoms, excluding at least one important atom, as well as ordinary atoms, can be stored in the CMM-DC's DRAM.

[0073] Next, the GPU can read the second feature data of at least one important atom from the CPU, and the GPU can read the second feature data of the other atoms (excluding the at least one important atom) from the computational storage module, thus obtaining the second feature data of multiple atoms. As mentioned earlier, the second feature data can include the initial force on the atom, the initial position coordinates of the atom, and the topological properties of the corresponding atom in the atomic graph.

[0074] Then, using the GPU, the energy and force of each atom in the multiple atoms can be calculated based on graph embedding features and the second feature data of the multiple atoms. For example, the energy of each atom in the multiple atoms can be calculated first using the GPU using graph embedding features. Then, the partial derivative of each atom's energy with respect to the atom's initial position coordinates contained in the second feature data of that atom can be obtained using the GPU, thus obtaining the force on that atom.

[0075] It should be noted that the communication time between the GPU and CPU is shorter than the communication time between the GPU and CMM-DC. Therefore, in this disclosure, by storing a portion of the second feature data of important atoms in the CPU's DRAM, the data transfer between the GPU and CMM-DC can be reduced, thereby improving the GPU's data reading efficiency.

[0076] According to exemplary embodiments of this disclosure, the importance of an atom can be measured by comprehensively considering its geometric attributes, physical attributes, and topological attributes.

[0077] For example, for each atom, geometric, physical, and topological property indices can be calculated based on the atom's second feature data.

[0078] Then, the importance of the atom can be calculated based on its geometric, physical, and topological properties. Geometric properties can be determined based on the initial position coordinates of the atom and its neighboring atoms; physical properties can be determined based on the initial forces acting on the atom and its neighboring atoms; and topological properties can be determined by the number of edges connected to the atom in the atomic graph. The neighboring atoms can be atoms within a predetermined spatial range centered on the atom.

[0079] For example, the importance of each atom can be calculated using the following formula:

[0080] in, This term can characterize the geometric properties of atoms. This can characterize the physical properties of atoms. This term can characterize the topological properties of an atom; for example, it can characterize the topological properties of the corresponding atom in an atomic diagram.

[0081] Furthermore, This can represent the importance of the i-th atom among multiple atoms. This can be the number of neighboring atoms centered at the i-th atom within a preset cutoff distance R, where j can represent... The j-th neighbor atom among its neighboring atoms Let be the initial position coordinates of the i-th atom. Let be the initial position coordinates of the j-th neighboring atom. The initial force on the i-th atom, Let j be the initial force on the j-th neighboring atom. Let be the number of edges in the atomic graph that are connected to the i-th atom. For preset position coordinate coefficients, To preset the stress coefficient, This is the preset local connectivity coefficient.

[0082] It should be noted that the initial forces acting on the atom mentioned above can refer to the initial forces acting on the atom in the initial physical system, and can also be represented by the relative atomic mass. The aforementioned α, β, and γ are primarily used to describe the geometric properties of the atom. Physical properties and topological properties Keep them on the same order of magnitude to avoid overriding or omitting the importance of atoms.

[0083] According to exemplary embodiments of this disclosure, multiple atoms can be divided into multiple batches for processing, that is, all atoms in the simulation system can be divided into multiple batches for processing. In other words, the atom force calculation method according to this disclosure can be executed separately for each batch, that is, steps 401 and 402 described above can be executed separately for the atoms in each batch.

[0084] Furthermore, when multiple atoms are divided into multiple batches for processing, the following operations can be performed for each batch of important atoms: at least one important atom can be selected from the important atoms in the current batch based on the importance of the important atoms in the current batch and the importance of the atoms currently stored in the CPU, and the second feature data of at least one important atom in the current batch can be stored in the CPU.

[0085] It should be noted that the currently stored atoms can be selected from the k atoms in the previous batch that are ranked first in importance among the multiple atoms contained in the current batch.

[0086] It should be noted that since all atoms are undergoing Brownian motion, different batches of atoms may share common neighboring atoms, which are relatively important atoms and contribute significantly to the local energy and force fields. Therefore, in this disclosure, important atoms can be prefetched from the CPU's DRAM, and these prefetched important atoms will be frequently accessed by the GPU. Compared to retrieving the second feature data of atoms from the CMM-DC via the GPU, retrieving the second feature data of atoms from the CPU via the GPU takes less time and is more efficient. Therefore, prefetching important atoms from the CPU's DRAM can reduce data transfer between the GPU and the CMM-DC, thereby improving the GPU's data reading efficiency.

[0087] According to exemplary embodiments of this disclosure, second feature data of at least one important atom in the current batch whose importance is greater than that of each currently stored atom in the CPU can be stored in the CPU. Furthermore, second feature data of currently stored atoms in the CPU whose importance is less than that of each of the at least one important atom can be moved from the CPU to the computational storage module. That is, this disclosure proposes a field priority metric method based on topological physics to measure the importance of each atom, and further, it can ensure that atoms with higher importance are always stored in the CPU's DRAM by employing a dynamic mechanism of prefetching and eviction for important atoms.

[0088] According to an exemplary embodiment of this disclosure, while performing atomic energy and force calculations for the current batch via the GPU, the atomic map generation process for the next batch can also be performed via the computational storage module.

[0089] It should be noted that since the force calculation of atoms involves taking the partial derivative of the atom's energy with respect to its initial position coordinates, this derivative calculation consumes a significant amount of GPU computing resources. Therefore, in atomic simulation tasks, atomic force calculation is the most time-consuming part of the GPU operation. To reduce device idle time, this disclosure allows for the interleaving of atomic force calculations for the current batch and atomic graph generation for the next batch.

[0090] Figure 8 This is a schematic diagram illustrating the interleaving of force calculations for the atoms in the current batch and the generation of atomic maps for the next batch, according to an exemplary embodiment of the present disclosure.

[0091] Reference Figure 8 This method allows dividing all atoms in the simulation system into four batches, and the force calculation for the current batch and the generation of the atomic graph for the next batch can be performed in parallel and interleaved. For example, while calculating the force for the first batch of atoms, the generation of the atomic graph for the second batch and the extraction of graph embedding features can also be performed simultaneously. Figure 8 In this context, F1 represents the time period for performing the first batch of atomic force calculations. G2 represents the time period for performing the second batch of atomic graph generation. X2 represents the time period for performing the second batch of graph embedding feature extraction. Simultaneously with the second batch of atomic force calculations, the third batch of atomic graph generation and graph embedding feature extraction can also be performed, and so on.

[0092] In this way, since the atomic force calculations and atomic diagram generation for different batches can be performed in parallel and interleaved, the idle time of the equipment can be reduced, thereby improving the utilization of the CPU and GPU. Furthermore, compared to serial processing for multiple batches, the parallel processing method provided in this disclosure can effectively shorten the total time of the atomic simulation task.

[0093] Figure 9A This is a block diagram illustrating an atomic force calculation device 900 according to an exemplary embodiment of the present disclosure.

[0094] Reference Figure 9A The atomic force calculation device 900 may include an atomic diagram generation module 901 and an atomic force calculation module 902.

[0095] The atom diagram generation module 901 can generate an atom diagram based on first feature data of multiple atoms to be processed through a computing storage module associated with the host, and can send second feature data of multiple atoms to the host's processor. The second feature data may include at least a portion of the feature data from the first feature data of the multiple atoms and topological information of the multiple atoms within the atom diagram.

[0096] According to an exemplary embodiment of this disclosure, the aforementioned first feature data may include the following items: the type of atom, the initial position coordinates of the atom, the initial force on the atom, the initial velocity of the atom, and the initial torque of the atom; the aforementioned second feature data may also include the following items: the type of atom, the initial position coordinates of the atom, and the initial force on the atom.

[0097] The atomic force calculation module 902 can calculate the energy and force of multiple atoms based on the second characteristic data of multiple atoms through the processor.

[0098] According to exemplary embodiments of this disclosure, the processor may include a central processing unit (CPU) and a graphics processing unit (GPU). The atom graph generation module 901 can send second feature data of multiple atoms to the CPU, wherein the second feature data may include the initial force on the atom, the initial position coordinates of the atom, and the topological properties of the corresponding atom in the atom graph. Then, the atom force calculation module 902 can calculate graph embedding features based on the second feature data of the multiple atoms using the CPU, and can send the graph embedding features to the GPU. Next, the GPU can use the graph embedding features to calculate the energy and force of each atom among the multiple atoms.

[0099] According to an exemplary embodiment of this disclosure, the atomic force calculation device 900 may further include an importance calculation module 903.

[0100] The importance calculation module 903 can calculate the importance (field priority) of each atom based on the second feature data of each atom in the multiple atoms through the calculation and storage module. It can also identify important atoms from the multiple atoms, where important atoms can be the expected or predetermined number of atoms with high importance among the multiple atoms. This expected or predetermined number can be represented by k, where k... And k is an integer.

[0101] The atomic diagram generation module 901 can store the second feature data of at least one important atom in the important atoms in the CPU.

[0102] The atomic force calculation module 902 can read the second feature data of at least one important atom from the CPU via the GPU, and can read the second feature data of other atoms among the multiple atoms besides the at least one important atom from the computational storage module, thereby obtaining the second feature data of multiple atoms. Then, the atomic force calculation module 902 can use the GPU to calculate the energy and force of each atom among the multiple atoms using graph embedding features and the second feature data of multiple atoms.

[0103] Figure 9B This is a block diagram illustrating an atomic force calculation apparatus according to an exemplary embodiment of the present disclosure.

[0104] Reference Figure 9A and Figure 9B According to an exemplary embodiment of this disclosure, for each atom, the importance calculation module 903 can calculate the geometric property index, physical property index, and topological property index of the atom based on the second feature data of the atom.

[0105] Then, the importance calculation module 903 can calculate the importance of the atom based on its geometric, physical, and topological property indices. The geometric property indices can be determined based on the initial position coordinates of the atom and its neighboring atoms; the physical property indices can be determined based on the initial forces acting on the atom and its neighboring atoms; and the topological property indices can be determined by the number of edges connected to the atom in the atomic graph. The neighboring atoms of the atom can be atoms within a desired / preset spatial range centered on the atom from among multiple atoms.

[0106] According to exemplary embodiments of this disclosure, multiple atoms can be divided into multiple batches for processing; for example, all atoms in a simulation system can be divided into multiple batches for processing.

[0107] For each batch of important atoms, the atom diagram generation module 901 can perform the following operations: Based on the importance of important atoms in the current batch and the importance of atoms currently stored in the CPU, at least one important atom can be selected from the important atoms in the current batch, and the second feature data of at least one important atom in the current batch can be stored in the CPU.

[0108] It should be noted that the currently stored atoms can be selected from the k atoms in the previous batch that are ranked first in importance among the multiple atoms contained in the current batch.

[0109] According to an exemplary embodiment of this disclosure, the atomic force calculation device 900 described above may further include a moving module 904.

[0110] The atom diagram generation module 901 can store the second feature data of at least one important atom in the current batch whose importance is greater than that of each currently stored atom in the CPU into the CPU. Furthermore, the moving module 904 can move the second feature data of currently stored atoms in the CPU whose importance is less than that of each of the at least one important atom from the CPU to the computational storage module.

[0111] According to an exemplary embodiment of this disclosure, the aforementioned atomic force calculation device 900 may further include an execution module 905. During the execution of atomic energy and force calculations for the current batch via the GPU, the execution module may also execute the generation process of the next batch of atomic diagrams via the computational storage module.

[0112] Figure 10 This is a block diagram illustrating an electronic device 1000 according to an exemplary embodiment of the present disclosure.

[0113] Reference Figure 10 The electronic device 1000 includes at least one memory 1001 and at least one processor 1002. The at least one memory 1001 stores instructions that, when executed by the at least one processor 1002 and / or the at least one memory 1001, perform a method for calculating atomic forces according to an exemplary embodiment of the present disclosure.

[0114] As an example, electronic device 1000 may be a PC, tablet, personal digital assistant, smartphone, or other device capable of executing the aforementioned instructions. Here, electronic device 1000 is not necessarily a single electronic device; it may be any collection of devices or circuits capable of executing the aforementioned instructions (or instruction sets) individually or in combination. Electronic device 1000 may also be part of an integrated control system or system manager, or may be configured to interconnect with a portable electronic device locally or remotely (e.g., via wireless transmission) through an interface.

[0115] In electronic device 1000, processor 1002 may include a central processing unit (CPU), a graphics processing unit (GPU), a programmable logic device, a dedicated processor system, a microcontroller, or a microprocessor. By way of example and not limitation, processor may also include analog processors, digital processors, microprocessors, multi-core processors, processor arrays, network processors, etc.

[0116] The processor 1002 can execute instructions or code stored in the memory 1001, which can also store data. Instructions and data can also be sent and received via a network through a network interface device, which can employ any known transmission protocol.

[0117] The memory 1001 may be integrated with the processor 1002, for example, by arranging RAM or flash memory within an integrated circuit microprocessor. Alternatively, the memory 1001 may include a separate device, such as an external disk drive, a storage array, or other storage device usable by any database system. The memory 1001 and the processor 1002 may be operatively coupled, or may communicate with each other, for example, via I / O ports, network connections, etc., enabling the processor 1002 to read files stored in the memory. The memory 1001 may include a computing storage module.

[0118] In addition, the electronic device 1000 may also include a video display (such as a liquid crystal display) and a user interaction interface (such as a keyboard, mouse, touch input device, etc.). All components of the electronic device 1000 can be interconnected via a bus and / or network.

[0119] According to exemplary embodiments of this disclosure, a computer-readable storage medium (e.g., a tangible and non-transitory computer-readable storage medium) may also be provided, which, when instructions in the computer-readable storage medium are executed by a processor and / or computing memory module of an electronic device, enables the electronic device to perform the above-described method for calculating atomic forces. Examples of computer-readable storage media herein include: read-only memory (ROM), random access programmable read-only memory (PROM), electrically erasable programmable read-only memory (EEPROM), random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), flash memory, non-volatile memory, CD-ROM, CD-R, CD+R, CD-RW, CD+RW, DVD-ROM, DVD-R, DVD+R, DVD-RW, DVD+RW, DVD-RAM, BD-ROM, BD-R, BD-R LTH, BD-RE, Blu-ray or optical disc storage, hard disk drive (HDD), solid-state drive (SSD), card storage (such as multimedia cards, secure digital (SD) cards, or ultra-fast digital (XD) cards), magnetic tape, floppy disk, magneto-optical data storage device, optical data storage device, hard disk, solid-state drive, and any other device configured to store a computer program and any associated data, data files, and data structures in a non-transitory manner and to provide the computer program and any associated data, data files, and data structures to a processor or computer so that the processor or computer can execute the computer program. The computer program in the aforementioned computer-readable storage medium can run in an environment deployed in computer devices such as clients, hosts, agent devices, servers, etc. Furthermore, in one example, the computer program and any associated data, data files, and data structures are distributed across a networked computer system, such that the computer program and any associated data, data files, and data structures are stored, accessed, and executed in a distributed manner through one or more processors or computers.

[0120] According to exemplary embodiments of the present disclosure, a computer program product may also be provided, including a computer program that, when executed by a processor and / or a computing storage module, implements the method for calculating atomic forces according to the present disclosure.

[0121] According to the atomic force calculation method, apparatus, electronic device, storage medium and computer program product disclosed herein, by offloading the atomic diagram generation process from the CPU to a computing storage module associated with the host, the CPU's computing resources can be freed up to handle more complex tasks, thereby giving full play to the CPU's computing advantages and improving CPU utilization.

[0122] According to exemplary embodiments of this disclosure, CMM-DC possesses advantages such as parallel processing, low power consumption, hardware acceleration, real-time processing, ease of operation, and suitability for repetitive operations. Therefore, it is particularly suitable for processing repetitive and simple operators, such as addition and masking operators. Consequently, in this disclosure, CMM-DC can be used to expand the CPU's capacity, meaning the generation process of atomic graphs can be offloaded from the CPU to the CMM-DC. This not only leverages the advantages of CMM-DC in handling simple and repetitive computational operations to accelerate atomic graph generation but also frees up CPU computing resources to handle more complex tasks, thereby fully utilizing the CPU's computational advantages and improving CPU utilization.

[0123] According to exemplary embodiments of this disclosure, important atoms can be prefetched from the CPU's DRAM, and these prefetched important atoms will be frequently accessed by the GPU. Compared to retrieving the second feature data of atoms from the CMM-DC via the GPU, retrieving the second feature data of atoms from the CPU via the GPU takes less time and is more efficient. Therefore, prefetching important atoms from the CPU's DRAM can reduce data transfer between the GPU and the CMM-DC, thereby improving the GPU's data reading efficiency. According to exemplary embodiments of this disclosure, by employing a dynamic mechanism of prefetching and evictment for important atoms, it can be ensured that highly important atoms are always stored in the CPU's DRAM.

[0124] According to exemplary embodiments of this disclosure, since the atomic force calculations and atomic map generation for different batches can be performed in parallel and interleaved, the idle time of the device can be reduced, thereby improving the utilization of the CPU and GPU. Furthermore, compared to serial processing for multiple batches, this parallel processing method provided by this disclosure can effectively shorten the total time of the atomic simulation task.

[0125] According to embodiments of this disclosure, an electronic device may include: a processor and a memory for storing instructions, which, when executed by the processor, cause the processor to offload the atomic diagram generation process from the processor to a computational storage module, while the processor executes an atomic force calculation method.

[0126] In some embodiments, the atomic force calculation method may include: generating an atomic diagram based on first feature data of a plurality of atoms to be processed by a computing storage module, and sending second feature data of the plurality of atoms to a processor, wherein the second feature data may include at least a portion of feature data from the first feature data of the plurality of atoms and topological information of the plurality of atoms within the atomic diagram; and calculating the energy and force of the plurality of atoms based on the second feature data of the plurality of atoms by the processor.

[0127] In some embodiments, the processor may include a CPU and a GPU. Sending the second feature data of the plurality of atoms to the processor may include: sending the second feature data of the plurality of atoms to the CPU. Calculating the energy and force of the plurality of atoms by the processor based on the second feature data of the plurality of atoms may include: calculating graph embedding features by the CPU based on the second feature data of the plurality of atoms, and sending the graph embedding features to the GPU; and calculating the energy and force of each atom in the plurality of atoms by the GPU using the graph embedding features.

[0128] In some embodiments, the computing storage module may include a high-speed interconnect computing storage module (CMM-DC).

[0129] In some embodiments, the memory may include DRAM.

[0130] In some embodiments, the electronic device may include a video display.

[0131] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.

[0132] One or more of the elements disclosed above may include or be implemented in processing circuitry, such as hardware including logic circuitry; a hardware / software combination, such as a processor executing software; or a combination of both. More specifically, for example, the processing circuitry may include, but is not limited to: a central processing unit (CPU), an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field-programmable gate array (FPGA), a system-on-a-chip (SoC), a programmable logic unit, a microprocessor, an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), etc.

[0133] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.

Claims

1. A method for calculating the forces acting on atoms, characterized in that, The method for calculating atomic forces includes: An atomic graph is generated based on first feature data of multiple atoms to be processed by a computing and storage module associated with the host, and second feature data of the multiple atoms is sent to the processor of the host. The second feature data includes at least a portion of feature data of the first feature data of the multiple atoms and topological information of the multiple atoms within the atomic graph. The processor calculates the energy and force of the plurality of atoms based on the second characteristic data of the plurality of atoms.

2. The atomic force calculation method as described in claim 1, characterized in that, The processor includes a central processing unit (CPU) and a graphics processing unit (GPU); The step of sending the second feature data of the plurality of atoms to the processor of the host includes: Send the second characteristic data of the plurality of atoms to the CPU; The step of calculating the energy and force of the plurality of atoms based on the second characteristic data of the plurality of atoms by the processor includes: The CPU calculates graph embedding features based on the second feature data of the plurality of atoms, and sends the graph embedding features to the GPU; The GPU uses the graph embedding features to calculate the energy and force of each of the plurality of atoms.

3. The atomic force calculation method as described in claim 2, characterized in that, The method for calculating atomic forces also includes: The computing and storage module calculates the importance of each atom based on the second feature data of each atom in the plurality of atoms, and determines important atoms from the plurality of atoms, wherein the important atoms include the atoms with the highest importance among the plurality of atoms; The step of sending the second feature data of the plurality of atoms to the CPU further includes: The CPU stores second characteristic data of at least one of the important atoms; The step of calculating the energy and force of each atom in the plurality of atoms using the graph embedding features via the GPU includes: The GPU reads the second feature data of the at least one important atom from the CPU, and the computing storage module reads the second feature data of the other atoms in the plurality of atoms besides the at least one important atom, thereby obtaining the second feature data of the plurality of atoms. The GPU uses the graph embedding features and the second feature data of the plurality of atoms to calculate the energy and force of each atom in the plurality of atoms.

4. The atomic force calculation method as described in claim 3, characterized in that, The multiple atoms are divided into multiple batches and processed; The CPU stores second characteristic data of at least one of the important atoms, including: Perform the following operations on the important atoms of each of the plurality of batches: Based on the importance of the important atoms in the current batch and the importance of the atoms currently stored in the CPU, at least one important atom is selected from the important atoms in the current batch, and the second feature data of the at least one important atom in the current batch is stored in the CPU.

5. The atomic force calculation method as described in claim 4, characterized in that, The step of selecting at least one important atom from the important atoms in the current batch based on the importance of the important atoms in the current batch and the importance of the atoms currently stored in the CPU, and storing the second feature data of the at least one important atom in the current batch into the CPU, includes: The second feature data of at least one important atom in the current batch whose importance is greater than that of each currently stored atom in the CPU is stored in the CPU; The method for calculating atomic forces also includes: The second feature data of the currently stored atoms in the CPU whose importance is less than that of each of the at least one important atom is moved from the CPU to the computing storage module.

6. The atomic force calculation method as described in claim 4, characterized in that, The method for calculating atomic forces also includes: During the process of performing atomic energy and force calculations for the current batch via the GPU, the process of generating atomic diagrams for the next batch is performed via the computing storage module.

7. The atomic force calculation method as described in claim 3, characterized in that, The step of calculating the importance of each atom based on the second feature data of each atom among the plurality of atoms using the calculation and storage module includes: For each atom, perform the following operations: Based on the second characteristic data of the atom, calculate the geometric property index, physical property index and topological property index of the atom. The importance of an atom is calculated based on its geometric, physical, and topological properties. The geometric properties are determined by the initial position coordinates of the atom and its neighboring atoms. The physical properties are determined by the initial forces acting on the atom and its neighboring atoms. The topological properties are determined by the number of edges connected to the atom in the atomic graph. The neighboring atoms are atoms within a predetermined spatial range centered on the atom.

8. An atomic force calculation device, characterized in that, The atomic force calculation device includes: An atomic graph generation module is configured to generate an atomic graph based on first feature data of a plurality of atoms to be processed through a computing storage module associated with a host, and to send second feature data of the plurality of atoms to the processor of the host, wherein the second feature data includes at least a portion of feature data of the first feature data of the plurality of atoms and topological information of the plurality of atoms within the atomic graph; The atomic force calculation module is configured to calculate the energy and force of the plurality of atoms based on the second characteristic data of the plurality of atoms by the processor.

9. An electronic device, characterized in that, include: processor; Memory used to store instructions; The processor is configured to execute the instructions to implement the atomic force calculation method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, When the instructions in the computer-readable storage medium are executed by the processor of the electronic device, the electronic device is able to perform the atomic force calculation method as described in any one of claims 1 to 7.

11. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the atomic force calculation method as described in any one of claims 1 to 7.

12. An electronic device comprising: processor; Memory, including computing storage modules; The computing and storage module is configured to generate an atomic graph based on first feature data of multiple atoms to be processed, and send second feature data of the multiple atoms to the processor. The second feature data includes at least a portion of feature data from the first feature data of the multiple atoms and topological information of the multiple atoms within the atomic graph. The processor is configured to calculate the energy and force of the plurality of atoms based on the second characteristic data of the plurality of atoms.