2 research outputs found

    Parallel Algorithms for Constructing Convex Hulls.

    Get PDF
    For a given set of planar points S, the convex hull of S, CH(S), is defined to be a list of ordered points which represents the smallest convex polygon that contains all of the points. The convex hull problem, one of the most important problems in computational geometry, has many applications in areas such as computer graphics, simulation and pattern recognition. There are two strategies used in designing parallel convex hull algorithms. One strategy is the divide-and-conquer paradigm. The disadvantage to this strategy is that the recursive merge step is complicated and difficult to implement on current parallel machines. The second strategy is to parallelize sequential convex hull algorithms. The algorithms designed using the second strategy are often iterative algorithms which can be more easily implemented on the current parallel machines. This research focuses on designing parallel convex hull algorithms using the second strategy because we intend to facilitate the implementation of the newly designed algorithms on massively parallel machines. We first design a sequential algorithm for constructing a convex hull of a simple polygon, which is a special case of a set of planar points. This optimal algorithm is extended to handle a set of planar points without increasing the time complexity. Next, the sequential algorithm is converted for linear array and two or more dimensional mesh-array architectures. The algorithms for the case where the number of points is greater than the number of processors is also addressed. Each of the algorithms developed is optimal. To analyze the performance of the algorithms compared to previous algorithms, a system called the Parallel Convex Hull Simulation System was developed. The results of the analysis indicate that the new algorithms exhibit better performance than previous algorithms

    Efficient Algorithms for a Mesh-Connected Computer with Additional Global Bandwidth

    Full text link
    This thesis shows that adding additional global bandwidths to a mesh-connected computer can greatly improve the performance. The goal of this project is to design algorithms for mesh-connected computers augmented with limited global bandwidth, so that we can further enhance our understanding of the parallel/serial nature of the problems on evolving parallel architectures. We do this by first solving several problems associated with fundamental data movement, then summarize ways to resolve different situations one may observe in data movement in parallel computing. This can help us to understand whether the problem is easily parallelizable on different parallel models. We give efficient algorithms to solve several fundamental problems, which include sorting, counting, fast Fourier transform, finding a minimum spanning tree, finding a convex hull, etc. We show that adding a small amount of global bandwidth makes a practical design that combines aspects of mesh and fully connected models to achieve the benefits of each. Most of the algorithms are optimal. For future work, we believe that algorithms with peak-power constrains can make our model well adapted to the recent architectures in high performance computing.PHDComputer Science & EngineeringUniversity of Michigan, Horace H. Rackham School of Graduate Studieshttps://deepblue.lib.umich.edu/bitstream/2027.42/150001/1/anyujie_1.pd
    corecore