Publication | Open Access
Parallelization of the pipelined Thomas algorithm
17
Citations
2
References
1998
Year
Thomas AlgorithmEngineeringComputer ArchitectureParallel ImplementationComputational ComplexityParallel MetaheuristicsBackward ComputationsSystems EngineeringParallel ComputingAlgorithmsInstruction-level ParallelismPipelined Thomas AlgorithmComputer EngineeringComputer SciencePipelined Thomas AlgorithmsParallel ProcessingParallel Performance EvaluationParallel ProgrammingData-level Parallelism
In this study the following questions are addressed. Is it possible to improve the parallelization efficiency of the Thomas algorithm? How should the Thomas algorithm be formulated in order to get solved lines that are used as data for other computational tasks while processors are idle? To answer these questions, two-step pipelined algorithms (PAs) are introduced formally. It is shown that the idle processor time is invariant with respect to the order of backward and forward steps in PAs starting from one outermost processor. The advantage of PAs starting from two outermost processors is small. Versions of the pipelined Thomas algorithms considered here fall into the category of PAs. These results show that the parallelization efficiency of the Thomas algorithm cannot be improved directly. However, the processor idle time can be used if some data has been computed by the time processors become idle. To achieve this goal the Immediate Backward pipelined Thomas Algorithm (IB-PTA) is developed in this article. The backward step is computed immediately after the forward step has been completed for the first portion of lines. This enables the completion of the Thomas algorithm for some of these lines before processors become idle. An algorithm for generating a static processor schedule recursively is developed. This schedule is used to switch between forward and backward computations and to control communications between processors. The advantage of the IB-PTA over the basic PTA is the presence of solved lines, which are available for other computations, by the time processors become idle.
| Year | Citations | |
|---|---|---|
Page 1
Page 1