Results 1  10
of
20
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 bulksynchronous 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 59 (23 self)
 Add to MetaCart
In this paper, we present deterministic parallel algorithms for the coarse grained multicomputer (CGM) and bulksynchronous 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) 2edge connectivity and biconnectivity (testing and component computation), and (8) cordal graph recognition (finding a perfect elimination ordering). The algorithms for Problems 17 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 38 it is assumed that n p,>0, which is true for all commercially
Parallel Implementation of Algorithms for Finding Connected Components in Graphs
, 1997
"... 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,384processor MasPar MP1 using the language MPL. We present extensive test data on our code. In our previous projects [21, 22, ..."
Abstract

Cited by 25 (1 self)
 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,384processor MasPar MP1 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 finetuning techniques without expending too much effort on optimizing each individual routine. We also handled the issue of implementing virtual processing. In this paper, we describe several algorithms and finetuning techniques that we developed for the problem of finding connected components in parallel; many of the finetuning 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.
The Complexity of Planarity Testing
, 2000
"... We clarify the computational complexity of planarity testing, by showing that planarity testing is hard for L, and lies in SL. This nearly settles the question, since it is widely conjectured that L = SL [25]. The upper bound of SL matches the lower bound of L in the context of (nonuniform) circ ..."
Abstract

Cited by 23 (7 self)
 Add to MetaCart
We clarify the computational complexity of planarity testing, by showing that planarity testing is hard for L, and lies in SL. This nearly settles the question, since it is widely conjectured that L = SL [25]. The upper bound of SL matches the lower bound of L in the context of (nonuniform) circuit complexity, since L/poly is equal to SL/poly. Similarly, we show that a planar embedding, when one exists, can be found in FL SL . Previously, these problems were known to reside in the complexity class AC 1 , via a O(log n) time CRCW PRAM algorithm [22], although planarity checking for degreethree graphs had been shown to be in SL [23, 20].
Using PRAM Algorithms on a UniformMemoryAccess SharedMemory Architecture
 Proc. 5th Int’l Workshop on Algorithm Engineering (WAE 2001), volume 2141 of Lecture Notes in Computer Science
, 2001
"... The ability to provide uniform sharedmemory access to a significant number of processors in a single SMP node brings us much closer to the ideal PRAM parallel computer. In this paper, we develop new techniques for designing a uniform sharedmemory algorithm from a PRAM algorithm and present the res ..."
Abstract

Cited by 20 (11 self)
 Add to MetaCart
The ability to provide uniform sharedmemory access to a significant number of processors in a single SMP node brings us much closer to the ideal PRAM parallel computer. In this paper, we develop new techniques for designing a uniform sharedmemory algorithm from a PRAM algorithm and present the results of an extensive experimental study demonstrating that the resulting programs scale nearly linearly across a significant range of processors (from 1 to 64) and across the entire range of instance sizes tested. This linear speedup with the number of processors is, to our knowledge, the first ever attained in practice for intricate combinatorial problems. The example we present in detail here is a graph decomposition algorithm that also requires the computation of a spanning tree; this problem is not only of interest in its own right, but is representative of a large class of irregular combinatorial problems that have simple and efficient sequential implementations and fast PRAM algorithms, but have no known efficient parallel implementations. Our results thus offer promise for bridging the gap between the theory and practice of sharedmemory parallel algorithms.
A Linear Time Algorithm for Triconnectivity Augmentation (Extended Abstract)
 IN PROC. 32TH ANNUAL IEEE SYMP. ON FOUNDATIONS OF COMP. SCI
, 1991
"... We consider the problem of finding a smallest set of edges whose addition triconnects an undirected graph. This is a fundamental graphtheoretic problem that has applications in designing reliable networks and faulttolerant computing. We present a linear time sequential algorithm for the problem. Th ..."
Abstract

Cited by 16 (5 self)
 Add to MetaCart
