Xbit -- Farcry 1.2 and NV SM3.0 = pile of beans.

Blastman

Golden Member
Oct 21, 1999
1,758
0
76
NV?s manipulation of benchmarks and hardware sites never ceases to amaze me. I posed the question at Beyond3d a couple of weeks ago in a thread, basically it was -- How do we know whether the speed improvements in Farcry 1.2 are from SM3.0 and not from just some other general shader optimizations which NV could attribute to SM3.0? Well Xbit took a look and found the answers ?

xbit?re:Farcry 1.2

????..However all performance gains in the above tests are actually due to pass reduction at rendering lighting. That is the current implementation has no merits achieved via the features of Shaders 3.0.

So basically, NV helped rewrite/optimize some lighting/shaders for Farcry and the performance improvements had basically nothing to do with SM3.0 at all. #$#@#%%^&!!!!!

Looks like ATI is going to be faster in FP shader intensive games this round again and NV will have to write special shader paths to keep up.
 

vshah

Lifer
Sep 20, 2003
19,003
24
81
well that goes against everything everyone else has said, including crytek soooo

btw, the reduction in lighting passes is ONLY POSSIBLE WITH SM3.0. sm2.0 cards have to use one pass for each light source in the scene. with the 1.2 patch, a sm3.0 card can use one pass for all the lights. (i believe thats the diff, someone correct me if i'm wrong). also geometry instancing is only possible with sm3.0, and is used in the 1.2 patch.

-Vivan
 

nitromullet

Diamond Member
Jan 7, 2004
9,031
36
91
I knew it! As soon as I got my new card, there would be some kind of new FUD going around about whichever one I decided to go with. This is like clockwork. I got my 6800GT yesterday, and here it is....
 

vshah

Lifer
Sep 20, 2003
19,003
24
81
Originally posted by: nitromullet
I knew it! As soon as I got my new card, there would be some kind of new FUD going around about whichever one I decided to go with. This is like clockwork. I got my 6800GT yesterday, and here it is....

lol sux...but seriously, that ixbit reviewer contradicts himself in the conclusion.

-Vivan
 

Blastman

Golden Member
Oct 21, 1999
1,758
0
76
It?s not FUD. They took a look at the code and the shaders used.

?..
Let's see what pixel shaders are used in the game. To do this, using 3DAnalyzer we saved all the shaders used in the game with GeForce 6800 in the Research demo with the activated mode r_sm30path. This demo was selected because it demonstrated maximum gain after the activation of this rendering mode. Complete listing of Pixel Shaders 3.0 contains almost two thousand lines. But to my surprise, a shallow examination of the resulting shaders did not reveal a single distinctive feature of Pixel Shaders 3.0: neither dynamic or static branching, nor dynamic/static cycles, etc. Likewise, all the shaders seem to have the code length meeting the specification for Pixel Shaders 2.0 (and guaranteed compliance with limitations for Shaders 2.0a and 2.0b).

???..And FarCry 1.2 does not use the features of Shaders 3.0, though it has such capabilities.


???on the other hand, it seems that the improvement, which brought considerable rendering gain (several light sources at one pass), could have been implemented with Shaders 2.x (possibly even 2.0). Thus I would like to wish the developers not only to promote the latest technologies, but also not to forget and optimize the game performance with the existing video cards.
 

nitromullet

Diamond Member
Jan 7, 2004
9,031
36
91
Originally posted by: Blastman
It?s not FUD. They took a look at the code and the shaders used.

?using 3DAnalyzer we saved all the shaders used in the game with GeForce 6800 in the Research demo with the activated mode r_sm30path....

....a shallow examination...

Where exactly do you get that they "looked at the code" from this? Publishing results based on a "shallow examination" sounds like sloppy journalism to me. I'm not saying it is false, just that without proper, thorough investigation it is just FUD.
 

BFG10K

Lifer
Aug 14, 2000
22,709
3,005
126
However all performance gains in the above tests are actually due to pass reduction at rendering lighting.
Of course - that's what SM 3.0 is for, to reduce the number of passes over SM 2.0 code.

So basically, NV helped rewrite/optimize some lighting/shaders for Farcry and the performance improvements had basically nothing to do with SM3.0 at all.
Uh, how exactly do you think the number of passes were reduced? Likewise, how do you suppose they could've implemented geometry instancing without SM 3.0?

They took a look at the code and the shaders used.
I don't think so. I doubt even the IHVs are allowed to look at Crytek's code.
 

Pete

Diamond Member
Oct 10, 1999
4,953
0
0
It looks potentially shady mainly b/c of nV's last-gen stunts, IMO, but until we get to the bottom of whether the geometry instancing switch works or not, let's not all get ready to skin nVidia alive ... again.

But it is interesting that Crytek was pumping out nV demos way back when. I had completely forgotten about that. X Isle still looks pretty good.

Vivan, it really helps if you read the article before dismissing it. :p Xbit is saying that of the shaders they extracted they didn't see any that couldn't be done in SM2.0 with a little work. (But I wouldn't put it past them to make such a big claim with page hits in mind.)

nitro, they extracted all the shaders from the Research level (that's one of the SM3-heavy ones, right?) using 3DA and examined them for anything that looked like it required SM3 (e.g., conditional branching). Some folks at B3D are saying it may be possible to write the shaders they extracted in SM2.0. If it turns out to be true that Crytek is giving nV a helping hand, would you still consider xbit's assertions tol be FUD simply b/c they didn't go through every single shader in the game?

I'm just not sure why people are so quick to defend an IHV (*any* IHV) at this point, though the opposite would apply to Blastman's rather hasty conclusion.
 

BFG10K

Lifer
Aug 14, 2000
22,709
3,005
126
LOL, the Control AA/AF benchmarks are faster with SM 2.0 than they are with SM 3.0.

they extracted all the shaders from the Research level (that's one of the SM3-heavy ones, right?) using 3DA
Can 3DA disassemble SM 3.0 shaders though? Given DirectX 9.0c isn't out yet maybe the current build of 3DA disassembled the SM 2.0 ones instead.

Or to put it another way, are we sure that XBit were actually looking at the SM 3.0 code?
 

Pete

Diamond Member
Oct 10, 1999
4,953
0
0
The people at B3D seem to think the extracted shaders are legit, and I don't think SM3.0 is required simply to read the shader code: code is code, period. 3DA should be intercepting it before it gets to the drivers.
 

BFG10K

Lifer
Aug 14, 2000
22,709
3,005
126
The people at B3D seem to think the extracted shaders are legit,
Has anyone extracted the SM 2.0 shaders and looked for differences?

and I don't think SM3.0 is required simply to read the shader code: code is code, period.
If 3DA is a disassembler then it must recognize the language it's trying to disassemble.

And another thing, if these shaders are really SM 2.0 compliant then it should be possible to force the SM 3.0 path onto SM 2.0 cards and we should expect to see the same performance gains that NV40 cards show.
 

nitromullet

Diamond Member
Jan 7, 2004
9,031
36
91
Link to 3D Analize (give it a second to load to the 3D Analize page)

...it doesn't appear to make any mention of SM3.0. Not sure what that means...
 

CaiNaM

Diamond Member
Oct 26, 2000
3,718
0
0
If 3DA is a disassembler then it must recognize the language it's trying to disassemble.

umm.. sm3 isn't a "different language". it's the same. the difference is in the hardware, which simply accepts different instructions (which are still written in the same "language").
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,739
156
106
this thread is useless
these threads are getting tiresome from both sides of the fence
 

VirtualLarry

No Lifer
Aug 25, 2001
56,587
10,225
126
Here's a question that I have about XBitLabs analysis - did they specifically look for shader opcodes that would do texture lookups in the vertex shader pipeline? That's one of the new features of SM3.0, and also one that has a decent potential performance gain in some cases, AIUI.

From everything that I've read thus far, everything that FarCry is actually doing (HDR, virtual displacement mapping), can be done in SM2.0 just as in SM3.0, but SM3.0 provides some level of performance optimizations. At least that's what was claimed by some people from CryTek, in the interview posted on TechReport. I would trust TechReport over XBitLabs anyday.

I have some x86 assembly experience, but I don't know the low-level shader language/opcodes, so I can't be more specific about all of this without learning some more. But that link to 3DA is interesting, I didn't know that there was a tool for actually capturing shader programs out of the driver.
 

nRollo

Banned
Jan 11, 2002
10,460
0
0
This is FUD.
The guys at Crytek themselves say SM3 makes a difference, and the "reducing the number of passes" nonsense is the way SM3 does make a difference?

What Crytek says
We?re using looping and branching mainly. We?re using the floating point FP16 FP 32 of course. But mainly we?re using the aspect of making sure that more lighting can be accomplished with flow control and branching so we can encode for example 4 lights in one pass, which is speeding up the rendering. Our utilization of 3.0 shader model is essentially tied to performance improvements. So for example we can render, previously with 2.0 we were rendering one light per pass and now we?re rendering up to four lights per pass.

Second aspect is that we?re using geometry instancing which is a big performance gainer, mostly for outdoors but also for indoors. On the outdoors we?re using for example to reduce the draw calls from trees, grass, and other vegetation objects, we?re using the same or similar object meshes in different positions and orientations. They?re rendered in one draw call with different attributes in the vertex shader. That reduces the draw calls.
 

Marsumane

Golden Member
Mar 9, 2004
1,171
0
0
Originally posted by: Rollo
This is FUD.
The guys at Crytek themselves say SM3 makes a difference, and the "reducing the number of passes" nonsense is the way SM3 does make a difference?

What Crytek says
We?re using looping and branching mainly. We?re using the floating point FP16 FP 32 of course. But mainly we?re using the aspect of making sure that more lighting can be accomplished with flow control and branching so we can encode for example 4 lights in one pass, which is speeding up the rendering. Our utilization of 3.0 shader model is essentially tied to performance improvements. So for example we can render, previously with 2.0 we were rendering one light per pass and now we?re rendering up to four lights per pass.

Second aspect is that we?re using geometry instancing which is a big performance gainer, mostly for outdoors but also for indoors. On the outdoors we?re using for example to reduce the draw calls from trees, grass, and other vegetation objects, we?re using the same or similar object meshes in different positions and orientations. They?re rendered in one draw call with different attributes in the vertex shader. That reduces the draw calls.

I dont see how the ppl that made the game would say such a thing and then it wouldnt be the case. What do they owe NV? There are too many tools used in this that could have potential other reasons for the benchmarks that showed the instancing benefits in SM3.0. Maybe the demos option for enabling only instancing doesnt work? Maybe the prog for pulling the shaders out of the code isnt exactly right either? Rollo: you should try this yourself also. See if this site is even legit on their findings.
 

VisableAssassin

Senior member
Nov 12, 2001
767
0
0
Originally posted by: Rollo
This is FUD.
The guys at Crytek themselves say SM3 makes a difference, and the "reducing the number of passes" nonsense is the way SM3 does make a difference?

What Crytek says
We?re using looping and branching mainly. We?re using the floating point FP16 FP 32 of course. But mainly we?re using the aspect of making sure that more lighting can be accomplished with flow control and branching so we can encode for example 4 lights in one pass, which is speeding up the rendering. Our utilization of 3.0 shader model is essentially tied to performance improvements. So for example we can render, previously with 2.0 we were rendering one light per pass and now we?re rendering up to four lights per pass.

Second aspect is that we?re using geometry instancing which is a big performance gainer, mostly for outdoors but also for indoors. On the outdoors we?re using for example to reduce the draw calls from trees, grass, and other vegetation objects, we?re using the same or similar object meshes in different positions and orientations. They?re rendered in one draw call with different attributes in the vertex shader. That reduces the draw calls.

Who cares what Crytek has to say Rollo NV made the game so hence they are cheating...oh wait... :roll:
Once again NV gets a slight jump in the FPS department of a game and boom they are cheating, first it was drivers and now its how a company codes ITS game....some people really have nothing better to do my friend, but they seem to find their time more productive when they spread around useless BS.
 

Ackmed

Diamond Member
Oct 1, 2003
8,499
560
126
I dont think they are cheating, but they did make the 4 custom demos that are in the patch. When a IHV goes that far, personally I think its too far. No game company should be making any demos for games that will be used for benchmarking.
 

gururu

Platinum Member
Jul 16, 2002
2,402
0
0
X-bit labs seems to be the first site to pay closer attention to the new coding paths in the patch. It raises an interesting question for me, one with a blatantly obvious answer. The question being, is there more than PS 3.0 going on? YES!!!! Is it too hard to believe that not a line of non-PS 3.0 code was added, switched, deleted to help the FX get up to speed? I think X-bit is jumping the gun in claiming no performance enhancement. BUT, I think that the levels of performance gained cannot be explained simply through Shader 3.0 implementation.
It doesn't matter, because the game plays better. But I do think it is corporate propaganda when Nvidia (perhaps through Crytek right now) are saying that this feature set is the only explanation for the perfomance difference, and I salute x-bit labs for raising the issue for other sites to examine.
 

nRollo

Banned
Jan 11, 2002
10,460
0
0
Originally posted by: Ackmed
I dont think they are cheating, but they did make the 4 custom demos that are in the patch. When a IHV goes that far, personally I think its too far. No game company should be making any demos for games that will be used for benchmarking.

Ackmed: making demos that show where the SM3 advantages come into play isn't "goign too far", it's giving us something useful. I think most of us understand that the advantage of SM3 isn't going to be the same in every scene on the map, but do want to see where it is giving an improvement.

If SM3 will help my card run 20% faster in a scene where they use instancing to render multiple plants/leaves/grass/etc why would I want to test SM3 looking at a scene where everything rendered is unique and there is no advantage?

Seems to be common sense to me.
 

nRollo

Banned
Jan 11, 2002
10,460
0
0
Originally posted by: VisableAssassin
Originally posted by: Rollo
This is FUD.
The guys at Crytek themselves say SM3 makes a difference, and the "reducing the number of passes" nonsense is the way SM3 does make a difference?

What Crytek says
We?re using looping and branching mainly. We?re using the floating point FP16 FP 32 of course. But mainly we?re using the aspect of making sure that more lighting can be accomplished with flow control and branching so we can encode for example 4 lights in one pass, which is speeding up the rendering. Our utilization of 3.0 shader model is essentially tied to performance improvements. So for example we can render, previously with 2.0 we were rendering one light per pass and now we?re rendering up to four lights per pass.

Second aspect is that we?re using geometry instancing which is a big performance gainer, mostly for outdoors but also for indoors. On the outdoors we?re using for example to reduce the draw calls from trees, grass, and other vegetation objects, we?re using the same or similar object meshes in different positions and orientations. They?re rendered in one draw call with different attributes in the vertex shader. That reduces the draw calls.

Who cares what Crytek has to say Rollo NV made the game so hence they are cheating...oh wait... :roll:
Once again NV gets a slight jump in the FPS department of a game and boom they are cheating, first it was drivers and now its how a company codes ITS game....some people really have nothing better to do my friend, but they seem to find their time more productive when they spread around useless BS.

Thanks Visable Assasin. I somehow also get the feeling if Xbit had questioned gains from 3Dc we wouldn't see anything other than outrage from the OP.
 

Ackmed

Diamond Member
Oct 1, 2003
8,499
560
126
Originally posted by: Rollo
Originally posted by: Ackmed
I dont think they are cheating, but they did make the 4 custom demos that are in the patch. When a IHV goes that far, personally I think its too far. No game company should be making any demos for games that will be used for benchmarking.

Ackmed: making demos that show where the SM3 advantages come into play isn't "goign too far", it's giving us something useful. I think most of us understand that the advantage of SM3 isn't going to be the same in every scene on the map, but do want to see where it is giving an improvement.

If SM3 will help my card run 20% faster in a scene where they use instancing to render multiple plants/leaves/grass/etc why would I want to test SM3 looking at a scene where everything rendered is unique and there is no advantage?

Seems to be common sense to me.

I understand the need to try and showcase PS3.0. But in my opinion, Crytek should have been the ones to make the demos. nVidia is going to try and showcase it in the best light. I just dont think, ATi, nVidia, or anyone else should make demos for any game that will be used as timedemos. It was pretty obvious that the NV cards performed better in their custom demos, than in the others.

Its just my opinion, if you dont agree, thats fine with me. :)

Originally posted by: Rollo


Thanks Visable Assasin. I somehow also get the feeling if Xbit had questioned gains from 3Dc we wouldn't see anything other than outrage from the OP.

If ATi were to make custom demos that were included in patch 1.3 with 3Dc, I would be saying the same thing. I dont think any IHV should be doing that.
 

DAPUNISHER

Super Moderator CPU Forum Mod and Elite Member
Super Moderator
Aug 22, 2001
32,125
32,700
146
I disagree with you on this Ackmed, I think if the game makers were the ones creating the demos under circumstances like these, that it would lay them wide-open to accussations of collusion. Hell, they are already being accussed of it by the zealots, and they had very little to do with it beyond stating they support it in the new patch.

Any company will try to show their product in the best possible light, while trying to hide it's short comings deep in the shadows, why should this be any exception? Rollo has it right in saying they want to show it in the best case senario, and as long as you know that going in, I see nothing wrong with it.

I also thinki that if this proves an opt that isn't SM3 related, that there is still no room to criticise the opt itself, because IQ seems to still be excellent. ATi has the brilinear which accomplishes just that. The real cause for criticism will be if it is a non SM3 opt that is being paraded as one, which so far hasn't been proven.