BACKGROUND: Due to its high sensitivity, the Smith-Waterman algorithm is widely 
used for biological database searches. Unfortunately, the quadratic time 
complexity of this algorithm makes it highly time-consuming. The exponential 
growth of biological databases further deteriorates the situation. To accelerate 
this algorithm, many efforts have been made to develop techniques in high 
performance architectures, especially the recently emerging many-core 
architectures and their associated programming models.
FINDINGS: This paper describes the latest release of the CUDASW++ software, 
CUDASW++ 2.0, which makes new contributions to Smith-Waterman protein database 
searches using compute unified device architecture (CUDA). A parallel 
Smith-Waterman algorithm is proposed to further optimize the performance of 
CUDASW++ 1.0 based on the single instruction, multiple thread (SIMT) 
abstraction. For the first time, we have investigated a partitioned vectorized 
Smith-Waterman algorithm using CUDA based on the virtualized single instruction, 
multiple data (SIMD) abstraction. The optimized SIMT and the partitioned 
vectorized algorithms were benchmarked, and remarkably, have similar performance 
characteristics. CUDASW++ 2.0 achieves performance improvement over CUDASW++ 1.0 
as much as 1.74 (1.72) times using the optimized SIMT algorithm and up to 1.77 
(1.66) times using the partitioned vectorized algorithm, with a performance of 
up to 17 (30) billion cells update per second (GCUPS) on a single-GPU GeForce 
GTX 280 (dual-GPU GeForce GTX 295) graphics card.
CONCLUSIONS: CUDASW++ 2.0 is publicly available open-source software, written in 
CUDA and C++ programming languages. It obtains significant performance 
improvement over CUDASW++ 1.0 using either the optimized SIMT algorithm or the 
partitioned vectorized algorithm for Smith-Waterman protein database searches by 
fully exploiting the compute capability of commonly used CUDA-enabled low-cost 
GPUs.