A look at IQ at Firingsquad...

StealthHawk said:
demalion said:
AFAIK, ATI is not saving work by not using the maximum degree of AF at certain angles, but by the method they use to calculate samples. Not using the maximum degree of AF at certain angles is just another result of that method (alongside greater performance).

I was under the impression that not using the maximum number of samples(adapative technique which is employed by all IHVs) and limiting the number of maximum samples(off-angle problem) were mutually exclusive.

"Mutually exclusive"? I'm not sure what you mean by that in this context.

Your phrasing, as part of the rest of your comments, don't seem accurate to me: "limiting the number of maximum sample" as you are saying indicates that you are proposing that the "off angle issue" is the intent of ATI's AF implementation, that reducing the effective sampling is what it does to gain performance, and therefore Quitch's comparison is invalid. As I was referring to, AFAIK it is an effect of ATI's AF implementation...it fails to detect where it should sample for more detail at the "off angles", and the R300 implementation corrects some of that detection failure while still reducing performance penalty. IOW, I think it is actually failing to sample effectively, rather than failing to sample, and the performance comparisons discussed after this seem to support that.

The performance difference between the GF AF and ATI's method is still apparent in scenes without surfaces at odd angles, and I don't recall the performance difference associating with the amount of "full AF" angle surfaces present in the scene.

That really doesn't say anything, even if it is true.

Yes, it does tell us something. It tells us that the performance gain isn't a result of the image quality issues of the ATI AF implementation. Which makes sense as far as Quitch's comparison, as far as it was taken, AFAICS.

My point is that this contradicts this statement of yours you proposed in disagreement to Quitch's analogy: "ATI is saving work by not using the maximum degree of AF at certain angles when those angles are present", because it is "saving work" when those angles are not present, as well.

All it tells us is that ATI's algorithm is different or possibly more aggressive than NVIDIA's.

And something about how it is different.

From memory, the performance hit of R300's Performance AF is very small, just like R200's AF.

Right, further indicating that the "off angle" problem is a side effect of the methodology that is used to offer increased performance, rather than being the means of the performance gain. Matters a lot when making global statements regarding the performance and image quality of ATI's AF implementation, though it doesn't seem to matter much when just looking at a tunnel test as one specific tunnel test.

R300 has less of an angle problem, because it does maximum filtering at 45 degrees whereas R200 didn't.

And why does it retain the minimal performance impact if it is doing more sampling? My understanding is that it is sampling more effectively, and I think what we've discussed support this. Which would indeed debunk "it does more work so it's better image quality", at least in the way the application's results were being proposed as saying "16x ATI = 4x GF".

As far as I'm aware this doesn't seem to decrease performance much at all, which leads me to believe that performing the "correct" filtering at every angle and taking a variable number of samples is mutually exclusive and not inclusive.

OK, your phrasing still confuses me. Would I be understanding you correctly if I took that as saying "they are two different things"? Because they can occur at the same time and affect each other (i.e., inclusively). If so, my above discussion should cover this, I think.
 
Dave H,

Well, there isn't enough to cause it to perform like the GF aniso, or in flight simulators the performance would jump to higher levels when the plane banked in relation to a textured flat "surface", and dip to GF levels when orientation was returned to level. AFAIK, this doesn't happen.

As I clarified, I believe this is completely because of sampling selection.

However, it is possible that it does get a benefit in these "off angle" cases even though the performance increase during the "level flying" are due to gains offered by the methodology alone. The latter aspect is my main point, and the information I know of seems to both support the latter quite clearly and contradict the former, though not necessarily as clearly (it could just be that with the lesser performance hit in the first place, the performance gains from less sampling doesn't have a significant impact on the performance results).

If I recalled a clear analysis of this, I'd refer to it.
 
And why does it retain the minimal performance impact if it is doing more sampling? My understanding is that it is sampling more effectively, and I think what we've discussed support this. Which would indeed debunk "it does more work so it's better image quality", at least in the way the application's results were being proposed as saying "16x ATI = 4x GF".

Can't the performance impact have to do with a lot of other things (available fillrate vs bandwidth ?........) than just how many samples it takes ?

As an example (Beyond3d reviews), Serious Sam SE, 1600*1200:

Radeon 9800 Pro: 0x AF: 99.8 fps 16x AF: 83.2 fps
= 17 % drop

Radeon 9700 Pro: 0x AF: 93.8 fps 16x AF: 74.3 fps
= 21 % drop

Radeon 9600 Pro: 0x AF: 61 fps 16x AF: 33 fps
= 46% drop

And to spice it up a bit:

Radeon 9000 Pro: 0X AF: 37.9 fps 16x AF: 35.8 fps
< 6% drop

Now, i don't know if B3D used the same demos and drivers here which might make a lot of difference. But assuming that this is somewhat correct, i think we can say that it's not only Ati's sampling methods (if they are the same for the 9800 and 9600 which of course might be completely wrong but they do exhibit the same behaviour with regards to z-rotation afaik) that leads to the small performance drop since it definitely isn't a small performance drop on the 9600 Pro. And the lowest drop is on the low end Radeon 9000 Pro which uses the old implementation.
 
demalion said:
"Mutually exclusive"? I'm not sure what you mean by that in this context.

Your phrasing, as part of the rest of your comments, don't seem accurate to me: "limiting the number of maximum sample" as you are saying indicates that you are proposing that the "off angle issue" is the intent of ATI's AF implementation, that reducing the effective sampling is what it does to gain performance, and therefore Quitch's comparison is invalid. As I was referring to, AFAIK it is an effect of ATI's AF implementation...it fails to detect where it should sample for more detail at the "off angles", and the R300 implementation corrects some of that detection failure while still reducing performance penalty. IOW, I think it is actually failing to sample effectively, rather than failing to sample, and the performance comparisons discussed after this seem to support that.

Ok, this is how I understand what you are saying:

ATI is taking a maximum number of samples depending on what degree of AF is selected. But it does not always take the maximum number of samples. As a consequence, we have a maximum of 2x AF being performed on off angles.

I am saying that the two are totally unrelated. Sure, ATI cards gain some extra performance by not performing full AF at all angles. But since most games don't have that many off angles they aren't saving that much work, and are not gaining a significant amount of performance either.

AFAIK NVIDIA's implementation does not always use the same amount of samples in each scene either. AF is adaptive by nature.

Yes, it does tell us something. It tells us that the performance gain isn't a result of the image quality issues of the ATI AF implementation. Which makes sense as far as Quitch's comparison, as far as it was taken, AFAICS.

I'm not sure I'm following you here. If there is a tunnel scene where ATI is doing 50% less work than NVIDIA because it is not filtering certain angles of course they are gaining a great deal of performance at a loss of image quality. I would assume that when the game is doing just 90 degree angles which can be fully filtered by both NVIDIA and ATI's implementations, that the work done by each would be much closer than in a tunnel scene.

From memory, the performance hit of R300's Performance AF is very small, just like R200's AF.

Right, further indicating that the "off angle" problem is a side effect of the methodology that is used to offer increased performance, rather than being the means of the performance gain. Matters a lot when making global statements regarding the performance and image quality of ATI's AF implementation, though it doesn't seem to matter much when just looking at a tunnel test as one specific tunnel test.

How does that prove that? As stated, most games don't feature off angles in large quantity. As expected, performance is not going to take a nose dive because it is filtering a few more textures.

R300 has less of an angle problem, because it does maximum filtering at 45 degrees whereas R200 didn't.

And why does it retain the minimal performance impact if it is doing more sampling? My understanding is that it is sampling more effectively, and I think what we've discussed support this. Which would indeed debunk "it does more work so it's better image quality", at least in the way the application's results were being proposed as saying "16x ATI = 4x GF".

See above. Another thing which I didn't point out in my last point was that ATI's Quality AF does take a much bigger hit than ATI's Performance AF. The only difference between them is that one is using trilinear filtering.

OK, your phrasing still confuses me. Would I be understanding you correctly if I took that as saying "they are two different things"? Because they can occur at the same time and affect each other (i.e., inclusively). If so, my above discussion should cover this, I think.

Yes, I am saying that they are two different things.
 
Your initial observation seems valid, and that seems a good approach for a start, Bjorn, but as for your 9000 comparison, aren't you comparing the percent drop from trilinear -> trilinear + A AF to trilinear -> bilinear + AF? And is this with the same test setups/driver versions, etc? Which review(s) are you referencing?
 
demalion said:
Your initial observation seems valid, and that seems a good approach for a start, Bjorn, but as for your 9000 comparison, aren't you comparing the percent drop from trilinear -> trilinear + A AF to trilinear -> bilinear + AF? And is this with the same test setups/driver versions, etc? Which review(s) are you referencing?

The numbers are all from the latest Beyond 3D reviews. And i also mention that the benchmarks might use different drivers and tests so these nr's might not be entirely correct. And yes, the old implementation (<= 9200) uses bilinear filtering which means that it's not exactly comparable but it's still rather interesting imo.

But the point was that we do not know if the new implementation is as effective as the old one with regards to low performance drop. Especially since there are such a large difference in performance drop depending on the version of the 9500+ series, although they use the same implementation.

Edit: the reviews

9600 Pro

9800 Pro

9700 Pro

9200 (+9000 Pro)

I also have to say that i was rather surprised to see the 46% drop for the 9600 Pro. I thought that the performance drop was rather consistent throughout their whole lineup. It's much lower at lower resolutions though so it's not as bad as the 46% indicates.
 
If I miss anything significant in the dropped text, just point it out.

StealthHawk said:
...

Ok, this is how I understand what you are saying:

ATI is taking a maximum number of samples depending on what degree of AF is selected. But it does not always take the maximum number of samples. As a consequence, we have a maximum of 2x AF being performed on off angles.

I am saying that the two are totally unrelated. Sure, ATI cards gain some extra performance by not performing full AF at all angles. But since most games don't have that many off angles they aren't saving that much work, and are not gaining a significant amount of performance either.

So now you're saying that in games without off angles, ATI's AF performance hit is like that of nVidia doing the same degree of AF? We need to be clear on this: does ATI's performance hit being reduced depend on the off angles being present, or not?

AFAIK NVIDIA's implementation does not always use the same amount of samples in each scene either. AF is adaptive by nature.

AFAIK, as well.

Yes, it does tell us something. It tells us that the performance gain isn't a result of the image quality issues of the ATI AF implementation. Which makes sense as far as Quitch's comparison, as far as it was taken, AFAICS.

I'm not sure I'm following you here. If there is a tunnel scene where ATI is doing 50% less work than NVIDIA because it is not filtering certain angles of course they are gaining a great deal of performance at a loss of image quality.

But what if they are gaining a great deal of performance even when image quality is not lost? Perhaps this indicates that the determing factor for the performance increase is not the lost image quality? That was Quitch's comparison, AFAICS...what do you propose is showing that this does not apply? AFAIK, this is exactly what is shown, though texture stage/trilinear issues (from both vendors) does cloud the issue.

I would assume that when the game is doing just 90 degree angles which can be fully filtered by both NVIDIA and ATI's implementations, that the work done by each would be much closer than in a tunnel scene.

Ok, and how are you proposing the performance penalties would compare in scenes made up of such surfaces? I'm simply pointing out that AFAIK the performance penalty for ATI would still be less (and I believe it has been where "custom adaptations" are not in effect), and that I believe this is due to the ATI AF implementation gaining its performance from the way its methodology always works, not just the way it manifests at the "off angles".

From memory, the performance hit of R300's Performance AF is very small, just like R200's AF.

Right, further indicating that the "off angle" problem is a side effect of the methodology that is used to offer increased performance, rather than being the means of the performance gain. Matters a lot when making global statements regarding the performance and image quality of ATI's AF implementation, though it doesn't seem to matter much when just looking at a tunnel test as one specific tunnel test.

How does that prove that?

Because the GF still has a larger performance hit with bilinear AF than ATI does, even in the many games we agree don't have much manifestion of the "off angles"?

As stated, most games don't feature off angles in large quantity.

Right, and does ATI have less performance hit for AF in most games when doing AF compared to nVidia doing AF in the same circumstances (using trilinear, applying to all the same texture stages, etc)?

...
Another thing which I didn't point out in my last point was that ATI's Quality AF does take a much bigger hit than ATI's Performance AF. The only difference between them is that one is using trilinear filtering.

:?: So, trilinear fitering is responsible for the large performance hit then...right? Were you meaning to say something else?
 
demalion said:
So now you're saying that in games without off angles, ATI's AF performance hit is like that of nVidia doing the same degree of AF?

No, that's not really what I'm saying. I'm saying that in games without off angles ATI is doing more work than in games with off angles.

We need to be clear on this: does ATI's performance hit being reduced depend on the off angles being present, or not?

Yes, I think so. While I have admitted that ATI's algorithm is more efficient/aggressive than NVIDIA's, when there are off angles present that workload is going to decrease even more in comparison to the work being done by NVIDIA.

But what if they are gaining a great deal of performance even when image quality is not lost? Perhaps this indicates that the determing factor for the performance increase is not the lost image quality? That was Quitch's comparison, AFAICS...what do you propose is showing that this does not apply? AFAIK, this is exactly what is shown, though texture stage/trilinear issues (from both vendors) does cloud the issue.

It is apparent that ATI is gaining a lot of performance in UT2003 and IQ is lost. There are also people who think that ATI's AF has more texture aliasing than NVIDIA's AF. This would be lower quality.

Show me where else ATI is gaining a great deal of performance by not doing trilinear on certain texture stages where IQ is not affected :!: Nobody has been able to do that yet. Aquanox2(does this game have an AF slider? Is IQ affected?) gains some 10%, Max Payne gains 5%. Other games I've seen tested don't gain anything.

I would assume that when the game is doing just 90 degree angles which can be fully filtered by both NVIDIA and ATI's implementations, that the work done by each would be much closer than in a tunnel scene.

Ok, and how are you proposing the performance penalties would compare in scenes made up of such surfaces? I'm simply pointing out that AFAIK the performance penalty for ATI would still be less (and I believe it has been where "custom adaptations" are not in effect), and that I believe this is due to the ATI AF implementation gaining its performance from the way its methodology always works, not just the way it manifests at the "off angles".

I am proposing quite simply that the performance hit between AF on NVIDIA and ATI hardware would be closer when there are no off angles, and bigger when there are off angles. I think we can both agree that regardless, ATI's performance hit is lower than NVIDIA's.

From memory, the performance hit of R300's Performance AF is very small, just like R200's AF.

Right, further indicating that the "off angle" problem is a side effect of the methodology that is used to offer increased performance, rather than being the means of the performance gain. Matters a lot when making global statements regarding the performance and image quality of ATI's AF implementation, though it doesn't seem to matter much when just looking at a tunnel test as one specific tunnel test.

How does that prove that?

Because the GF still has a larger performance hit with bilinear AF than ATI does, even in the many games we agree don't have much manifestion of the "off angles"?

Are you sure that this isn't just a coincidence?

Exxtreme said:
A new version of AF Tester for D3D is avaiable:

http://demirug.bei.t-online.de/D3DAFTester.zip

This version has a new function. It can count how much filtered texels are used.

My R9700 Pro is using 4395179 texels at 16x tri-AF.

I have my own numbers from 2x AF and 4x AF, taken with a r9500Pro. 2x AF is using 3918231 texels and 4x AF is using 4274985 texels. In real world games, do you see 16x AF having essentially the same performance hit as 4x AF?

As stated, most games don't feature off angles in large quantity.

Right, and does ATI have less performance hit for AF in most games when doing AF compared to nVidia doing AF in the same circumstances (using trilinear, applying to all the same texture stages, etc)?

Yes.

...
Another thing which I didn't point out in my last point was that ATI's Quality AF does take a much bigger hit than ATI's Performance AF. The only difference between them is that one is using trilinear filtering.

:?: So, trilinear fitering is responsible for the large performance hit then...right? Were you meaning to say something else?
[/quote]

The whole mythos of ATI's free AF seems to have started because NVIDIA had big hit trilinear AF while ATI had low hit bilinear AF. The thing is, once ATI cards start using trilinear too, AF doesn't seem to be as free.


You're making a case, but I'm not convinced yet with the evidence provided. It just doesn't make sense to me why the adaptivity of ATI's AF needs to be dependent on the angle.
 
StealthHawk said:
demalion said:
So now you're saying that in games without off angles, ATI's AF performance hit is like that of nVidia doing the same degree of AF?

No, that's not really what I'm saying. I'm saying that in games without off angles ATI is doing more work than in games with off angles.

OK, but that still doesn't mean that representing the image quality as uniformly weighted purely by one angular orientation factor allows you to say two implementations are offering the same image quality. I.e., the 4x versus 16x example.

We need to be clear on this: does ATI's performance hit being reduced depend on the off angles being present, or not?

Yes, I think so.

How does that coincide with your commentary concerning games not having significant off angles, but still performing with less performance hit for ATI cards?

While I have admitted that ATI's algorithm is more efficient/aggressive than NVIDIA's,

I'm asking for one clear answer, but this appears to be two contradicting ones...to my understanding, this is a different answer than you just gave.

This contradicts what you just said unless you are asserting that the off angle image quality reduction and performance efficiency are the same thing, yet...

when there are off angles present that workload is going to decrease even more in comparison to the work being done by NVIDIA.

...you are again saying that the performance increase you are proposing from the off angles is in addition to this efficiency. Well, if there is a performance gain from the off angle image quality degradation, it has to be the only method of reducing performance penalty for Quitch's comment to be contradicted.

Are you simply proposing that the image quality degradation is resulting in performance gain, but no longer stating you disagree with Quitch's commentary with regard to the 16x versus 4x comparison?

...

The point of Quitch's commentary was that "it does more work so it's better image quality" is an invalid precept. Your assertion was "NVIDIA's AF method is doing more work because it filters at all angles, while ATI does not. ATI is saving work by not using the maximum degree of AF at certain angles when those angles are present.", which counters this proposal (as you stated by "I don't see how this is the same thing at all." in conjunction with this) if the performance difference is due only to the image quality being degraded...it does not do so if there is a performance difference outside of that which is resulting from the image quality reduction (because then it is apparent that it is saving work even without reducing image quality).

Again: is the performance due to the occurrence of image quality degradation, or due to the methodology (which also happens to sometimes result in image quality reduction)?

But what if they are gaining a great deal of performance even when image quality is not lost? Perhaps this indicates that the determing factor for the performance increase is not the lost image quality? That was Quitch's comparison, AFAICS...what do you propose is showing that this does not apply? AFAIK, this is exactly what is shown, though texture stage/trilinear issues (from both vendors) does cloud the issue.

It is apparent that ATI is gaining a lot of performance in UT2003 and IQ is lost.

When is IQ is lost? When is it gaining a "lot" of performance? If there isn't a dependency of the second on the first, this observation doesn't address these questions.

There are also people who think that ATI's AF has more texture aliasing than NVIDIA's AF. This would be lower quality.

Well, then atleast you are evaluating the image quality in the scene by the results instead of making a proposal of comparing a count in a completely different scene to represent the image quality of an implementation... :-?

This was my point.

Show me where else ATI is gaining a great deal of performance by not doing trilinear on certain texture stages where IQ is not affected :!:

SH...ATI doesn't seem to have a higher performance trilinear filtering implementation that I know of. So...this doesn't seem to relate clearly to my commentary and proposals...?

...

...
I am proposing quite simply that the performance hit between AF on NVIDIA and ATI hardware would be closer when there are no off angles, and bigger when there are off angles. I think we can both agree that regardless, ATI's performance hit is lower than NVIDIA's.

This seems fairly unambiguous(?), and I think I've explained how this agreement you mention supports Quitch's commentary...

...
Because the GF still has a larger performance hit with bilinear AF than ATI does, even in the many games we agree don't have much manifestion of the "off angles"?

Are you sure that this isn't just a coincidence?

I thought we were both sure it wasn't?

Again, do you know of bilinear AF performance data for applicable nVidia cards and with complete AF application? I know "Balanced" mode inflicts a significantly greater penalty, and I have the impression that this performance is close to the performance of bilinear filtering. Also, how do nVidia's current "Performance" and ATI's "Performance" mode compare in performance penalties?
I can establish with greater clarity that I know of the performance hit for ATI for bilinear filtering and 16x AF ranging from 89% of no AF, and sometimes reaching even higher performance efficiency.

Exxtreme said:
A new version of AF Tester for D3D is avaiable:

http://demirug.bei.t-online.de/D3DAFTester.zip

This version has a new function. It can count how much filtered texels are used.

My R9700 Pro is using 4395179 texels at 16x tri-AF.

I have my own numbers from 2x AF and 4x AF, taken with a r9500Pro. 2x AF is using 3918231 texels and 4x AF is using 4274985 texels. In real world games, do you see 16x AF having essentially the same performance hit as 4x AF?

Well, I presume you didn't mean to compare a 9500 Pro to a 9700 Pro and you meant some type of GeForce card, but this logic seems to be broken in several ways unless both completing an AF pixel is identical latency for each architecture and the tunnel case is a suitable universal representation. And, again, this assertion on your part seems to contradict what you said earlier and propose again later...?

As stated, most games don't feature off angles in large quantity.

Right, and does ATI have less performance hit for AF in most games when doing AF compared to nVidia doing AF in the same circumstances (using trilinear, applying to all the same texture stages, etc)?

Yes.

Wait, maybe you don't construe "more efficient" as indicating "less work is done even when results are similar" (i.e., you are considering the "work" to be the result alone, and universally pertinent, and not the process)?

...
Another thing which I didn't point out in my last point was that ATI's Quality AF does take a much bigger hit than ATI's Performance AF. The only difference between them is that one is using trilinear filtering.

:?: So, trilinear fitering is responsible for the large performance hit then...right? Were you meaning to say something else?

The whole mythos of ATI's free AF...

Who said free AF here?

...seems to have started because NVIDIA had big hit trilinear AF while ATI had low hit bilinear AF.

But I don't think that was the only performance issue with nVidia's AF, SH, and you seem to be agreeing sometimes.

The thing is, once ATI cards start using trilinear too, AF doesn't seem to be as free.

True, because ATI doesn't have a more efficient methodolgy of (full) trilinear implementation at this time AFAIK. I wasn't ever proposing that they did, AFAICS.

You're making a case, but I'm not convinced yet with the evidence provided. It just doesn't make sense to me why the adaptivity of ATI's AF needs to be dependent on the angle.

Nor will it until we reinvent or reverse-engineer ATI's "secret" AF algorithm, which I think is a bit more than detecting off angles and reducing workload for them...or else ATI could fairly trivially just remove the detection criteria used to decide to reduce quality and get their non-off angle performance gains while retaining flawless image quality (or switch it off for aniso tester applications... :-?).
 
demalion said:
but that still doesn't mean that representing the image quality as uniformly weighted purely by one angular orientation factor allows you to say two implementations are offering the same image quality. I.e., the 4x versus 16x example.

I never said the 4x vs 16x example was realistic or correct. I'm sure the poster(Exxtreme) was only kidding when he said that.

We need to be clear on this: does ATI's performance hit being reduced depend on the off angles being present, or not?

Yes, I think so.

How does that coincide with your commentary concerning games not having significant off angles, but still performing with less performance hit for ATI cards?

Like I said, ATI's alogrithms are obviously more efficient/aggressive. Hence the texture aliasing that some people claim, right?

...you are again saying that the performance increase you are proposing from the off angles is in addition to this efficiency. Well, if there is a performance gain from the off angle image quality degradation, it has to be the only method of reducing performance penalty for Quitch's comment to be contradicted.

Are you simply proposing that the image quality degradation is resulting in performance gain, but no longer stating you disagree with Quitch's commentary with regard to the 16x versus 4x comparison?

Absolutely not. I assume Quitch was looking at the 4x vs 16x filtered texels when he was saying that less work does not mean less IQ. Which is absolutely not true. If 16x AF was being applied on the off angles are you saying that the same amount of texels would be filtered compared to the
"2x/16x" that you current get?

The point of Quitch's commentary was that "it does more work so it's better image quality" is an invalid precept.

This can be true, however...

Your assertion was "NVIDIA's AF method is doing more work because it filters at all angles, while ATI does not. ATI is saving work by not using the maximum degree of AF at certain angles when those angles are present.", which counters this proposal (as you stated by "I don't see how this is the same thing at all." in conjunction with this) if the performance difference is due only to the image quality being degraded...it does not do so if there is a performance difference outside of that which is resulting from the image quality reduction (because then it is apparent that it is saving work even without reducing image quality).

Again: is the performance due to the occurrence of image quality degradation, or due to the methodology (which also happens to sometimes result in image quality reduction)?

I don't think Quitch was applying the statement to normal realworld operation, but rather to the results of the synthetic test. In this case, again, it seems apparent that the total number of filtered texels IS affected by the off angles, and this is "degrading" IQ, at least in comparison to NVIDIA's methods.

But what if they are gaining a great deal of performance even when image quality is not lost? Perhaps this indicates that the determing factor for the performance increase is not the lost image quality? That was Quitch's comparison, AFAICS...what do you propose is showing that this does not apply? AFAIK, this is exactly what is shown, though texture stage/trilinear issues (from both vendors) does cloud the issue.

It is apparent that ATI is gaining a lot of performance in UT2003 and IQ is lost.

When is IQ is lost? When is it gaining a "lot" of performance? If there isn't a dependency of the second on the first, this observation doesn't address these questions.

:?: Clearly ATI is gaining a lot of performance in UT2003 when not performing full trilinear filtering in all texture stages. And this happens to affect IQ negatively. Is performance being gained when IQ is NOT lost? If so, is this the exception or the rule?

Do you agree that IQ is lost and performance is gained in UT2003?

Show me where else ATI is gaining a great deal of performance by not doing trilinear on certain texture stages where IQ is not affected :!:

SH...ATI doesn't seem to have a higher performance trilinear filtering implementation that I know of. So...this doesn't seem to relate clearly to my commentary and proposals...?

I was talking about the texture stage optimization. Same thing with UT2003 above. It seems since you do not dispute the legitimacy of my statements, but only the relevance, that you do not disagree?

Exxtreme said:
A new version of AF Tester for D3D is avaiable:

http://demirug.bei.t-online.de/D3DAFTester.zip

This version has a new function. It can count how much filtered texels are used.

My R9700 Pro is using 4395179 texels at 16x tri-AF.

I have my own numbers from 2x AF and 4x AF, taken with a r9500Pro. 2x AF is using 3918231 texels and 4x AF is using 4274985 texels. In real world games, do you see 16x AF having essentially the same performance hit as 4x AF?

Well, I presume you didn't mean to compare a 9500 Pro to a 9700 Pro and you meant some type of GeForce card, but this logic seems to be broken in several ways unless both completing an AF pixel is identical latency for each architecture and the tunnel case is a suitable universal representation. And, again, this assertion on your part seems to contradict what you said earlier and propose again later...?

Why not, shouldn't the number of filtered texels be similar or the same between a r9500Pro and a r9700Pro? In fact they aren't :p I just tested 16x AF and the number of filtered texels is 4560753.

Wait, maybe you don't construe "more efficient" as indicating "less work is done even when results are similar" ?

No, that is how I interpret it.

.......


Here's the original quote:

Quitch said:
Isn't this "it does more work so it's better image quality" the same thing that was shot down in the trilinear argument, when it was pointed out that you could do work on texture levels that weren't visible, and while this would increase the workload, it wouldn't improve the image quality.

I already tried to debunk the trilinear comparison, stating that a lot of performance is gained in UT2003, while IQ is decreased. And questioning where the performance increases occur where there is no IQ loss. The texture stage optimization does not globally increase performance.

Back to the main point of Quitch's post. We both agree that he was talking about NVIDIA's 4x workload vs ATI's 16x workload. Ok, I will ask this question once again. I think it will solve our disagreement which seems to have become a misunderstanding. If ATI did full filtering on all angles, do you think that the number of filtered texels would increase for 4x AF, 8x AF, and 16x AF? ie, instead of doing 2x AF at certain angles, full degree AF would be done. If the work done does not increase, then Quitch's comments are correct as you interpret them.
 
StealthHawk said:
....:?: Clearly ATI is gaining a lot of performance in UT2003 when not performing full trilinear filtering in all texture stages. And this happens to affect IQ negatively. Is performance being gained when IQ is NOT lost? If so, is this the exception or the rule?...


I was talking about the texture stage optimization. ...

There is no "texture stage optimization" in the ATi drivers relative to UT2K3. If there was such an application-specific optimization coded into the drivers, then setting the cpanel to Application Preference and turning on trilinear in the game would result in...no change (just as is true with the Dets.) But in fact, full trilinear texture-stage treatment (on all applicable stages) does occur in UT2K3 with the Cats. You are confusing a global setting in the force option in the Cat cpanel (which forces trilinear on the same texture stage in all 3d games) with an application-specific optimization in the Cats relative to UT2K3 and single-stage texture treatment. No such optimization exists in the Cats.
 
WaltC said:
There is no "texture stage optimization" in the ATi drivers relative to UT2K3. If there was such an application-specific optimization coded into the drivers, then setting the cpanel to Application Preference and turning on trilinear in the game would result in...no change (just as is true with the Dets.) But in fact, full trilinear texture-stage treatment (on all applicable stages) does occur in UT2K3 with the Cats. You are confusing a global setting in the force option in the Cat cpanel (which forces trilinear on the same texture stage in all 3d games) with an application-specific optimization in the Cats relative to UT2K3 and single-stage texture treatment. No such optimization exists in the Cats.

It's a global texture stage optimization...which only seems to affect UT2003 performance. And Max Payne by 5%. And Aquanox2 by ~10%. And everything else by 0%(in benchmarks I have seen. I have not seen benchmarks which show performance gains in any other games. Not to say they don't exist, but I haven't seen any evidence to the contrary). The question has always been, for me at least, to these two other games that get increased performance lose any IQ?

Does Aquanox2 have an AF slider?

edit: some clarification. People seem to be under the impression that this global optimization is meant to help CURRENT games, which makes no sense to me. The evidence isn't there or hasn;t been presented yet. I find this theory by Hellbinder to be much more plausible
Hellbinder said:
Heres the deal.

It currently only impacts performance on newer UT based engines. It will likely increase performance for other newer engines on the way. Like source and Doom.

If it does not hurt IQ in older and current games, but holds the promise for better performance in newer games. Then it makes sense to make it a full time non Application specific Global optimization.

This was from nV News BTW.
 
StealthHawk,
You still have causality confused, AFAICS.

What you are disagreeing with is "less image quality does not mean less 'work'", where work is the results in measured texel representation in the final image.

What was said was "it does more work doesn't mean it's better image quality", and his example directly corresponds to 'work' meaning the processing, not the result ("when it was pointed out that you could do work on texture levels that weren't visible, and while this would increase workload, it wouldn't improve the image quality"), and, by my discussion at the least, the time taken by the process.

This is akin to arguing that all cards do things the same way to get the same image, so that measuring the difference in the images indicates how efficiently they generated them.

This is the briefest way I can address your commentary on "what you never said", as well as clarifying my references to your text's contradictions.

...

Specific points:

StealthHawk said:
...
Like I said, ATI's alogrithms are obviously more efficient/aggressive. Hence the texture aliasing that some people claim, right?

Now you're making up "facts" and causality as you go along. Why wouldn't the texture aliasing "people claim" be related to a higher level of detail for textures (the default for Direct3D is "highest" last I checked)? What about people who "claim" otherwise?

...
Are you simply proposing that the image quality degradation is resulting in performance gain, but no longer stating you disagree with Quitch's commentary with regard to the 16x versus 4x comparison?

Absolutely not. I assume Quitch was looking at the 4x vs 16x filtered texels when he was saying that less work does not mean less IQ. Which is absolutely not true.

Covered this, but moving on to my own discussion additions:

If 16x AF was being applied on the off angles are you saying that the same amount of texels would be filtered compared to the "2x/16x" that you current get?

The applicable part of my own initial proposal was looking only at the processing, where sampling the same data redundantly would leave you with reduced image quality without reducing work done for it. However, this presumes something like a high degree of texture cache effectiveness (which, as Bjorn and Dave H referred to, I cannot necessarily do so blithely) based on a lack of manifestation of performance variation manifesting for off angle occurrence (which I propose is born out by our discussion of games having off angles rarely occur and the performance difference indicating performance hit difference even without off angles) and the discussion of "work" provided several times now.

The point of Quitch's commentary was that "it does more work so it's better image quality" is an invalid precept.

This can be true, however...

But this is what he said. When you said "absolutely not" above you directly contradict this statement of yours.

...
Again: is the performance due to the occurrence of image quality degradation, or due to the methodology (which also happens to sometimes result in image quality reduction)?

I don't think Quitch was applying the statement to normal realworld operation, but rather to the results of the synthetic test. In this case, again, it seems apparent that the total number of filtered texels IS affected by the off angles, and this is "degrading" IQ, at least in comparison to NVIDIA's methods.

But what about his example, which is outside of this synthetic test and demonstrably means something different by "work" (i.e., not just "results" as I would describe your usage in this context)?

Please note that AFAICS your trilinear discussion can either be answered by performance comparisons of App Pref versus forced AF (where all stage trilinear would obviously be slower...), or fits into my above discussion.

As far as your proposal as far as what Quitch's trilinear discussion refers to, I believe he is referring to cases where the trilinear filtering isn't offering benefit, or at least that is how I understand his reference to it not being visible... :?: This is exactly why it is desirable for applications to control their own AF and trilinear/bilinear applications.

The issue with ATI's bi/tri mixture implementation (and nVidia's bi/tri intermediate) is it being represented as something else universally applicable, not when it offers improved efficiency but doesn't degrade image quality as Quitch seems to be discussing (You're saying otherwise? Why?).

