# Concurrent threads and optimal parallel minimum spanning trees algorithm

@article{Chong2001ConcurrentTA, title={Concurrent threads and optimal parallel minimum spanning trees algorithm}, author={Ka Wong Chong and Yijie Han and Tak Wah Lam}, journal={J. ACM}, year={2001}, volume={48}, pages={297-323} }

This paper resolves a long-standing open problem on whether the concurrent write capability of parallel random access machine (PRAM) is essential for solving fundamental graph problems like connected components and minimum spanning trees in <italic>O</italic>(log<italic>n</italic>) time. Specifically, we present a new algorithm to solve these problems in <italic>O</italic>(log<italic>n</italic>) time using a linear number of processors on the exclusive-read exclusive-write PRAM. The logarithmic…

## 77 Citations

### Parallel Connectivity and Minimum Spanning Trees

- Computer ScienceEncyclopedia of Algorithms
- 2016

Given a weighted undirected graph G with n vertices and m edges, compute a minimum spanning tree (or spanning forest) of G on a parallel random access machine (PRAM) without concurrent write…

### A fast, parallel spanning tree algorithm for symmetric multiprocessors

- Computer Science18th International Parallel and Distributed Processing Symposium, 2004. Proceedings.
- 2004

A new randomized algorithm and implementation with superior performance that for the first-time achieves parallel speedup on arbitrary graphs (both regular and irregular topologies) when compared with the best sequential implementation for finding a spanning tree.

### A fast, parallel spanning tree algorithm for symmetric multiprocessors (SMPs)

- Computer ScienceJ. Parallel Distributed Comput.
- 2005

### A Practical Scalable Shared-Memory Parallel Algorithm for Computing Minimum Spanning Trees

- Computer Science
- 2017

A new simple, elegant and practical algorithm based on Borůvka’s algorithm for parallel MST computation on shared-memory machines is developed that offers good performance even with few processors and therefore can be used as a sole universal implementation.

### On the architectural requirements for efficient execution of graph algorithms

- Computer Science2005 International Conference on Parallel Processing (ICPP'05)
- 2005

This paper considers the performance and scalability of two graph algorithms, list ranking and connected components, on two classes of shared-memory computers: symmetric multiprocessors such as the Sun Enterprise servers and multithreaded architectures (MTA)such as the Cray MTA-2.

### Fast shared-memory algorithms for computing the minimum spanning forest of sparse graphs

- Computer Science18th International Parallel and Distributed Processing Symposium, 2004. Proceedings.
- 2004

Four parallel MST algorithms are designed and implemented for arbitrary sparse graphs that for the first time give speedup when compared with the best sequential algorithm, and also solve the minimum spanning forest problem.

### A Randomized Time-Work Optimal Parallel Algorithm for Finding a Minimum Spanning Forest

- Computer ScienceRANDOM-APPROX
- 1999

This work presents a randomized algorithm to find a minimum spanning forest (MSF) in an undirected graph that is optimal w.r.t. both work and parallel time, and is the first provably optimal parallel algorithm for this problem under both measures.

### A Comparison of the Performance of List Ranking and Connected Components Algorithms on SMP and MTA Shared-Memory Systems

- Computer Science
- 2004

This paper presents a performance model for each machine, and uses it to analyze the performance of the two important combinatorial algorithms, list ranking and connected components, on two types of shared-memory computers: symmetric multiprocessors (SMP) and multithreaded architectures (MTA) such as the Cray MTA-2.

### REVIEW : — Parallel Computing Approach of the Reverse-Delete Algorithm for finding Minimum Bottleneck Spanning Tree and Minimum Spanning Trees —

- Computer Science
- 2015

One of the classical graph optimization problems is Minimum Spanning Trees (MST) and another related problem this paper will be addressing and considering is the Minimum Bottleneck Spanning Tree Problem (MBST).

### Deterministic massively parallel connectivity

- Computer Science, MathematicsSTOC
- 2022

A deterministic MPC low local space algorithm that in O(logD + loglogn) rounds determines connected components of the input graph is presented, which matches the complexity of state of the art randomized algorithms for this task.

## References

SHOWING 1-10 OF 44 REFERENCES

### Fibonacci heaps and their uses in improved network optimization algorithms

- PhysicsJACM
- 1987

Using F-heaps, a new data structure for implementing heaps that extends the binomial queues proposed by Vuillemin and studied further by Brown, the improved bound for minimum spanning trees is the most striking.

### Computing connected components on parallel computers

- Computer ScienceCACM
- 1979

A parallel algorithm which uses n=2 processors to find the connected components of an undirected graph with n vertices in time in time O(n), which can be used to finding the transitive closure of a symmetric Boolean matrix.

### Upper and Lower Time Bounds for Parallel Random Access Machines without Simultaneous Writes

- Computer ScienceSIAM J. Comput.
- 1986

It is shown that even if the authors allow nonuniform algorithms, an arbitrary number of processors, and arbitrary instruction sets, $\Omega (\log n)$ is a lower bound on the time required to compute various simple functions, including sorting n keys and finding the logical “or” of n bits.

### Fast connected components algorithms for the EREW PRAM

- Computer ScienceSPAA '92
- 1992

We present fast and efficient parallel algorithms for finding the connected components of an undirected graph. These algorithms run on the exclusive-read, exclusive-write (EREW) PRAM. On a graph with…

### A Randomized Time-Work Optimal Parallel Algorithm for Finding a Minimum Spanning Forest

- Computer ScienceRANDOM-APPROX
- 1999

This work presents a randomized algorithm to find a minimum spanning forest (MSF) in an undirected graph that is optimal w.r.t. both work and parallel time, and is the first provably optimal parallel algorithm for this problem under both measures.

### An Efficient Parallel Biconnectivity Algorithm

- Computer ScienceSIAM J. Comput.
- 1985

A new algorithm for finding the blocks (biconnected components) of an undirected graph and a general algorithmic technique that simplifies and improves computation of various functions on trees is introduced.

### New Connectivity and MSF Algorithms for Shuffle-Exchange Network and PRAM

- Computer ScienceIEEE Transactions on Computers
- 1987

Parallel algorithms for finding the connected components (CC) and a minimum spanning FOREST of an undirected graph are presented and the PRAM algorithm is a simplification of the one appearing in [17].

### Finding connected components in O(log n loglog n) time on the EREW PRAM

- Computer ScienceSODA '93
- 1993

A parallel algorithm for finding the connected components of an undirected graph on a graph with n vertices and m edges runs in O(log n log log log n) time using n + m processors on an EREW (exclusive-read and exclusive-write) PRAM.

### A minimum spanning tree algorithm with inverse-Ackermann type complexity

- Computer ScienceJACM
- 2000

A deterministic algorithm for computing a minimum spanning tree of a connected graph that uses pointers, not arrays, and it makes no numeric assumptions on the edge costs.

### Approximate and exact parallel scheduling with applications to list, tree and graph problems

- Computer Science27th Annual Symposium on Foundations of Computer Science (sfcs 1986)
- 1986

A novel scheduling problem is defined; it is solved by repeated, rapid, approximate reschedulings, which leads to a first optimal PRAM algorithm for list ranking, which runs in logarithmic time.