ANCI-C vs Gnuradio/C++ speeeed


#1

I have noticed a huge speed dissadvantage when comparing my
ANSI-C implementation of a Viterbi decoder with my Gnuradio
implementation. The core code is pretty much the same, except
that in the Gnuradio implementation I am using STL vectors.

It seems that Gnuradio is about 20 times SLOWER than ANSI-C!!!
I was wondering if this has to do with Gnuradio itself (buffering +
python + other fat), or with the fact that I had to translate all
my ANCI-C code to C++ and use STL.

Does anyone have similar experiences?

Achilleas


#2

On Fri, May 12, 2006 at 10:30:46AM -0400, Achilleas A.
wrote:

Does anyone have similar experiences?

Achilleas

It shouldn’t be any slower unless you’re making life tough for the C++
compiler (that is, using constructs that it can’t optimize away).

If you’ll send me both pieces of code (off-list) along with the
benchmarking framework, I’ll take a quick look at them.

Eric