Pipelining computations in a tree of processors
S. Rao Kosaraju · 1989
The computational power of a tree of processors is investigated. It is demonstrated that a tree of processors can solve certain problems impressively fast by exploiting the internal pipelining capabilities. Efficient tree algorithms are designed for two different problems: selection and maintaining dictionaries. It is shown that an O(log n)-height tree of processors can find the kth smallest element of n numbers in deterministic O((log n)/sup 2+o(1)/) steps, an impressive improvement over previous results. The main tools are the development of a new sampling technique and an elegant internal pipelining strategy. A lower bound is established for this selection problem. Another variant of the sampling technique reduces the storage requirement of R.M. Karp et al.'s (1986) tree searching algorithm while maintaining its speed. It is established that dictionary operations can be performed with a pipelined interval of O(1) and a response time of O(height of the tree), which again improves a known result and settles an open problem. This is based on being able to make the tree operate like a complete tree view from the root.>