## Speculative Parallelization of a Randomized Incremental Convex Hull Algorithm (2004)

### Cached

### Download Links

- [www.homepages.inf.ed.ac.uk]
- [homepages.inf.ed.ac.uk]
- [www.infor.uva.es]
- [www.infor.uva.es]
- DBLP

### Other Repositories/Bibliography

Venue: | Proc. Int’l Workshop Computational Geometry and Applications |

Citations: | 5 - 4 self |

### BibTeX

@INPROCEEDINGS{Cintra04speculativeparallelization,

author = {Marcelo Cintra and Diego R. Llanos and Belén Palop},

title = {Speculative Parallelization of a Randomized Incremental Convex Hull Algorithm},

booktitle = {Proc. Int’l Workshop Computational Geometry and Applications},

year = {2004},

pages = {188--197},

publisher = {SpringerVerlag, ISSN}

}

### OpenURL

### Abstract

Abstract. Finding the fastest algorithm to solve a problem is one of the main issues in Computational Geometry. Focusing only on worst case analysis or asymptotic computations leads to the development of complex data structures or hard to implement algorithms. Randomized algorithms appear in this scenario as a very useful tool in order to obtain easier implementations within a good expected time bound. However, parallel implementations of these algorithms are hard to develop and require an in-depth understanding of the language, the compiler and the underlying parallel computer architecture. In this paper we show how we can use speculative parallelization techniques to execute in parallel iterative algorithms such as randomized incremental constructions. In this paper we focus on the convex hull problem, and show that, using our speculative parallelization engine, the sequential algorithm can be automatically executed in parallel, obtaining speedups with as little as four processors, and reaching 5.15x speedup with 28 processors. 1

### Citations

652 | The LEDA Platform of Combinatorial and Geometric Computing
- Mehlhorn, Näher
- 1999
(Show Context)
Citation Context ...e 2-dimensional convex hull, which can be easily extended to higher dimensions, is due to Clarkson, Mehlhorn and Seidel [7]. A brief description of the algorithm follows. More details can be found in =-=[13]-=-. Let S be a set of n points in the plane, let x1,x2,...,xn be a random permutation of the points in S, and call Ri the random subset {x1,x2,...,xi}. Suppose CH(Ri−1) is already computed and we want t... |

525 | Multiscalar Processors
- Sohi, Breach, et al.
- 1995
(Show Context)
Citation Context ...rectly calculated, and restart their execution using the correct values. See Figure 2. The detection of dependence violations can be done either by hardware or software. Hardware solutions (see e.g., =-=[5,10,16]-=-) rely on additional hardware modules to detect dependences, while software methods [4,12,15] augment the original loop with new instructions that check for violations during the parallel execution. W... |

285 |
Computational Geometry: An Introduction Through Randomized Algorithms
- Mulmuley
- 1993
(Show Context)
Citation Context ...domized constructions appear to obtain simpler algorithms which are expected to run within good time bounds when the input points follow some uniform distribution and/or are processed in random order =-=[6,14]-=-. Many geometric algorithms and structures are based on convex hulls. Therefore, it is not surprising that so much effort has been done in order to lower its computational complexity. In this work we ... |

253 |
An ecient algorithm for determining the convex hull of a planar set
- Graham
- 1973
(Show Context)
Citation Context ...CH(S), is the smallest convex region containing all points in S. We will use CH(S) for the ordered sequence of vertices of the convex region, which are known to be points of S. Since 1972 when Graham =-=[9]-=- gave the first algorithm to compute the convex hull of a set of points in O(n log n) time and O(n) space, a lot of effort has been done to find algorithms reaching better lower bounds in time and spa... |

220 | The LRPD test: speculative run-time parallelization of loops with privatization and reduction parallelization
- Rauchwerger, Padua
- 1999
(Show Context)
Citation Context ...up the execution of many randomized incremental algorithms sharing this property. 3 Speculative Parallelization The basic idea under speculative parallelization (also called thread-level speculation) =-=[4,12,15]-=- is to assign the execution of different blocks of consecutive iterations to different threads, running each one on its own processor. While execution proceeds, a software monitor ensures that no thre... |

201 |
Data speculation support for a chip multiprocessor, in
- Hammond, Willey, et al.
- 1998
(Show Context)
Citation Context ...rectly calculated, and restart their execution using the correct values. See Figure 2. The detection of dependence violations can be done either by hardware or software. Hardware solutions (see e.g., =-=[5,10,16]-=-) rely on additional hardware modules to detect dependences, while software methods [4,12,15] augment the original loop with new instructions that check for violations during the parallel execution. W... |

123 |
Computational Geometry Algorithms Library. http://www.cgal.org
- CGAL
(Show Context)
Citation Context ...ts were not considered, since their sequential execution time took less than ten seconds in the system under test. The sets of points have been generated using the random points generator in CGAL 2.4 =-=[2]-=- and have been randomly ordered using its shuffle function. 4.2 Overall Speedups Figure 3 shows the effect of executing the parallel code with the 40 million points problem size for square and disc in... |

