Matrix singular value pure CPU asynchronous calculation method based on row partitioning and collaborative iteration

By employing a pure CPU asynchronous computation method for matrix singular values ​​using row partitioning and collaborative iteration, this method solves the problem of low computational efficiency in high-dimensional data matrix processing using traditional SVD algorithms. It enables efficient computation of matrix singular values ​​and their singular vectors on multi-core CPU platforms, making it suitable for various application scenarios.

CN122045582APending Publication Date: 2026-05-15WEST ANHUI UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-02-09
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Traditional SVD algorithms have high computational complexity, slow execution speed, are difficult to parallelize, and rely on expensive GPU hardware, which limits their application in big data environments, especially in high-dimensional data matrix processing where they are inefficient.

Method used

A pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration (BISSVD) is adopted. The matrix is ​​processed in parallel by partitioning and executed asynchronously on a multi-core CPU. The singular values ​​and singular vectors of the matrix are calculated iteratively by QR decomposition. The computation process is optimized by row partitioning and cooperative iteration strategies.

Benefits of technology

It significantly improves computing speed and efficiency, reduces hardware costs, is suitable for multi-core CPU platforms, requires no GPU hardware support, and is applicable to fields such as recommendation systems and image processing. The computing accuracy and speed can be flexibly adjusted.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122045582A_ABST
    Figure CN122045582A_ABST
Patent Text Reader

Abstract

The invention relates to a key technology in the field of computer image processing and data recovery, in particular to an asynchronous calculation method for a matrix singular value and a singular vector of the matrix singular value. The matrix singular value pure CPU asynchronous calculation method specifically comprises the following steps: uniformly partitioning an input matrix into a plurality of sub-matrixes according to rows, carrying out asynchronous parallel QR decomposition iterative calculation on each sub-matrix on a multi-core CPU platform, and extracting a column orthogonal basis and a row orthogonal basis of each sub-matrix; recombining the row orthogonal basis of each sub-matrix and then carrying out QR decomposition iteration again to generate an intermediate matrix of which the dimensionality is obviously reduced; performing approximate singular value decomposition on the intermediate matrix; and finally obtaining a plurality of first singular values and singular vectors of the original matrix through matrix multiplication recombination. According to the method, the parallel computing capacity of the multi-core CPU is fully utilized, GPU hardware support is not needed, and compared with a traditional SVD algorithm, the computing speed is obviously increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of matrix decomposition and numerical computation technology, and more specifically, to a pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration. Background Technology

[0002] Singular Value Decomposition (SVD) is one of the most fundamental matrix factorization algorithms in computer science, widely used in recommender systems, image processing, and dimensionality reduction. However, traditional SVD algorithms suffer from several drawbacks: high computational complexity and slow execution speed; strong data dependencies between steps lead to low parallelization and difficulty in fully utilizing the computing power of multi-core processors. Some GPU-accelerated SVD implementations rely on expensive GPU hardware, limiting their widespread application. These shortcomings make traditional SVD algorithms unsuitable for processing high-dimensional data matrices, severely restricting their application in big data environments.

[0003] In fact, most data matrices exhibit approximate low-rank structure characteristics: high-precision reconstruction results can be obtained using a small number of large singular values ​​and their vectors. For example, in fields such as image processing and recommendation systems, the singular values ​​of a matrix exhibit a rapid decay trend, and the original data matrix can be reconstructed using only the first 10% to 20% of the singular values.

[0004] The applicant of this invention (Qing Liu) proposed a QR iterative method (CSVDQR) for calculating the partial singular values ​​of a matrix in 2019 and published it in the internationally renowned journal IEEE TNNLS. The paper is titled […]. <a fast andaccurate matrix completion method based on qr decomposition and l2,1 -normminimization>CSVDQR, within the framework of matrix ternary factorization, utilizes QR decomposition to iteratively compute the first element of a matrix. The method has identified 1 singular value and its left and right singular vectors, and has been successfully applied to matrix data recovery, attracting widespread attention from many scholars.

