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.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call