101 | Architectural support for scalable speculative parallelization in shared-memory multiprocessors
- Cintra, Martinez, et al.
- 2000
(Show Context)
Citation Context ...rectly calculated, and restart their execution using the correct values. See Figure 2. The detection of dependence violations can be done either by hardware or software. Hardware solutions (see e.g., =-=[5,10,16]-=-) rely on additional hardware modules to detect dependences, while software methods [4,12,15] augment the original loop with new instructions that check for violations during the parallel execution. W... |

101 |
The ultimate planar convex hull algorithm
- Kirkpatrick, Seidel
- 1986
(Show Context)
Citation Context ...e the convex hull of a set of points in O(n log n) time and O(n) space, a lot of effort has been done to find algorithms reaching better lower bounds in time and space. In 1986 Kirkpatrick and Seidel =-=[11]-=- proved the time lower bound of Ω(n log h), where h is the number of points in CH(S), and gave the first algorithm within this time bound. In 1996 Chan [3] gave simpler algorithms for the computation ... |

92 | Four results on randomized incremental constructions
- Clarkson, Mehlhorn, et al.
- 1993
(Show Context)
Citation Context ...d easy to implement randomized incremental algorithms for the construction of the 2-dimensional convex hull, which can be easily extended to higher dimensions, is due to Clarkson, Mehlhorn and Seidel =-=[7]-=-. A brief description of the algorithm follows. More details can be found in [13]. Let S be a set of n points in the plane, let x1,x2,...,xn be a random permutation of the points in S, and call Ri the... |

49 | Optimal output-sensitive convex hull algorithms in two and three dimensions
- Chan
- 1996
(Show Context)
Citation Context ...e and space. In 1986 Kirkpatrick and Seidel [11] proved the time lower bound of Ω(n log h), where h is the number of points in CH(S), and gave the first algorithm within this time bound. In 1996 Chan =-=[3]-=- gave simpler algorithms for the computation of CH(S) in two and three dimensions. With respect to space complexity, Brönnimann et al. [1] showed in 2002 that it is possible to implement Chan’s optima... |

39 |
Toward efficient and robust software speculative parallelization on multiprocessors
- Cintra, Llanos
- 2003
(Show Context)
Citation Context ...up the execution of many randomized incremental algorithms sharing this property. 3 Speculative Parallelization The basic idea under speculative parallelization (also called thread-level speculation) =-=[4,12,15]-=- is to assign the execution of different blocks of consecutive iterations to different threads, running each one on its own processor. While execution proceeds, a software monitor ensures that no thre... |

19 | Spaceefficient planar convex hull algorithms
- Brönnimann, Iacono, et al.
(Show Context)
Citation Context ...gave the first algorithm within this time bound. In 1996 Chan [3] gave simpler algorithms for the computation of CH(S) in two and three dimensions. With respect to space complexity, Brönnimann et al. =-=[1]-=- showed in 2002 that it is possible to implement Chan’s optimal time algorithm with only O(1) additional space to the set of points. In parallel with the lower-bound race, randomized constructions app... |

14 |
Randomized geometric algorithms
- Clarkson
- 1992
(Show Context)
Citation Context ...domized constructions appear to obtain simpler algorithms which are expected to run within good time bounds when the input points follow some uniform distribution and/or are processed in random order =-=[6,14]-=-. Many geometric algorithms and structures are based on convex hulls. Therefore, it is not surprising that so much effort has been done in order to lower its computational complexity. In this work we ... |

8 |
Techniques for Run-Time Parallelization of Loops.” Supercomputing
- Gupta, Nim
- 1998
(Show Context)
Citation Context ...up the execution of many randomized incremental algorithms sharing this property. 3 Speculative Parallelization The basic idea under speculative parallelization (also called thread-level speculation) =-=[4,12,15]-=- is to assign the execution of different blocks of consecutive iterations to different threads, running each one on its own processor. While execution proceeds, a software monitor ensures that no thre... |

4 | Optimal in-place planar convex hull algorithms
- Brönnimann, Iacono, et al.
- 2002
(Show Context)
Citation Context ...gave the first algorithm within this time bound. In 1996 Chan [3] gave simpler algorithms for the computation of CH(S) in two and three dimensions. With respect to space complexity, Brönnimann et al. =-=[1]-=- showed in 2002 that it is possible to implement Chan’s optimal time algorithm with only O(1) additional space to the set of points. In parallel with the lower-bound race, randomized constructions app... |

2 | Fast randomized parallel methods for planar convex hull construction
- Ghouse, Goodrich
- 1997
(Show Context)
Citation Context ...ull problem. Using our speculative engine, the algorithm can be automatically parallelized, with only a tiny fraction of the effort needed to design, analyze and program a parallel version (see e.g., =-=[8]-=-). After analyzing the effect of input set sizes and different shapes of the data distribution, our results show that the speculative version of the sequential algorithm leads to speedups with as litt... |