What block are you testing? Most of the blocks I've developed are
deterministic in execution time; I can think of only a few applications
which wouldn't be. A little thought and simulation enables good design to
avoid stalls in a deterministic block with multiple data paths. If you
aren't stalling horribly, and your block executes in constant time, your
throughput should be governed only by the clock rate and the relative
output rate of the block.

If you're feeling lazy and you just want to test your one-output-per-input
block to make sure you aren't stalling too badly, then just insert your
block between the Radio and the DDC, and stream some data back to the host
at a reasonable rate. Your block will then be operating at full DSP rate.
If you don't get overflows and the flowgraph doesn't die, your block has
adequate performance for any RFNoC application.

Even if your block is nondeterministic, simulation with a representative
stimulus should let you get a good feel for your block's throughput per
clock cycle, which should translate to performance in the real world. This
is probably a more accurate measure, in the end, than running it on the
X310.

Assuming it's nondeterministic, testing throughput by running it through an
X310 may or may not be a valid test. You definitely want to get a baseline
first by testing the raw throughput without your block in place, or with a
FIFO in its place. If the execution time goes up significantly when you
insert your block you can be fairly certain it's the limiting factor. But I
wouldn't trust this to finer than a few percent in accuracy, and it's
definitely a painful way (long compile times, lots of repeat runs required)
to iterate on improvements to your block.

Nick

On Wed, Feb 21, 2018 at 4:24 PM Kevin Oviedo via USRP-users <
usrp-users@lists.ettus.com> wrote:

> Hello,
>
> I'm testing an RFNoC block, I want to measure its performance. I've been
> timing the execution time (python script) of a flowgraph with a given input
> on the computer to a USRP X310 with the block and back to the computer.
> This test is very simple, I would like to know if there are any other tools
> I could use to make it more precise or to test it under different
> configurations (using TX/RX). How are you testing the performance of your
> RFNoC blocks?
>
> I know this is a broad question, so any input is welcome.
>
> Thanks,
> Kevin Oviedo
> _______________________________________________
> USRP-users mailing list
> USRP-users@lists.ettus.com
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to