[0005] Assumption It is a real matrix with rank . CSVDQR calculates the first part of the matrix through the following iterations. One singular value:

[0006]

[0007] in, and It is a column orthogonal matrix. It is a regular square array; This indicates that qr decomposition is used for extraction. Determine the orthogonal basis and save it as The meaning of formula (3) can be deduced by analogy.

[0008] Qing Liu et al. proved in detail in their paper the matrix in formula (3) It converges to a diagonal matrix, and ,in, It is a matrix The There are several singular values. The CSVDQR algorithm still has some significant shortcomings:

[0009] 1) The CSVDQR algorithm is a serial algorithm with low parallel or asynchronous execution capabilities and limited computational efficiency;

[0010] 2) The CSVDQR algorithm requires a large number of iterations, and the computational cost of a single iteration is relatively high.

[0011] Given the aforementioned problems, the CSVDQR algorithm is unsuitable for processing singular value decomposition and computation of high-dimensional or large-scale data. Especially in big data environments, the CSVDQR algorithm increasingly fails to meet practical needs. This invention proposes a completely asynchronous, CPU-based algorithm for calculating the singular values ​​and singular vectors of matrices, independent of GPU hardware, significantly improving computational efficiency. Summary of the Invention

[0012] This invention provides a pure CPU asynchronous computation method for matrix singular values ​​based on row-blocking and cooperative iteration, solving the technical problems of low parallelization and insufficient computational efficiency in traditional SVD algorithms. Addressing the aforementioned issues of the CSVDQR algorithm, this invention proposes a pure CPU asynchronous computation method for matrix singular values ​​based on row-blocking and cooperative iteration (Block-rowIterative Synchronized SVD, abbreviated as BISSVD).

[0013] This invention provides a pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration (BISSVD), comprising:

[0014] (1) Divide the real matrix into rows into multiple sub-matrices;

[0015] (2) On a multi-core CPU platform, each submatrix is ​​assigned to an independent CPU computing core, and the row / column orthogonal basis matrix of each submatrix is ​​calculated using formulas (1) and (2); the processing tasks of each submatrix can be started and executed independently and asynchronously: there is no data dependency between the tasks. The subsequent calculation steps are only entered after all submatrix tasks are completed;

[0016] (3) Stack the row orthogonal basis matrices of each submatrix obtained in step (2) in the original order, reorganize the row orthogonal basis matrices of the original matrix, and perform QR decomposition iterative calculation on the original matrix (formulas (1) and (2)) to obtain the column orthogonal basis matrix of the original matrix and the optimized row orthogonal basis matrix;

[0017] (4) Perform matrix multiplication with the original matrix using the left and right orthogonal basis matrices obtained in step (3) (Formula (3)) to generate an intermediate matrix D with significantly reduced dimensions;

[0018] (5) Perform singular value decomposition on the intermediate matrix D in step (4) to obtain the singular vector matrix and diagonal matrix of the intermediate matrix;

[0019] (6) Perform matrix multiplication and recombination operations on the matrices obtained in steps (3) and (5) to obtain the original matrix with a preset number of singular values ​​and their corresponding left and right singular vectors.

[0020] The key points of implementing BISSVD can be summarized as follows:

[0021] 1) The number of blocks needs to be set according to the number of available CPU cores on the execution platform to optimize the asynchronous parallel processing capability of each submatrix.

[0022] 2) The number of iterations for the QR decomposition of each submatrix is ​​recommended to be 1, and it can be executed completely asynchronously and in parallel without interference.

[0023] 3) The number of iterations for the approximate singular value decomposition of the intermediate matrix D is different from the number of iterations for the original matrix. The number of iterations for the intermediate matrix is ​​set higher to ensure convergence accuracy.

[0024] 4) The preset number of singular values ​​is a proportion of the total number of singular values ​​in the original matrix. When the matrix has a low-rank structure, the calculation speed and accuracy can be balanced by reducing the number of singular values ​​to be calculated.

