Eric Wachsmann wrote:
This isn't hard to imagine given CPU benchmarks like Passmark (
http://www.cpubenchmark.net/).  The Atom 330 gets 586 marks while a Q6600
(quad core) gets 2859 marks.  Even the lowest end E4000 series Core 2 Duos
get >1000.  The Atom 330 is roughly equivalent to a P4 3.6GHz based on this
benchmark.


Eric


Eric and I were supposed to meet yesterday online for a four hour session on the resampler. I was derailed by work (my paying day job).

Shortly the Atom 330 will be overkill for this work. The cpubenchmark measures things that are inappropriate for our application and while it is relevant, it is not the whole story and by a lot.

In one of my branches, and as it is perfected, moved into the test branch and then the main distribution, we will downsample the computations to the minimum needed.

So for example, everyone who wants a 2.7 kHz channel will actually have everything but impulse noise (NB,NB2) running at a much reduced sample rate. The sample rate will necessarily be an integer divisor of 192000 samples per second. So the 2.7 kHz channel MIGHT be done at 3 ksps, but will certainly be done at 4 ksps or less, the exact same operations will be done but the amount of CPU required to do them will be reduced by a factor of 48 or 64 (4 kHz or 3 kHz respectively). If you want to do DRM, for example, the rate will be reduced to 16 ksps probably, etc. The complex sampling rate needs only to be larger than channel you desire.

The single biggest gain for us will be in the application of the agc which is the current pig in the entire operation. Next to downsampling, the agc will begin to use approximations for sqrt(SUM (sample_mag)^2) and that will be another hug factor, so large that we will not call agc the pig any more. As soon as that is not a pig in the agc, we will upgrade the overall structure of the agc. Our current smallest time scale in the agc is 1ms so even at the slowest proposed sample rate, we will be oversampling for the agc by a factor of 3,4, or more.

The signal processing tools needed to do this have been in our code for a long time. The problem with all of this is two fold. It must be done in a way that the user is not troubled with worrying about it at all. It just suddenly becomes magically more efficient. This is a big software engineering job inside for the GUI maintainer (Eric). There are other places I could do this and not worry about the GUI, but I would not get feedback from hundreds of howling paying customers who demand perfection and satisfaction. Imagine how unhappy all of you would be if suddenly we broke your connection to CWSkimmer, etc. because we narrowbanded the signal. In other words, we have to roll this out in stages, gather all the complaints, fix all the things we break by doing this and then everyone benefits.

Stand by, this will get tremendously better and quickly. On most of your ATOM 330 based mother boards, you REALLY need to slow down the display to 8-9 frames a second from the default 15. I find you don't lose much and you are paying much less penalty for the horribly slow Intel graphics engine.

Bob


Bob

_______________________________________________
FlexRadio Systems Mailing List
FlexRadio@flex-radio.biz
http://mail.flex-radio.biz/mailman/listinfo/flexradio_flex-radio.biz
Archives: http://www.mail-archive.com/flexradio%40flex-radio.biz/
Knowledge Base: http://kc.flex-radio.com/  Homepage: http://www.flex-radio.com/

Reply via email to