[Top][All Lists]

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

Re: [Discuss-gnuradio] Cannot Achieve 50MSPS Sampling Rate

From: mleech
Subject: Re: [Discuss-gnuradio] Cannot Achieve 50MSPS Sampling Rate
Date: Mon, 05 Mar 2012 11:46:35 -0500
User-agent: Roundcube Webmail/0.5.1

The single-core performance of an i5 at 2.4GHz is roughly 8GFlops.

That sounds like a lot, but keep in mind that every sample is *touched* a *lot* in the average case.  Every sample has to percolate through layers of kernel, network/USB-stack, and C library, and Gnu Radio. So at 50Msps, it doesn't take long until you've burned up your CPUs capability.  And 2.4GHz isn't a particularly fast CPU these days, and there are asymmetries in the integer vs float-point performance on CPUs. Your samples are being handled by a mixture of floating-point and integer pipelines, so even though you may have enough  floating-point "headroom", you might be running out of steam on the integer side.  It's simply not practically possible to squeeze every last possible milligram of performance out of a modern CPU, using a general-purpose operating system, C libraries, etc, etc.  They each optimize for different things, and the composite result isn't necessarily ideal for real-time signal processing.

Gnu Radio has made progress lately on improving floating-point performance by using vectorized processing "kernels" for a number of key core functions within Gnu Radio.  That helps. But since those blocks (and Gnu Radio) are only *part* of the whole "story" when it comes to processing your samples, the net effect isn't going to be spectacular.



On Mon, 05 Mar 2012 08:28:17 -0800, Josh Blum wrote:

50 Msps is serious amount of data to push through your computer. More
than a feeling, even the most serious computers can easily have a
bottleneck. I suspect that the gnuradio core signal source cannot
sustain 50Msps in 1 thread/1 work function.

reply via email to

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