Logo image
A High Performance Parallel Algorithm for Approximate String Matching on Multi-core Processor
Thesis

A High Performance Parallel Algorithm for Approximate String Matching on Multi-core Processor

Lin, Sheng-Yuan
Masters, 國立清華大學, 資訊工程學系
2012

Abstract

近似字串比對 編輯距離 位元平行法 非確定有限狀態自動機 平行演算法 平行程式 平行運算 OpenMP Approximate string matching Edit distance Bit-parallelism Nondeterministic finite automaton Parallel algorithm Parallel programming Parallel computing OpenMP
Approximate string matching has been widely applied in various research and application domains including computational biology, information retrieval, and voice recognition. For an input text, the approximate string matching technique finds all positions of substrings that are approximately matched by a given pattern. Online approximate string matching, the searching without preprocessing the text, has been studied during recent decades. In these years, several researchers focused on accelerating approximate string matching using parallel computing; however, these works only applied a straightforward parallel approach and have room for improvement. As the complexity of information rapidly increase, the matching algorithm demands for better performance. In this work, we propose a novel parallel algorithm called high-density parallelism for online approximate string matching. The main idea of high-density parallelism is to distribute many light-weight threads on every character to perform the matching. Under such parallel architecture, we develop several strategies to decrease the workload of threads, including making the memory usage independent of pattern size. Experiments show that the proposed parallel algorithm reduces the matching runtime much better than traditional parallel approach, especially for large patterns. Based on the state-of-the-art serial algorithms and different parallel approaches, we provide a comprehensive parallel study for online approximate string matching.

Metrics

1 Record Views

Details

Logo image