We consider the problem of finding a smallest set of edges whose addition triconnects an undirected graph. This is a fundamental graphtheoretic problem that has applications in designing reliable networks and faulttolerant computing. We present a linear time sequential algorithm for the problem. This is a substantial improvement over the best previous algorithm for this problem, which runs in O(n(n+m)²) time on a graph with n vertices and m edges.
On Finding a Smallest Augmentation to Biconnect a Graph
, 1993
"... . We consider the problem of finding a minimum number of edges whose addition biconnects an undirected graph. This problem has been studied by several other researchers, two of whom presented a linear time algorithm for this problem in an earlier volume of this journal. However that algorithm contai ..."
Abstract

Cited by 13 (3 self)
 Add to MetaCart
. We consider the problem of finding a minimum number of edges whose addition biconnects an undirected graph. This problem has been studied by several other researchers, two of whom presented a linear time algorithm for this problem in an earlier volume of this journal. However that algorithm contains an error which we expose in this paper. We present a corrected linear time algorithm for this problem as well as a new efficient parallel algorithm. The parallel algorithm runs in O(log 2 n) time using a linear number of processors on an EREW PRAM, where n is the number of vertices in the input graph. Key words. algorithm, linear time, graph augmentation, biconnected graph, parallel computation, polylog time, EREW PRAM AMS(MOS) subject classifications. 68Q20, 68R10, 94C15, 05C40 This work was supported in part by NSF Grant CCR8910707. This paper appears in SIAM Journal on Computing, 1993, pp. 889912. 1 Introduction The problem of augmenting a graph to reach a certain connectiv...
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 MP1 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 12 (3 self)
 Add to MetaCart
We describe our implementation of several PRAM graph algorithms on the massively parallel computer MasPar MP1 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 recoded and finetuned 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...
Computing Minimal Spanning Subgraphs in Linear Time
, 1995
"... Let P be a property of undirected graphs. We consider the following problem: given a graph G that has property P , find a minimal spanning subgraph of G with property P . We describe general algorithms for this problem and prove their correctness under fairly weak assumptions about P . We establi ..."
Abstract

Cited by 10 (1 self)
 Add to MetaCart
Let P be a property of undirected graphs. We consider the following problem: given a graph G that has property P , find a minimal spanning subgraph of G with property P . We describe general algorithms for this problem and prove their correctness under fairly weak assumptions about P . We establish that the worstcase running time of these algorithms is \Theta(m +n log n) for 2edgeconnectivity and biconnectivity where n and m denote the number of vertices and edges, respectively, in the input graph. By refining the basic algorithms we obtain the first linear time algorithms for computing a minimal 2edgeconnected spanning subgraph and for computing a minimal biconnected spanning subgraph. We also devise general algorithms for computing a minimal spanning subgraph in directed graphs. These algorithms allow us to simplify an earlier algorithm of Gibbons, Karp, Ramachandran, Soroker and Tarjan for computing a minimal strongly connected spanning subgraph. We also provide the ...
Optimal randomized EREW PRAM algorithms for finding spanning forests
 J. Algorithms
, 2000
"... We present the first randomized O(log n) time and O(m+n) work EREW PRAM algorithm for finding a spanning forest of an undirected graph G = (V; E) with n vertices and m edges. Our algorithm is optimal with respect to time, work and space. As a consequence we get optimal randomized EREW PRAM algori ..."
Abstract

Cited by 10 (1 self)
 Add to MetaCart
We present the first randomized O(log n) time and O(m+n) work EREW PRAM algorithm for finding a spanning forest of an undirected graph G = (V; E) with n vertices and m edges. Our algorithm is optimal with respect to time, work and space. As a consequence we get optimal randomized EREW PRAM algorithms for other basic connectivity problems such as finding a bipartite partition, finding bridges and biconnected components, finding Euler tours in Eulerian graphs, finding an ear decomposition, finding an open ear decomposition, finding a strong orientation, and finding an stnumbering.