Exploiting word-level parallelism for fast convolutions and their applications in approximate string matching

  • Authors:
  • Kimmo Fredriksson;Szymon Grabowski

  • Affiliations:
  • School of Computing, University of Eastern Finland, P.O. Box 1627, 70211 Kuopio, Finland;Institute of Applied Computer Science, Lodz University of Technology, Al.Politechniki 11, 90-924 Łód, Poland

  • Venue:
  • European Journal of Combinatorics
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

We develop a method for performing convolutions efficiently in a word RAM model of computation, having a word size of w=@W(logn) bits, where n is the input size. The basic idea is to pack several elements of the input vector into a single computer word, effectively enabling parallel computation of convolutions. The technique is applied to approximate string matching under Hamming distance. The obtained algorithms are the fastest known. In particular, we reduce the complexity of the Amir et al. (2000) algorithm for k-mismatches from O(nklogk) to O(n+nk/wlogk). Those algorithms impose some (not severe) limitation on the pattern length, m. We present another, less efficient however, technique based on word-level parallelism, which works without the pattern length limitation.