Summary#R##N#Because of the large datasets that are usually involved in deoxyribonucleic acid (DNA) sequence alignment, the use of optimal local alignment algorithms (e.g., Smith–Waterman) is often unfeasible in practical applications. As such, more efficient solutions that rely on indexed search procedures are often preferred to significantly reduce the time to obtain such alignments. Some data structures that are usually adopted to build such indexes are suffix trees, suffix arrays, and the hash tables of q-mers.#R##N##R##N#This paper presents a comparative analysis of highly optimized parallel implementations of index-based search algorithms using these three distinct data structures, considering two different parallel platforms: a homogeneous multi-core central processing unit (CPU) and a NVidia Fermi graphics processing unit (GPU). Contrasting to what happens with CPU implementations, the obtained experimental results reveal that GPU implementations clearly favor the suffix arrays, because of the achieved performance in terms of memory accesses. Furthermore, the results also reveal that both the suffix trees and suffix arrays outperform the hash tables of q-mers when dealing with the largest datasets.#R##N##R##N#When compared with a quad-core CPU, the results demonstrate the possibility to achieve speedups as high as 65 with the GPU when considering a suffix-array index, thus making it an adequate choice for high-performance bioinfomatics applications.Copyright © 2012 John Wiley & Sons, Ltd.
['Nuno Sebastião', 'Gustavo Encarnacao', 'Nuno Roma']
Implementation and performance analysis of efficient index structures for DNA search algorithms in parallel platforms