[0025] 5) The dimension of the intermediate matrix D is the number of groups multiplied by a preset rank. This dimension is significantly reduced compared to the dimension of the original matrix, making the computational workload of the singular value decomposition of the intermediate matrix much less than that of the direct decomposition of the original matrix.

[0026] This invention provides a pure CPU asynchronous computation system for matrix singular values ​​based on row partitioning and cooperative iteration, characterized in that it includes:

[0027] One or more CPU computing cores are used to receive the assigned submatrix and perform asynchronous parallel QR decomposition iterative calculations;

[0028] A matrix partitioning module is used to divide the input matrix into rows evenly to generate multiple submatrices;

[0029] An orthogonal basis extraction module is used to perform QR decomposition iterations on submatrices asynchronously and in parallel on each CPU computing core to extract the orthogonal basis matrix of the submatrices;

[0030] A dimensionality reduction calculation module is used to calculate an intermediate matrix based on the extracted orthogonal basis matrix, which has a significantly reduced dimension compared to the original matrix;

[0031] A singular value decomposition module is used to perform singular value decomposition on an intermediate matrix to obtain its singular vectors and diagonal matrix;

[0032] A result recombination module is used to recombine the intermediate calculation results by matrix multiplication and output the first preset number of singular values ​​and their singular vectors of the original matrix.

[0033] The beneficial effects of this invention are as follows:

[0034] 1) It has strong asynchronous collaborative execution capabilities, is suitable for multi-core CPU platforms, and can quickly complete the calculation of matrix singular values ​​and singular vectors without the need for expensive GPU hardware support.

[0035] 2) The algorithm uses QR decomposition to complete the main feature extraction work, which has a small computational load and is fast. The speed of QR decomposition is about ten times that of SVD decomposition. The BISSVD algorithm performs QR decomposition on a submatrix with a smaller dimension, so its speed improvement over the original SVD decomposition is very significant.

[0036] 3) The original CSVDQR algorithm requires about 30 iterations to converge and give accurate singular values, which is relatively slow; while the improved BISSVD algorithm calculates the singular values ​​of the original matrix on a smaller dimension submatrix D, which requires fewer iterations and less computation per step, making it faster.

[0037] 4) This invention, by employing a row-blocking strategy and a multi-core CPU asynchronous collaborative computing mechanism, fully utilizes the parallel computing resources of multi-core CPUs to solve the technical problems of strong data dependencies and low parallelization between steps in the traditional SVD algorithm, achieving the following technical effects: First, it significantly improves the computation speed; experimental results show that for a 10000×10000 matrix, the speedup is approximately 11 times compared to the standard Matlab SVD algorithm. Second, through a hierarchical iteration strategy and dimensionality reduction technology, it significantly reduces the computational workload and algorithm convergence time. Third, it requires no GPU hardware support, relying entirely on multi-core CPU asynchronous collaborative computing, significantly reducing hardware costs and deployment complexity. Fourth, it supports flexible adjustment of computational parameters to achieve a balance between accuracy and speed; in particular, for low-rank matrices, computation can be further accelerated by calculating the singular values ​​of the first r%. Fifth, it has no special restrictions on the rank and dimension of the input matrix, and the computational accuracy is consistent with the standard SVD, exhibiting strong universal applicability and wide applicability in fields such as recommendation systems, image processing, and data dimensionality reduction. Attached Figure Description

[0038] Figure 1 This is a flowchart of the pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration according to the present invention;

[0039] Figure 2 This is the matrix of the present invention. Example diagram of dividing a submatrix by row;

[0040] Figure 3 This is a comparison chart of the first 50 singular values ​​obtained by BISSVD in this invention with the SVD decomposition results. Detailed Implementation

[0041] The subject matter described herein will now be discussed with reference to exemplary embodiments. It should be understood that these embodiments are discussed only to enable those skilled in the art to better understand and implement the subject matter described herein, and changes may be made to the function and arrangement of the elements discussed without departing from the scope of this specification. Various processes or components may be omitted, substituted, or added as needed in the examples. Furthermore, some features described in the examples may be combined in other examples.

