Integer is King? - the challenge

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

pj geerlings wrote:Firstly: Welcome to the witch hunt! Clearly, a great number of the "sane" voices here are convinced that there cannot be any difference between a floating point and fixed point implementation of the same filter.
That depends on what you mean by "the same filter". If you just change floats to ints then there's a good chance you will get a difference, it takes more work than that, and in fact in some cases you might find that the extra processing required is not available, or worth it.

But even if you end up with an audible difference (because the programmer either didn't know how to deal with the difference, didn't test in the area where the difference shows up and so did not even know about it, or judged that the difference was either not a problem or too costly to "fix"), what you will NEVER get is a universal correlation like "integer = tighter bass".

Yes, that particular integer implementation of that particular filter/reverb/whatever might have "tighter" bass, but it's not going to be a universal rule, because what we're talking about here is errors in the calculations, and the errors have different effects depending on where they are within the algorithm and what the algorithm is.
pj geerlings wrote: Wait a moment though ...

It occured to me last night that one of the more important reasons that I continued with fixed point plugs was the trouble I had with denormals -- specifically in the filters I was implementing.

So I had to ask myself 'how might the standard approaches to "re-normalization" affect the audio signal?'
generally speaking the most common approach would be the addition of a very small amount of noise (i.e. way way way below the LSB of the final 24 bit output to the DAC you listen through)
pj geerlings wrote: What popped into my mind was Jitter
:o
Fascinating filter architecture if that's the case! So you're resampling your signal at a rate which you think might be subject to error? And why the hell would you correlate that rate in some way with your denormal prevention?

Somehow I don't think that word means what you think it means.
As an aside I would note that even if you could map a DSP algorithm one-to-one between a fixed point and floating point implementation you would still take a perforance hit for the additional denormal code which is pretty much taken for granted by floating point coders.
Well firstly whether there is a performance hit for denormals depends on what you are doing and how you are doing it... if you work in SSE for example it's a non issue, the hardware takes care of it (once you set a couple of status bits) and you just ignore it.

Secondly the chances are that you will have to do extra processing in the integer version to maintain accuracy, it's all swings and roundabouts really. Some algorithms will be more efficient implemented in integer form, others in floating point.

Oh incidentally, I'm not a "floating point coder", in fact I doubt anyone is, I am a programmer, and I work in float, integer and fixed point depending on the requirements of the task at hand and the processor features available.

Post

JonHodgson wrote:...I don't think that word means what you think it means.
I love that movie!!

As for the rest of it - we'll see ;)

Post

pj geerlings wrote:
JonHodgson wrote:...I don't think that word means what you think it means.
I love that movie!!
Well we agree on one thing at least then :D

Post

I guess by now Christian doesn't dare to post the solution anymore. Due to a little bug (messed up compiler setting and a bug in STL), all 3 settings compiled into floating point :oops:

Post

Urs wrote:I guess by now Christian doesn't dare to post the solution anymore. Due to a little bug (messed up compiler setting and a bug in STL), all 3 settings compiled into floating point :oops:
so ppl actually argued for 24 pages over 100% guaranteed pure placebo ?
:-o

ahah, that's even better...

Post

Never trust anyone with a P.O.G. link in his sig.

Post

:hihi:

Post

hey! :x

Post

on to the topic..
thorkz wrote:I expereancing my old AMD as jittery. It has a certain high end color that is not present on the intel.
I can't believe some of you guys don't see this as obvious trolling. even the first integer is king thread was such.

he's some regular with a bad sense of humour, right now probably feeling all smug and satisfied.

Post

Kingston wrote:on to the topic..
thorkz wrote:I expereancing my old AMD as jittery. It has a certain high end color that is not present on the intel.
I can't believe some of you guys don't see this as obvious trolling. even the first integer is king thread was such.

he's some regular with a bad sense of humour, right now probably feeling all smug and satisfied.
He just got, uhm, falsified

Post

pj geerlings wrote:Firstly: Welcome to the witch hunt! Clearly, a great number of the "sane" voices here are convinced that there cannot be any difference between a floating point and fixed point implementation of the same filter.
That is not what is going on at all.

The point of the thread was to see if an *audible* difference could be demonstrated. We are yet to find out the results.

And in any case as has been noted there exist filter types that are stable with integer but not with float. So nobody is trying to prove they are equal.

It's just a response to the general "integer is better" argument put forth by yourself and acidose I suppose. Which tbh neither of you have provided any solid argument or evidence to why it is better. Accidose just says his algorythms are faster and better than everyone elses, and posts an mp3. You just vaugely imply integer is better.

And I'm sorry if that seems like an attack, it isnt meant to be, and i dont claim to know more than either of you.

But really.. neither of you have put forward any decent argument, provided any evidence, nor have either of you demonstrated why anyone should pay any more attention to what you say than the average poster in here.

Wait a moment though ...

It occured to me last night that one of the more important reasons that I continued with fixed point plugs was the trouble I had with denormals -- specifically in the filters I was implementing.

So I had to ask myself 'how might the standard approaches to "re-normalization" affect the audio signal?'

What popped into my mind was Jitter
Jitter is somthing you get from iregularites in the clock used for ADC/DAC.

How you think it will occur with denormalization is ermm well..

i have no idea.
As an aside I would note that even if you could map a DSP algorithm one-to-one between a fixed point and floating point implementation you would still take a perforance hit for the additional denormal code which is pretty much taken for granted by floating point coders.
How large do you think this performance hit is??

Post

I read the results, and I was 100% right in my observation.

Christian asked me to remove my "results", though, it's on the first page of this thread.

You just can't fool an old fart.
THERE IS ALWAYS A WORKAROUND

Post

Ah, yes. He was right! I asked him to remove it since it was very close to what I expected.

Post

yes, really?

Dunno - he clearly stated that he heard exactly that difference of which Christian said it could theoretically be heard even though almost everyone elese in this thread said he doesn't hear any difference. Bmanic who's got a reputation of having very good ears was tricked. Thorkz was the only one who said Z sounds different. Now he is obviously neither a coder nor a mathematician and he never said he was. But he pretended he heard something and now there's strong evidence he really did!

Post

"his algorythms are faster and better than everyone elses"

i never said that, i also never posted any mp3 generated by my code in these threads. i find it interesting that YOU said this, however. :hihi:

Post Reply

Return to “DSP and Plugin Development”