Re: [linux-audio-dev] Another Annoying "How Do I Get Started" Question

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] Another Annoying "How Do I Get Started" Question
From: Steve Harris (S.W.Harris_AT_ecs.soton.ac.uk)
Date: Wed Jul 11 2001 - 20:47:54 EEST


On Wed, Jul 11, 2001 at 12:41:06PM -0400, Greg Berchin wrote:
> >If you want to see this for yourself, take a GP implementation of a
> >lowpass filter and turn down the turnover frequency to a few Hz, unless
> >the programmer has been clever and sacrificed some quailty and speed
> >the cpu use will go up by 40% or so.
>
> The only way I can see this happening would be if the filter was
> implemented as FIR, because then the number of taps would increase. But
> that would happen in a DSP, too. Otherwise, if the filter is implemented
> as IIR, then the number of operations is constant and the FPU shouldn't
> care what the values of the multiplicands and multipliers are. Or do I
> misunderstand how a FPU works?

No this happens with SV filters too, I don't understand the hardware
issues, but as the filter coefficent appraoches 0.0f the number of cycles
taken to multiply it goes up (even after you add denormalisation
protection, though that helps greatly).

I've never programmed for a DSP chip but looking at the implementations of
people who do they must be getting much greater guaranteed performance out
of modern DSP chips than you can out of a PIII for exmaple. Granted a lot
of CPU power is taken up with housekeeping (don't DSP chips use extgernal
GP chips to do that sort of thing?).

I suppose that with access to SIMD instructions this might improve,
intel's implementations of delays in MMX are impressivly more efficient
(4-5 x) than ones in x86, but then, they would be ;).

- Steve


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Wed Jul 11 2001 - 20:02:49 EEST