Parallelization and optimization of Mfold on shared memory system

  • Authors:
  • Qiankun Miao;Guangzhong Sun;Jiulong Shan;Guoliang Chen

  • Affiliations:
  • Key Laboratory on High Performance Computing, Anhui Province, School of Computer Science, University of Science and Technology of China, Hefei 230027, PR China and The Key Laboratory of Complex Sy ...;Key Laboratory on High Performance Computing, Anhui Province, School of Computer Science, University of Science and Technology of China, Hefei 230027, PR China;Application Research Lab, Intel China Research Center, Beijing, China;Key Laboratory on High Performance Computing, Anhui Province, School of Computer Science, University of Science and Technology of China, Hefei 230027, PR China

  • Venue:
  • Parallel Computing
  • Year:
  • 2010

Quantified Score

Hi-index 0.01

Visualization

Abstract

Mfold is a widely used application for predicating RNA secondary structure, which is an important problem in bioinformatics. In Mfold, a dynamic programming algorithm is used to find the minimum free energy structure, which is the most time-consuming part. This paper focuses on the parallelization and optimization of Mfold on shared memory systems. First, we parallelize the dynamic programming part of Mfold with Message-Passing Interface (MPI). We further optimize the parallelized DP algorithm by eliminating data transfers among processes on a 16-way multi-processor system. We then compare the performance of our parallel Mfold before and after this optimization. The comparison results indicate that with optimization the parallel Mfold performs twice as fast. Furthermore, we make use of a performance analysis tool to gather several hardware performance events, which explain in details the performance gap incurred by this optimization.