An Optimized Parallel Algorithm for Exact String Matching Using Message Passing Interface

  • Sucharitha Shetty
  • B. Dinesh RaoEmail author
  • Srikanth Prabhu
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 950)


Data Partitioning is one of the key approaches followed in parallelism. It has proved its efficiency on many algorithms and still lot of work is going on this area. In this paper we propose an optimization technique for string matching using data partitioning with multi-core architecture. The paper primarily focuses on caching and re-utilization of processes. The experiments showed that concept of caching increased the speed drastically for frequently asked patterns. The MPI proposed implementation highlighted the increase in efficiency using multi-core and decrease in performance when the cores were reutilized.


Data partitioning MPI I/O 


  1. 1.
    DeWitt, D., Gray, J.: Parallel database systems: the future of high performance database systems. Commun. ACM 35(6), 85–98 (1992)CrossRefGoogle Scholar
  2. 2.
    Chaarawi, M., Dinan, J., Kimpe, D.: On the usability of the MPI shared file pointer routines. In: Träff, J.L., Benkner, S., Dongarra, J.J. (eds.) EuroMPI 2012. LNCS, vol. 7490, pp. 258–267. Springer, Heidelberg (2012). Scholar
  3. 3.
    Message Passing Interface Forum: MPI-2: Extensions to the Message Passing Interface (1997).
  4. 4.
    Chaarawi, M., Gabriel, E., Keller, R., Graham, R.L., Bosilca, G., Dongarra, J.J.: OMPIO: a modular software architecture for MPI I/O. In: Cotronis, Y., Danalis, A., Nikolopoulos, D.S., Dongarra, J. (eds.) EuroMPI 2011. LNCS, vol. 6960, pp. 81–89. Springer, Heidelberg (2011). Scholar
  5. 5.
    Navarro, G.: Pattern matching. J. Appl. Stat. 31(8), 925–949 (2004)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Rajashekharaiah, K.M.M., MadhuBabu, C., Raju, S.V.: Parallel string matching algorithm using grid. Int. J. Distrib. Parallel Syst. 3(3), 21 (2012)CrossRefGoogle Scholar
  7. 7.
    Sharma, R., Kumar, R.: Design and analysis of parallel linear search algorithm. Int. J. Latest Trends Eng. Technol. 10(1), 35–38 (2018)Google Scholar
  8. 8.
    Byna, S., Chen, Y., Sun, X.H., Thakur, R., Gropp, W.: Parallel I/O prefetching using MPI file caching and I/O signatures. In: Proceedings of the 2008 ACM/IEEE Conference on Supercomputing, p. 44. IEEE Press (2008)Google Scholar
  9. 9.
    Michailidis, P.D., Margaritis, K.G.: String matching problem on a cluster of personal computers: experimental results. In: Proceedings of the 15th International Conference Systems for Automation of Engineering and Research, pp. 71–75 (2001)Google Scholar
  10. 10.
    Flynn, M.J.: Very high-speed computing systems. Proc. IEEE 54(12), 1901–1909 (1966)CrossRefGoogle Scholar

Copyright information

© Springer Nature Singapore Pte Ltd. 2018

Authors and Affiliations

  1. 1.Department of Computer Science and EngineeringManipal Institute of Technology, Manipal Academy of Higher EducationManipalIndia
  2. 2.School of Information ScienceManipal Academy of Higher EducationManipalIndia

Personalised recommendations