Designing efficient parallel algorithms: Techniques and applications

Gregory Edward Shannon, Purdue University

Abstract

The techniques necessary to design efficient parallel graph algorithms have proven to be quite different from those for sequential ones. Discovering and analyzing such new techniques has led to a deeper understanding of the structure of graph problems. We consider how to design parallel algorithms with linear speed-ups for problems on sparse graphs. By linear speed-up, we mean p processors use one pth of the time that the fastest known sequential algorithm uses, for a wide range of p. We use the parallel random-access machine model of computation. Though the problems of finding maximal independent sets, vertex colorings, and maximal matchings in graphs have straight-forward linear-time sequential algorithms, they have proven difficult to parallelize. Previous results indicate that these problems are basic to the general understanding of parallelism. We present parallel algorithms with linear (and near-linear) speed-ups for solving these problems on graphs that are planar, of bounded degree, or of bounded genus. We use a unified approach to solve these problems for planar graphs and graphs of bounded genus. Our algorithms are more efficient in time, processors, and space than the other known algorithms for these problems. These techniques and algorithms have recently been used in parallel algorithms for computational geometry, additional vertex-coloring problems, connected components, and edge colorings. In designing a parallel algorithm with a linear speed-up, a major difficulty often is how to efficiently and optimally schedule operations on the available processors. This issue is usually addressed with respect to a specific problem the operations are to solve. We develop problem-independent techniques that efficiently and optimally schedule operations on processors for a broad range of operation sets. These techniques generalize and extend the known problem-dependent scheduling techniques and our design techniques for the planar graph algorithms with linear speed-ups. The problem of finding a depth-first-search tree in an undirected planar graph has also proven difficult to parallelize. We present a new fast linear-processor parallel algorithm for depth-first-search in planar graphs. Our algorithm uses less time and fewer processors than the other known parallel algorithms for this problem.

Degree

Ph.D.

Advisors

Frederickson, Purdue University.

Subject Area

Computer science

Off-Campus Purdue Users:
To access this dissertation, please log in to our
proxy server
.

Share

COinS