Optimal parallel generation of a computation tree form
ACM Transactions on Programming Languages and Systems (TOPLAS) - Lecture notes in computer science Vol. 174
STOC '86 Proceedings of the eighteenth annual ACM symposium on Theory of computing
Algorithmic Techniques for Computer Vision on a Fine-Grained Parallel Machine
IEEE Transactions on Pattern Analysis and Machine Intelligence
SPAA '89 Proceedings of the first annual ACM symposium on Parallel algorithms and architectures
The APRAM: incorporating asynchrony into the PRAM model
SPAA '89 Proceedings of the first annual ACM symposium on Parallel algorithms and architectures
Matching partition a linked list and its optimization
SPAA '89 Proceedings of the first annual ACM symposium on Parallel algorithms and architectures
An optimal linked list prefix algorithms on a local memory computer
CSC '89 Proceedings of the 17th conference on ACM Annual Computer Science Conference
Scans as Primitive Parallel Operations
IEEE Transactions on Computers
An Optimal Linked List Prefix Algorithm on a Local Memory Computer
IEEE Transactions on Computers
On randomization in sequential and distributed algorithms
ACM Computing Surveys (CSUR)
Parallel integer sorting is more efficient than parallel comparison sorting on exclusive write PRAMs
Proceedings of the tenth annual ACM-SIAM symposium on Discrete algorithms
Efficient Algorithms for List Ranking and for Solving Graph Problems on the Hypercube
IEEE Transactions on Parallel and Distributed Systems
Randomized speed-ups in parallel computation
STOC '84 Proceedings of the sixteenth annual ACM symposium on Theory of computing
Parallel functional programming on recursively defined data via data-parallel recursion
Journal of Functional Programming
Algorithms and theory of computation handbook
More efficient parallel integer sorting
FAW-AAIM'12 Proceedings of the 6th international Frontiers in Algorithmics, and Proceedings of the 8th international conference on Algorithmic Aspects in Information and Management
Hi-index | 0.01 |
Recent advances in microelectronics have brought closer to feasibility the construction of computers containing thousands (or more) of processing elements. This thesis addresses the question of effective utilization of such processing power. We study the computational complexity of synchronous paarallel computations using a model of computation based on random access machines operating in parallel and sharing a common memory, the P-RAM. Two main areas within the field of parallel computational complexity are investigated. First, we explore the power of the P-RAM model viewed as an abstract computing device. Later, we study techniques for developing efficient algorithms for parallel computers. We are able to give concise characterizations of the power of deterministic and nondeterministic P-RAMS in terms of the more widely known space and time complexity classes for multi-tape Turing machines. Roughly speaking, time-bounded deterministic P-RAMS are equivalent in power to (can accept the same sets as) space-bounded Turing machines, where the time and space bounds differ by at most a polynomial. In the context of comparing models of computation, we consider such polynomial differences in resources to be insignificant. Adding the feature of nondeterminism to the time-bounded P-RAM changes its power to that of a nondeterministic Turing machine with an exponentially higher running time. The later sections of the thesis examine algorithm design techniques for parallel computers. We first develop efficient procedures for some common operations on linked lists and arrays. Given this background, we introduce three techniques that permit the design of parallel algorithms that are efficient in terms of both their time and processor requirements. We illustrate the use of these techniques by presenting time and processor efficient algorithms for three problems, in each case improving upon the best previously known parallel resource bounds. We show how to compute minimum string edit distances, using the technique of pairwise function composition. We describe an algorithm for the off-line MIN that organizes its computation in the form of a complete binary tree. Finally, we present an algorithm for undirected graph connectivity that relies on redundancy in its representation of the input graph.