Multicore and GPU algorithms for Nussinov RNA folding

BMC Bioinformatics. 2014;15 Suppl 8(Suppl 8):S1. doi: 10.1186/1471-2105-15-S8-S1. Epub 2014 Jul 14.

Abstract

Background: One segment of a RNA sequence might be paired with another segment of the same RNA sequence due to the force of hydrogen bonds. This two-dimensional structure is called the RNA sequence's secondary structure. Several algorithms have been proposed to predict an RNA sequence's secondary structure. These algorithms are referred to as RNA folding algorithms.

Results: We develop cache efficient, multicore, and GPU algorithms for RNA folding using Nussinov's algorithm.

Conclusions: Our cache efficient algorithm provides a speedup between 1.6 and 3.0 relative to a naive straightforward single core code. The multicore version of the cache efficient single core algorithm provides a speedup, relative to the naive single core algorithm, between 7.5 and 14.0 on a 6 core hyperthreaded CPU. Our GPU algorithm for the NVIDIA C2050 is up to 1582 times as fast as the naive single core algorithm and between 5.1 and 11.2 times as fast as the fastest previously known GPU algorithm for Nussinov RNA folding.

Publication types

  • Research Support, N.I.H., Extramural
  • Research Support, Non-U.S. Gov't

MeSH terms

  • Algorithms*
  • Computational Biology / instrumentation*
  • Computational Biology / methods
  • Computers
  • Microcomputers
  • Nucleic Acid Conformation
  • RNA / chemistry*
  • RNA / genetics
  • RNA Folding*

Substances

  • RNA