Skip to main content

Multi-stream Parallel String Matching on Kepler Architecture

  • Conference paper
Mobile, Ubiquitous, and Intelligent Computing

Part of the book series: Lecture Notes in Electrical Engineering ((LNEE,volume 274))

Abstract

Aho-Corasick (AC) algorithm is a commonly used string matching algorithm. It performs multiple patterns matching for computer and network security, bioinformatics, among many other applications. These applications impose high computational requirements, thus efficient parallelization of the AC algorithm is crucial. In this paper, we present a multi-stream based parallelization approach for the string matching using the AC algorithm on the latest Nvidia Kepler architecture. Our approach efficiently utilizes the HyperQ feature of the Kepler GPU so that multiple streams generated from a number of OpenMP threads running on the host multicore processor can be efficiently executed on a large number of fine-grain processing cores. Experimental results show that our approach delivers up to 420Gbps throughput performance on Nvidia Tesla K20 GPU.

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 169.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 219.99
Price excludes VAT (USA)
  • Durable hardcover 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. Aho, A.V., Corasick, M.J.: Efficient string matching: An aid to bibliographic search. Communications of the ACM 20(Session 10), 761–772 (1977)

    Google Scholar 

  2. Jacob, N., Brodley, C.: Offloading IDS Computation to the GPU. In: The 22nd Annual Computer Security Applications Conference (2006)

    Google Scholar 

  3. Lin, C.-H., Tsai, S.-Y., Liu, C.-H., Chang, S.-C., Shyu, J.-M.: Accelerating String Matching Using Multi-Threaded Algorithm on GPU. In: 2010 IEEE Global Telecommunications Conference, GLOBECOM 2010, December 6-10, pp. 1–5 (2010)

    Google Scholar 

  4. Norton, M.: Optimizing Pattern Matching for Intrusion Detection (July 2004), http://docs.idsresearch.org/OptimizingPatternMatchingForIDS.pdf

  5. NVIDIA, CUDA Best Practices Guide: NVIDIA CUDA C Programming Best Practices Guide – CUDA Toolkit 4.0 (May 2011)

    Google Scholar 

  6. NVIDIA, NVidia gtx280, http://kr.nvidia.com/object/geforce_family_kr.html

  7. OpenACC (March 2012), http://www.openacc-standard.org

  8. OpenCL, http://www.khronos.org/opencl/

  9. Saavedra-Barrera, R.H., Culler, D.E., von Eicken, T.: Analysis of multithreaded architectures for parallel computing. In: ACM Symposium on Parallel Algorithms and Architectures - SPAA, pp. 169–178 (1990)

    Google Scholar 

  10. Scarpazza, D., Villa, O., Petrini, F.: Peak-Performance DFA-based String Matching on the Cell Processor. In: International Workshop on System Management Techniques, Processes, and Services (2007)

    Google Scholar 

  11. Scarpazza, D., Villa, O., Petrini, F.: Accelerating Real-Time String Searching with Multicore Processors. IEEE Computer Society (2008)

    Google Scholar 

  12. Schatz, M.C., Trapnell, C.: Fast Exact String Matching on the GPU. Center for Bioinformatics and Computational Biology (2007)

    Google Scholar 

  13. Sen, S.: Performance Charaterization and Improvement of Snort as an IDS (August 2006), http://www.princeton.edu/~soumyas/bell_labs_report_snort.pdf

  14. Smith, R., Goyal, N., Ormont, J., Sankaralingam, K., Estan, C.: Evaluating GPUs for Network Packet Signature Matching. In: IEEE International Symposium on Performance Analysis of Systems and Software, ISPASS 2009, April 26-28, pp. 175–184 (2009)

    Google Scholar 

  15. Tumeo, A., Villa, O.: Accelerating DNA analysis applications on GPU clusters. In: 2010 IEEE 8th Symposium on Application Specific Processors (SASP), June 13-14, pp. 71–76 (2010)

    Google Scholar 

  16. Tumeo, A., Villa, O.: Efficient Pattern Matching on GPUs for Intrusion Detection Systems. In: Proceedings of the 7th ACM International Conference on Computing Frontiers (2010)

    Google Scholar 

  17. Vasiliadis, G., Antonatos, S., Polychronakis, M., Markatos, E.P., Ioannidis, S.: Gnort: High Performance Network Intrusion Detection Using Graphics Processors. In: Lippmann, R., Kirda, E., Trachtenberg, A. (eds.) RAID 2008. LNCS, vol. 5230, pp. 116–134. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  18. Volkov, V., Demmel, J.W.: Benchmarking GPUs to Tune Dense Linear Algebra. In: SC 2008, pp. Art.31:1–31:11 (November 2008)

    Google Scholar 

  19. White paper, NVIDIA’s Next Generation CUDA Compute Architecture: Kepler GK 110 The Fastest, Most Efficient HPC Architecture Ever Built, Nvidia (2012)

    Google Scholar 

  20. Zha, X., Sahni, S.: Multipattern string matching on a GPU. In: IEEE Symposium on Computers and Communications (ISCC), June 28-July 1, pp. 277–282 (2011)

    Google Scholar 

  21. Zha, X., Scarpazza, D., Sahni, S.: Highly Compressed Multi-pattern String Matching on the Cell Broadband Engine. In: IEEE Symposium on Computers and Communications (ISCC), June 28-July 1, pp. 257–264 (2011)

    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

Tran, NP., Lee, M., Hong, S., Choi, D.H. (2014). Multi-stream Parallel String Matching on Kepler Architecture. In: Park, J., Adeli, H., Park, N., Woungang, I. (eds) Mobile, Ubiquitous, and Intelligent Computing. Lecture Notes in Electrical Engineering, vol 274. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-40675-1_47

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-40675-1_47

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-40674-4

  • Online ISBN: 978-3-642-40675-1

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics