SPIKE Algorithm
   HOME
*





SPIKE Algorithm
The SPIKE algorithm is a hybrid parallel solver for banded linear systems developed by Eric Polizzi and Ahmed Sameh Overview The SPIKE algorithm deals with a linear system , where is a banded n\times n matrix of bandwidth much less than n, and is an n\times s matrix containing s right-hand sides. It is divided into a preprocessing stage and a postprocessing stage. Preprocessing stage In the preprocessing stage, the linear system is partitioned into a block tridiagonal form : \begin \boldsymbol_1 & \boldsymbol_1\\ \boldsymbol_2 & \boldsymbol_2 & \boldsymbol_2\\ & \ddots & \ddots & \ddots\\ & & \boldsymbol_ & \boldsymbol_ & \boldsymbol_\\ & & & \boldsymbol_p & \boldsymbol_p \end \begin \boldsymbol_1\\ \boldsymbol_2\\ \vdots\\ \boldsymbol_\\ \boldsymbol_p \end = \begin \boldsymbol_1\\ \boldsymbol_2\\ \vdots\\ \boldsymbol_\\ \boldsymbol_p \end. Assume, for the time being, that the diagonal blocks ( with ) are nonsingular. Define a block diagonal matrix :, then is also nonsingul ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Parallel Computing
Parallel computing is a type of computation in which many calculations or processes are carried out simultaneously. Large problems can often be divided into smaller ones, which can then be solved at the same time. There are several different forms of parallel computing: bit-level, instruction-level, data, and task parallelism. Parallelism has long been employed in high-performance computing, but has gained broader interest due to the physical constraints preventing frequency scaling.S.V. Adve ''et al.'' (November 2008)"Parallel Computing Research at Illinois: The UPCRC Agenda" (PDF). Parallel@Illinois, University of Illinois at Urbana-Champaign. "The main techniques for these performance benefits—increased clock frequency and smarter but increasingly complex architectures—are now hitting the so-called power wall. The computer industry has accepted that future performance increases must largely come from increasing the number of processors (or cores) on a die, rather than m ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Iterative Refinement
Iterative refinement is an iterative method proposed by James H. Wilkinson to improve the accuracy of numerical solutions to systems of linear equations. When solving a linear system \,\mathrm \, \mathbf = \mathbf \,, due to the compounded accumulation of Round-off error, rounding errors, the computed solution \hat may sometimes deviate from the exact solution \mathbf_\star\,. Starting with \mathbf_1 = \hat\,, iterative refinement computes a sequence \ which converges to \mathbf_\star\,, when certain assumptions are met. Description For m = 1, 2, 3, ...\,, the th iteration of iterative refinement consists of three steps: : The crucial reasoning for the refinement algorithm is that although the solution for in step (ii) may indeed be troubled by similar errors as the first solution, \hat\mathbf, the calculation of the residual in step (i), in comparison, is numerically nearly exact: You may not know the right answer very well, but you know quite accurately just how f ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


