commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] [gnuradio] 04/07: VOLKize fft_vcc_fftw


From: git
Subject: [Commit-gnuradio] [gnuradio] 04/07: VOLKize fft_vcc_fftw
Date: Mon, 21 Sep 2015 04:44:36 +0000 (UTC)

This is an automated email from the git hooks/post-receive script.

jcorgan pushed a commit to branch master
in repository gnuradio.

commit b25bf5daea78d9d4a7f0e1bfd56ddc36f3d015ff
Author: Doug Geiger <address@hidden>
Date:   Thu Sep 17 14:31:33 2015 -0400

    VOLKize fft_vcc_fftw
    
    fft_vcc_fftw had several for loops for applying a windowing function: use 
volk_32fc_32f_multiply_32fc for these
---
 gr-fft/lib/fft_vcc_fftw.cc | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/gr-fft/lib/fft_vcc_fftw.cc b/gr-fft/lib/fft_vcc_fftw.cc
index 18ba56e..37c0d28 100644
--- a/gr-fft/lib/fft_vcc_fftw.cc
+++ b/gr-fft/lib/fft_vcc_fftw.cc
@@ -25,9 +25,9 @@
 #endif
 
 #include "fft_vcc_fftw.h"
-#include <gnuradio/io_signature.h>
 #include <math.h>
 #include <string.h>
+#include <volk/volk.h>
 
 namespace gr {
   namespace fft {
@@ -103,14 +103,11 @@ namespace gr {
         if(!d_forward && d_shift) {
           unsigned int offset = (!d_forward && d_shift)?(d_fft_size/2):0;
           int fft_m_offset = d_fft_size - offset;
-          for(unsigned int i = 0; i < offset; i++)          // apply window
-            dst[i+fft_m_offset] = in[i] * d_window[i];
-          for(unsigned int i = offset; i < d_fft_size; i++) // apply window
-            dst[i-offset] = in[i] * d_window[i];
+          volk_32fc_32f_multiply_32fc(&dst[fft_m_offset], in, &d_window[0], 
offset);
+          volk_32fc_32f_multiply_32fc(&dst[0], in, &d_window[0], d_fft_size);
         }
         else {
-          for(unsigned int i = 0; i < d_fft_size; i++)      // apply window
-            dst[i] = in[i] * d_window[i];
+          volk_32fc_32f_multiply_32fc(&dst[0], in, &d_window[0], d_fft_size);
         }
       }
       else {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]