Thesis CV About ... Links
Description
Features
Benchmarks
Download
Installation guide
User guide
Developer guide

Parallel templates for numerical linear algebra, a high performance computation library

Joris Koster


Supervisor:
Dr. R. Bisseling
University of Utrecht
Description: In numerous scientific fields numerical linear algebra is used for validating or solving discretised theoretical models. Pattern matching (e.g. searching in databases), seismology, biology or weather forecasts are some of the numerous fields where numerical algebra is being applied. The discretised models all share the same representation:

Ax=b


where x is the unkown vector, A a matrix representing the discretised model and b the known vector representing the known result or measured sample.

Iterative solver methods can be used to obtain the solution vector x within a given accuracy. During the last years different iterative solvers methods where designed, each method posing different restrictions on the matrix A and exposing a different convergence behaviour. In Templates the restrictions and behaviour of many of these methods are summarized and a general implementation description is given.

The resolution or dimension of the discretised model often determines the accuracy of the desired solution. A larger dimension will generally deliver a more accurate solution. But a larger dimension will often require both a longer computation time and more computer memory. It is often possible to lower the computation time when using multiple processors, i.e. by using a distributed (parallel) implementation of the iterative solver methods. By distributing the problem amongst several processors we can also lower the processor-local memory requirements.

The Parallel template library for nummerical linear algebra enables the construction of linear numerical algebra algorithms by providing an intuitive set of matrix and vector computation routines that can be executed in a distributed or sequential environment. The library was written in C++ using the BSP library for parallel execution.
Thesis CV About ... Links