skip to main content
10.1145/3035918.3035954acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
research-article

Accelerating Pattern Matching Queries in Hybrid CPU-FPGA Architectures

Published:09 May 2017Publication History

ABSTRACT

Taking advantage of recently released hybrid multicore architectures, such as the Intel's Xeon+FPGA machine, where the FPGA has coherent access to the main memory through the QPI bus, we explore the benefits of specializing operators to hardware. We focus on two commonly used SQL operators for strings: LIKE, and REGEXP_LIKE, and provide a novel and efficient implementation of these operators in reconfigurable hardware. We integrate the hardware accelerator into MonetDB, a main-memory column store, and demonstrate a significant improvement in response time and throughput. Our Hardware User Defined Function (HUDF) can speed up complex pattern matching by an order of magnitude in comparison to the database running on a 10-core CPU. The insights gained from integrating hardware based string operators into MonetDB should also be useful for future designs combining hardware specialization and databases.

References

  1. Altera. Programming FPGAs with OpenCL. https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/wp/wp-01173-opencl.pdf.Google ScholarGoogle Scholar
  2. R. S. Boyer and J. S. Moore. A fast string searching algorithm. Communications of the ACM, 20(10):762--772, 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. R. Chen and V. K. Prasanna. Accelerating Equi-Join on a CPU-FPGA Heterogeneous Platform. FCCM'16.Google ScholarGoogle Scholar
  4. C. Clark and D. Schimmel. Scalable pattern matching for high speed networks. In FCCM'04. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. C. Dennl, D. Ziener, and J. Teich. Acceleration of SQL restrictions and aggregations through FPGA-based dynamic partial reconfiguration. In FCCM'13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. J. Do, Y.-S. Kee, J. M. Patel, et al. Query processing on Smart SSDs: Opportunities and challenges. In SIGMOD'13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Y. Fang, T. T. Hoang, M. Becchi, and A. A. Chien. Fast support for unstructured data processing: The unified automata processor. In MICRO-48'15. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Ficara, S. Giordano, G. Procissi, et al. An improved DFA for fast regular expression matching. ACM SIGCOMM, 38(5):29--40, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. R. W. Floyd and J. Ullman. The compilation of regular expressions into integrated circuits. J. ACM, 29(3), 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. E. S. Fukuda, H. Inoue, T. Takenaka, et al. Caching memcached at reconfigurable network interface. In FPL'14.Google ScholarGoogle Scholar
  11. R. J. Halstead, B. Sukhwani, H. Min, M. Thoennes, P. Dube, S. Asaad, and B. Iyer. Accelerating join operation for relational databases with FPGAs. In FCCM'13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. M. Hutton. Architectural paths to faster and more robust FPGAs. http://www.fpl2015.org/pdf/keynotes/3.pdf.Google ScholarGoogle Scholar
  13. Z. István, D. Sidler, and G. Alonso. Runtime parameterizable regular expression operators for databases. In FCCM'16.Google ScholarGoogle Scholar
  14. Z. Istvan, L. Woods, and G. Alonso. Histograms as a side effect of data movement for big data. In SIGMOD'14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Y. Kaneta, S.-i. Minato, and H. Arimura. Fast bit-parallel matching for network and regular expressions. In SPIRE'10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. T. Karnagel, R. Müller, and G. M. Lohman. Optimizing GPU-accelerated Group-By and aggregation. In ADMS'15.Google ScholarGoogle Scholar
  17. D. E. Knuth, J. H. Morris, Jr, and V. R. Pratt. Fast pattern matching in strings. SIAM journal on computing, 6(2):323--350, 1977.Google ScholarGoogle Scholar
  18. C.-H. Lin, C.-H. Liu, and S.-C. Chang. Accelerating regular expression matching using hierarchical parallel machines on GPU. In GLOBECOM'11.Google ScholarGoogle Scholar
  19. F. Marass and C. Upton. Sequence searcher: A Java tool to perform regular expression and fuzzy searches of multiple DNA and protein sequences. BMC research notes, 2(1):14, 2009.Google ScholarGoogle Scholar
  20. A. Mitra, W. Najjar, and L. Bhuyan. Compiling PCRE to FPGA for accelerating snort ids. In ANCS'07. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. R. Mueller, J. Teubner, and G. Alonso. Streams on wires: a query compiler for FPGAs. PVLDB, 2(1):229--240, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. Najafi, M. Sadoghi, and H.-A. Jacobsen. Configurable hardware-based streaming architecture using online programmable-blocks. In ICDE'15.Google ScholarGoogle Scholar
  23. M. Najafi, M. Sadoghi, and H.-A. Jacobsen. Flexible query processor on FPGAs. PVLDB, 6(12):1310--1313, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. H. Noyes et al. Microns automata processor architecture: Reconfigurable and massively parallel automata processing. In HEART'14.Google ScholarGoogle Scholar
  25. N. Oliver, R. Sharma, S. Chang, et al. A reconfigurable computing system based on a cache-coherent fabric. In ReConFig'11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. V. Paxson. Bro: a system for detecting network intruders in real-time. Computer networks, 31(23):2435--2463, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. H. Pirk. Efficient cross-device query processing. In The VLDB PhD Workshop, 2012.Google ScholarGoogle Scholar
  28. P.K. Gupta. Accelerating datacenter workloads. http://www.fpl2016.org/slides/Gupta%20--%20Accelerating%20Datacenter%20Workloads.pdf.Google ScholarGoogle Scholar
  29. A. Putnam, A. M. Caulfield, E. S. Chung, D. Chiou, et al. A reconfigurable fabric for accelerating large-scale datacenter services. In ISCA'14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. M. Roesch. Snort - lightweight intrusion detection for networks. In LISA'99. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. M. Sadoghi, R. Javed, N. Tarafdar, H. Singh, R. Palaniappan, and H.-A. Jacobsen. Multi-query stream processing on FPGAs. In ICDE'12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. R. Sidhu and V. Prasanna. Fast regular expression matching using FPGAs. In FCCM'01. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. E. Sitaridi, O. Polychroniou, and K. A. Ross. SIMD-accelerated regular expression matching. In DAMON'16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. E. A. Sitaridi and K. A. Ross. GPU-accelerated string matching for database applications. PVLDB, 25(5):719--740, Oct. 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. J. Stuecheli, B. Blaner, C. Johns, and M. Siegel. CAPI: A coherent accelerator processor interface. IBM J. Research and Development, 59(1), Jan 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. J. Teubner and L. Woods. Data Processing on FPGAs. Synthesis Lectures on Data Management. Morgan & Claypool Publishers, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. J. Teubner, L. Woods, and C. Nie. Skeleton automata for FPGAs: reconfiguring without reconstructing. In SIGMOD'12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. W. S. Todd Mytkowicz, Madan Musuvathi. Data-parallel finite-state machines. ASPLOS'14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. T. Ueda, M. Ito, and M. Ohara. A Dynamically Reconfigurable Equi-Joiner on FPGA. IBM Tehnical Report RT0969, 2015.Google ScholarGoogle Scholar
  40. L. Woods, Z. István, and G. Alonso. Ibex - an intelligent storage engine with support for advanced SQL off-loading. PVLDB, 7(11), July 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. L. Woods, J. Teubner, and G. Alonso. Complex event detection at wire speed with FPGAs. PVLDB, 3(1--2):660--669, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Xilinx Inc. Vivado Design Suite User Guide: High-Level Synthesis.Google ScholarGoogle Scholar
  43. Y.-H. E. Yang, W. Jiang, and V. K. Prasanna. Compact architecture for high-throughput regular expression matching on FPGA. In ANCS'08. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Accelerating Pattern Matching Queries in Hybrid CPU-FPGA Architectures

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              SIGMOD '17: Proceedings of the 2017 ACM International Conference on Management of Data
              May 2017
              1810 pages
              ISBN:9781450341974
              DOI:10.1145/3035918

              Copyright © 2017 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 9 May 2017

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article

              Acceptance Rates

              Overall Acceptance Rate785of4,003submissions,20%

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader