Skip to main content

Parallel Longest Increasing Subsequences in Scalable Time and Memory

  • Conference paper
Parallel Processing and Applied Mathematics (PPAM 2009)

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

Abstract

The longest increasing subsequence (LIS) problem is a classical problem in theoretical computer science and mathematics. Most existing parallel algorithms for this problem have very restrictive slackness conditions which prevent scalability to large numbers of processors. Other algorithms are scalable, but not work-optimal w.r.t. the fastest sequential algorithm for the LIS problem, which runs in time O(n logn) for n numbers in the comparison-based model. In this paper, we propose a new parallel algorithm for the LIS problem. Our algorithm solves the more general problem of semi-local comparison of permutation strings of length n in time O(n 1.5 / p) on p processors, has scalable communication cost of \(O(n/\sqrt{p})\) and is synchronisation-efficient. Furthermore, we achieve scalable memory cost, requiring \(O(n/\sqrt{p})\) of storage on each processor. When applied to LIS computation, this algorithm is superior to previous approaches since computation, communication, and memory costs are all scalable.

Research supported by the Centre for Discrete Mathematics and Its Applications (DIMAP), University of Warwick, EPSRC award EP/D063191/1.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. Erdős, P., Szekeres, G.: A combinatorial problem in geometry. Compositio Math. 2, 463–470 (1935)

    MathSciNet  Google Scholar 

  2. Bespamyatnikh, S., Segal, M.: Enumerating longest increasing subsequences and patience sorting. Information Processing Letters 76, 7–11 (2000)

    Article  MathSciNet  Google Scholar 

  3. McColl, W.F.: General purpose parallel computing. In: Lectures on parallel computation, pp. 337–391. Cambridge University Press, New York (1993)

    Google Scholar 

  4. Garcia, T., Myoupo, J., Semé, D.: A work-optimal CGM algorithm for the longest increasing subsequence problem. In: Proc. PDPTA (2001)

    Google Scholar 

  5. Nakashima, T., Fujiwara, A.: A cost optimal parallel algorithm for patience sorting. Parallel Processing Letters 16(1), 39–52 (2006)

    Article  MathSciNet  Google Scholar 

  6. Semé, D.: A CGM algorithm solving the longest increasing subsequence problem. In: Gavrilova, M.L., Gervasi, O., Kumar, V., Tan, C.J.K., Taniar, D., Laganá, A., Mun, Y., Choo, H. (eds.) ICCSA 2006. LNCS, vol. 3984, pp. 10–21. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  7. Hunt, J.W., Szymanski, T.G.: A fast algorithm for computing longest common subsequences. Communications of the ACM 20(5), 350–353 (1977)

    Article  MATH  MathSciNet  Google Scholar 

  8. Wagner, R.A., Fischer, M.J.: The string-to-string correction problem. J. ACM 21(1), 168–173 (1974)

    Article  MATH  MathSciNet  Google Scholar 

  9. McColl, W.F.: Scalable Computing. In: van Leeuwen, J. (ed.) Computer Science Today: Recent Trends and Developments. LNCS, vol. 1000, pp. 46–61. Springer, Heidelberg (1995)

    Google Scholar 

  10. Krusche, P., Tiskin, A.: Efficient parallel string comparison. In: ParCo. NIC Series, vol. 38, pp. 193–200. John von Neumann Institute for Computing (2007)

    Google Scholar 

  11. Tiskin, A.: Longest common subsequences in permutations and maximum cliques in circle graphs. In: Lewenstein, M., Valiente, G. (eds.) CPM 2006. LNCS, vol. 4009, pp. 270–281. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  12. Apostolico, A., Atallah, M.J., Larmore, L.L., McFaddin, S.: Efficient parallel algorithms for string editing and related problems. SIAM J. Comp. 19(5), 968–988 (1990)

    Article  MATH  MathSciNet  Google Scholar 

  13. Tiskin, A.: Semi-local longest common subsequences in subquadratic time. J. Disc. Alg. 6(4), 570–581 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  14. Valiant, L.G.: A bridging model for parallel computation. Communications of the ACM 33(8), 103–111 (1990)

    Article  Google Scholar 

  15. Bisseling, R.: Parallel Scientific Computation: A Structured Approach Using BSP and MPI. Oxford University Press, Oxford (2004)

    MATH  Google Scholar 

  16. Tiskin, A.: Semi-local string comparison: Algorithmic techniques and applications. Extended version of [19], arXiv: 0707.3619v5

    Google Scholar 

  17. Shi, H., Schaeffer, J.: Parallel sorting by regular sampling. J. Parallel and Distributed Computing 14(4), 361–372 (1992)

    Article  MATH  Google Scholar 

  18. Tiskin, A.: The bulk-synchronous parallel random access machine. Theoretical Computer Science 196(1-2), 109–130 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  19. Tiskin, A.: Semi-local string comparison: Algorithmic techniques and applications. Mathematics in Computer Science 1(4), 571–603 (2008)

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Krusche, P., Tiskin, A. (2010). Parallel Longest Increasing Subsequences in Scalable Time and Memory. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Wasniewski, J. (eds) Parallel Processing and Applied Mathematics. PPAM 2009. Lecture Notes in Computer Science, vol 6067. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-14390-8_19

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-14390-8_19

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-642-14390-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics