Update [Jul 1, 2010]
The lens sold just 2 days after posting it for the asking price. Yet another successful craigslist adventure!
Update [Jul 1, 2010]
The lens sold just 2 days after posting it for the asking price. Yet another successful craigslist adventure!
find . -name '* *' | while read file;
do
target=`echo "$file" | tr -d ' '`;
echo "Renaming '$file' to '$target'";
mv "$file" "$target";
done;
The sequence alignment is an excellent example of how computers can be used to analyze biological data. Alignments are used everywhere in bioinformatics. An accurate multiple sequence alignment can reveal deep insight into how species evolve. NCBI's extremely powerful BLAST (Basic Local Alignment Search) uses sequence alignments to identify a given sequence's closest ancestors.
Using a computer's CPU, programs like ClustalW and T-Coffee can calculate small sequence alignments almost instantaneously. To a large degree, this is why BLAST is so fast. However, computing large multiple sequence alignments is an entirely different matter. Even on a 8-core 3.0 GHz computer, alignments involving dozens of species over a large portion of their proteomes can take hours, days, or months. It would be nice to speed this up a bit.
Enhancements have been developed, such as MUMmer: ultra-fast alignment of large-scale DNA and protein sequences. Excellent, but there's still the question: can we get even faster without buying large computing infrastructure?
Enter the GPU (Graphics Processing Unit). A $150 GTS 250 has 128 CUDA cores @ 1.836 GHz. Compare that to my $1,500 state of the art dual 3 Ghz quad-core Xeon machine at school. Clearly there is GPU power to be harnessed.
Luckily, this problem has already been addressed! MUMmerGPU computes on GPUs and is a drop in replacement for MUMmer. Excellent! So can we get this thing running?
Installing CUDA was easy. Download the appropriate installer from the CUDA download page. There are installers for Windows and several distributions of Linux. For the Linux installers just make sure to change the permissions to enable execution and run it in a terminal.
Details about running MUMmerGPU to appear shortly