Abstract
Several problems modeled by dynamic programming have been solved using a coarse-grain multicomputer parallel model (CGM for short). These problems use either polyadic dynamic programming or monadic non-serial dynamic programming. In this paper, we address the general case: we propose a parallel algorithm in the CGM model with p processors for the Optimal String Parenthesizing Problem or Minimum Cost Parenthesizing Problem, which is a typical polyadic non-serial dynamic programming problem. The algorithm we obtain requires ⌈(2p)1/2⌉ communication rounds and, at most, O(n 3/p) time-steps on p processors. This new CGM algorithm performs better than the previously most efficient solution, which uses p communication rounds.
Similar content being viewed by others
References
Aho A, Hopcroft J, Ulman (1974) The design and analysis of computer algorithms. Addison-Wesley, Reading
Akl SG (1990) Parallel synergy or can a parallel computer be more efficient than the sum of its parts? Tech. Report. 90-285, Queen’s University, Kingston, Ontario (1990)
Alves CER, Cáceres EN, Dehne F, Song SW (2003) A parallel wave front algorithm for efficient biological sequence comparison. In: Proc intern conf computational science and its applications (ICCSA). LNS, vol 2668. Springer, Berlin, pp 249–258 (Part II)
Alves CER, Cáceres EN, Song SW (2006) A coarse-grained parallel algorithm for the all-substrings longest common subsequence problem. Algorithmica 45(3):301–335
Alves C, Caceres E, Dehne F, Song S (2002) Parallel dynamic programming for solving the string editing problem on a CGM/BSP. In: Proc 14th ACM symp on parallel algorithms and architectures (SPAA). ACM Press, New York, pp 275–281. ACM Dig Library
Alves C, Caceres E, Dehne F, Song S (2002) A CGM/BSP parallel similarity algorithm. In: Proc Brazilian workshop on bioinformatics, pp 1–8
Bradford PG (1994) Parallel dynamic programming. Doctoral dissertation, Indiana Univ
Coppersmith D, Winograd S (1987) Matrix multiplication via arithmetic progressions. In: Proceedings of the nineteenth annual ACM symposium on theory of computing, pp 1–6
Cormen TH, Leiserson CE, Rivest RL, Stein C (2001) Introduction to algorithms, 2nd edn. MIT Press, Cambridge
Culler D, Karp R, Patterson D, Sahay A, Schauser K, Santos E, Subramonian R, Von Eicken T (1996) LogP: towards a realistic model of parallel computation. In: 4th ACM SIGPLAN symp principles and practices of parallel programming, pp 1–12
Dehne F, Fabri A, Rau-Chaplin A (1993) Scalable parallel geometric algorithms for coarse-grained multicomputers. In: Proc ACM 9th annual symposium on computational geometry, pp 298–307
Ferreira A (1996) Parallel and communication algorithms for hypercube multi-processors. In: Zomaya A (ed) Handbook of parallel and distributed computing. McGraw-Hill, New York
Fotso L, Kengne Tchendji V, Myoupo JF (2010) Load balancing schemes for parallel processing of dynamic programming on BSP/CGM model. In: Intern conf parall distr process technique and applications (PDPTA’2010), pp 710–716
Galil Z, Park K (1991) Parallel dynamic programming. Technical Report CUCS-040-91, Columbia University, Computer Science Dept
Garcia T, Myoupo JF, Seme D (2003) A coarse-grained multi-computer algorithm for the longest common subsequence problem. In: 10th Euromicro workshop on parallel and distributed processing, (PDP20003), pp 349–356
Gengler M (1996) An introduction to parallel dynamic programming. In: Lecture notes in computer science, vol 1054. Springer, Berlin, pp 87–114
Grama A, Gupta A, Karypis G, Kumar V (2003) Introduction to parallel computing, 2nd edn. Addison-Wesley, Reading
Guibas LJ, Kung HT, Thompson CD (1979) Direct VLSI implementation of combinatorial algorithms. In: Proceedings of conference on very large scale integration, California Institute of Technology, pp 509–525
Gupta G, Tang D (1995) An efficient parallel dynamic programming algorithm. Comput Math Appl 30(8):65–74
Huang S-HS, Liu H, Viswanathan V (1994) Parallel dynamic programming. IEEE Trans Parallel Distrib Syst 5(3):326–328
Ibarra OH, Pong TC, Sohn SM (1991) Parallel recognition and parsing on the hypercube. IEEE Trans Comput 40(6):764–770
Karypis G, Kumar V (1993) Efficient parallel mappings of a dynamic programming algorithm. In: Proceedings of 7th international parallel processing symposium, pp 563–568
Kechid M, Myoupo JF (2009) A coarse-grain multi-computer algorithm for the minimum cost parenthesization problem. In: Intern conf parall distr process technique and applications (PDPTA’2009), vol 2, pp 480–486
Krusche P, Tiskin A (2006) Efficient longest common subsequence computation using bulk-synchronous parallelism. In: Proceedings of ICCSA. Lecture notes in computer science, vol 3984. Springer, Berlin, pp 165–174
Low MYH, Liu W, Schmidt B (2007) A parallel BSP algorithm for irregular dynamic programming. In: Proceedings of the 7th international conference on advanced parallel processing technologies (APPT’07), pp 151–160
Myoupo JF (1993) Mapping dynamic programming onto modular linear systolic arrays. Distrib Comput 6:165–179
Myoupo JF (1992) Synthesizing linear systolic arrays for dynamic programming problems. Parallel Process Lett 2(1):97–110
Rytter W (1988) Note on efficient parallel computations for some dynamic programming problems. Theor Comput Sci 59:297–307
Valiant L (1990) A bridging model for parallel computation. Commun ACM 33(8):103–111
Valiant LG (1989) Bulk-synchronous parallel computers. In: Reeve M (ed) Parallel processing and artificial intelligence. Wiley, New York, pp 15–22
Wah B, Li GJ (1985) Parallel processing of serial dynamic programming problems. In: Proc COMPSAC85, pp 81–89
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Kengne Tchendji, V., Myoupo, J.F. An efficient coarse-grain multicomputer algorithm for the minimum cost parenthesizing problem. J Supercomput 61, 463–480 (2012). https://doi.org/10.1007/s11227-011-0601-9
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-011-0601-9