This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
A Performance Analysis of Transposition-Table-Driven Work Scheduling in Distributed Search
May 2002 (vol. 13 no. 5)
pp. 447-459

This paper discusses a new work-scheduling algorithm for parallel search of single-agent state spaces, called Transposition-Table-Driven Work Scheduling, that places the transposition table at the heart of the parallel work scheduling. The scheme results in less synchronization overhead, less processor idle time, and less redundant search effort. Measurements on a 128-processor parallel machine show that the scheme achieves close-to-linear speedups; for large problems the speedups are even superlinear due to better memory usage. On the same machine, the algorithm is 1.6 to 12.9 times faster than traditional work-stealing-based schemes.

[1] A. Alexandrov, M. Ionescu, K.E. Schauser, and C. Scheiman, “LogGP: Incorporating Long Messages into the LogP Model,” Proc. Symp. Parallel Algorithms and Architectures '95, July 1995.
[2] H.E. Bal and L.V. Allis, “Parallel Retrograde Analysis on a Distributed System,” Supercomputing '95, Dec. 1995.
[3] R.A.F. Bhoedjang, J.W. Romein, and H.E. Bal, “Optimizing Distributed Data Structures Using Application-Specific Network Interface Software,” Proc. Int'l Conf. Parallel Processing, pp. 485-492, Aug. 1998.
[4] R.A.F. Bhoedjang, T. Rühl, R. Hofman, K. Langendoen, H.E. Baland, M.F. Kaashoek, “Panda: A Portable Platform to Support Parallel Programming Languages,” Proc. Symp. Experiences with Distributed and Multiprocessor Systems, pp. 213-226, Sept. 1993.
[5] R.A.F. Bhoedjang, K. Verstoep, T. Ruhl, H.E. Bal, and R.F.H. Hofman, “Evaluating Design Alternatives for Reliable Communication on High-Speed Networks,” Architectural Support for Programming Languages and Operating Systems, Nov. 2000.
[6] N. Boden et al., "Myrinet: A Gigabit-per-Second Local Area Network," IEEE Micro, Feb. 1995, pp. 29-36.
[7] M.P. Bonacina, “The Clause-Diffusion Theorem Prover Peers-mcd,” Proc. 14th Conf. Automated Deduction (CADE), W. McCune, ed., pp. 53-56, July 1997.
[8] M.G. Brockington, “Asynchronous Parallel Game-Tree Search,” PhD thesis, Univ. of Alberta, Edmonton, Alberta, Canada Nov. 1997.
[9] D. Cook and R. Varnell, “Maximizing the Benefits of Parallel Search Using Machine Learning,” Proc. Amer. Assoc. Artificial Intelligence Nat'l Conf., pp. 559-564, July 1997.
[10] D.E. Culler, K.E. Schauser, and T. von Eicken, “Two Fundamental Limits on Dataflow Multiprocessing,” Proc. IFIP WG 10. 3 Working Conf. Architectures and Compilation Techniques for Fine and Medium Grain Parallelism, Jan. 1993.
[11] T. von Eicken et al., “Active Messages: A Mechanism for Integrated Communication and Computation,” Proc. 19th Int’l Symp. Computer Architecture, Assoc. of Computing Machinery, N.Y., May 1992, pp. 256-266.
[12] M. Evett, J. Hendler, A. Mahanti, and D. Nau, “PRA*: Massively Parallel Heuristic Search,” J. Parallel and Distributed Computing, vol. 25, pp. 133-143, 1995.
[13] R. Feldmann, “Game Tree Search on Massively Parallel Systems,” PhD thesis, Univ. of Paderborn, Aug. 1993.
[14] B. Monien, R. Feldmann, and P. Mysliwietz, "Studying Overheads in Massively Parallel Min/Max-Tree Evaluation," Proc. Sixth ACM Symp. Parallel Algorithms and Architectures, pp. 94-103, 1994.
[15] R. Gasser, “Harnessing Computational Resources for Efficient Exhaustive Search,” PhD thesis, ETH Zürich, Switzerland, 1995.
[16] O. Hansson, A. Mayer, M. Yung, “Criticizing Solutions to Relaxed Models Yields Powerful Admissible Heuristics,” Information Sciences, vol. 63, no. 3, pp. 207-227, 1992.
[17] C.F. Joerg and B.C. Kuszmaul, “Massively Parallel Chess,” Third DIMACS Parallel Implementation Challenge, Oct. 1994.
[18] A. Junghanns and J. Schaeffer, “Single-Agent Search in the Presence of Deadlocks,” Proc. Amer. Assoc. Artificial Intelligence Nat'l Conf., pp. 419-424, July 1998.
[19] D.E. Knuth and R.W. Moore, “An Analysis of Alpha-Beta Pruning,” Artificial Intelligence, vol. 6, no. 4, pp. 293-326, 1975.
[20] R.E. Korf, "Depth-first Iterative-Deepening: An Optimal Admissible Tree Search," Artificial Intelligence, vol. 27, no. 1, pp. 97-109, 1985.
[21] R.E. Korf, “Finding Optimal Solutions to Rubik's Cube Using Pattern Databases,” Proc. Amer. Assoc. Artificial Intelligence Nat'l Conf., pp. 700-705, July 1997.
[22] R.E. Korf and L.A. Taylor, “Finding Optimal Solutions to the Twenty-Four Puzzle,” Proc. Amer. Assoc. Artificial Intelligence Nat'l Conf., pp. 1202-1207, Aug. 1996.
[23] V. Kumar and V. Rao, “Scalable Parallel Formulations of Depth-first Search,” Parallel Algorithms for Machine Intelligence and Vision, V. Kumar, P. Gopalakrishnan, and L. Kanal, eds., pp. 1-42, 1990.
[24] T.A. Marsland and F. Popowich, “Parallel Game-Tree Search,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 7, no. 4, pp. 442-452, July 1985.
[25] F. Mattern, “Algorithms for Distributed Termination Detection,” Distributed Computing, vol. 2, pp. 161-175, 1987.
[26] N.J. Nilsson, Problem-Solving Methods in Artificial Intelligence. New York: McGraw-Hill, 1971.
[27] A. Plaat, J. Schaeffer, W. Pijls, and A. de Bruin, “Exploiting Graph Properties of Game Trees,” Proc. Amer. Assoc. Artificial Intelligence Nat'l Conf., pp. 234-239, Aug. 1996.
[28] C. Powley and R.E. Korf, “Single-Agent Parallel Window Search,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 3, no. 5 pp. 466-477, May 1991.
[29] V. Rao, V. Kumar, and K. Ramesh, “A Parallel Implementation of Iterative-Deepening-A*,” Proc. Amer. Assoc. Artificial Intelligence Nat'l Conf., pp. 178-182, July 1987.
[30] A. Reinefeld and T.A. Marsland, “Enhanced Iterative-Deepening Search,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 16, no. 7, pp. 701-710, July 1994.
[31] A. Reinefeld and V. Schnecke, “AIDA*—Asynchronous Parallel IDA*,” Proc. Canadian Conf. Artificial Intelligence, pp. 295-302, 1994.
[32] J.W. Romein, “Multigame—An Environment for Distributed Game-Tree Search,” PhD thesis, Faculty of Sciences, Dept. of Math. and Computer Science, Vrije Universiteit, Amsterdam, The Netherlands, Jan. 2001. http://www.cs.vu.nl/john/thesis.
[33] J.W. Romein, H.E. Bal, and D. Grune, “An Application Domain Specific Language for Describing Board Games,” Parallel and Distributed Processing Techniques and Applications, vol. I, pp. 305-314, July 1997.
[34] J.W. Romein, A. Plaat, H.E. Bal, and J. Schaeffer, “Transposition Driven Work Scheduling in Distributed Search,” Proc. Amer. Assoc. Artificial Intelligence Nat'l Conf., pp. 725-731, July 1999.
[35] J. Schaeffer, "Distributed Game-Tree Searching," J. Parallel and Distributed Computing, Vol. 6, No. 2, 1989, pp. 90-114.
[36] D.J. Slate and L.R. Atkin, “CHESS 4.5—The Northwestern University Chess Program,” Chess Skill in Man and Machine, P.W. Frey, ed., pp. 82-118, 1977.
[37] U. Stern and D.L. Dill, “Parallelizing the Murphi Verifier,” Proc. Ninth Int'l Conf. Computer Aided Verification, pp. 256-267, 1997.
[38] L. Taylor and R.E. Korf, “Pruning Duplicate Nodes in Depth-First Search,” Proc. Amer. Assoc. Artificial Intelligence Nat'l Conf., pp. 756-761, July 1993.
[39] A.L. Zobrist, “A New Hashing Method with Application for Game Playing,” Technical Report 88, Computer Science Dept., Univ. of Wisconsin, Madison, 1970.

Index Terms:
Distributed search, single-agent search, work pushing, Transposition-Table-Driven Work Scheduling (TDS), IDA*
Citation:
John W. Romein, Henri E. Bal, Jonathan Schaeffer, Aske Plaat, "A Performance Analysis of Transposition-Table-Driven Work Scheduling in Distributed Search," IEEE Transactions on Parallel and Distributed Systems, vol. 13, no. 5, pp. 447-459, May 2002, doi:10.1109/TPDS.2002.1003855
Usage of this product signifies your acceptance of the Terms of Use.