Scientific calculation-oriented in-memory calculation acceleration method and device
By improving the Fourier neural network model and in-memory computing architecture, the computational complexity and energy consumption problems of high-dimensional fluid problems are solved, achieving high-precision and low-energy fluid field solutions, which are suitable for engineering applications in aerospace and other fields.
Patent Information
- Application Number
- CN202511258444.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-04
- Publication Date
- 2025-12-16
AI Technical Summary
When dealing with high-dimensional fluid problems, existing technologies suffer from high computational complexity due to traditional numerical solutions and high accuracy and energy consumption due to neural network solutions, making it difficult to meet the requirements of real-time simulation and low power consumption.
An improved Fourier neural network model is adopted, with the addition of upsampling and pooling layers. Combined with an in-memory computing architecture, the fast Fourier transform through an in-memory pipeline reduces data transmission and storage overhead and optimizes the computation cycle.
It improves the accuracy and speed of high-precision fluid field solutions, reduces energy consumption, meets the requirements of real-time simulation and low power consumption, and is suitable for fluid mechanics analysis and optimization design in aerospace, hydraulic engineering and other fields.
Smart Images

Figure CN121144667A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of in-memory computing technology, and in particular to an in-memory computing acceleration method and apparatus for scientific computing. Background Technology
[0002] Partial differential equations (PDEs), as core mathematical models describing numerous phenomena in nature, have extremely wide applications in scientific research and engineering decision-making in fluid mechanics, heat conduction, electromagnetic fields, materials science, and other fields. Particularly in the field of fluid mechanics, the Navier-Stokes equations (NS equations) and their vortex forms, which describe the motion of viscous fluids, are the cornerstone for simulating aircraft aerodynamic performance, designing efficient turbomachinery, predicting weather and climate models, optimizing flow within microfluidic chips, and even understanding cardiovascular hemodynamics. Traditional numerical solution methods (such as the finite element method and the finite difference method) obtain numerical solutions through spatial discretization and iterative solutions (Jacobi, Gauss-Seidel, etc.). However, when dealing with high-dimensional fluid problems (such as three-dimensional unsteady turbulence simulation and multiphysics coupling problems) or scenarios requiring high spatial resolution, traditional methods face the curse of dimensionality, where computational complexity increases exponentially, consuming a significant amount of computation time and severely limiting the iterative speed and real-time decision-making capabilities of engineering designs.
[0003] In existing technologies, neural network algorithms for scientific computing are gradually emerging. Typical solutions identified through literature review include Physics-Driven Neural Networks (PINN) and Fourier Neural Operators (FNO). Using neural networks to solve partial differential equations, especially for complex fluid problems such as high-dimensional Navier-Stokes equations, holds promise for solving the dimensionality explosion problem encountered by traditional methods. Compared to traditional numerical methods, it significantly reduces solution latency, making it a very promising numerical solution technique. However, neural network algorithms for high-precision scientific computing tasks (such as aerodynamic load prediction or flow field detail reconstruction requiring strict engineering error limits) face the following challenges: Firstly, compared to the rigorously validated and mesh convergence-tested solutions of traditional numerical methods, neural network inference results exhibit certain biases, and accuracy and reliability still need improvement. Secondly, solving large-scale complex PDEs (such as high-resolution three-dimensional fluid simulation) using neural networks involves massive vector-matrix multiplication (VMM) operations, requiring significant energy and time, making it a computationally intensive task. Existing general-purpose hardware (CPU / GPU) struggles to meet the low-power, low-latency requirements of real-time simulation or embedded deployment.
[0004] In-memory computing (CIM) architectures and circuits are an effective method for solving such computationally intensive tasks. By integrating computational functions within memory, CIM enables in-situ VMM operators within the memory array, significantly reducing data transfer overhead and dramatically improving computational speed while lowering energy consumption. Currently, there are a few existing CIM chip and system design schemes and technologies for accelerating Fourier Neural Operators (FNO). Their key technology involves mapping the rotation factor matrix of the Discrete Fourier Transform (DFT) onto the memory array to achieve in-situ VMM operations on the input sequence, thereby completing the Fourier Transform and Fourier layer operations. However, when solving scientific computing tasks with high spatial resolution (e.g., for capturing complex vortex structures or boundary layer details), such as solving the Navier-Stokes equations under fine meshes, the storage overhead of large amounts of high-precision rotation factor weight matrix data and the resulting massive energy consumption of VMM operations become significant. Therefore, a novel technical solution is urgently needed that can simultaneously address the accuracy bottleneck of neural network solvers for complex practical engineering problems (e.g., high-precision fluid simulation) and the energy efficiency and latency limitations of CIM. Summary of the Invention
[0005] The purpose of this application is to provide an in-memory computing acceleration method and apparatus for scientific computing, which can enhance the feature extraction capability of networks in the frequency domain and improve the solution accuracy; at the same time, it supports in-memory pipelined fast Fourier transform, reducing data transmission, reducing storage overhead, and shortening the computation cycle.
[0006] To achieve the above objectives, this application provides the following solution:
[0007] Firstly, this application provides an in-memory computing acceleration method for scientific computing, the in-memory computing acceleration method for scientific computing comprising:
[0008] Based on fluid dynamics systems, construct partial differential equations;
[0009] Obtain the simulation or observation data of the fluid dynamics system; the simulation or observation data of the fluid dynamics system includes: computational domain geometry information, boundary conditions, initial conditions, and fluid property parameters.
[0010] The partial differential equation is characterized using an improved FNO neural network model. The improved FNO neural network model is trained based on simulation or observation data of the fluid dynamics system to obtain weight data at each level. The improved FNO neural network model is based on the original FNO neural network model, with the addition of upsampling layers and pooling layers to the Fourier layers. The weight data at each level includes: weights at each level of FFT, weights of fully connected layers, and weights of frequency domain linear layers.
[0011] The weight data at each level are mapped onto a memory array to obtain the mapped weights.
[0012] Based on the mapped weights, a data stream list for in-memory pipelined Fast Fourier Transform is constructed; the data stream list for in-memory pipelined Fast Fourier Transform includes: the total number of computation cycles, the number and index of input data levels in each computation cycle, and weight address information.
[0013] Based on the data stream list of the in-memory pipelined fast Fourier transform, in-situ VMM operation is performed to obtain the operation result.
[0014] Based on the calculation results, high-precision fluid field reconstruction and engineering applications are performed.
[0015] Optionally, the method for determining the improved FNO neural network model specifically includes:
[0016] Obtain a fluid dynamics dataset; the fluid dynamics dataset includes: input data and high-precision label data corresponding to the input data; the input data is a data pair of boundary conditions for the Navier-Stokes equations.
[0017] The input data is fed into the improved FNO neural network model to be trained to obtain the predicted output.
[0018] The loss value is calculated based on the predicted output, the corresponding high-precision label data, and the determined loss function.
[0019] Based on the loss value, backpropagation is performed using an optimization algorithm to update all parameters of the improved FNO neural network model, resulting in the optimized model.
[0020] Optionally, the improved FNO neural network model includes: a first input layer, a first fully connected layer, a Fourier layer, a second fully connected layer, and an output layer.
[0021] The first input layer is used to input the input data into the first fully connected layer.
[0022] The first fully connected layer is used to perform dimensionality upscaling on the input data to obtain dimensionality upscaling data, and then input the dimensionality upscaling data into the Fourier layer.
[0023] The Fourier layer includes: a second input layer, an upsampling layer, a Fourier transform layer, a linear layer, an inverse Fourier transform layer, a pooling layer, a convolutional layer, and a merging layer.
[0024] The second input layer is used to input the upsampled data into the upsampling layer and the convolutional layer, respectively.
[0025] The upsampling layer is used to improve the spatial resolution of the up-dimensional data to obtain data with improved resolution.
[0026] The Fourier transform layer is used to perform Fourier transform on the data after resolution improvement to obtain the Fourier transformed data.
[0027] The linear layer is used to perform frequency domain feature transformation on the Fourier transform data to obtain frequency domain feature transformed data.
[0028] The inverse Fourier transform layer is used to perform an inverse Fourier transform on the data after the frequency domain feature transformation to obtain the restored data.
[0029] The pooling layer is used to downsample and restore the restored data to obtain the downsampled and restored data.
[0030] The convolutional layer is used to perform two-dimensional convolution operations on the upgraded data to obtain data after two-dimensional convolution operations.
[0031] The merging layer is used to merge and activate the downsampled and recovered data with the data processed by the two-dimensional convolution operation to obtain merged data.
[0032] The second fully connected layer is used to perform dimensionality reduction processing on the merged data.
[0033] The output layer is used to output the solution results of the partial differential equation.
[0034] Optionally, the weight data at each level is mapped onto a memory array to obtain the mapped weights, specifically including:
[0035] Based on the weight data at each level, obtain the rotation factor matrix for each group at each level.
[0036] Arrange the rotation factor matrices of each level and each group in order to obtain the recombination matrix.
[0037] The recombined matrix is mapped onto the memory array without any overlapping rows and columns to obtain the mapped weights.
[0038] Optionally, based on the mapped weights, a data stream list for in-memory pipelined fast Fourier transform is constructed, specifically including:
[0039] The low-frequency dominance of Fourier neural operators is used to prune the VMM operation, and the pruning result is obtained.
[0040] Based on the pruning results, a data stream list for in-memory pipelined fast Fourier transform is constructed.
[0041] Optionally, based on the data stream list of the in-memory pipelined fast Fourier transform, in-situ VMM operations are performed to obtain the operation results, specifically including:
[0042] Read the input data block from the specified storage address according to the current calculation cycle.
[0043] Based on the weight address information, activate the effective weights at the corresponding positions in the in-memory computing array.
[0044] The VMM operation of the input data block and the effective weights is performed in parallel in situ to obtain the VMM operation result.
[0045] The VMM calculation results can be temporarily stored or directly output to a specified location.
[0046] When all computation cycles of the data stream list defined by the in-memory pipelined fast Fourier transform are completed, the final results of each stage of Fourier transform / inverse transform are obtained.
[0047] Optionally, based on the calculation results, high-precision fluid field reconstruction and engineering applications are performed, specifically including:
[0048] The analog domain operation results output by the in-memory computing array are converted into digital signals.
[0049] The digital signal is input into the decoder network / post-processing module to reconstruct the high-resolution flow field variables in the physical space.
[0050] Based on the high-resolution flow field variables, key engineering parameters are calculated and visualized; the key engineering parameters include: aerodynamic forces, torque, lift, drag, pitching moment, surface pressure distribution, shear stress distribution, and flow field characteristics.
[0051] Engineering decisions are made based on the aforementioned key engineering parameters.
[0052] In a second aspect, this application provides a computer device, including: a memory, a processor, and a computer program stored in the memory and capable of running on the processor, wherein the processor executes the computer program to implement the in-memory computing acceleration method for scientific computing as described above.
[0053] Thirdly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the in-memory computing acceleration method for scientific computing described above.
[0054] Fourthly, this application provides a computer program product, including a computer program that, when executed by a processor, implements the in-memory computing acceleration method for scientific computing described above.
[0055] According to the specific embodiments provided in this application, the following technical effects are disclosed:
[0056] This application provides a method and apparatus for accelerating in-memory computing for scientific computing. The method includes: constructing partial differential equations based on a fluid dynamics system; transforming abstract fluid dynamics control laws into a standardized model solvable by mathematical methods and neural networks, laying a mathematical foundation for subsequent accurate solutions using an improved FNO neural network model; and acquiring simulation or observation data of the fluid dynamics system, including computational domain geometry, boundary conditions, initial conditions, and fluid property parameters. This data provides comprehensive and accurate basic data support for the partial differential equations and ensures that subsequent neural network training and fluid field reconstruction are based on original information that closely conforms to actual motion laws. An improved FNO neural network model is used to represent the partial differential equations. The improved FNO neural network model is trained based on simulation or observation data of the fluid dynamics system to obtain weight data at each level. The improved FNO neural network model is based on the original FNO neural network model, with the addition of upsampling and pooling layers to the Fourier layers. The weight data at each level includes: FFT weights at each level, weights of the fully connected layers, and weights of the frequency domain linear layers. This model improvement enhances the efficiency and accuracy of solving the partial differential equations, while simultaneously generating key weight data adapted to subsequent memory mapping, preparing core parameters for hardware-level computation. The weight data at each level is mapped onto the memory array to obtain the mapped weights. This adapts the abstract weight data to the physical structure of the hardware memory array, providing hardware-accessible weight resources for subsequent construction of the in-memory pipelined FFT data stream list and in-situ VMM operations, thus bridging the gap between the algorithm and hardware. Based on the mapped weights, a data flow list for in-memory pipelined Fast Fourier Transform (FFT) is constructed. This data flow list includes: the total number of computation cycles, the number and index of input data levels in each computation cycle, and weight address information. Clearly defining the timing logic, data flow direction, and weight call location of the in-memory pipelined FFT operation provides clear and efficient process guidance for subsequent in-situ Virtual Machine Model (VMM) operations, reducing redundant data handling and computation waiting time. Based on the data flow list for the in-memory pipelined FFT, in-situ VMM operations are performed to obtain the results. Leveraging the characteristics of in-situ computation, data transmission losses between memory and computation units are significantly reduced. Combined with an ordered data flow, efficient and low-energy VMM operations are achieved, enabling rapid output of computation results that meet accuracy requirements. Based on the computation results, high-precision fluid field reconstruction and engineering applications are performed. Transforming the computation results into intuitive and accurate fluid field information effectively meets the practical needs of fluid motion analysis, prediction, and optimization in engineering fields, realizing the transformation of technological achievements into engineering value.This application forms a complete closed loop from the acquisition of basic fluid mechanics data to final engineering application. Through precise data support, mathematical model construction, neural network improvement, hardware weight adaptation, pipeline process optimization, and in-situ efficient computation, it not only ensures high accuracy and speed in solving fluid mechanics problems, but also reduces energy consumption and data transmission costs during the computation process. Ultimately, it achieves effective implementation from technology research and development to engineering practice, providing a reliable full-process technical solution for the accurate analysis, optimized design, and efficient application of fluid mechanics-related fields (such as aerospace, water conservancy engineering, and energy equipment). Attached Figure Description
[0057] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the embodiments 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.
[0058] Figure 1 This is an application environment diagram of an in-memory computing acceleration method for scientific computing according to an embodiment of this application.
[0059] Figure 2 This is a flowchart illustrating an in-memory computing acceleration method for scientific computing, provided as an embodiment of this application.
[0060] Figure 3 This is a schematic diagram of the FNO model structure provided in an embodiment of this application.
[0061] Figure 4 A schematic diagram of an improved FNO model structure provided in an embodiment of this application.
[0062] Figure 5 This is a schematic diagram of an in-memory computing hardware acceleration system for scientific computing, provided as an embodiment of this application.
[0063] Figure 6 This is a schematic diagram of the weight mapping scheme and operation scheme of the in-memory pipelined FFT provided in an embodiment of this application.
[0064] Figure 7 This is a schematic diagram of an in-memory FFT pipeline design provided in an embodiment of this application.
[0065] Figure 8 This is a schematic diagram of an in-memory FFT pipeline design that takes sparsity optimization into account, provided as an embodiment of this application.
[0066] Figure 9 This is a schematic diagram of the data operation process of an FNO frequency domain convolutional layer provided in an embodiment of this application.
[0067] Figure 10 This is a schematic diagram of an in-memory FFT operation considering sparsity, provided as an embodiment of this application.
[0068] Figure 11 This is a schematic diagram of the operation process provided for an embodiment of this application.
[0069] Figure 12 This is a schematic diagram illustrating the L2 loss on the validation set during the training of the 2D time-dependent Navier-Stokes equations with viscosity 1e-3 and T=50 at different upsampling resolutions, as provided in an embodiment of this application.
[0070] Figure 13 This is a schematic diagram illustrating the performance of various models of the NS equations for different tasks provided in an embodiment of this application.
[0071] Figure 14 This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. Detailed Implementation
[0072] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0073] The purpose of this application is to address the problems of low accuracy in current neural network methods for scientific computing tasks, as well as the problems of high energy consumption, long computation time, and difficulty in meeting real-time requirements of existing Fourier neural operator acceleration systems.
[0074] This application involves both software and hardware components. In the software component, the network structure of the Fourier neural operator is optimized, and a pipelined Fast Fourier Transform scheme based on an RRAM in-memory computing chip is proposed. The filtering characteristics of the network are also utilized to further accelerate scheduling. In the hardware component, a scientific computing solver based on an RRAM in-memory computing chip is designed, along with corresponding operation methods and data flows. Compared with existing scientific computing acceleration systems, this application enhances the network's feature extraction capabilities in the frequency domain by providing a higher-resolution feature representation space, thereby improving solution accuracy. Simultaneously, it supports in-memory pipelined Fast Fourier Transform, reducing data transmission, storage overhead, and computation cycle time. This system is suitable for scientific computing scenarios such as fluid mechanics and quantum chemistry, and has significant application value.
[0075] This application provides a method and apparatus for accelerating in-memory computing for scientific computing, including an improved Fourier neural operator network structure, a scientific computing solver hardware system based on an RRAM in-memory computing chip, and supporting operation methods and data flow scheduling schemes.
[0076] In this application, an improved FNO algorithm is used to solve partial differential equations:
[0077] The input activation of the Fourier layer is enhanced with a linear interpolation upsampling module to improve spatial resolution. Fourier transform and frequency domain feature transformation are performed on the high-resolution data. The transform results are then restored using an inverse Fourier transform, followed by average pooling downsampling to recover the original resolution. This algorithm enhances the network's feature extraction capability in the frequency domain and improves solution accuracy. However, the large number of points in the Fourier transform becomes a computational bottleneck for this neural network during hardware system operation.
[0078] To address this, this application designs a hardware device based on an RRAM in-memory computing chip, including basic modules such as an input register, read / write address decoding circuit, bit line driver circuit, digital-to-analog converter (DAC), RRAM memory array, analog-to-digital converter (ADC), on-chip cache, and FPGA development board. This application employs Fast Fourier Transform (FFT) instead of Discrete Fourier Transform (DFT), reducing computational load and thus energy consumption. When mapping the weights of each FFT stage onto the memory device, it ensures no row or column overlap between stage weights, guaranteeing the operational independence of each FFT stage. This allows each stage to perform VMM operations simultaneously, providing a basis for pipelined scheduling strategies. In each computation cycle, considering the coupling relationship between stages before and after the FFT, pipelined scheduling is performed on each stage to shorten the computation cycle. Considering the low-frequency filtering characteristics of the Fourier neural operator, which requires structured sparse Fourier transform results, this characteristic is utilized to achieve a faster pipeline design while further reducing VMM computation and energy consumption.
[0079] The procedure for this application is as follows:
[0080] First, the improved Fourier neural operator model is trained based on the dataset. Then, the weights of FFT, convolutional layer, fully connected layer, linear layer, etc. are mapped onto the array according to the mapping scheme proposed in this application. Next, the input of each layer is scheduled to drive the bit line at the specified address according to the pipeline scheme proposed in this application. The source line current is the in-situ VMM calculation result. After quantization, the solution result of the partial differential equation is obtained.
[0081] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0082] The in-memory computing acceleration method for scientific computing provided in this application embodiment can be applied to, for example... Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be set up independently, integrated into server 104, or placed in the cloud or on another server. Terminal 102 can send acquired fluid dynamics system simulation or observation data to server 104. This fluid dynamics system simulation or observation data includes: computational domain geometry information, boundary conditions, initial conditions, and fluid property parameters. After receiving the fluid dynamics simulation or observation data, server 104 constructs partial differential equations based on the data. An improved FNO neural network model is used to represent the partial differential equations, and the improved FNO neural network model is trained based on the fluid dynamics system simulation or observation data to obtain weight data at each level. The improved FNO neural network model is based on the original FNO neural network model. Above, an upsampling layer and a pooling layer are added to the Fourier layer; the weight data at each level includes: weights at each level of FFT, weights of the fully connected layer, and weights of the frequency domain linear layer; the weight data at each level is mapped onto the memory array to obtain the mapped weights; based on the mapped weights, a data stream list for in-memory pipelined Fast Fourier Transform is constructed; the data stream list for in-memory pipelined Fast Fourier Transform includes: the total number of calculation cycles, the number and index of input data levels in each calculation cycle, and weight address information; based on the data stream list for in-memory pipelined Fast Fourier Transform, in-situ VMM operations are performed to obtain the calculation results; based on the calculation results, high-precision fluid field reconstruction and engineering applications are performed. The server 104 can feed back the obtained calculation results to the terminal 102. In addition, in some embodiments, the in-memory computing acceleration method for scientific computing can also be implemented by the server 104 or the terminal 102 separately. For example, the terminal 102 can directly perform in-memory computing acceleration processing for scientific computing on fluid dynamics simulation or observation data, or the server 104 can obtain fluid dynamics simulation or observation data from the data storage system and perform in-memory computing acceleration processing for scientific computing on the fluid dynamics simulation or observation data.
[0083] The terminal 102 can be, but is not limited to, various desktop computers, laptops, smartphones, and tablets. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers, or it can be a cloud server.
[0084] In one exemplary embodiment, such as Figure 2As shown, a method for accelerating in-memory computing for scientific computing is provided. This method is executed by a computer device, specifically a terminal or server, or both. In this embodiment, the method is applied to... Figure 1 Taking server 104 as an example, the explanation includes the following steps S1 to S7. Wherein:
[0085] S1: Construct partial differential equations based on fluid dynamics systems.
[0086] S2: Obtain the simulation or observation data of the fluid dynamics system; the simulation or observation data of the fluid dynamics system includes: computational domain geometry information, boundary conditions, initial conditions, and fluid property parameters.
[0087] S3: The partial differential equation is characterized using an improved FNO neural network model. The improved FNO neural network model is trained based on simulation or observation data of the fluid dynamics system to obtain weight data at each level. The improved FNO neural network model is based on the original FNO neural network model, with the addition of an upsampling layer and a pooling layer to the Fourier layer. The weight data at each level includes: weights at each level of FFT, weights of the fully connected layer, and weights of the frequency domain linear layer.
[0088] S4: Map the weight data at each level onto the memory array to obtain the mapped weights.
[0089] S5: Based on the mapped weights, construct a data stream list for in-memory pipelined fast Fourier transform; the data stream list for in-memory pipelined fast Fourier transform includes: the total number of calculation cycles, the number and index of input data levels in each calculation cycle, and weight address information.
[0090] S6: Based on the data stream list of the in-memory pipelined fast Fourier transform, perform in-situ VMM operation to obtain the operation result.
[0091] S7: Based on the calculation results, perform high-precision fluid field reconstruction and engineering applications.
[0092] By implementing steps S1 to S7 above, the neural network algorithm structure proposed in this application can effectively improve the solution accuracy and reduce the solution error of some scientific computing tasks. Through the in-memory pipelined Fast Fourier Transform scheme proposed in this application, and by utilizing the structured sparsity of the neural network to optimize pipeline scheduling, on-chip storage and computational load can be reduced, and the scheduling of computing resources at all levels can be accelerated, achieving the effect of reducing latency and energy consumption. Specifically, 1. It can significantly improve the solution accuracy of high-precision fluid simulations such as the Navier-Stokes equations: Through the innovative neural network algorithm structure, it effectively reduces the prediction error of flow field physical quantities (velocity, pressure, vorticity) and key engineering parameters (aerodynamic loads), accurately captures complex vortex structures and flow details, and its accuracy meets the stringent requirements of engineering applications such as aircraft design and turbomachinery optimization. 2. Breakthrough the energy efficiency and latency bottleneck of in-memory computing in high-resolution fluid simulation: By combining the in-memory pipelined FFT scheme with structured sparsity optimization, the storage overhead and invalid computation of high-precision rotation factor matrices are significantly reduced, and the energy consumption and latency of the FNO core operation (Fourier transform) are significantly reduced, enabling the efficient deployment of high-resolution NS equation solving in real-time simulation (digital twin) and edge devices (UAV flight control).
[0093] As an optional implementation, in step S1, the computational domain geometry information includes: wing shape, pipe structure, mesh / parametric description of blood vessel model, etc.; boundary conditions include: inlet velocity distribution, outlet pressure, wall conditions (no slip / slip), far-field conditions, etc.; initial conditions include: initial flow field velocity, pressure distribution, vorticity distribution, etc.; fluid physical properties include: density, viscosity, etc.
[0094] As an optional implementation, in step S2, based on the basic principles of fluid mechanics, the acquired geometric information is used to define the computational domain Ω and the boundary. By using the boundary and initial conditions as the boundary conditions for the equations, and substituting the fluid property parameters into the coefficients of the vorticity form of the Navier-Stokes equations, a closed set of partial differential equations is ultimately formed to be solved. The core equations are in the form of:
[0095]
[0096] Where w is vorticity, u is velocity field, ν is kinematic viscosity, and f is vorticity source term; For varying vorticity; It represents a changing velocity field.
[0097] As an optional implementation, in step S3, the method for determining the improved FNO neural network model specifically includes (i.e., the training process of the improved model):
[0098] S31: Obtain the fluid mechanics dataset; the fluid mechanics dataset includes: input data and high-precision label data corresponding to the input data; the input data is a data pair of boundary conditions for the Navier-Stokes equations.
[0099] Obtain a fluid dynamics dataset; the fluid dynamics dataset includes: (1) input data x, representing data pairs representing the boundary conditions of the NS equations, including geometric encoding, boundary condition encoding, initial condition encoding, fluid parameters, etc.; (2) high-precision labeled data y: corresponding to x, complete spatiotemporal flow field data (such as velocity and pressure values at discrete spatiotemporal points) obtained by high-confidence traditional numerical methods (such as high-resolution CFD), or key features / dimensionality reduction representations extracted from it. This is the training objective.
[0100] S32: Input the input data x into the improved FNO neural network to be trained.
[0101] S33: Based on the predicted output y of the neural network pred High-precision labeled data y and loss function are used to calculate the loss value L = MSE(y). pred ,y).
[0102] S34: Based on the loss value L, perform backpropagation using an optimization algorithm (such as Adam) to update all parameters (weights) of the improved FNO neural network, obtaining the optimized model. Repeat steps S31-S34 until the model converges.
[0103] The FNO model structure is as follows: Figure 3 As shown, the improved FNO model structure is as follows: Figure 4 As shown.
[0104] like Figure 4 As shown, the improved FNO neural network model includes: a first input layer, a first fully connected layer, a Fourier layer, a second fully connected layer, and an output layer.
[0105] The first input layer is used to input the input data x (tensor representation of geometry, boundary, initial conditions, fluid parameters, etc.) in S31 into the first fully connected layer.
[0106] The first fully connected layer is used to perform dimensionality upscaling on x to obtain u(x), and then input u(x) into the Fourier layer.
[0107] The Fourier layer includes: a second input layer, an upsampling layer, a Fourier transform layer, a linear layer, an inverse Fourier transform layer, a pooling layer, a convolutional layer, and a merging layer.
[0108] The second input layer is used to input u(x) into the upsampling layer and the convolutional layer, respectively.
[0109] The upsampling layer is used to improve the spatial resolution of u(x) to obtain data with improved resolution.
[0110] The Fourier transform layer is used to perform Fourier transform on the data after resolution improvement to obtain the Fourier transformed data.
[0111] The linear layer is used to perform frequency domain feature transformation on the Fourier transform data to obtain frequency domain feature transformed data.
[0112] The inverse Fourier transform layer is used to perform an inverse Fourier transform on the data after the frequency domain feature transformation to obtain the restored data.
[0113] The pooling layer is used to downsample and restore the restored data to obtain the downsampled and restored data.
[0114] The convolutional layer is used to perform two-dimensional convolution operations on u(x) to obtain data after two-dimensional convolution operations.
[0115] The merging layer is used to merge and activate the downsampled and recovered data with the data processed by the two-dimensional convolution operation to obtain merged data.
[0116] The second fully connected layer is used to perform dimensionality reduction on the merged data to obtain the solution result y. pred .
[0117] The output layer is used to output the solution results of the partial differential equation.
[0118] As an optional implementation, in step S4, the weight data at each level is mapped onto a memory array to obtain the mapped weights, specifically including:
[0119] S41: Based on the weight data at each level, obtain the rotation factor matrix for each group at each level.
[0120] S42: Arrange the rotation factor matrices of each level and each group in order to obtain the recombination matrix.
[0121] S43: Map the recombined matrix onto the memory array without overlapping rows and columns to obtain the mapped weights.
[0122] As an optional implementation, in step S5, based on the mapped weights, a data stream list for in-memory pipelined fast Fourier transform is constructed, specifically including:
[0123] S51: The VMM operation is pruned using the low-frequency dominance characteristic of the Fourier neural operator to obtain the pruning result.
[0124] S52: Based on the pruning results, construct a data stream list for in-memory pipeline fast Fourier transform.
[0125] As an optional implementation, in step S6, based on the data stream list of the in-memory pipelined fast Fourier transform, in-situ VMM operation is performed to obtain the operation result, specifically including:
[0126] S61: Read the input data block from the specified storage address according to the current calculation cycle.
[0127] S62: Activate the effective weights at the corresponding positions in the in-memory computing array based on the weight address information.
[0128] S63: Perform the VMM operation of the input data block and the effective weights in parallel in situ to obtain the VMM operation result.
[0129] S64: Temporarily store or directly output the VMM operation results (partial and / or final transformation results) to a specified location (according to the data stream list).
[0130] S65: Repeat steps S61-S64 until all computation cycles defined in the pipeline data flow list are completed, and obtain the final results of each level of Fourier transform / inverse transform (i.e., the output of the FNO Fourier layer).
[0131] As an optional implementation, in step S7, based on the calculation results, high-precision fluid field reconstruction and engineering applications are performed, specifically including:
[0132] S71: Converts the analog domain operation results output by the in-memory computing array into digital signals (characteristic representation of the flow field in the FNO defined space) through an on-chip analog-to-digital converter (ADC).
[0133] S72: Inputs the digital signal into the subsequent decoder network / post-processing module (which may be part of the FNO or run on the CPU) to reconstruct high-resolution flow field variables in the physical space (such as velocity field u(x,t), pressure field p(x,t), vorticity field w(x,t)).
[0134] S73: Calculation and visualization of key engineering parameters based on reconstructed flow field:
[0135] Calculate aerodynamic forces / torques (lift, drag, pitching moment).
[0136] Calculate the surface pressure / shear stress distribution (for structural strength analysis and friction resistance assessment).
[0137] Calculate the flow field characteristics (vortex core location / intensity, separation zone, reattachment point, turbulence intensity).
[0138] Visualizations such as streamline diagrams, vorticity isosurfaces, and pressure contour maps are used for result analysis and presentation.
[0139] S74: Make engineering decisions based on the aforementioned key engineering parameters:
[0140] The results are fed back into the design optimization loop (such as optimizing airfoil shape and impeller flow channels).
[0141] Used in real-time flow field prediction and control systems (such as anomaly monitoring in digital twins and real-time aerodynamic adjustment of UAV flight control).
[0142] Used for scientific discovery (such as analyzing complex vortex dynamics phenomena).
[0143] The present application will be further described in detail below with reference to specific embodiments and the accompanying drawings.
[0144] I. A schematic diagram of the in-memory computing acceleration hardware system for scientific computing provided in this application is shown below. Figure 5 As shown.
[0145] The hardware system includes an FPGA development board as the main controller and an in-memory computing chip (including an input register, read / write address decoding circuit, bit line driver circuit, DAC, RRAM memory array, ADC, and on-chip cache) as the acceleration core. The input data is driven to the input register of the in-memory computing chip according to the data flow information stored in the on-board memory. The read / write address decoding circuit in the in-memory computing chip is controlled according to the weight index and address information stored in the on-board memory. The bit line driver circuit drives the data stored in the input register to the row DAC that is enabled and pulled high after decoding. The DAC converts the input codeword into an analog voltage signal, performs in-situ VMM operation with the weight resistance value stored in the memory array, and the resulting analog current calculation result signal is converted into a digital signal by the ADC module and stored in the on-chip cache.
[0146] II. This application provides a method for accelerating in-memory computing for scientific computing, including:
[0147] Step 1. Map the weights of each level of FFT, the weights of the fully connected layer, and the weights of the frequency domain linear layer onto the memory array according to the weight mapping strategy contained in this application; obtain the data stream of the in-memory pipelined FFT according to the pipeline scheduling strategy contained in this application and store it in the SDRAM of the FPGA.
[0148] Step 2. Retrieve the input data of each stage of the FFT for the current clock cycle from the SDRAM of the FPGA development board and store it in the input register; the same applies to the fully connected layer and the frequency domain linear layer.
[0149] Step 3. The read / write address decoding circuit obtains the weight index information of the VMM operation in the current cycle from the FPGA and decodes it into the corresponding BL enable signal; the same applies to the fully connected layer and the frequency domain linear layer.
[0150] Step 4. The bit line driver circuit drives the input data to the corresponding DAC according to the data stored in the input register.
[0151] Step 5. The DAC converts the input codeword into an analog voltage and drives it to the corresponding BL. It performs in-situ VMM operation with the FFT weights stored in the memory. The ADC converts the operation result from analog current into digital code, which is the calculation result for the current cycle.
[0152] Step 6. Repeat steps 2 to 4 until the last cycle. The final calculation result is the PDE (partial differential equation) solution result, which accelerates in-memory computation.
[0153] In this application, the neural network used to solve the differential equation is an improved FNO model ( Figure 4 The improved network is based on the original FNO structure (). Figure 3 Building upon the previous model, an upsampling layer and a pooling layer were added to the Fourier layer. The input activation of the Fourier layer was upsampled using a linear interpolation module to improve spatial resolution. Fourier transform and frequency domain feature transform were performed on the high-resolution data. The transform results were then restored using an inverse Fourier transform, followed by average pooling downsampling to recover the original resolution. After training, the modified model outputs weight data, which is then mapped onto the memory array of an in-memory computing chip. The Fast Fourier Transform (FFT) is the performance bottleneck of this network, therefore, subsequent optimizations will focus on this aspect.
[0154] This application implements the Fast Fourier Transform (FFT) in memory. For the N-point FFT in a neural network model, it is considered to perform the FFT in memory using a radix M decimation-by-frequency (DIF FFT). The computation process of the N-point radix M DIF FFT is decomposed into log... M N-level operations. The s-th level (s = 1, 2, ..., log n) M N) contains s groups The mathematical expression for each set of point-based M operations is: in It is the output vector of the s-th level of the FFT. It is the input vector of the s-th level. Let be the rotation factor matrix of the s-th level and k-th group, whose elements are defined as:
[0155]
[0156] Where p and q are the row and column indices of the element in the matrix.
[0157] This application will Mapped within the storage array and subjected to in-situ VMM operations, specifically, all of the s-th level... The matrices are arranged in order of size L sw ×L sh Recombination matrix W s , where |L sw -L sh The value of | is minimized. The reorganization matrix W at each level is then reorganized. s The rows and columns are mapped onto the memory array without overlap, satisfying the s-th level weight block W. s Starting address is According to this plan After mapping, the input to the word line on the storage array is the input vector of the VMM operation containing that weight. The ADC quantizes the SL current to obtain the output vector of the VMM operation. The intermediate-level computation results are stored in an on-chip cache for use as input in subsequent cycles, while the final-level computation results are stored in both the on-chip cache and the memory on the FPGA development board.
[0158] This embodiment demonstrates a mapping scheme for a 1024-point radix-4 DIF FFT. Figure 6 The first level contains 256 4×4 weight matrices, which are mapped to the area marked in red for the resistive switching devices in the diagram. The second level contains 64 4×4 weight matrices, and so on. The last level contains one 4×4 weight matrix, which is mapped to the area marked in purple for the resistive switching devices in the diagram. The value is:
[0159]
[0160] in, This application avoids frequent movement of weight parameters between memory and computing units, thereby reducing energy consumption and time overhead. Compared to in-memory discrete Fourier transform schemes of the same size, numerical precision, and number of bits, this application significantly reduces the memory array area. This application isolates each stage of computation at the hardware computability level, allowing for multi-stage pipeline parallelism of the FFT.
[0161] This application designs a scheduling algorithm for in-memory pipelined FFT. In each clock cycle, the system iterates through the data points of the last stage to the first uncomputed point in the required order. It then backtracks to the previous stage of that data point and examines the computation status of the M data points that the previous stage depends on. If all the dependent previous stage data points have been computed, the system starts the in-memory VMM computation of that butterfly operation unit in the current clock cycle, marks the state of that point and the remaining M-1 points in the same butterfly unit at the same stage as obtained, and points the pointer to the next data point to continue the above process. Otherwise, it recurses forward until, in the current clock cycle, every computable stage has a butterfly operation unit currently being computed.
[0162] This embodiment demonstrates a pipeline design for a 1024-point 4DIF FFT. Figure 7 The specific operation method is as follows: during a certain clock cycle, the layer input is driven to a specified bit line of the 0th level weight of the FFT, the calculation result of the 0th level is driven to a specified bit line of the 1st level weight, and so on. The ADC reads the current on the source line at the calculation location as the calculation result. This method can obtain the FFT calculation results of more than one level simultaneously, improving the computational parallelism.
[0163] The low-frequency filtering feature of the FNO neural network means that only the low-frequency features are extracted from the Fourier transform result, while the high-frequency features are set to 0. Therefore, it is not necessary to obtain all the results of the Fourier transform. Figure 9 This sparsity can be used to further reduce computation cycle and energy consumption. Taking the improved FNO applied to solving two-dimensional time-dependent Navier-Stokes equations as an example, the input dimension of the Fourier transform is 1024×1024. A two-dimensional Fourier transform is performed on it, and the result retains the values of the [0:modes1, 0:modes2] part and the [-modes1:0, 0:modes2] part, which are then fed into the frequency domain linear transform layer, where modes1 = modes2 = 12. This application considers only calculating the values of this part. Specifically, a one-dimensional FFT is first performed on each row, and the scheduling algorithm only schedules the computation required for the first mode2 points. Then, a one-dimensional FFT is performed on each column of the calculation result, and the scheduling algorithm only schedules the computation required for the first and last mode1 points. Figure 10 This application considers the problem of reversing the output order of FFT calculation results. The pipeline design considering sparsity is shown in the figure. Figure 8 The designed pipeline dataflow list is stored in the SDRAM on the FPGA board. This pipeline dataflow list includes the following information: the total number of computation cycles required, the number and index of input data stages in each computation cycle, weight address information, etc. The list includes the input register configuration and decoder driver circuit inputs for each cycle.
[0164] The operation mode of the core system in this embodiment is generally described as follows ( Figure 11 ):
[0165] Step 110: Model Training and Weight Preparation: Train the improved FNO and quantize the trained weight data into high-precision fixed-point numbers.
[0166] Step 120: In-memory Fast Fourier Transform Weight Mapping: The FFT twitch factor is split into imaginary and real parts, which are quantized into high-precision fixed-point numbers respectively. The weights are then mapped onto the memory array using the mapping method described above.
[0167] Step 130: Design the in-memory pipelined Fast Fourier Transform data flow: Design the in-memory pipelined Fast Fourier Transform data flow list according to the above method, including: the total number of calculation cycles, the number and index of input data levels in each calculation cycle, and weight address information.
[0168] Step 140: Retrieve the input data of each stage of the FFT in the current clock cycle from the SDRAM of the FPGA development board and store it in the input register; the read / write address decoding circuit obtains the weight index information of the VMM operation in the current cycle from the FPGA and decodes it into the corresponding BL enable signal; the bit line driving circuit drives the input data to the corresponding DAC according to the data stored in the input register; the DAC converts the input codeword into an analog voltage and drives it to the corresponding BL, and performs in-situ VMM operation with the FFT weights stored in the memory (i.e., the weights of each stage of FFT, the weights of the fully connected layer, and the weights of the frequency domain linear layer); the ADC converts the operation result from analog current to digital signal, which is the calculation result of the current cycle; repeat the above operation until the last cycle, and finally obtain the calculation result, which is the PDE solution result, realizing in-memory calculation acceleration.
[0169] Experimental results show that when solving the two-dimensional time-dependent Navier-Stokes equations for viscosity 1e⁻³, the solution accuracy increases with the increase of upsampling resolution. Figure 12 Furthermore, the improved FNO model exhibits the best solution accuracy for various two-dimensional time-dependent Navier-Stokes equations. Figure 13 In-memory pipelined FFT achieves approximately 2.5 times the speedup compared to in-memory FFT without pipelined design. Figure 7 Based on this, pipeline design that considers sparsity further reduces the computation cycle by 49%. Figure 8 ).
[0170] The embodiments of this disclosure have now been described in detail with reference to the accompanying drawings.
[0171] In one exemplary embodiment, a computer device is provided, which may be a server or a terminal, and its internal structure diagram may be as follows. Figure 14As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores fluid dynamics simulation or observation data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communication with external terminals via a network connection. When executed by the processor, the computer program implements an in-memory computing acceleration method for scientific computing.
[0172] Those skilled in the art will understand that Figure 14 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0173] In one exemplary embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the above-described method embodiments.
[0174] In one exemplary embodiment, a computer-readable storage medium is provided storing a computer program that, when executed by a processor, implements the above-described method embodiments.
[0175] In one exemplary embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the above-described method embodiments.
[0176] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.
[0177] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM).
[0178] The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, distributed databases based on blockchain. The processors involved in the embodiments provided in this application may be, but are not limited to, general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc.
[0179] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0180] This document uses specific examples to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this application. Furthermore, those skilled in the art will recognize that, based on the ideas of this application, there will be changes in the specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A method for accelerating in-memory computing for scientific computing, characterized in that, The in-memory computing acceleration methods for scientific computing include: Based on fluid dynamics systems, construct partial differential equations; Acquire simulation or observation data of the fluid dynamics system; the simulation or observation data of the fluid dynamics system includes: computational domain geometry information, boundary conditions, initial conditions, and fluid property parameters; The partial differential equation is characterized using an improved FNO neural network model. The improved FNO neural network model is trained based on simulation or observation data of the fluid dynamics system to obtain weight data at each level. The improved FNO neural network model is based on the original FNO neural network model, with the addition of upsampling layers and pooling layers to the Fourier layers. The weight data at each level includes: weights at each level of FFT, weights of fully connected layers, and weights of frequency domain linear layers. The weight data at each level are mapped onto a memory array to obtain the mapped weights; Based on the mapped weights, a data stream list for in-memory pipelined fast Fourier transform is constructed; the data stream list for in-memory pipelined fast Fourier transform includes: the total number of computation cycles, the number and index of input data levels in each computation cycle, and weight address information; Based on the data stream list of the in-memory pipelined fast Fourier transform, in-situ VMM operation is performed to obtain the operation result; Based on the calculation results, high-precision fluid field reconstruction and engineering applications are performed.
2. The in-memory computing acceleration method for scientific computing according to claim 1, characterized in that, The method for determining the improved FNO neural network model specifically includes: Obtain a fluid mechanics dataset; the fluid mechanics dataset includes: input data and high-precision label data corresponding to the input data; the input data is a data pair of boundary conditions for the Navier-Stokes equations; The input data is fed into the improved FNO neural network model to be trained to obtain the predicted output; The loss value is calculated based on the predicted output, the corresponding high-precision label data, and the determined loss function; Based on the loss value, backpropagation is performed using an optimization algorithm to update all parameters of the improved FNO neural network model, resulting in the optimized model.
3. The in-memory computing acceleration method for scientific computing according to claim 2, characterized in that, The improved FNO neural network model includes: a first input layer, a first fully connected layer, a Fourier layer, a second fully connected layer, and an output layer; The first input layer is used to input the input data into the first fully connected layer; The first fully connected layer is used to perform dimensionality-upgrading processing on the input data to obtain dimensionality-upgraded data, and then input the dimensionality-upgraded data into the Fourier layer; The Fourier layer includes: a second input layer, an upsampling layer, a Fourier transform layer, a linear layer, an inverse Fourier transform layer, a pooling layer, a convolutional layer, and a merging layer; The second input layer is used to input the upsampled data into the upsampling layer and the convolutional layer, respectively; The upsampling layer is used to improve the spatial resolution of the up-dimensional data to obtain data with improved resolution. The Fourier transform layer is used to perform Fourier transform on the data after resolution improvement to obtain the Fourier transformed data. The linear layer is used to perform frequency domain feature transformation on the Fourier transform data to obtain frequency domain feature transformed data. The inverse Fourier transform layer is used to perform an inverse Fourier transform on the data after the frequency domain feature transformation to obtain the restored data. The pooling layer is used to downsample and restore the restored data to obtain the downsampled and restored data. The convolutional layer is used to perform two-dimensional convolution operations on the up-dimensional data to obtain data after two-dimensional convolution operations. The merging layer is used to merge and activate the downsampled and recovered data with the data processed by the two-dimensional convolution operation to obtain merged data; The second fully connected layer is used to perform dimensionality reduction processing on the merged data; The output layer is used to output the solution results of the partial differential equation.
4. The in-memory computing acceleration method for scientific computing according to claim 1, characterized in that, The weight data at each level is mapped onto a memory array to obtain the mapped weights, specifically including: Based on the weight data at each level, obtain the rotation factor matrix for each group at each level; Arrange the rotation factor matrices of each level and each group in order to obtain the recombination matrix; The recombined matrix is mapped onto the memory array without any overlapping rows and columns to obtain the mapped weights.
5. The in-memory computing acceleration method for scientific computing according to claim 1, characterized in that, Based on the mapped weights, a data stream list for in-memory pipelined Fast Fourier Transform is constructed, specifically including: The low-frequency dominance of Fourier neural operators is used to prune the VMM operation, and the pruning result is obtained. Based on the pruning results, a data stream list for in-memory pipelined fast Fourier transform is constructed.
6. The in-memory computing acceleration method for scientific computing according to claim 1, characterized in that, Based on the data stream list of the in-memory pipelined Fast Fourier Transform, in-situ VMM operations are performed to obtain the operation results, specifically including: Read the input data block from the specified storage address according to the current calculation cycle; Based on the weight address information, activate the effective weights at the corresponding positions in the in-memory computing array; The VMM operation of the input data block and the effective weights is performed in parallel in situ to obtain the VMM operation result; The VMM calculation result can be temporarily stored or directly output to a specified location; When all computation cycles of the data stream list defined by the in-memory pipelined fast Fourier transform are completed, the final results of each stage of Fourier transform / inverse transform are obtained.
7. The in-memory computing acceleration method for scientific computing according to claim 1, characterized in that, Based on the calculation results, high-precision fluid field reconstruction and engineering applications are performed, specifically including: Convert the analog domain operation results output by the in-memory computing array into digital signals; The digital signal is input into the decoder network / post-processing module to reconstruct the high-resolution flow field variables in the physical space; Based on the high-resolution flow field variables, key engineering parameters are calculated and visualized; the key engineering parameters include: aerodynamic forces, torque, lift, drag, pitching moment, surface pressure distribution, shear stress distribution, and flow field characteristics; Engineering decisions are made based on the aforementioned key engineering parameters.
8. A computer device, comprising: A memory, a processor, and a computer program stored in the memory and capable of running on the processor, characterized in that the processor executes the computer program to implement the in-memory computing acceleration method for scientific computing as described in any one of claims 1-7.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the in-memory computing acceleration method for scientific computing as described in any one of claims 1-7.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the in-memory computing acceleration method for scientific computing as described in any one of claims 1-7.