Forum: GNU Radio Measuring execution rate

Posted by Ben Gear (Guest)
on 2012-11-06 15:34
(Received via mailing list)
All,

Can anyone tell me if there is a way I can measure the rate at which a 
flow
graph is executing when it contains no rate limited blocks?

My motivation for doing this is that I wish to benchmark a signal
processing chain so that I can estimate the maximum bandwidth I can 
expect
to process with my PC hardware when I eventually use a USRP.  Assume 
that
the USRP is not currently available for my use.

Many thanks,

Ben
Posted by Tom Rondeau (Guest)
on 2012-11-09 03:00
(Received via mailing list)
On Tue, Nov 6, 2012 at 9:33 AM, Ben Gear <bgear@dunelm.org.uk> wrote:
> Many thanks,
>
> Ben


Hi Ben,

This is a really hard question. I've done various ways of benchmarking
and measuring code execution, and me and a handful of others have a
developing interest in these things. Eventually, we'd like to
instrument some code into GNU Radio blocks or the scheduler to keep
track of statistics for this. But as I said, it's a hard question to
answer and to do properly, which is why we don't really have anything.

Now that I've said it's a difficult question, we'll probably get a few
"all you have to do is..." answers. Measuring timing and execution has
a long history and a lot of debate to it.

Anyway, having said that, a simple test is to to just create the most
basic flowgraph (null source -> head -> your block -> null sink) and
run it using 'time ./myprog.py'. You can run it a number of times and
take either the average or the minimum. Most people will tell you that
the minimum is probably the best value to take since this represents
the time taken with the least amount of system interruption of your
code.

Hope this helps,
Tom
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.