Calculating Genomic Distances in Parallel Using OpenMP
- 279 Downloads
By finding the corresponding shortest edit distance between two signed gene permutations, we can know the smallest number of insertions, deletions, and inversions required to change on string of genes into another, where insertion, deletion and inversion are the process of genome evolutions. However, it is NP-hard problem to compute the edit distance between two genomes. Marron et al proposed a polynomial-time approximation algorithm to compute (near) minimum edit distances under inversions, deletions, and unrestricted insertions. Our work is based on Marron’s et al algorithm, which carries out lots of comparisons and sorting to calculate the edit distance. These comparisons and sorting are extremely time-consuming, and they result in the decrease of the efficiency. We believe the efficiency of the algorithm can be improved by parallelizing. We parallelize their algorithm via OpenMP on Intel C++ compiler for Linux 7.1, and compare three levels of parallelism: coarse grain, fine grain and combination of both. The experiments are conducted for a varying number of threads and length of the gene sequences. The experimental results have shown that either coarse grain parallelism or fine grain parallelism alone does not improve the performance of the algorithm very much, however, the combination of both fine grain and coarse grain parallelism have improve the performance to a great extent.
KeywordsEdit Distance Chunk Size Genomic Distance Edit Sequence OpenMP Program
Unable to display preview. Download preview PDF.
- 6.Liu, T., Moret, B.M.E., Bader, D.A.: An Exact Linear-time Algorithm for Computing Genomic Distances under Inversions and Deletions U. New Mexico, TR-CS-2003-31Google Scholar
- 8.Quinn, M.: Parallel Programming in C with MPI and OpenMP. The McGraw-Hill Companies, New York (2004)Google Scholar
- 10.Kaplan, H., Shamir, R., Tarjan, R.E.: Faster and Simpler Algorithm for Sorting Signed Permutations by Reversals. In: Proc. SODA 1997, pp. 344–351 (1997); SIAM Journal on Computing 29(3), 880–892 (1999)Google Scholar
- 11.Hwang, K.: Advanced Computer Architecture – Parallelism, Scalability, Programmability. McGraw-Hill, New York (1993)Google Scholar
- 12.Tian, X., Bik, A., Girkar, M., Grey, P., Satio, H., Su, E.: Intel OpenMP C++/Fortran Compiler for Hyper-Threading Technology: Implementation and Performance. Intel TechnologyJourna (February 2002), http://developer.intel.com/technology/itj/2002/volume06issue01/
- 13.Dobzhansky, T., sturtevant, A.H.: Inversions in the Chromosome of Drosophila Pseudoobscura. Genetics 23, 28–64 (1938)Google Scholar
- 14.Bryant, D.: The Complexity of Calculating Exemplar Distances. In: Sankoff, D., Nadeau, J. (eds.) Comparative Genomics: Empirical and Analytical Approaches to Gene Order Dynamics, Map Alignment, and the Evolution of Gene Families, pp. 207–212. Kluwer Academic Pubs., Dordrecht (2000)Google Scholar