Results 11 - 20
of
32
Structural Parallel Algorithmics
, 1991
"... The first half of the paper is a general introduction which emphasizes the central role that the PRAM model of parallel computation plays in algorithmic studies for parallel computers. Some of the collective knowledge-base on non-numerical parallel algorithms can be characterized in a structural way ..."
Abstract
-
Cited by 11 (4 self)
- Add to MetaCart
The first half of the paper is a general introduction which emphasizes the central role that the PRAM model of parallel computation plays in algorithmic studies for parallel computers. Some of the collective knowledge-base on non-numerical parallel algorithms can be characterized in a structural way. Each structure relates a few problems and technique to one another from the basic to the more involved. The second half of the paper provides a bird's-eye view of such structures for: (1) list, tree and graph parallel algorithms; (2) very fast deterministic parallel algorithms; and (3) very fast randomized parallel algorithms. 1 Introduction Parallelism is a concern that is missing from "traditional" algorithmic design. Unfortunately, it turns out that most efficient serial algorithms become rather inefficient parallel algorithms. The experience is that the design of parallel algorithms requires new paradigms and techniques, offering an exciting intellectual challenge. We note that it had...
A Fast Algorithm for Optimal Alignment Between Similar Ordered Trees
- Fundamenta Informaticae
, 2001
"... . We present a fast algorithm for optimal alignment between two similar ordered trees with node labels. Let S and T be two such trees with jSj and jT j nodes, respectively. An optimal alignment between S and T which uses at most d blank symbols can be constructed in O(n log n (maxdeg) 4 d 2 ..."
Abstract
-
Cited by 10 (3 self)
- Add to MetaCart
. We present a fast algorithm for optimal alignment between two similar ordered trees with node labels. Let S and T be two such trees with jSj and jT j nodes, respectively. An optimal alignment between S and T which uses at most d blank symbols can be constructed in O(n log n (maxdeg) 4 d 2 ) time, where n = maxfjSj; jT jg and maxdeg is the maximum degree of a node in S or T . In particular, if the input trees are of bounded degree, the running time is O(n log n d 2 ): 1 Introduction Let R be a rooted tree. R is called a labeled tree if each node of R is labeled by a symbol from a xed nite set . R is an ordered tree if the left-to-right order among siblings in R is given. The problem of determining the similarity between two labeled trees occurs in several dierent areas of computer science. For example, in computational biology, methods for measuring the similarity between ordered labeled trees of bounded degree can be used in the comparison of RNA secondary st...
Improved Sampling with Applications to Dynamic Graph Algorithms.
- Proc. 23rd International Colloquium on Automata, Languages, and Programming (ICALP), LNCS 1099
, 1996
"... . We state a new sampling lemma and use it to improve the running time of dynamic graph algorithms. For the dynamic connectivity problem the previously best randomized algorithm takes expected time O(log 3 n) per update, amortized over\Omega (m) updates. Using the new sampling lemma, we improve it ..."
Abstract
-
Cited by 10 (7 self)
- Add to MetaCart
. We state a new sampling lemma and use it to improve the running time of dynamic graph algorithms. For the dynamic connectivity problem the previously best randomized algorithm takes expected time O(log 3 n) per update, amortized over\Omega (m) updates. Using the new sampling lemma, we improve its running time to O(log 2 n). There exists a lower bound in the cell probe model for the time per operation of\Omega (log n= log log n) for this problem. Similarly improved running times are achieved for 2-edge connectivity, k-weight minimum spanning tree, and bipartiteness. 1 Introduction In this paper we present a new sampling lemma, and use it to improve the running times of various dynamic graph algorithms. We consider the following type of problem: Let S be a set with a subset R ` S. Membership in R may be efficiently tested. For a given parameter r ? 1, either (i) find an element of R, or (ii) guarantee with high probability that the ratio jRj=jSj is at most 1=r, i.e. that rjRj j...
Diffusion: Calculating Efficient Parallel Programs
- IN 1999 ACM SIGPLAN WORKSHOP ON PARTIAL EVALUATION AND SEMANTICS-BASED PROGRAM MANIPULATION (PEPM ’99
, 1999
"... Parallel primitives (skeletons) intend to encourage programmers to build a parallel program from ready-made components for which efficient implementations are known to exist, making the parallelization process easier. However, programmers often suffer from the difficulty to choose a combination of p ..."
Abstract
-
Cited by 8 (7 self)
- Add to MetaCart
Parallel primitives (skeletons) intend to encourage programmers to build a parallel program from ready-made components for which efficient implementations are known to exist, making the parallelization process easier. However, programmers often suffer from the difficulty to choose a combination of proper parallel primitives so as to construct efficient parallel programs. To overcome this difficulty, we shall propose a new transformation, called diffusion, which can efficiently decompose a recursive definition into several functions such that each function can be described by some parallel primitive. This allows programmers to describe algorithms in a more natural recursive form. We demonstrate our idea with several interesting examples. Our diffusion transformation should be significant not only in development of new parallel algorithms, but also in construction of parallelizing compilers.
Thinking in Parallel: Some Basic DataParallel Algorithms and Techniques
- College Park, MD
, 1993
"... PRAM-On-Chip Explicit Multi-Threading (XMT) platform is provided through the XMT home page www.umiacs.umd.edu/users/vishkin/XMT and the class home page. Comments are welcome: please write to me using my last name at umd.edu ..."
Abstract
-
Cited by 6 (1 self)
- Add to MetaCart
PRAM-On-Chip Explicit Multi-Threading (XMT) platform is provided through the XMT home page www.umiacs.umd.edu/users/vishkin/XMT and the class home page. Comments are welcome: please write to me using my last name at umd.edu
Parallelizing An Algorithm For Visibility On Polyhedral Terrain
, 1995
"... The best known output-sensitive sequential algorithm for computing the viewshed on a polyhedral terrain from a given viewpoint was proposed by Katz, Overmars, and Sharir 10 , and achieves time complexity O((k + nff(n)) log n) where n and k are the input and output sizes respectively, and ff() is t ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
The best known output-sensitive sequential algorithm for computing the viewshed on a polyhedral terrain from a given viewpoint was proposed by Katz, Overmars, and Sharir 10 , and achieves time complexity O((k + nff(n)) log n) where n and k are the input and output sizes respectively, and ff() is the inverse Ackermann's function. In this paper, we present a parallel algorithm that is based on the work mentioned above, and achieves O(log 2 n) time complexity, with work complexity O((k + nff(n)) log n) in a CREW PRAM model. This improves on previous parallel complexity while maintaining work efficiency with respect to the best sequential complexity known. Keywords: Terrain visibility, parallel algorithms, CREW PRAM, profile tree 1. Introduction Visibility analysis on terrain is a fundamental problem in computer graphics, navigation, and engineering applications. Several aspects of this problem have been Permanent address: Jet Propulsion Lab, 4800 Oak Grove Dr. MS 168-522, Pasade...
Fast Parallel Algorithms for the Clique Separator Decomposition
, 1990
"... We give an efficient NC algorithm for finding a clique separator decomposition of an arbitrary graph, that is, a series of cliques whose removal disconnects the graph. This algorithm allows one to extend a large body of results which were originally formulated for chordal graphs to other classes of ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
We give an efficient NC algorithm for finding a clique separator decomposition of an arbitrary graph, that is, a series of cliques whose removal disconnects the graph. This algorithm allows one to extend a large body of results which were originally formulated for chordal graphs to other classes of graphs. Our algorithm is optimal to within a polylogarithmic factor of Tarjan's O(mn) time sequential algorithm. The decomposition can also be used to find NC algorithms for some optimization problems on special families of graphs, assuming these problems can be solved in NC for the prime graphs of the decomposition. These optimization problems include: finding a maximum-weight clique, a minimum coloring, a maximum-weight independent set, and a minimum fill-in elimination order. We also give the first parallel algorithms for solving these problems by using the clique separator decomposition. Our maximum-weight independent set algorithm applied to chordal graphs yields the most efficient know...
Sampling to Provide or to Bound: With Applications to Fully Dynamic Graph Algorithms
, 1997
"... In dynamic graph algorithms the following provide-or-bound problem has to be solved quickly: Given a set S containing a subset R and a way of generating random elements from S testing for membership in R, either (i) provide an element of R or (ii) give a (small) upper bound on the size of R that hol ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
In dynamic graph algorithms the following provide-or-bound problem has to be solved quickly: Given a set S containing a subset R and a way of generating random elements from S testing for membership in R, either (i) provide an element of R or (ii) give a (small) upper bound on the size of R that holds with high probability. We give an optimal algorithm for this problem. This algorithm improves the time per operation for various dyamic graph algorithms by a factor of O(log n). For example, it improves the time per update for fully dynamic connectivity from O(log 3 n) to O(log 2 n). 1 Introduction In this paper we present a new sampling lemma, and use it to improve the running times of various fully dynamic graph algorithms. We consider the following provide-or-bound problem: Let S be a set with a subset R ` S. Given (1) an oracle to uniformly sample elements in S, (2) an oracle to test membership in R, and (3) the parameters s = jSj and ` ? 1 either (i) provide an element of R, o...
Parallel and Fast Sequential Algorithms for Undirected Edge Connectivity Augmentation
, 1999
"... In the edge connectivity augmentation problem one wants to find an edge set of minimum total capacity that increases the edge connectivity of a given undirected graph by # . It is a known non-trivial property of the edge connectivity augmentation problem that there is a sequence of edge sets E 1 , E ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
In the edge connectivity augmentation problem one wants to find an edge set of minimum total capacity that increases the edge connectivity of a given undirected graph by # . It is a known non-trivial property of the edge connectivity augmentation problem that there is a sequence of edge sets E 1 , E 2 ,..., such that S i# E optmially increases the connectivity by # , for any integer # . The main result of the paper is that this sequence of edge sets can be divided into O(n) groups such that within one group, all E i are basically the same. Using this result, we improve on the running time of edge connectivity augmentation, as well as we give the first parallel (RNC) augmentation algorithm. We also present new efficient subroutines for finding the so-called extreme sets and the cactus representation of min-cuts required in our algorithms. Augmenting the connectivity of hypergraphs with ordinary edges is known to be structurally harder than that of ordinary graphs. In a weaker version when one exceptional hyperedge is allowed in the augmenting edge set, we derive similar results as for ordinary graphs.
Efficient List Ranking on the Reconfigurable Mesh, with Applications
- Proc. 7th International Symposium on Algorithms and Computation
, 1996
"... Finding a vast array of applications, the list ranking problem has emerged as one of the fundamental techniques in parallel algorithm design. Surprisingly, the best previously-known algorithm to rank a list of n items on a reconfigurable mesh of size n \Theta n was running in O(log n) time. It was ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Finding a vast array of applications, the list ranking problem has emerged as one of the fundamental techniques in parallel algorithm design. Surprisingly, the best previously-known algorithm to rank a list of n items on a reconfigurable mesh of size n \Theta n was running in O(log n) time. It was open for more than eight years to obtain a faster algorithm for this important problem. Our main contribution is to provide the first breakthrough: we propose a deterministic list ranking algorithm that runs in O(log n) time as well as a randomized one running in O(1) expected time, both on a reconfigurable mesh of size n \Theta n. Our results open the door to an entire slew of efficient list-ranking-based algorithms on reconfigurable meshes. Keywords: reconfigurable architectures, reconfigurable meshes, parallel algorithms, list ranking, randomized algorithms, tree computations, Euler tour, interval graphs. 1 Introduction Recent years have seen a flurry of activity in the area of bus-ba...

