discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] High CPU usage


From: Tom Rondeau
Subject: Re: [Discuss-gnuradio] High CPU usage
Date: Thu, 24 Feb 2011 20:24:42 -0500

On Thu, Feb 24, 2011 at 12:20 AM, peng senl <address@hidden> wrote:
> Hello,
>
> I am using a C++ interface with the USRP2 board. I found the CPU usage is 
> about 30% for dual core 3.2G CPU with 5M sample frequency while about 60% 
> usage for 20M sample frequency.  I am just keep running the rx_sample() 
> function without any other operation.  Is this CPU usage normal? I think it 
> is too high. Is there any method to optimize it?


The legacy driver or UHD? Are you using 32-bit complex floats or
16-bit complex shorts for you data?

I'd be very interested to hear your benchmarking of the different
types here. That is UHD/32fc vs. USRP2/32fc and UHD/16sc vs.
USRP2/16sc. Also, UHD/32fc vs. UHD/16sc.

One of the issues is that the samples are coming over the wire in
16-bit shorts and must be converted from big to little endian and then
from short to float. There is some vectorization we can do for this
(SIMD stuff) to speed up both parts of this conversion. Having played
with it in the USRP2 driver (pre-UHD), I remember seeing a 20%
improvement by vectorizing the endian and short to float conversions.
You could potential squeak even more out of it.

I'm not sure, but Josh might have already vectorized this process in
UHD. If not, I'm sure he will soon.

Tom



reply via email to

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