SWIFOLD: Smith-Waterman Implementation on FPGA with OpenCL for long DNA sequences - Rucci, Enzo (2018)
Background: The Smith-Waterman (SW) algorithm is the best choice for searching similar regions between two DNA or protein sequences. However, it may become impracticable in some contexts due to its high computational demands. Consequently, the computer science community has focused on the use of modern parallel architectures such as graphics processing units (GPUs), Xeon Phi accelerators and ﬁeld programmable gate arrays (FPGAs) to speed up large-scale workloads. Results: This paper presents and evaluates SWIFOLD: a Smith-Waterman parallel Implementation on FPGA with OpenCL for Long DNA sequences. First, we evaluate its performance and resource usage for diﬀerent kernel conﬁgurations. Next, we carry out a performance comparison between our tool and other state-of-the-art implementations considering three diﬀerent datasets. SWIFOLD oﬀers the best average performance for small and medium test sets, achieving a performance that is independent of input size and sequence similarity. In addition, SWIFOLD provides competitive performance rates in comparison with GPU-based implementations on the latest GPU generation for the large dataset. Conclusions: The results suggest that SWIFOLD can be a serious contender for accelerating the SW alignment of DNA sequences of unrestricted size in an aﬀordable way reaching on average 125 GCUPS and almost a peak of 270 GCUPS.