To your last question:

Back to the main point of Quitch's post. We both agree that he was talking about NVIDIA's 4x workload vs ATI's 16x workload.

Well, no, actually I said he was disagreeing with it and stating it can't be applied universally, the distinction with what I understand you to mean here covered above.

Ok, I will ask this question once again. I think it will solve our disagreement which seems to have become a misunderstanding. If ATI did full filtering on all angles, do you think that the number of filtered texels would increase for 4x AF, 8x AF, and 16x AF?

As measured by this application, in this scene, and as representing unique texel samples, yes. As representing what the methodology processed, and how much processing took place to achieve that result, no.

ie, instead of doing 2x AF at certain angles, full degree AF would be done. If the work done does not increase, then Quitch's comments are correct as you interpret them.

What was unclear about my "fails to detect where it should sample" for effective filtering proposal at the beginning, and my continued distinct discussion of methodology, such that you still don't recognize that your usage of "work" does not fit this?
 
demalion said:
What was said was "it does more work doesn't mean it's better image quality", and his example directly corresponds to 'work' meaning the processing, not the result ("when it was pointed out that you could do work on texture levels that weren't visible, and while this would increase workload, it wouldn't improve the image quality"), and, by my discussion at the least, the time taken by the process.

I'm not sure what you're getting at here. Processing AKA work is the filtered texels, is it not? The result is the IQ. Are you saying something different? If you are, what exactly are you saying processing and result are?

Now you're making up "facts" and causality as you go along. Why wouldn't the texture aliasing "people claim" be related to a higher level of detail for textures (the default for Direct3D is "highest" last I checked)? What about people who "claim" otherwise?

You can go back to ATI/NVIDIA discussions from the R200 and NV20 era about AF. Some people say ATI's AF offers better quality than NVIDIA's because it's sharper. Others say ATI's IQ is worse because it introduces texture aliasing. Do I really need to name names here? Chalnoth has been one of those who has said that ATI's AF introduces texture aliasing. Even B3D has talked about this argument. If LOD is being changed, it is done to "increase" IQ to coverup for the lack of samples being taken by AF, right? To me, the cause here is irrelevant. Something is affecting IQ, whether positive or negative, and that something is at least influenced by the way ATI performs AF. Therefore I conclude that AF is responsible.


As to Quitch's statements and their applicability, I think you're overevaluating them. Or I'm not reading enough into them. Either way, it's senseless to argue about it, the only person who really knows what message was supposed to be conveyed is Quitch himself, and he isn't commenting.
 
StealthHawk said:
demalion said:
What was said was "it does more work doesn't mean it's better image quality", and his example directly corresponds to 'work' meaning the processing, not the result ("when it was pointed out that you could do work on texture levels that weren't visible, and while this would increase workload, it wouldn't improve the image quality"), and, by my discussion at the least, the time taken by the process.

I'm not sure what you're getting at here. Processing AKA work is the filtered texels, is it not?

If you average A and B, you can do a specific amount of processing, (A+B)/2 is the result. If you did this by adding A and B, and then divided by two, then that is the processing...those 3 steps, and the required set up to arrange the values to be processed.

If you average a set of 100 numbers, that indicates you did more processing, yes? But if A and B are represented equally in that set, (A+B)/2 is still the result. That doesn't mean your processing consisted of just the steps of setting up and adding A and B and then dividing by 2, nor does counting the number of unique values tell you the only way you could have processed values to reach this result.

...

You are looking at the result, which can be said to be (A+B)/2, and saying that this is the same thing as the processing, even in the latter case.

The result is the IQ.

Yes, and the texel count is a measure related to the detail in the specific scene (in the sense of counting distinct colors in a picture tells you how detailed it is). They represent the effect of the process, not the process.

Anyways, have you decided whether you are sticking with:

StealthHawk said:
I don't see how this is the same thing at all. NVIDIA's AF method is doing more work because it filters at all angles, while ATI does not. ATI is saving work by not using the maximum degree of AF at certain angles when those angles are present.

:?: When you keep saying "work is the result", you seem to be returning to this, even though you say you agree with "work is the process" and have indicated something that seems to contradict what I initially replied to. I'm still not clear.

Are you saying something different? If you are, what exactly are you saying processing and result are?

:?: How many ways should I say that the result and processing are not the same, and how what you've specified is saying that they are?

Now you're making up "facts" and causality as you go along. Why wouldn't the texture aliasing "people claim" be related to a higher level of detail for textures (the default for Direct3D is "highest" last I checked)? What about people who "claim" otherwise?

You can go back to ATI/NVIDIA discussions from the R200 and NV20 era about AF. Some people say ATI's AF offers better quality than NVIDIA's because it's sharper. Others say ATI's IQ is worse because it introduces texture aliasing.
Isn't this the same thing you were saying when I asked the question in the first place?

Do I really need to name names here?

:?: Why would you need to? I'm not challenging that people have stated both things.

Chalnoth has been one of those who has said that ATI's AF introduces texture aliasing. Even B3D has talked about this argument. If LOD is being changed, it is done to "increase" IQ to coverup for the lack of samples being taken by AF, right?

Is this the answer to my question?

That's one possible result of changing LOD, as far as still screen shots, yes. But that is not what increasing LOD (negative bias) specifically does. Witness: you can turn up AF filtering, and increase the negative bias for textures, at the same time...i.e., without "covering up" for the lack of samples of AF.

To me, the cause here is irrelevant.

OK, then as far as I understand it, your stipulation is incompatible with communicating clearly about the characteristics of hardware functionality at all. :-?

