Abstract

We present an implementation of the overlap-and-save method, a method for the convolution of very long signals with short response functions, which is tailored to GPUs. We have implemented several FFT algorithms (using the CUDA programming language), which exploit GPU shared memory, allowing for GPU accelerated convolution. We compare our implementation with an implementation of the overlap-and-save algorithm utilizing the NVIDIA FFT library (cuFFT). We demonstrate that by using a shared-memory-based FFT, we can achieved significant speed-ups for certain problem sizes and lower the memory requirements of the overlap-and-save method on GPUs.

Highlights

  • Convolution is one of the most fundamental signal filtering techniques, widely used in signal processing, to aid discovery in many areas of natural sciences

  • We have used three NVIDIA GPU cards, the P100 GPU, the P4 GPU, and the TitanV GPU. We have compared both shared-memory implementations (C2C, R2R) of OLS convolution (SMOLS) for several different filter and signal lengths and for a varying number of filters with convolution implementations based on the CUDA Deep Neural Network library (cuDNN) library and our implementation of the OLS method, which uses cuFFT

  • We have presented an implementation of the shared-memory overlap-and-save method for the one-dimensional convolution of a large data set with a set of short filters

Read more

Summary

Introduction

Convolution is one of the most fundamental signal filtering techniques, widely used in signal processing, to aid discovery in many areas of natural sciences. It is a linear operation involving an input signal s of length Ns and a response function (or a filter) h of length M. There are two principal approaches to linear filtering, where their usability depends on the length of the response function h. ACM Transactions on Architecture and Code Optimization, Vol 17, No 3, Article 18.

Objectives
Methods
Results
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.