Skip to main content

Shared-Memory Parallel Frontier-Based Search

  • Conference paper
  • 995 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7748))

Abstract

Knuth’s Simpath algorithm is an efficient algorithm enumerating all paths between two locations. This paper presents three approaches to parallelizing frontier-based search in Simpath in shared-memory environments: node-based, range-based and edge-based approaches. Our results on solving grid graphs show that the lock-free edge-based approach performs best and achieves seven-fold speedup with 32 CPU cores, while the others suffer from severe synchronization overhead due to locks, resulting in performance saturation with more than 12 cores.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bianchi, F., Corno, F., Rebaudengo, M., Reorda, M.S., Ansaloni, R.: Boolean Function Manipulation on a Parallel System Using BDDs. In: Hertzberger, B., Sloot, P.M.A. (eds.) HPCN-Europe 1997. LNCS, vol. 1225, pp. 916–928. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  2. Bryant, R.E.: Graph-based algorithms for boolean function manipulation. IEEE Transactions on Computers C-35(8), 677–691 (1986)

    Article  Google Scholar 

  3. Chen, J.-S., Banerjee, P.: Parallel constuction algorithms for BDDs. In: Proceedings of the 1999 IEEE International Symposium on Circuits and Systems, ISCAS 1999, vol. 1, pp. 318–322 (1999)

    Google Scholar 

  4. Hardy, G., Lucet, C., Limnios, N.: K-terminal network reliability measures with binary decision diagrams. IEEE Transactions on Reliability 56(3), 506–515 (2007)

    Article  Google Scholar 

  5. Inoue, T., Takano, K., Watanabe, T., Kawahara, J., Yoshinaka, R., Kishimoto, A., Tsuda, K., Minato, S., Hayashi, Y.: Finding all configurations satisfying operational constraints in delivery networks by ZDDs. In: Proceedings of the Institute of Electrical Engineers of Japan National Conference (2012) (in Japanese)

    Google Scholar 

  6. Karp, R., Zhang, Y.: A randomized parallel branch-and-bound procedure. In: Proceedings of the 20th ACM Symposium on Theory of Computing, STOC, pp. 290–300 (1988)

    Google Scholar 

  7. Karp, R., Zhang, Y.: Randomized parallel algorithms for backtrack search and branch-and-bound computation. Journal of the Association for Computing Machinery 40(3), 765–789 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  8. Knuth, D.E.: The Art of Computer Programming, 1st edn. Combinatorial Algorithms, Part 1, vol. 4A. Addison-Wesley Professional (March 2011)

    Google Scholar 

  9. Kumar, V., Ramesh, K., Rao, V.N.: Parallel best-first search of state-space graphs: A summary of results. In: Proceedings of the 10th National Conference Artificial Intelligence, AAAI, pp. 122–127. Press (1988)

    Google Scholar 

  10. Minato, S.: Zero-suppressed BDDs for set manipulation in combinatorial problems. In: Proceedings of the 30th ACM/IEEE Design Automation Conference, pp. 272–277 (1993)

    Google Scholar 

  11. Ochi, H., Yasuoka, K., Yajima, S.: Breadth-first manipulation of SBDD of boolean functions for vector processing. In: Procedings of the 28th ACM/IEEE Design Automation Conference, pp. 413–416 (1991)

    Google Scholar 

  12. Ranjan, R.K., Sanghavi, J.V., Brayton, R.K., Sangiovanni-Vincentelli, A.: Binary decision diagrams on network of workstations. In: IEEE International Conference on Computer Design: VLSI in Computers and Processors, ICCD 1996, pp. 358–364 (1996)

    Google Scholar 

  13. Sekine, K., Imai, H., Tani, S.: Computing the Tutte Polynomial of a Graph of Moderate Size. In: Staples, J., Katoh, N., Eades, P., Moffat, A. (eds.) ISAAC 1995. LNCS, vol. 1004, pp. 224–233. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  14. Stornetta, T., Brewer, F.: Implementation of an efficient parallel BDD package. In: Proceedings of the 33rd Annual Design Automation Conference, DAC 1996, pp. 641–644. ACM, New York (1996)

    Chapter  Google Scholar 

  15. Yang, B., O’Hallaron, D.R.: Parallel breadth-first BDD construction. In: Proceedings of the 9th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pp. 145–156. ACM Press (1997)

    Google Scholar 

  16. Yoshinaka, R., Saitoh, T., Kawahara, J., Tsuruma, K., Iwashita, H., Minato, S.: Finding all solutions and instances of numberlink and slitherlink by ZDDs. Algorithms 5(2), 176–213 (2012)

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Takeuchi, S., Kawahara, J., Kishimoto, A., Minato, Si. (2013). Shared-Memory Parallel Frontier-Based Search. In: Ghosh, S.K., Tokuyama, T. (eds) WALCOM: Algorithms and Computation. WALCOM 2013. Lecture Notes in Computer Science, vol 7748. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36065-7_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-36065-7_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-36064-0

  • Online ISBN: 978-3-642-36065-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics