Abstract
Many algorithms in operations research and artificial intelligence are based on the backtracking principle, i.e., depth first search in implicitly defined trees. For parallelizing these algorithms, an efficient load balancing scheme is of central importance.
Previously known load balancing algorithms either require sending a message for each tree node or they only work efficiently for large search trees. This paper introduces new randomized dynamic load balancing algorithms for tree structured computations, a generalization of backtrack search. These algorithms only need to communicate when necessary and have an asymptotically optimal scalability for hypercubes, butterflies and related networks, and an improved scalability for meshes and hierarchical networks like fat trees.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
A.-C. Achilles. Optimal emulation of meshes on meshes-of-trees. In EURO-PAR International Conference on Parallel Processing, 1995.
R. D. Blumofe and C. E. Leiserson. Scheduling multithreaded computations by work stealing. In Foundations of Computer Science, 1994.
O. I. El-Dessouki and W. H. Huen. Distributed enumeration on between computers. IEEE Transactions on Computers, C-29(9):818–825, September 1980.
W. Ertel. Parallele Suche mit randomisiertem Wettbewerb in Inferenzsystemen. Dissertation, TU München, 1992.
R. Feldmann, P. Mysliwietz, and B. Monien. Studying overheads in massively parallel min/max-tree evaluation. In ACM Symposium on Parallel Architectures and Algorithms, pages 94–103, 1994.
R. Finkel and U. Manber. DIB— A distributed implementation of backtracking. A CM Trans. Prog. Lang. and Syst., 9(2):235–256, Apr. 1987.
H. Hopp and P. Sanders. Parallel game tree search on SIMD machines. In Workshop on Algorithms for Irregularly Structured Problems, LNCS, Lyon, 1995. Springer.
D. Ierardi. 2d-bubblesorting in average time O(√N lg N). In ACM Symposium on Parallel Architectures and Algorithms, 1994.
V. K. Janakiram, E. F. Gehringer, D. P. Agrawal, and R. Mehotra. A randomized parallel branch-and-bound algorithm. International Journal of Parallel Programming, 17(3):277–301, 1988.
C. Kaklamanis and G. Persiano. Branch-and-bound and backtrack search on mesh-connected arrays of processors. In ACM Symposium on Parallel Architectures and Algorithms, 1992.
G. Karypis and V. Kumar. Unstructured tree search on SIMD parallel computers. IEEE Transactions on Parallel and Distributed Systems, 5(10):1057–1072, 1994.
J. C. Kergommeaux and P. Codognet. Parallel logic programming systems. ACM Computing Surveys, 26(3):295–336, 1994.
R. E. Korf. Depth-first iterative-deepening: An optimal admissible tree search. Artificial Intelligence, 27:97–109, 1985.
V. Kumar and G. Y. Ananth. Scalable load balancing techniques for parallel computers. Technical Report TR 91-55, University of Minnesota, 1991.
V. Kumar, A. Grama, A. Gupta, and G. Karypis. Introduction to Parallel Computing. Design and Analysis of Algorithms. Benjamin/Cummings, 1994.
T. Lauer. Adaptive dynamische Lastbalancierung. PhD thesis, Max Planck Institute for Computer Science Saarbrücken, 1995.
F. T. Leighton, B. M. Maggs, A. G. Ranade, and S. B. Rao. Randomized routing and sorting on fixed-connection networks. Journal of Algorithms, 17:157–205, 1994.
T. Leighton. Introduction to Parallel Algorithms and Architectures. Morgan Kaufmann, 1992.
T. Leighton, M. Newman, A. G. Ranade, and E. Schwabe. Dynamic tree embeddings in butterflies and hypercubes. In ACM Symposium on Parallel Architectures and Algorithms, pages 224–234, 1989.
C. E. Leiserson. Fat trees: Universal networks for hardware efficient supercomputing. In International Conference on Parallel Processing, pages 393–402, 1985.
T. Minkwitz. Personal communication. Department of Informatics, University of Karlsruhe, 1995.
C. Powley, C. Ferguson, and R. E. Korf. Depth-fist heuristic search on a SIMD machine. Artificial Intelligence, 60:199–242, 1993.
A. Ranade. Optimal speedup for backtrack search on a butterfly network. Mathematical Systems Theory, pages 85–101, 1994.
V. N. Rao and V. Kumar. On the efficiency of parallel backtracking. IEEE Transactions on Parallel and Distributed Systems, 4(4):427–437, April 1993.
P. Sanders. Analysis of random polling dynamic load balancing. Technical Report IB 12/94, Universität Karlsruhe, Fakultät für Informatik, April 1994.
P. Sanders. A detailed analysis of random polling dynamic load balancing. In International Symposium on Parallel Architectures Algorithms and Networks, pages 382–389, Kanazawa, Japan, 1994. IEEE.
P. Sanders. Massively parallel search for transition-tables of polyautomata. In Parcella 94, VI. International Workshop on Parallel Proccessing by Cellular Automata and Arrays, pages 99–108, Potsdam, 1994.
P. Sanders. Randomized static load balancing for tree shaped computations In Workshop on Parallel Processing, TR Universität Clausthal, Lessach, Austria, 1994.
A. P. Sprague. Wild anomalies in parallel branch and bound. Technical Report CIS-TR-91-04, CIS UAB, Birmingham, AL 35294, 1991.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sanders, P. (1995). Better algorithms for parallel backtracking. In: Ferreira, A., Rolim, J. (eds) Parallel Algorithms for Irregularly Structured Problems. IRREGULAR 1995. Lecture Notes in Computer Science, vol 980. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60321-2_27
Download citation
DOI: https://doi.org/10.1007/3-540-60321-2_27
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60321-4
Online ISBN: 978-3-540-44915-7
eBook Packages: Springer Book Archive