Something is affecting IQ, whether positive or negative, and that something is at least influenced by the way ATI performs AF.

Yes.

Therefore I conclude that AF is responsible.

Yes, but there is the organization of the process as well as the processing itself, as far as hardware implementation, clock cycles, and the time it takes to reach the result. Again: what if the cause is the organization or some other characteristic that saves the work and time? Don't the performance characteristics indicate exactly that? Please consider this in relation to the commentary of yours I mentioned again above.

As to Quitch's statements and their applicability, I think you're overevaluating them.

Well, I provided a pretty direct set of commentary that seems to closely correlate with exactly what he did actually say. How am I "overevaluating"? I also asked specific questions along these lines when I discussed his comments, along with quoting him verbatim.
Where are you getting your conclusions about his statements?

Or I'm not reading enough into them. Either way, it's senseless to argue about it, the only person who really knows what message was supposed to be conveyed is Quitch himself, and he isn't commenting.

Well, AFAICS, you are skipping over the rest of my discussion as well, which refers to your words as well as Quitch's, for no reason apparent to me associated with making progress. For example, my initial example in the last post which I specificly proposed as encapsulating the issue.
 
demalion said:
If you average A and B, you can do a specific amount of processing, (A+B)/2 is the result. If you did this by adding A and B, and then divided by two, then that is the processing...those 3 steps, and the required set up to arrange the values to be processed.

