A Fast Divide-and-Conquer Algorithm for Indexing Human Genome Sequences
IEICE Transactions on Information and Systems, E94D(7), pp 1369-1377, 2011-7
Since the release of human genome sequences, one of the most important research issues is about indexing the genome sequences, and the suffix tree is most widely adopted for that purpose. The traditional suffix tree construction algorithms suffer from severe performance degradation due to the memory bottleneck problem. The recent disk-based algorithms also provide limited performance improvement due to random disk accesses. Moreover, they do not fully utilize the recent CPUs with multiple cores. In this paper, we propose a fast algorithm based on 'divide-and-conquer' strategy for indexing the human genome sequences. Our algorithm nearly eliminates random disk accesses by accessing the disk in the unit of contiguous chunks. In addition, our algorithm fully utilizes the multi-core CPUs by dividing the genome sequences into multiple partitions and then assigning each partition to a different core for parallel processing. Experimental results show that our algorithm.outperforms the previous fastest DIGEST algorithm by up to 10.5 times.
human genome sequences; indexing; suffix tree; memory bottleneck problem; divide-and-conquer; parallel processing