Parallelizing divide-and-conquer algorithms — Microtasking versus autotasking
Algorithms based on a divide-and-conquer strategy are well qualified for being implemented in a multitasking environment. The idea of the divide-and-conquer paradigm is to fragment a problem into subproblems of the same kind, to solve the subproblems recursively, and, finally, to combine the solutions of the subproblems into a solution of the original problem. The subdivision in smaller problems which can be solved independently provides the possibility for parallel execution on multiple processors. In this paper the parallel implementation of a divide-and-conquer algorithm to compute the convex hull in the plane is discussed. The algorithm is implemented in FORTRAN on a CRAY Y-MP8/832 using the CRAY multitasking strategies. The concepts of microtasking and autotasking are compared with respect to their qualification for the parallelization of REPEAT loop constructs which constitute the main part of the described divide-and-conquer algorithm.
KeywordsMultitasking microtasking autotasking CRAY Y-MP divide-and-conquer parallel algorithm convex hull
Unable to display preview. Download preview PDF.
- A.V. Aho, J.E. Hopcroft, J.D. Ullman, Data Structures and Algorithms (Addison-Wesley, 1987).Google Scholar
- Autotasking User's Guide (CRAY Research, Inc., SN-2088, 1989).Google Scholar
- CRAY Y-MP, CRAY X-MP EA and CRAY X-MP Multitasking Programmer's Reference Manual (CRAY Research, Inc., SR-0222 F, 1989).Google Scholar
- U. Detert, Memory Performance of CRAY X-MP and CRAY Y-MP, Proc. of CRAY User Group Meeting (Fall) (1989) 50–54.Google Scholar
- M. Furtney, Parallel Processing at CRAY Research, Proc. of CRAY User Group Meeting (Fall) (1988) 247–257.Google Scholar
- E. Horowitz, A. Zorat, Divide-and-Conquer for Parallel Processing, IEEE Transactions on Computers C-32 (1983) 582–585.Google Scholar
- R. Karp, Probabilistic Analysis of Partitioning Algorithms for the Traveling Salesman Problem in the Plane, Mathematics of Operations Research 2 (1977) 209–224.Google Scholar
- R. Knecht, Implementation of Divide-and-Conquer Algorithms on Multiprocessors, Proc. of WOPPLOT 89, Springer, to appear.Google Scholar
- F.P. Preparata, M.I. Shamos, Computational Geometry — An Introduction (Springer, 1985).Google Scholar
- H. Reger, Ein Vergleich der Multitasking-Implementierungen auf CRAY X-MP und IBM 3090, Jül-Spez-542, 1989.Google Scholar
- R. Sedgewick, Algorithms (Addison-Wesley, 1988).Google Scholar