If you average a set of 100 numbers, that indicates you did more processing, yes? But if A and B are represented equally in that set, (A+B)/2 is still the result. That doesn't mean your processing consisted of just the steps of setting up and adding A and B and then dividing by 2, nor does counting the number of unique values tell you the only way you could have processed values to reach this result.

...

You are looking at the result, which can be said to be (A+B)/2, and saying that this is the same thing as the processing, even in the latter case.

The result is the IQ.

Yes, and the texel count is a measure related to the detail in the specific scene (in the sense of counting distinct colors in a picture tells you how detailed it is). They represent the effect of the process, not the process.

So what is the process then, the number of sample points?

Anyways, have you decided whether you are sticking with:

StealthHawk said:
I don't see how this is the same thing at all. NVIDIA's AF method is doing more work because it filters at all angles, while ATI does not. ATI is saving work by not using the maximum degree of AF at certain angles when those angles are present.

:?: When you keep saying "work is the result", you seem to be returning to this, even though you say you agree with "work is the process" and have indicated something that seems to contradict what I initially replied to. I'm still not clear.

You are saying that the result is not the same thing as the work. How do you meaure the work then? How can you determine how much work is being done, and if the amount of work increases or not? Earlier you stated that if ATI AF did full degree filtering that the result would be increased texels filtered, but that the work would not increase. What data proves this, and how do you know for sure? Surely some concrete irrefutable numbers exist which support this theory and have been interpreted to form this theory.

:?: How many ways should I say that the result and processing are not the same, and how what you've specified is saying that they are?

Honestly it would help a lot if you cut down on the rhetoric, weren't as long winded, and just got to the point. No offense, but you write a lot, and it's not easy to sift through it. I see now that if I don't read everything over carefully I can miss a lot. Which is not a fun or enjoyable process.

OK, then as far as I understand it, your stipulation is incompatible with communicating clearly about the characteristics of hardware functionality at all. :-?

I think debating over something that is intangible and inscrutable is a waste of time. If there is no evidence that supports or refutes or can be interpreted then what are we to dwell on? Either there is evidence which can be presented(which thus far has not been), or everything is complete speculation.

Yes, but there is the organization of the process as well as the processing itself, as far as hardware implementation, clock cycles, and the time it takes to reach the result. Again: what if the cause is the organization or some other characteristic that saves the work and time? Don't the performance characteristics indicate exactly that? Please consider this in relation to the commentary of yours I mentioned again above.

You have as much admitted that the organization of the process and the process are unknown to us and cannot be proven! So how can you be so sure you are correct?
 
Again: what if the cause is the organization or some other characteristic that saves the work and time? Don't the performance characteristics indicate exactly that?

Just curious, but which performance characteristics is it that you talk about here ?
 
StealthHawk said:
It's a global texture stage optimization...which only seems to affect UT2003 performance. And Max Payne by 5%. And Aquanox2 by ~10%. And everything else by 0%(in benchmarks I have seen. I have not seen benchmarks which show performance gains in any other games. Not to say they don't exist, but I haven't seen any evidence to the contrary). The question has always been, for me at least, to these two other games that get increased performance lose any IQ?

I am surprised by what convolutions people can make out of something as simple as Cpanel options....;)

Cpanel options are not meant to replace in-game options settings. They exist to *force* options in games which do not offer internal control for those options through their respective game engines. The proper way to use the Cpanel in the case of games which include their own settings is to turn the Cpanel control *off* by way of setting it to Application Preferences, and using the in-game controls, instead. When this is done with the Cats in UT2K3 the game displays full trilinear. There is no optimization in the Cats which prevents the proper texture-stage treatment when the user turns on full trilinear in the game (unless the user fails to set the Cpanel to AP, in which case the global texture-stage treatment is forced, instead.)

When an IHV forces something through the Cpanel, by nature it is not application-specific. Neither is it an "optimization" in any sense of the word. The Cpanel forces texture-stage treatment on a single stage simply because that is the "best fit" for 99% of the 3d games in existence which do not offer their own in-game controls for such settings.

To call it a "global optimization" is in error because it was not implemented to benefit the 2-3 games you mention, but rather it was implemented to serve the dozens of 3d games for which the treatment of a single texture-stage is all that is required. The key to understanding it is not looking at the 2-3 exceptions, but rather looking at the dozens of 3d games for which it works perfectly.

A good 3d game will include internal controls for all of its IQ settings. A good set of IHV drivers will respond correctly to those in-game controls. A poor 3d game will include few, if any, in-game controls for IQ, which forces the user to drop back to an attempt to force them through the IHV control panel. This is an imperfect solution and so it should not be surprising that settings forced through the Cpanel only work properly 95% of the time, depending on the specific game engine in which they are trying to force those settings.

IMO, the IHVs have done such a good job of forcing IQ settings through their Cpanels that some end users have reached the erroneous conclusion that the Cpanel is the proper place to set up IQ for a game, and many software developers have decided to let the IHV handle IQ settings instead of doing it themselves like they should be doing. I would hope that going forward the IHVs would begin to forcefully stress to developers the importance of doing their own engine settings for IQ in their games, and that the IHVs would provide the help many of these developers obviously need in doing it.
 
I would hope that going forward the IHVs would begin to forcefully stress to developers the importance of doing their own engine settings for IQ in their games, and that the IHVs would provide the help many of these developers obviously need in doing it.

Sign me up on this. These things should be in the games since the usable settings can differ so much depending on the game.
I think even you lucky Radeon 9800 Pro users will notice this when HL2 and Doom3 comes out :)

The other thing is that i can be rather annoying to test what settings you prefer when you have to restart the game and go to the CP everytime you want to change something. I remember that it was a joy to set up the FSAA in Neverwinter Nights since you could change and test the settings within the game. And the result was immedietly visible when moving the slider. Don't remember if you could do the same with AF though.
 
Back
Top