Parallel Complexity of Linear System Solution


Book Description

This book presents the most important parallel algorithms for the solution of linear systems. Despite the evolution and significance of the field of parallel solution of linear systems, no book is completely dedicated to the subject. People interested in the themes covered by this book belong to two different groups: numerical linear algebra and theoretical computer science, and this is the first effort to produce a useful tool for both. The book is organized as follows: after introducing the general features of parallel algorithms and the most important models of parallel computation, the authors analyze the complexity of solving linear systems in the circuit, PRAM, distributed, and VLSI models. The approach covers both the general case (i.e. dense linear systems without structure) and many important special cases (i.e. banded, sparse, Toeplitz, circulant linear systems).




Parallel Complexity Of Linear System Solution


Book Description

This book presents the most important parallel algorithms for the solution of linear systems. Despite the evolution and significance of the field of parallel solution of linear systems, no book is completely dedicated to the subject. People interested in the themes covered by this book belong to two different groups: numerical linear algebra and theoretical computer science, and this is the first effort to produce a useful tool for both. The book is organized as follows: after introducing the general features of parallel algorithms and the most important models of parallel computation, the authors analyze the complexity of solving linear systems in the circuit, PRAM, distributed, and VLSI models. The approach covers both the general case (i.e. dense linear systems without structure) and many important special cases (i.e. banded, sparse, Toeplitz, circulant linear systems).







Parallel Computations


Book Description

Parallel Computations focuses on parallel computation, with emphasis on algorithms used in a variety of numerical and physical applications and for many different types of parallel computers. Topics covered range from vectorization of fast Fourier transforms (FFTs) and of the incomplete Cholesky conjugate gradient (ICCG) algorithm on the Cray-1 to calculation of table lookups and piecewise functions. Single tridiagonal linear systems and vectorized computation of reactive flow are also discussed. Comprised of 13 chapters, this volume begins by classifying parallel computers and describing techniques for performing matrix operations on them. The reader is then introduced to FFTs and the tridiagonal linear system as well as the ICCG method. Different versions of the conjugate gradient method for solving the time-dependent diffusion equation are considered. Subsequent chapters deal with two- and three-dimensional fluid flow calculations, paying particular attention to the principal issues in designing efficient numerical methods for hydrodynamic calculations; the decisions that a numerical modeler must make to optimize chemically reactive flow simulations; and how to handle disk-to-core data transfer and storage allocation for the solution of the implicit equations for three-dimensional flows. The book also describes the time-split finite difference scheme for solving the two-dimensional Navier-Stokes equation for flows through slotted nozzles. Finally, the large-scale stimulation of plasmas, as carried out on a small computer with an array processor, is discussed. This monograph should be of interest to specialists in computer science.




Parallelism in Matrix Computations


Book Description

This book is primarily intended as a research monograph that could also be used in graduate courses for the design of parallel algorithms in matrix computations. It assumes general but not extensive knowledge of numerical linear algebra, parallel architectures, and parallel programming paradigms. The book consists of four parts: (I) Basics; (II) Dense and Special Matrix Computations; (III) Sparse Matrix Computations; and (IV) Matrix functions and characteristics. Part I deals with parallel programming paradigms and fundamental kernels, including reordering schemes for sparse matrices. Part II is devoted to dense matrix computations such as parallel algorithms for solving linear systems, linear least squares, the symmetric algebraic eigenvalue problem, and the singular-value decomposition. It also deals with the development of parallel algorithms for special linear systems such as banded ,Vandermonde ,Toeplitz ,and block Toeplitz systems. Part III addresses sparse matrix computations: (a) the development of parallel iterative linear system solvers with emphasis on scalable preconditioners, (b) parallel schemes for obtaining a few of the extreme eigenpairs or those contained in a given interval in the spectrum of a standard or generalized symmetric eigenvalue problem, and (c) parallel methods for computing a few of the extreme singular triplets. Part IV focuses on the development of parallel algorithms for matrix functions and special characteristics such as the matrix pseudospectrum and the determinant. The book also reviews the theoretical and practical background necessary when designing these algorithms and includes an extensive bibliography that will be useful to researchers and students alike. The book brings together many existing algorithms for the fundamental matrix computations that have a proven track record of efficient implementation in terms of data locality and data transfer on state-of-the-art systems, as well as several algorithms that are presented for the first time, focusing on the opportunities for parallelism and algorithm robustness.




