Bit-parallel approximate pattern matching: Kepler GPU versus Xeon Phi

被引:15
|
作者
Tuan Tu Tran [1 ]
Liu, Yongchao [2 ]
Schmidt, Bertil [1 ]
机构
[1] Johannes Gutenberg Univ Mainz, Inst Informat, D-55128 Mainz, Germany
[2] Georgia Inst Technol, Sch Computat Sci & Engn, Atlanta, GA 30332 USA
关键词
Bit-parallel; Approximate pattern matching; Wu-Manber algorithm; CUDA; GPU; Xeon Phi; EXTENSIONS;
D O I
10.1016/j.parco.2015.11.001
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Approximate pattern matching (APM) targets to find the occurrences of a pattern inside a subject text allowing a limited number of errors. It has been widely used in many application areas such as bioinformatics and information retrieval. Bit-parallel APM takes advantage of the intrinsic parallelism of bitwise operations inside a machine word. This approach typically encodes non-deterministic finite automaton (NFA) states or value differences between adjacent cells of a dynamic programming matrix in the form of bit arrays. Wu-Manber (WM) is a well-known bit-parallel APM algorithm, which simulates an NFA and gains parallel efficiency by performing multiple state updates within a machine word. An important parameter is the machine word size (e.g. 32 or 64 bits for CPUs). Due to increasing vector capabilities, efficient mapping of bit-parallel APM algorithms onto modern high performance computing architectures is an interesting research topic. Prominent examples are Xeon Phi coprocessors and CUDA-enabled GPUs, which provide words of size 512 bits (by means of vector registers) and 1024 bits (by means of warps), respectively. In this paper, we investigate mappings of the WM algorithm onto these two accelerator types. Both architectures are able to achieve around two orders-of-magnitude speedups compared to a single-threaded CPU implementation. Moreover, our tile-based implementation on a GeForce Titan graphics card runs up to 2.9 x faster than our implementation on an Intel Xeon Phi 5110P. Source code is available at http://xbitpar.sourceforge.net. (C) 2015 Elsevier B.V. All rights reserved.
引用
收藏
页码:128 / 138
页数:11
相关论文
共 50 条
  • [1] Bit-parallel multiple approximate string matching based on GPU
    Xu, Kefu
    Cui, Wenke
    Hu, Yue
    Guo, Li
    [J]. FIRST INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY AND QUANTITATIVE MANAGEMENT, 2013, 17 : 523 - 529
  • [2] A GPU-Based Bit-Parallel Multiple Pattern Matching Algorithm
    Hung, Che-Lun
    Wang, Hsiao-Hsi
    Hsu, Tzu-Hung
    Lin, Chun-Yuan
    [J]. IEEE 20TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS / IEEE 16TH INTERNATIONAL CONFERENCE ON SMART CITY / IEEE 4TH INTERNATIONAL CONFERENCE ON DATA SCIENCE AND SYSTEMS (HPCC/SMARTCITY/DSS), 2018, : 1219 - 1222
  • [3] Bit-Parallel Multiple Pattern Matching
    Tuan Tu Tran
    Giraud, Mathieu
    Varre, Jean-Stephane
    [J]. PARALLEL PROCESSING AND APPLIED MATHEMATICS, PT II, 2012, 7204 : 292 - 301
  • [4] Faster bit-parallel approximate string matching
    Hyyrö, H
    Navarro, G
    [J]. COMBINATORIAL PATTERN MATCHING, 2002, 2373 : 203 - 224
  • [5] Bit-Parallel Witnesses and Their Applications to Approximate String Matching
    Heikki Hyyrö
    Gonzalo Navarro
    [J]. Algorithmica , 2005, 41 : 203 - 231
  • [6] Bit-parallel approximate string matching algorithms with transposition
    Hyyro, Heikki
    [J]. JOURNAL OF DISCRETE ALGORITHMS, 2005, 3 (2-4) : 215 - 229
  • [7] Bit-parallel approximate string matching algorithms with transposition
    Hyyrö, H
    [J]. STRING PROCESSING AND INFORMATION RETRIEVAL, PROCEEDINGS, 2003, 2857 : 95 - 107
  • [8] Bit-parallel witnesses and their applications to approximate string matching
    Hyyrö, H
    Navarro, G
    [J]. ALGORITHMICA, 2005, 41 (03) : 203 - 231
  • [9] A Bit-Parallel Algorithm for Sequential Pattern Matching with Wildcards
    Guo, Dan
    Hong, Xiao-Li
    Hu, Xue-Gang
    Gao, Jun
    Liu, Ying-Ling
    Wu, Gong-Qing
    Wu, Xindong
    [J]. CYBERNETICS AND SYSTEMS, 2011, 42 (06) : 382 - 401
  • [10] Tighter packed bit-parallel NFA for approximate string matching
    Hyyro, Heikki
    [J]. IMPLEMENTATION AND APPLICATION OF AUTOMATA, 2006, 4094 : 287 - 289