ResearchGate
ResearchGate is a European commercial social networking site for scientists and researchers to share papers, ask and answer questions, and find collaborators. According to a 2014 study by ''Nature'' and a 2016 article in ''Times Higher Education'', it is the largest academic social network in terms of active users, although other services have more registered users, and a 2015–2016 survey suggests that almost as many academics have Google Scholar profiles. While reading articles does not require registration, people who wish to become site members need to have an email address at a recognized institution or to be manually confirmed as a published researcher in order to sign up for an account. Members of the site each have a user profile and can upload research output including papers, data, chapters, negative results, patents, research proposals, methods, presentations, and software source code. Users may also follow the activities of other users and engage in discussions with th ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the developers of the x86 series of instruction sets, the instruction sets found in most personal computers (PCs). Incorporated in Delaware, Intel ranked No. 45 in the 2020 ''Fortune'' 500 list of the largest United States corporations by total revenue for nearly a decade, from 2007 to 2016 fiscal years. Intel supplies microprocessors for computer system manufacturers such as Acer, Lenovo, HP, and Dell. Intel also manufactures motherboard chipsets, network interface controllers and integrated circuits, flash memory, graphics chips, embedded processors and other devices related to communications and computing. Intel (''int''egrated and ''el''ectronics) was founded on July 18, 1968, by semiconductor pioneers Gordon Moore (of Moore's law) and Robert Noyce ( ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Algebraic Connectivity
The algebraic connectivity (also known as Fiedler value or Fiedler eigenvalue after Miroslav Fiedler) of a graph ''G'' is the second-smallest eigenvalue (counting multiple eigenvalues separately) of the Laplacian matrix of ''G''. This eigenvalue is greater than 0 if and only if ''G'' is a connected graph. This is a corollary to the fact that the number of times 0 appears as an eigenvalue in the Laplacian is the number of connected components in the graph. The magnitude of this value reflects how well connected the overall graph is. It has been used in analyzing the robustness and synchronizability of networks. Properties The truncated icosahedron or Buckminsterfullerene graph has a traditional connectivity (graph theory)">connectivity of 3, and an algebraic connectivity of 0.243. The algebraic connectivity of undirected graphs with nonnegative weights, a(G)\geq0 with the inequality being strict if and only if G is connected. However, the algebraic connectivity can be negativ ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Biconjugate Gradient Stabilized Method
In numerical linear algebra, the biconjugate gradient stabilized method, often abbreviated as BiCGSTAB, is an iterative method developed by H. A. van der Vorst for the numerical solution of nonsymmetric linear systems. It is a variant of the biconjugate gradient method (BiCG) and has faster and smoother convergence than the original BiCG as well as other variants such as the conjugate gradient squared method (CGS). It is a Krylov subspace method. Unlike the original BiCG method, it doesn't require multiplication by the transpose of the system matrix. Algorithmic steps Unpreconditioned BiCGSTAB To solve a linear system , BiCGSTAB starts with an initial guess and proceeds as follows: # # Choose an arbitrary vector such that , e.g., . denotes the dot product of vectors # # # For ## ## ## ## ## ## ## If is accurate enough, then set and quit ## ## ## ## ## If is accurate enough, then quit ## Preconditioned BiCGSTAB Preconditioners are usually used to accelerat ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Block LU Decomposition
In linear algebra, a Block LU decomposition is a matrix decomposition of a block matrix into a lower block triangular matrix ''L'' and an upper block triangular matrix ''U''. This decomposition is used in numerical analysis to reduce the complexity of the block matrix formula. Block LDU decomposition : \begin A & B \\ C & D \end = \begin I & 0 \\ C A^ & I \end \begin A & 0 \\ 0 & D-C A^ B \end \begin I & A^ B \\ 0 & I \end Block Cholesky decomposition Consider a block matrix: : \begin A & B \\ C & D \end = \begin I \\ C A^ \end \,A\, \begin I & A^B \end + \begin 0 & 0 \\ 0 & D-C A^ B \end, where the matrix \beginA\end is assumed to be non-singular, \beginI\end is an identity matrix with proper dimension, and \begin0\end is a matrix whose elements are all zero. We can also rewrite the above equation using the half matrices: : \begin A & B \\ C & D \end = \begin A^ \\ C A^ \end \begin A^ & A^B \end + \begin 0 & 0 \\ 0 & Q^ \end \begin 0 & 0 \\ 0 & Q^ \end , where the S ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


ScaLAPACK
The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. It is currently written in a Single-Program-Multiple-Data style using explicit message passing for interprocessor communication. It assumes matrices are laid out in a two-dimensional block cyclic decomposition. ScaLAPACK is designed for heterogeneous computing and is portable on any computer that supports MPI or PVM. ScaLAPACK depends on PBLAS operations in the same way LAPACK depends on BLAS. As of version 2.0 the code base directly includes PBLAS and BLACS and has dropped support for PVM. Examples *Programming with Big Data in R fully utilizes ScaLAPACK and two-dimensional block cyclic decomposition for Big Data Though used sometimes loosely partly because of a lack of formal definition, the interpretation that seems to best describe Big data is the one associated with large body of information that we could not comprehend when used o ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Machine Epsilon
Machine epsilon or machine precision is an upper bound on the relative approximation error due to rounding in floating point arithmetic. This value characterizes computer arithmetic in the field of numerical analysis, and by extension in the subject of computational science. The quantity is also called macheps and it has the symbols Greek epsilon \varepsilon. There are two prevailing definitions. In numerical analysis, machine epsilon is dependent on the type of rounding used and is also called unit roundoff, which has the symbol bold Roman u. However, by a less formal, but more widely-used definition, machine epsilon is independent of rounding method and may be equivalent to u or 2u. Values for standard hardware arithmetics The following table lists machine epsilon values for standard floating-point formats. Each format uses round-to-nearest. Formal definition ''Rounding'' is a procedure for choosing the representation of a real number in a floating point number system. ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

LU Decomposition
In numerical analysis and linear algebra, lower–upper (LU) decomposition or factorization factors a matrix as the product of a lower triangular matrix and an upper triangular matrix (see matrix decomposition). The product sometimes includes a permutation matrix as well. LU decomposition can be viewed as the matrix form of Gaussian elimination. Computers usually solve square systems of linear equations using LU decomposition, and it is also a key step when inverting a matrix or computing the determinant of a matrix. The LU decomposition was introduced by the Polish mathematician Tadeusz Banachiewicz in 1938. Definitions Let ''A'' be a square matrix. An LU factorization refers to the factorization of ''A'', with proper row and/or column orderings or permutations, into two factors – a lower triangular matrix ''L'' and an upper triangular matrix ''U'': : A = LU. In the lower triangular matrix all elements above the diagonal are zero, in the upper triangular matrix, all the e ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


LAPACK
LAPACK ("Linear Algebra Package") is a standard software library for numerical linear algebra. It provides routines for solving systems of linear equations and linear least squares, eigenvalue problems, and singular value decomposition. It also includes routines to implement the associated matrix factorizations such as LU, QR, Cholesky and Schur decomposition. LAPACK was originally written in FORTRAN 77, but moved to Fortran 90 in version 3.2 (2008). The routines handle both real and complex matrices in both single and double precision. LAPACK relies on an underlying BLAS implementation to provide efficient and portable computational building blocks for its routines. LAPACK was designed as the successor to the linear equations and linear least-squares routines of LINPACK and the eigenvalue routines of EISPACK. LINPACK, written in the 1970s and 1980s, was designed to run on the then-modern vector computers with shared memory. LAPACK, in contrast, was designed to effectivel ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Iterative Method
In computational mathematics, an iterative method is a Algorithm, mathematical procedure that uses an initial value to generate a sequence of improving approximate solutions for a class of problems, in which the ''n''-th approximation is derived from the previous ones. A specific implementation of an iterative method, including the Algorithm#Termination, termination criteria, is an algorithm of the iterative method. An iterative method is called convergent if the corresponding sequence converges for given initial approximations. A mathematically rigorous convergence analysis of an iterative method is usually performed; however, heuristic-based iterative methods are also common. In contrast, direct methods attempt to solve the problem by a finite sequence of operations. In the absence of rounding errors, direct methods would deliver an exact solution (for example, solving a linear system of equations A\mathbf=\mathbf by Gaussian elimination). Iterative methods are often the only cho ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]