Introduction to Parallel and Vector Solution of Linear Systems


Book Description

Although the origins of parallel computing go back to the last century, it was only in the 1970s that parallel and vector computers became available to the scientific community. The first of these machines-the 64 processor llliac IV and the vector computers built by Texas Instruments, Control Data Corporation, and then CRA Y Research Corporation-had a somewhat limited impact. They were few in number and available mostly to workers in a few government laboratories. By now, however, the trickle has become a flood. There are over 200 large-scale vector computers now installed, not only in government laboratories but also in universities and in an increasing diversity of industries. Moreover, the National Science Foundation's Super computing Centers have made large vector computers widely available to the academic community. In addition, smaller, very cost-effective vector computers are being manufactured by a number of companies. Parallelism in computers has also progressed rapidly. The largest super computers now consist of several vector processors working in parallel. Although the number of processors in such machines is still relatively small (up to 8), it is expected that an increasing number of processors will be added in the near future (to a total of 16 or 32). Moreover, there are a myriad of research projects to build machines with hundreds, thousands, or even more processors. Indeed, several companies are now selling parallel machines, some with as many as hundreds, or even tens of thousands, of processors.




Limits to Parallel Computation


Book Description

This book provides a comprehensive analysis of the most important topics in parallel computation. It is written so that it may be used as a self-study guide to the field, and researchers in parallel computing will find it a useful reference for many years to come. The first half of the book consists of an introduction to many fundamental issues in parallel computing. The second half provides lists of P-complete- and open problems. These lists will have lasting value to researchers in both industry and academia. The lists of problems, with their corresponding remarks, the thorough index, and the hundreds of references add to the exceptional value of this resource. While the exciting field of parallel computation continues to expand rapidly, this book serves as a guide to research done through 1994 and also describes the fundamental concepts that new workers will need to know in coming years. It is intended for anyone interested in parallel computing, including senior level undergraduate students, graduate students, faculty, and people in industry. As an essential reference, the book will be needed in all academic libraries.




Applied Parallel Computing


Book Description

The book provides a practical guide to computational scientists and engineers to help advance their research by exploiting the superpower of supercomputers with many processors and complex networks. This book focuses on the design and analysis of basic parallel algorithms, the key components for composing larger packages for a wide range of applications.




Parallel and Distributed Computation: Numerical Methods


Book Description

This highly acclaimed work, first published by Prentice Hall in 1989, is a comprehensive and theoretically sound treatment of parallel and distributed numerical methods. It focuses on algorithms that are naturally suited for massive parallelization, and it explores the fundamental convergence, rate of convergence, communication, and synchronization issues associated with such algorithms. This is an extensive book, which aside from its focus on parallel and distributed algorithms, contains a wealth of material on a broad variety of computation and optimization topics. It is an excellent supplement to several of our other books, including Convex Optimization Algorithms (Athena Scientific, 2015), Nonlinear Programming (Athena Scientific, 1999), Dynamic Programming and Optimal Control (Athena Scientific, 2012), Neuro-Dynamic Programming (Athena Scientific, 1996), and Network Optimization (Athena Scientific, 1998). The on-line edition of the book contains a 95-page solutions manual.




Mathematical Foundations of Computer Science 1998


Book Description

This book constitutes the refereed proceedings of the 23rd International Symposium on the Mathematical Foundations of Computer Science, MFCS'98, held in Brno, Czech Republic, in August 1998. The 71 revised full papers presented were carefully reviewed and selected from a total of 168 submissions. Also included are 11 full invited surveys by prominent leaders in the area. The papers are organized in topical sections on problem complexity; logic, semantics, and automata; rewriting; automata and transducers; typing; concurrency, semantics, and logic; circuit complexity; programming; structural complexity; formal languages; graphs; Turing complexity and logic; binary decision diagrams, etc..