[0042] At least one embodiment of the present invention discloses a pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration, such as... Figure 1 As shown, it includes the following steps:

[0043] Step 1: Divide the input matrix into blocks by row.

[0044] Let the input matrix be ,in , . Matrix Divide into rows evenly. Submatrices, of which , No. The submatrix is ​​denoted as , .for submatrix The number of rows is ;

[0045] For the last submatrix Its number of rows is .

[0046] Figure 2 matrix Example diagram of dividing a matrix into submatrices by row.

[0047] Step 2: Asynchronously and in parallel extract the row orthogonal basis of each submatrix.

[0048] On a multi-core CPU platform, Submatrix ( These are distributed to independent CPU core nodes. For each submatrix... Iterative calculations are performed to extract its row orthogonal basis, and the specific operation can be represented as follows:

[0049]

[0050] Here, CSVQR means CSVDQR that does not calculate submatrix D and only outputs L and R. Submatrix The estimated rank is determined, and the number of iterations is set to 1. This operation processes each submatrix using the QR decomposition iterative algorithm to obtain the submatrixes. column orthogonal matrix and row orthogonal matrix .

[0051] The core computational steps of QR decomposition iteration include: updating the column orthogonal matrix, and performing matrix multiplication. Perform QR decomposition to extract column orthogonal basis; update the row orthogonal matrix by matrix multiplication. Perform QR decomposition to extract column orthogonal bases.

[0052] The key characteristic of this step is: due to the various submatrices There are no data dependencies between tasks, and all CSVQR computation tasks for submatrices can be dynamically allocated to multiple CPU threads or cores. Tasks do not need to wait synchronously and can be started and executed independently and asynchronously. Subsequent computation tasks only begin synchronously after all subtasks are completed. This mechanism fully utilizes the parallel computing capabilities of multi-core CPUs, avoiding the inefficiency caused by the serial execution of the entire matrix processing process in traditional SVD algorithms.

[0053] It should be noted that, in this embodiment of the application, in order to further accelerate the calculation speed, the number of blocks can be adjusted according to the number of CPU cores and the matrix dimension. Optimize the selection. Number of blocks Increasing the number of blocks reduces the dimension of each submatrix, thus reducing the computational cost of a single CSVQR task. However, excessive block size increases the computational complexity in subsequent steps. Experiments show that when the number of blocks... The computational efficiency is optimal when the number of available CPU cores is similar.

[0054] Step 3: Reorganize the row orthogonal basis matrix, and calculate the column orthogonal basis matrix and intermediate matrix D of the original matrix.

[0055] The row orthogonal matrix of each submatrix obtained in step 2 Stack the matrices in their original order to reorganize the original matrix. Row orthogonal basis matrix:

[0056]

[0057] Then, using the reorganized row orthogonal basis matrix Original matrix and estimated rank As input, continue the QR decomposition iterative calculation to obtain the original matrix. column orthogonal basis matrix and the optimized row orthogonal basis matrix This operation is represented as:

[0058]

[0059] The number of iterations is set to 1. This is used to obtain the column orthogonal basis matrix. and row orthogonal basis matrix Then, calculate the intermediate matrix. :

[0060]

[0061] Among them, matrix The dimension is .

[0062] In this embodiment of the application, in order to improve the convergence accuracy of the calculation, the original matrix can be... The CSVQR algorithm is iterated multiple times. The number of iterations is set to [number]. Its value can be adjusted according to the required precision, and is usually set to an integer value between 2 and 5. Increasing the number of iterations will improve the precision of the final singular value, but will also increase the computational load.

[0063] Step 4: Calculate the singular values ​​and singular vectors of the intermediate matrix D.

[0064] The intermediate matrix obtained in step 3 Perform singular value decomposition. Because... Dimensions of a matrix Relative to the original matrix Dimensions To significantly reduce the singularity, the CSVDQR algorithm can be used for sufficient iterations to obtain accurate singular values ​​and singular vectors. This operation is represented as:

[0065]

[0066] The number of iterations is set to 10 to ensure sufficient convergence. This step involves processing a small-dimensional matrix... By performing more iterations, the column orthogonal matrix after decomposition can be obtained. diagonal matrix and row orthogonal matrix .

[0067] It should be noted that, due to the matrix The dimension of the decomposer is much smaller than that of the original matrix, so even with 10 iterations, the CPU time consumed in this step is still very short. This is one of the key advantages of this implementation method compared to directly performing CSVDQR decomposition on the entire original matrix. Users can adjust the number of iterations appropriately according to their accuracy requirements; typically, a number of iterations between 8 and 12 yields good accuracy.

[0068] Step 5: Reorganize the front of the original matrix Each singular value and its corresponding singular vector.

[0069] Based on the intermediate results obtained in steps 1 to 4, the original matrix is ​​reconstructed through matrix multiplication. The former A singular value and its corresponding left and right singular vectors. Matrix The approximate SVD decomposition is expressed as:

[0070]

[0071] Among them, matrix Left singular vector matrix for:

[0072]

[0073] matrix The right singular vector matrix for:

[0074]

[0075] matrix The A singular value for:

[0076]

[0077] in Representation matrix The OK, This represents the Frobenius norm. From this, we can obtain the matrix. The former There are 1 singular value and its corresponding left and right singular vectors.

[0078] In this embodiment, the number of singular values ​​to be calculated can be flexibly set according to specific application requirements. By reducing the number of singular values ​​to be calculated, the overall execution speed of the algorithm can be further accelerated. For example, when the matrix has a clear low-rank structure, only the first few singular values ​​need to be calculated. arrive The singular values ​​can meet the accuracy requirements of the application, and the execution speed of the entire algorithm will be significantly accelerated compared to calculating all singular values.

[0079] Before calculating the matrix Based on the analysis of singular values ​​and their error accuracy, experimental results using over 1000 real-world image datasets demonstrate that the BISSVD algorithm can accurately calculate the first element of the matrix. The image is reconstructed by taking a number of singular values.

[0080] make BISSVD calculates the first 100 singular values ​​of image A and compares the result with the singular values ​​obtained from SVD decomposition. It can be seen that the first 100 singular values ​​calculated by BISSVD are highly consistent with those obtained from SVD decomposition. This demonstrates that the BISSVD algorithm can accurately calculate the first few larger singular values ​​of the matrix. Furthermore, the BISSVD algorithm can also reconstruct an approximate image of the original image using the left singular vector and singular values.

[0081] To compare the speed of the BISSVD algorithm and the SVD algorithm, we magnified the image to obtain images of different dimensions. Then, we compared the BISSVD algorithm with the SVD algorithm in MATLAB. The main results are shown in Table 1.

[0082] Table 3. Comparison of CPU time between BISSVD and SVD algorithms:

[0083]

[0084] Because the image matrix has a low-rank eigenstructure, BISSVD only calculates the first 20% of the larger singular values ​​of the matrix, i.e., t = m * 20%.

[0085] Table 1 shows that the BISSVD algorithm proposed in this invention is significantly faster than MATLAB's SVD algorithm, with a substantial speedup. For matrices with dimensions less than 5000*5000, the speedup ratio is between 2 and 5; for high-dimensional matrices with dimensions of 10000*10000, the speedup ratio is even more significant, approximately 11. As the dimension increases, the speed difference between the two algorithms becomes even more pronounced.

[0086] Figure 3 This is a comparison chart of the first 50 singular values ​​obtained from BISSVD and the results of SVD decomposition.

[0087] This implementation method effectively overcomes the low computational efficiency of the traditional SVD algorithm by employing a row-blocking strategy and a multi-core CPU asynchronous collaborative computing mechanism. The main technical effects are as follows:

[0088] Effect 1: Fully utilizes multi-core CPU resources, significantly improving computation speed. By using a row-based partitioning strategy, the original matrix is ​​decomposed into multiple smaller-dimensional sub-matrices, allowing the row orthogonal basis extraction operation for each sub-matrix to be executed asynchronously and in parallel on different computing cores of a multi-core CPU platform. Since the sub-matrices have no data dependencies, computational tasks can be started and executed independently and asynchronously, without frequent global synchronization waits. This mechanism effectively overcomes the problem of strong data dependencies and difficulty in parallelization in traditional SVD algorithms during computation. Experimental results show that on a standard computer platform (CPU: i9-12900H, memory: 32GB), for a matrix with a dimension of 10000×10000, this method achieves a speedup of approximately 11 times compared to the standard Matlab SVD algorithm; for a matrix with a dimension of 5000×5000, the speedup is approximately 3.9 times.

[0089] Effect 2: Reduces the computational cost of single-step iterations and accelerates algorithm convergence. In this implementation, the CSVQR calculation for each submatrix in step 2 is set to only one iteration, allowing the row orthogonal basis of each submatrix to be extracted in a single iteration. Furthermore, in step 4, only the intermediate matrix with significantly reduced dimensionality is processed. (dimension is) Instead of performing numerous iterations on the entire original matrix, this method performs CSVDQR iterations on a matrix typically ranging from hundreds to thousands. This design effectively shifts the computation from a high-dimensional space to a low-dimensional space, significantly reducing the overall computational workload while maintaining accuracy. Compared to the CSVDQR algorithm, which requires approximately 30 iterations to converge, this method significantly reduces the number of iterations while maintaining the same accuracy requirements by optimizing the iteration strategy.

[0090] Effect 3: Reduced application costs due to independence from GPU hardware. This implementation method is entirely based on asynchronous collaborative computing using multi-core CPUs, requiring no GPU hardware support and can run directly on standard computer platforms. This effectively overcomes the dependence of GPU-accelerated SVD implementations on expensive hardware, significantly reducing the hardware, deployment, and subsequent maintenance costs of the algorithm application. This makes the technology more widely applicable and valuable for wider promotion.

[0091] Effect 4: Flexible adjustment of calculation parameters to achieve a balance between accuracy and speed. This implementation method allows users to flexibly set the following parameters: the number of singular values ​​to be calculated. Number of matrix blocks Number of iterations in each step , and Users can flexibly adjust these parameters according to specific application scenarios and accuracy requirements, striking a balance between computational accuracy and speed. Experimental results show that when only the first 20% of the singular values ​​of the matrix are calculated, this method can achieve accuracy close to that of standard SVD (taking a 512×512×3D image as an example, the reconstruction error is approximately...). This method also significantly reduces computation time compared to computing all singular values. This allows it to achieve optimal performance in various application scenarios.

[0092] Effect 5: Strong versatility. This implementation method is based on the mature QR decomposition algorithm and has no special restrictions on the rank, dimension, etc., of the input matrix, making it applicable to the singular value calculation of various real matrices. Furthermore, the singular values ​​obtained by this method are essentially consistent with the results of standard SVD decomposition, achieving a convergence accuracy of [insert accuracy here]. It can be used in applications that widely adopt SVD, thereby replacing or accelerating existing standard SVD computations.

[0093] The embodiments of the present invention have been described above. However, the embodiments are not limited to the specific implementation methods described above. The specific implementation methods described above are merely illustrative and not restrictive. Those skilled in the art can make more equivalent embodiments under the guidance of the present embodiments, and all of them are within the protection scope of the present embodiments.

Claims

1. A pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration, characterized in that, Includes the following steps: (1) Divide the real matrix into rows into multiple sub-matrices; (2) On a multi-core CPU platform, each submatrix is ​​assigned to an independent CPU computing core. QR decomposition is performed on each submatrix to extract the column orthogonal basis matrix and row orthogonal basis matrix of each submatrix. The processing tasks of each submatrix can be started and executed independently and asynchronously. There is no data dependency between the tasks. The subsequent calculation steps are only entered after all the submatrix tasks are completed. (3) Stack the row orthogonal basis matrices of each submatrix obtained in step (2) in the original order, reorganize the row orthogonal basis matrices of the original matrix, and perform QR decomposition iterative calculation on the original matrix to obtain the column orthogonal basis matrix of the original matrix and the optimized row orthogonal basis matrix. (4) Perform matrix multiplication with the original matrix using the left and right orthogonal basis matrices obtained in step (3) to generate an intermediate matrix with significantly reduced dimensions; (5) Perform singular value decomposition on the intermediate matrix in step (4) to obtain the singular vector matrix and diagonal matrix of the intermediate matrix; (6) Perform matrix multiplication and recombination operations on the matrices obtained in steps (3) and (5) to obtain the original matrix with a preset number of singular values ​​and their corresponding left and right singular vectors.

2. The pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration according to claim 1, characterized in that, The number of blocks is related to the number of available computing cores in the CPU, which optimizes the asynchronous parallel processing capability of each submatrix.

3. The pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration according to claim 1, characterized in that, The QR decomposition iteration of each submatrix has a loop count of 1, so that each submatrix can be extracted into a row orthogonal basis in only one iteration.

4. The pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration according to claim 1, characterized in that, The number of iterations for the QR decomposition of the original matrix can be adjusted according to the accuracy requirements. The number of iterations for the singular value decomposition of the intermediate matrix is ​​different from that of the original matrix. The number of iterations for the intermediate matrix is ​​set higher to ensure convergence accuracy.

5. The pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration according to claim 1, characterized in that, The preset number of singular values ​​is a proportion of the total number of singular values ​​in the original matrix. When the matrix has a low-rank structure, the calculation speed and accuracy can be balanced by reducing the number of singular values ​​to be calculated.

6. The pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration according to claim 1, characterized in that, The dimension of the intermediate matrix is ​​the product of a preset rank and a preset rank. This dimension is significantly reduced compared to the dimension of the original matrix, making the computational workload of the singular value decomposition of the intermediate matrix much less than that of the direct decomposition of the original matrix.

7. The pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration according to any one of claims 1 to 6, characterized in that, The matrix multiplication operations in steps (2) to (6) are all implemented using the QR decomposition algorithm, which significantly improves the computation speed compared to the SVD decomposition algorithm.

8. The pure CPU asynchronous computation method for matrix singular values ​​based on row partitioning and cooperative iteration according to claim 1, characterized in that, The left singular vector of the matrix is ​​generated by multiplying the column orthogonal basis matrix in step (3) and the left singular vector matrix in step (5); the right singular vector of the matrix is ​​generated by multiplying the right singular vector matrix in step (5) and the row orthogonal basis matrix in step (3).

9. A pure CPU asynchronous computation system for matrix singular value calculation based on row partitioning and cooperative iteration, used to execute the pure CPU asynchronous computation method for matrix singular value calculation based on row partitioning and cooperative iteration as described in any one of claims 1 to 8, characterized in that, include: One or more CPU computing cores are used to receive the assigned submatrix and perform asynchronous parallel QR decomposition iterative calculations; A matrix partitioning module is used to divide the input matrix into rows evenly to generate multiple submatrices; An orthogonal basis extraction module is used to perform QR decomposition iterations on submatrices asynchronously and in parallel on each CPU computing core to extract the orthogonal basis matrix of the submatrices; A dimensionality reduction calculation module is used to calculate an intermediate matrix based on the extracted orthogonal basis matrix, which has a significantly reduced dimension compared to the original matrix; A singular value decomposition module is used to perform singular value decomposition on an intermediate matrix to obtain its singular vectors and diagonal matrix; A result recombination module is used to recombine the intermediate calculation results by matrix multiplication and output the first preset number of singular values ​​and their singular vectors of the original matrix.