File: using_volk.dox

package info (click to toggle)
volk 3.2.0-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,916 kB
  • sloc: ansic: 40,447; cpp: 2,005; asm: 918; python: 897; xml: 375; sh: 157; makefile: 14
file content (26 lines) | stat: -rw-r--r-- 1,075 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/*! \page using_volk Using VOLK

Using VOLK in your code requires proper linking and including the correct headers. VOLK currently supports both C and C++ bindings.

VOLK provides both a pkgconfig and CMake module to help configuration and
linking. The pkfconfig file is installed to
$install_prefix/lib/pkgconfig/volk.pc. The CMake configuration module is in
$install_prefix/lib/cmake/volk/VolkConfig.cmake.

The header in the VOLK include directory (includedir in pkgconfig,
VOLK_INCLUDE_DIRS in cmake module) contains the header volk/volk.h defines all
of the symbols exposed by VOLK. Alternatively individual kernel headers are in
the same location.

In most cases it is sufficient to call the dispatcher for the kernel you are using.
For example the following code will compute the dot product between the taps and
input vector as part of a FIR filter.
\code
// assume there is sufficient history in the input buffer
for(unsigned int ii=0; ii < input_length-ntaps; ++ii) {
    volk_32fc_32f_dot_prod_32fc(filter_output[ii], input[ii-ntaps] taps, ntaps);
}
\endcode

*/