Longjiang Guo, Shufang Du, Meirui Ren, Yu Liu, Jinbao Li, J. He, Ning Tian, Keqin Li
{"title":"Parallel Algorithm for Approximate String Matching with K Differences","authors":"Longjiang Guo, Shufang Du, Meirui Ren, Yu Liu, Jinbao Li, J. He, Ning Tian, Keqin Li","doi":"10.1109/NAS.2013.40","DOIUrl":null,"url":null,"abstract":"Approximate string matching using the k-difference technique has been widely applied to many fields such as pattern recognition and computational biology. Data dependency exists in the traditional sequential algorithm. Therefore, it is hard to design a parallel algorithm for approximate string matching with k differences. This paper presents a technique to eliminate data dependency. Based on this technique, this paper also presents a parallel algorithm which can calculate the elements in the same row of the edit distance matrix in parallel by eliminating data dependency. The algorithm has high parallelism, but requires synchronization. To validate the proposed algorithm, it is implemented on GPU and multiple-core CPUs. Moreover, the CUDA optimization techniques are also presented in the paper. Finally, experimental results show that, compared with the traditional sequential algorithm on CPU with twenty-four cores, the proposed parallel algorithm achieves speedup of 7-42 on GPU.","PeriodicalId":213334,"journal":{"name":"2013 IEEE Eighth International Conference on Networking, Architecture and Storage","volume":"230 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2013-07-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2013 IEEE Eighth International Conference on Networking, Architecture and Storage","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/NAS.2013.40","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8
Abstract
Approximate string matching using the k-difference technique has been widely applied to many fields such as pattern recognition and computational biology. Data dependency exists in the traditional sequential algorithm. Therefore, it is hard to design a parallel algorithm for approximate string matching with k differences. This paper presents a technique to eliminate data dependency. Based on this technique, this paper also presents a parallel algorithm which can calculate the elements in the same row of the edit distance matrix in parallel by eliminating data dependency. The algorithm has high parallelism, but requires synchronization. To validate the proposed algorithm, it is implemented on GPU and multiple-core CPUs. Moreover, the CUDA optimization techniques are also presented in the paper. Finally, experimental results show that, compared with the traditional sequential algorithm on CPU with twenty-four cores, the proposed parallel algorithm achieves speedup of 7-42 on GPU.