Incorporate GPU Programming into GNU Radio
This software is written by Deepwave Digital, Inc. www.deepwavedigital.com.
- General company contact: info@deepwavedigital.com
- Bugs/issues/requests contact: support@deepwavedigital.com
This OOT module contains experimental code on integration of GPU processing into GNU Radio by using the PyCUDA library to run CUDA code from within GNU Radio. For a detailed tutorial on using this module see this tutorial: http://docs.deepwavedigital.com/Tutorials/4_gr-cuda.html.
gpu_kernel.py - This is a Python block that runs an arbitrary CUDA kernel from within GNU Radio. Currently the CUDA kernel simply divides every sample by two, but this can be changed by the end user if desired.
Depending on the version of AirStack you have, the installation procedure may slightly differ. This tutorial is written to be compatible with the AIR-T build. Any usage for non-AIR-T devices is left to the user.
This version includes a copy of GNU Radio installed for all users. In order to
use gr-cuda in this environment, we need to install the PyCUDA package for
Python 2.7 for all users. Use the below procedure to complete this installation,
which will place the installed copy of PyCUDA into
/usr/local/lib/python2.7/site-packages
.
$ sudo -i
$ PATH=/usr/local/cuda-9.0/bin:${PATH} pip install pycuda
and then ctrl-d to get back to a non-root shell.
Other than the CUDA specific dependencies, the dependencies are the same as building any other OOT module. See the tutorial here from GNU Radio: https://wiki.gnuradio.org/index.php/Guided_Tutorial_GNU_Radio_in_Python
Clone the gr-cuda
repo. We recommend installing it in the same location as
gr-wavelearner.
$ cd /usr/local/src/deepwave
$ git clone https://github.com/deepwavedigital/gr-cuda.git
To install the OOT Module, follow these steps:
$ cd gr-cuda
$ mkdir build
$ cd build
$ cmake ../
$ make
$ sudo make install
If you would level like to uninstall the GR-CUDA tutorial:
$ cd /usr/local/src/deepwave/gr-cuda/build
$ sudo make uninstall
CUDA, pyCUDA, GPGPU, GNU Radio, SDR, GPU Programming, Jetson, AIR-T, NVIDIA, Deepwave Digital
GR-CUDA is designed and written by Deepwave Digital, Inc. www.deepwavedigital.com and is licensed under the GNU General Public License. Copyright notices at the top of source files.