Bioinformatics Advance Access published online on June 16, 2008
Bioinformatics, doi:10.1093/bioinformatics/btn308
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Memory-efficient dynamic programming backtrace and pairwise local sequence alignment
1Center for Bioinformatics, Wadsworth Center, New York State Department of Health, Albany, NY 12208-3425, USA and 2Department of Computer Science, Rensselaer Polytechnic Institute, Troy, NY 12180-3590, USA
*To whom correspondence should be addressed. Dr. Lee A. Newberg, E-mail: leen{at}cs.rpi.edu
| Abstract |
|---|
Motivation: A backtrace through a dynamic programming algorithm's intermediate results in search of an optimal path, or to sample paths according to an implied probability distribution, or as the second stage of a forward-backward algorithm, is a task of fundamental importance in computational biology. When there is insufficient space to store all intermediate results in high-speed memory (e.g., cache) existing approaches store selected stages of the computation, and recompute missing values from these checkpoints on an as-needed basis.
Results: Here we present an optimal checkpointing strategy, and demonstrate its utility with pairwise local sequence alignment of sequences of length 10,000.
Availability: Sample C++-code for optimal backtrace is available in the Supplementary Materials.
Contact: leen{at}cs.rpi.edu
Associate Editor: Prof. Thomas Lengauer
Received on April 23, 2008; revised on June 5, 2008; accepted on June 10, 2008