Advertisement

On k-Mismatch Shortest Unique Substring Queries Using GPU

  • Daniel W. Schultz
  • Bojian Xu
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10847)

Abstract

k-mismatch shortest unique substring (SUS) queries have been proposed and studied very recently due to its useful applications in the subfield of computational biology. The k-mismatch SUS query over one given position of a string asks for a shortest substring that covers the given position and does not have a duplicate (within a Hamming distance of k) elsewhere in the string. The challenge in SUS query is to collectively find the SUS for every position of a massively long string in a both time- and space-efficient manner. All known efforts and results have been focused on improving and optimizing the time and space efficiency of SUS computation in the sequential CPU model. In this work, we propose the first parallel approach for k-mismatch SUS queries, particularly leveraging on the massive multi-threading architecture of the graphic processing unit (GPU) technology. Experimental study performed on a mid-end GPU using real-world biological data shows that our proposal is consistently faster than the fastest CPU solution by a factor of at least 6 for exact SUS queries (\(k=0\)) and at least 23 for approximate SUS queries over DNA sequences (\(k>0\)), while maintaining nearly the same peak memory usage as the most memory-efficient sequential CPU proposal. Our work provides practitioners a faster tool for SUS finding on massively long strings, and indeed provides the first practical tool for approximate SUS computation, because the any-case quadratical time cost of the state-of-the-art sequential CPU method for approximate SUS queries does not scale well even to modestly long strings.

Keywords

String Shortest unique substring Parallel computing GPU CUDA 

References

  1. 1.
    A lightweight suffix-sorting library. https://code.google.com/p/libdivsufsort
  2. 2.
    Compressed indexes and their testbeds. http://pizzachili.dcc.uchile.cl/texts.html
  3. 3.
    Cuda data parallel primitives library. http://cudpp.github.io/
  4. 4.
    Haubold, B., Pierstorff, N., Möller, F., Wiehe, T.: Genome comparison without alignment using shortest unique substrings. BMC Bioinf. 6(1), 123 (2005)CrossRefGoogle Scholar
  5. 5.
    Hon, W.K., Thankachan, S.V., Xu, B.: In-place algorithms for exact and approximate shortest unique substring problems. Theor. Comput. Sci. 690, 12–25 (2017)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Hu, X., Pei, J., Tao, Y.: Shortest Unique queries on strings. In: Moura, E., Crochemore, M. (eds.) SPIRE 2014. LNCS, vol. 8799, pp. 161–172. Springer, Cham (2014).  https://doi.org/10.1007/978-3-319-11918-2_16CrossRefGoogle Scholar
  7. 7.
    İleri, A.M., Külekci, M.O., Xu, B.: A simple yet time-optimal and linear-space algorithm for shortest unique substring queries. Theor. Comput. Sci. 562, 621–633 (2015)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Kasai, T., Lee, G., Arimura, H., Arikawa, S., Park, K.: Linear-time longest-common-prefix computation in suffix arrays and its applications. In: Proceedings of the Symposium on Combinatorial Pattern Matching, pp. 181–192 (2001)CrossRefGoogle Scholar
  9. 9.
    Pei, J., Wu, W.C.H., Yeh, M.Y.: On shortest unique substring queries. In: Proceedings of IEEE International Conference on Data Engineering (ICDE), pp. 937–948 (2013)Google Scholar
  10. 10.
    Tian, Y., Xu, B.: On longest repeat queries using GPU. In: Renz, M., Shahabi, C., Zhou, X., Cheema, M.A. (eds.) DASFAA 2015. LNCS, vol. 9049, pp. 316–333. Springer, Cham (2015).  https://doi.org/10.1007/978-3-319-18120-2_19CrossRefGoogle Scholar
  11. 11.
    Tsuruta, K., Inenaga, S., Bannai, H., Takeda, M.: Shortest unique substrings queries in optimal time. In: Geffert, V., Preneel, B., Rovan, B., Štuller, J., Tjoa, A.M. (eds.) SOFSEM 2014. LNCS, vol. 8327, pp. 503–513. Springer, Cham (2014).  https://doi.org/10.1007/978-3-319-04298-5_44CrossRefGoogle Scholar
  12. 12.
    Wang, L., Baxter, S., Owens, J.D.: Fast parallel suffix array on the GPU. In: Träff, J.L., Hunold, S., Versaci, F. (eds.) Euro-Par 2015. LNCS, vol. 9233, pp. 573–587. Springer, Heidelberg (2015).  https://doi.org/10.1007/978-3-662-48096-0_44CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Department of Computer ScienceEastern Washington UniversityCheneyUSA

Personalised recommendations