Results 1 -
9 of
9
Efficient parallel graph algorithms for coarse grained multicomputers and BSP (Extended Abstract)
- in Proc. 24th International Colloquium on Automata, Languages and Programming (ICALP'97
, 1997
"... In this paper, we present deterministic parallel algorithms for the coarse grained multicomputer (CGM) and bulk-synchronous parallel computer (BSP) models which solve the following well known graph problems: (1) list ranking, (2) Euler tour construction, (3) computing the connected components and s ..."
Abstract
-
Cited by 55 (23 self)
- Add to MetaCart
In this paper, we present deterministic parallel algorithms for the coarse grained multicomputer (CGM) and bulk-synchronous parallel computer (BSP) models which solve the following well known graph problems: (1) list ranking, (2) Euler tour construction, (3) computing the connected components and spanning forest, (4) lowest common ancestor preprocessing, (5) tree contraction and expression tree evaluation, (6) computing an ear decomposition or open ear decomposition, (7) 2-edge connectivity and biconnectivity (testing and component computation), and (8) cordal graph recognition (finding a perfect elimination ordering). The algorithms for Problems 1-7 require O(log p) communication rounds and linear sequential work per round. Our results for Problems 1 and 2, i.e.they are fully scalable, and for Problems hold for arbitrary ratios n p 3-8 it is assumed that n p,>0, which is true for all commercially
Parallel Algorithms with Optimal Speedup for Bounded Treewidth
- Proceedings 22nd International Colloquium on Automata, Languages and Programming
, 1995
"... We describe the first parallel algorithm with optimal speedup for constructing minimum-width tree decompositions of graphs of bounded treewidth. On n-vertex input graphs, the algorithm works in O((logn)^2) time using O(n) operations on the EREW PRAM. We also give faster parallel algorithms with opti ..."
Abstract
-
Cited by 29 (10 self)
- Add to MetaCart
We describe the first parallel algorithm with optimal speedup for constructing minimum-width tree decompositions of graphs of bounded treewidth. On n-vertex input graphs, the algorithm works in O((logn)^2) time using O(n) operations on the EREW PRAM. We also give faster parallel algorithms with optimal speedup for the problem of deciding whether the treewidth of an input graph is bounded by a given constant and for a variety of problems on graphs of bounded treewidth, including all decision problems expressible in monadic second-order logic. On n-vertex input graphs, the algorithms use O(n) operations together with O(log n log n) time on the EREW PRAM, or O(log n) time on the CRCW PRAM.
Finding Triconnected Components By Local Replacement
, 1993
"... . We present a parallel algorithm for finding triconnected components on a CRCW PRAM. The time complexity of our algorithm is O(log n) and the processor-time product is O((m + n) log log n) where n is the number of vertices, and m is the number of edges of the input graph. Our algorithm, like other ..."
Abstract
-
Cited by 23 (5 self)
- Add to MetaCart
. We present a parallel algorithm for finding triconnected components on a CRCW PRAM. The time complexity of our algorithm is O(log n) and the processor-time product is O((m + n) log log n) where n is the number of vertices, and m is the number of edges of the input graph. Our algorithm, like other parallel algorithms for this problem, is based on open ear decomposition but it employs a new technique, local replacement, to improve the complexity. Only the need to use the subroutines for connected components and integer sorting, for which no optimal parallel algorithm that runs in O(log n) time is known, prevents our algorithm from achieving optimality. 1. Introduction. A connected graph G = (V; E) is k-vertex connected if it has at least (k + 1) vertices and removal of any (k \Gamma 1) vertices leaves the graph connected. Designing efficient algorithms for determining the connectivity of graphs has been a subject of great interest in the last two decades. Applications of graph connect...
Parallel Open Ear Decomposition with Applications to Graph Biconnectivity and Triconnectivity
- Synthesis of Parallel Algorithms
, 1992
"... This report deals with a parallel algorithmic technique that has proved to be very useful in the design of efficient parallel algorithms for several problems on undirected graphs. We describe this method for searching undirected graphs, called "open ear decomposition", and we relate this decompos ..."
Abstract
-
Cited by 21 (9 self)
- Add to MetaCart
This report deals with a parallel algorithmic technique that has proved to be very useful in the design of efficient parallel algorithms for several problems on undirected graphs. We describe this method for searching undirected graphs, called "open ear decomposition", and we relate this decomposition to graph biconnectivity. We present an efficient parallel algorithm for finding this decomposition and we relate it to a sequential algorithm based on depth-first search. We then apply open ear decomposition to obtain an efficient parallel algorithm for testing graph triconnectivity and for finding the triconnnected components of a graph.
Implementation of Parallel Graph Algorithms on a Massively Parallel SIMD Computer with Virtual Processing
, 1995
"... We describe our implementation of several PRAM graph algorithms on the massively parallel computer MasPar MP-1 with 16,384 processors. Our implementation incorporated virtual processing and we present extensive test data. In a previous project [13], we reported the implementation of a set of paralle ..."
Abstract
-
Cited by 10 (3 self)
- Add to MetaCart
We describe our implementation of several PRAM graph algorithms on the massively parallel computer MasPar MP-1 with 16,384 processors. Our implementation incorporated virtual processing and we present extensive test data. In a previous project [13], we reported the implementation of a set of parallel graph algorithms with the constraint that the maximum input size was restricted to be no more than the physical number of processors on the MasPar. The MasPar language MPL that we used for our code does not support virtual processing. In this paper, we describe a method of simulating virtual processors on the MasPar. We re-coded and fine-tuned our earlier parallel graph algorithms to incorporate the usage of virtual processors. Under the current implementation scheme, there is no limit on the number of virtual processors that one can use in the program as long as there is enough main memory to store all the data required during the computation. We also give two general optimization techniq...
An Efficient Parallel Algorithm for the General Planar Monotone Circuit Value Problem
, 1996
"... . A planar monotone circuit (PMC) is a Boolean circuit that can be embedded in the plane and that contains only AND and OR gates. Goldschlager, Cook & Dymond and others have developed NC 2 algorithms to evaluate a special layered form of a PMC. These algorithms require a large number of processors ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
. A planar monotone circuit (PMC) is a Boolean circuit that can be embedded in the plane and that contains only AND and OR gates. Goldschlager, Cook & Dymond and others have developed NC 2 algorithms to evaluate a special layered form of a PMC. These algorithms require a large number of processors(\Omega\Gamma n 6 ), where n is the size of the input circuit). Yang, and more recently, Delcher & Kosaraju have given NC algorithms for the general planar monotone circuit value problem. These algorithms use at least as many processors as the algorithms for the layered case. This paper gives an efficient parallel algorithm that evaluates a general PMC of size n in polylog time using only a linear number of processors on an EREW PRAM. This parallel algorithm is the best possible to within a polylog factor, and is a substantial improvement over the earlier algorithms for the problem. The algorithm uses several novel techniques to perform the evaluation, including the use of the dual of the...
Fast Parallel Algorithm for Finding the kth Longest Path in A Tree
, 1995
"... We present a fast parallel algorithm running in O(log 2 n) time on a CREW PRAM with O(n) processors for nding the kth longest path in a given tree of n vertices (with (n 2) intervertex distances). Our algorithm is obtained by e cient parallelization of a sequential algorithm which isavariant of both ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
We present a fast parallel algorithm running in O(log 2 n) time on a CREW PRAM with O(n) processors for nding the kth longest path in a given tree of n vertices (with (n 2) intervertex distances). Our algorithm is obtained by e cient parallelization of a sequential algorithm which isavariant of both Megiddo et al's algorithm [12] andFredrickson et al's algorithm [3] based on centroid decomposition of tree and succinct representation of the set of intervertex distances. With the same time and space bound as the best known result, our sequential algorithm maintains a shorter length of the decomposition tree. Keywords: Centroid of a tree, decomposition, kth longest path, parallel algorithm, PRAM, selection in ordered matrices.
Finding Connected Components in Graphs
, 1996
"... In this paper, we describe our implementation of several parallel graph algorithms for finding connected components. Our implementation, with virtual processing, is on a 16,384-processor MasPar MP-1 using the language MPL. We present extensive test data on our code. In our previous projects [21, 22, ..."
Abstract
- Add to MetaCart
In this paper, we describe our implementation of several parallel graph algorithms for finding connected components. Our implementation, with virtual processing, is on a 16,384-processor MasPar MP-1 using the language MPL. We present extensive test data on our code. In our previous projects [21, 22, 23], we reported the implementation of an extensible parallel graph algorithms library. We developed general implementation and ne-tuning techniques without expending too much e ort on optimizing each individual routine. We also handled the issue of implementing virtual processing. In this paper, we describe several algorithms and fine-tuning techniques that we developed for the problem of finding connected components in parallel; many of the fine-tuning techniques are of general interest, and should be applicable to code for other problems. We present data on the execution time and memory usage of our various implementations.

