Skip to main content

Multicore Parallelization of the PTAS Dynamic Program for the Bin-Packing Problem

  • Conference paper
Distributed Computing and Networking (ICDCN 2014)

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

Included in the following conference series:

  • 1854 Accesses

Abstract

Dynamic Programming (DP) is an efficient technique to solve combinatorial search and optimization problems. There have been many research efforts towards parallelizing dynamic programs. In this paper, we study the parallelization of the Polynomial Time Approximation Scheme (PTAS) DP for the classical bin-packing problem. This problem is challenging due to the fact that the number of dimensions of the DP table is not known a priori and is dependent on the input and the accuracy desired by the user. We present optimization techniques for parallelizing the DP for this problem, which include diagonalization, blocking and optimizing dependency lookups. We perform a comprehensive evaluation of our parallel DP on a multicore platform and show that the parallel DP scales well and that our proposed optimizations lead to further substantial improvement in performance.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Alves, C.E.R., Cáceres, E., Dehne, F.K.H.A.: Parallel dynamic programming for solving the string editing problem on a cgm/bsp. In: SPAA, pp. 275–281 (2002)

    Google Scholar 

  2. El Baz, D., Elkihel, M.: Load balancing methods and parallel dynamic programming algorithm using dominance technique applied to the 0-1 knapsack problem. J. Parallel Distrib. Comput. 65(1), 74–84 (2005)

    Article  MATH  Google Scholar 

  3. Bradford, P.G.: Efficient parallel dynamic programming (1994)

    Google Scholar 

  4. Calvet, J.-L., Viargues, G.: Parallelism in dynamic programming: an issue to feedback control. In: First IEEE Conference on Control Applications, vol. 2, pp. 1063–1064 (1992)

    Google Scholar 

  5. Chowdhury, R.A., Ramachandran, V.: Cache-efficient dynamic programming algorithms for multicores. In: SPAA, pp. 207–216. ACM (2008)

    Google Scholar 

  6. Elkihel, M., El Baz, D.: Load balancing in a parallel dynamic programming multi-method applied to the 0-1 knapsack problem. In: PDP, pp. 127–132. IEEE Computer Society (2006)

    Google Scholar 

  7. Huang, S.H.S., Liu, H., Viswanathan, V.: Parallel dynamic programming. IEEE Trans. Parallel Distrib. Syst. 5(3), 326–328 (1994)

    Article  Google Scholar 

  8. Karypis, G., Kumar, V.: Efficient parallel mappings of a dynamic programming algorithm: A summary of results. In: IPPS, pp. 563–568 (1993)

    Google Scholar 

  9. Kumar, V., Grama, A., Gupta, A., Karypis, G.: Introduction to Parallel Computing. Benjamin/Cummings (1994)

    Google Scholar 

  10. Larson, R.E., Tse, E.: Parallel processing algorithms for optimal control of nonlinear dynamic systems. IEEE Trans. Comput. 22(8), 777–786 (1973)

    Article  MATH  Google Scholar 

  11. Lau, K.K., Kumar, M.J.: Parallel implementation of the unit commitment problem on nows. In: High Performance Computing on the Information Superhighway, HPC Asia 1997, pp. 128–133 (1997)

    Google Scholar 

  12. Lewandowski, G., Condon, A., Bach, E.: Asynchronous analysis of parallel dynamic programming. In: SIGMETRICS, pp. 268–269 (1993)

    Google Scholar 

  13. Rodríguez, C., Roda, J.L., García, F., Almeida, F., González, D.: Paradigms for parallel dynamic programming. In: EUROMICRO, p. 553. IEEE Computer Society (1996)

    Google Scholar 

  14. Smith, T.F., Waterman, M.S.: Identification of common molecular subsequences. Journal of Molecular Biology 147(1), 195–197 (1981)

    Article  Google Scholar 

  15. Tan, G., Feng, S., Sun, N.: Biology - locality and parallelism optimization for dynamic programming algorithm in bioinformatics. In: SC, p. 78. ACM Press (2006)

    Google Scholar 

  16. Tan, G., Sun, N., Gao, G.R.: A parallel dynamic programming algorithm on multi-core architecture. In: SPAA, pp. 135–144. ACM (2007)

    Google Scholar 

  17. Vazirani, V.V.: Approximation algorithms. Springer (2001)

    Google Scholar 

  18. Williamson, D.P., Shmoys, D.B.: The Design of Approximation Algorithms. Cambridge University Press (2011)

    Google Scholar 

  19. Xu, H.H., Hanson, F.B., Chung, S.L.: Optimal data parallel methods for stochastic dynamical programming. In: ICPP (3), pp. 142–146 (1991)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Chakravorty, A., George, T., Sabharwal, Y. (2014). Multicore Parallelization of the PTAS Dynamic Program for the Bin-Packing Problem. In: Chatterjee, M., Cao, Jn., Kothapalli, K., Rajsbaum, S. (eds) Distributed Computing and Networking. ICDCN 2014. Lecture Notes in Computer Science, vol 8314. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-45249-9_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-45249-9_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-45248-2

  • Online ISBN: 978-3-642-45249-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics