GeForce 6800: FP32 blending?

KimB

Legend
Well, finally got around to downloading the Summer 2004 DX9 SDK Update, and I did a little bit of picking around. When going through the caps viewer, I noticed that in the "Texture formats" area, under the column, "D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING," there is a "yes" in every slot, including the FP32 pixel formats.

This seems to indicate that, contrary to previous reports of not supporting FP32 blending, the 6800 does indeed support this.

As another point of interest, I also noticed support for 9-sample multisample buffers. I'll have to look into this a bit more.
 
Chalnoth said:
This seems to indicate that, contrary to previous reports of not supporting FP32 blending, the 6800 does indeed support this.

Around the time of the launch of NV40 NVIDIA made a *lot* of noise about support for FP16 blending. They made no noise about FP32 blending. Given NVIDIAs... erm... tendency to shout off about any feature in their chips this silence would be rather bizarre if it did indeed support FP32 blending don't ya think?

Secondly, IIRC in one of the interviews with ... maybe David Kirk or someone like him, the question was asked "why not FP32 blending?". The answer was a mix of "too many transistors" and "whoa there big fella, one step at a time".

I would be gobsmacked and dumb-founded if NV40 does turn out to support FP32 blending (in hardware, not by software emulation). A driver bug on the other hand would not suprise me at all.

To be quite frank I'd also be mildly (and pleasantly) suprised if *NV50* support FP32 blending, but that remains to be seen I guess.
 
Chalnoth said:
Well, finally got around to downloading the Summer 2004 DX9 SDK Update, and I did a little bit of picking around. When going through the caps viewer, I noticed that in the "Texture formats" area, under the column, "D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING," there is a "yes" in every slot, including the FP32 pixel formats.

I guess you'll still have to validate the device state before making any assumption.
 
It appears there was a bug somewhere. Could be that I didn't reboot or something after installing the SDK. Everything reports as expected now (no 9x multisample, no FP32 blending).
 
Chalnoth said:
poly-gone said:
Whoa! Apparently, ATI's drivers aren't the only thing that require a reboot after installing :LOL:!
Um, I didn't install the drivers at that time.

Don't worry chalnoth. I did the same thing on the spare pc and it said my geforce 4 supported sm 3.0 extensions. So its just most likely a bug .
 
Well, it's reporting correctly now. Interestingly, it only lists 512 pixel shader instructions possible. I'm currently looking at what is supported under OpenGL, but I thought it was much higher.
 
Chalnoth said:
Well, it's reporting correctly now. Interestingly, it only lists 512 pixel shader instructions possible. I'm currently looking at what is supported under OpenGL, but I thought it was much higher.

doesn't it have to be higher than that ? isn't that what the r420 supports ?
 
512 is the minimum for PS3. This seems interesting, as if constants weren't used, the NV40 could support 1024 instructions. Not only that, but their programming documents seem to indicate 64k instruction support.
 
Chalnoth:

That 64K number you're thinking of is the maximum number of instructions executed in a single pass (through flow control), not the number of instruction slots.
 
akira888 said:
Chalnoth:

That 64K number you're thinking of is the maximum number of instructions executed in a single pass (through flow control), not the number of instruction slots.
Well, fine, but the caps bits say 1024 max executed instructions. Anyway, look at what the CineFX 3.0 page says about shader length limitations:
http://www.nvidia.com/object/feature_cinefx3.0.html

Infinite length shader programs: With CineFX 3.0 there are no hardware-imposed limitations on shader programs. The technology and speed advancements of CineFX 3.0 ensure that longer programs will run blazingly fast.

This would seem to imply fully-virtualized shader program storage, but the current-exposed instruction counts (61.77 drivers) in PS 3.0 are apparently only the minimum spec for PS 3.0.
 
Tridam said:
That's right.

Moreover the max instruction slots is now 4096 for pixel shader.
With what drivers is this? And I assume you were looking in the PS 3.0 caps for this info?
 
Chalnoth said:
akira888 said:
Chalnoth:

That 64K number you're thinking of is the maximum number of instructions executed in a single pass (through flow control), not the number of instruction slots.
Well, fine, but the caps bits say 1024 max executed instructions. Anyway, look at what the CineFX 3.0 page says about shader length limitations:
http://www.nvidia.com/object/feature_cinefx3.0.html

Infinite length shader programs: With CineFX 3.0 there are no hardware-imposed limitations on shader programs. The technology and speed advancements of CineFX 3.0 ensure that longer programs will run blazingly fast.

This would seem to imply fully-virtualized shader program storage, but the current-exposed instruction counts (61.77 drivers) in PS 3.0 are apparently only the minimum spec for PS 3.0.

61.34 :
Max instruction slots : 4096
Max instructions executed : 65535
 
Infinite length shader programs: With CineFX 3.0 there are no hardware-imposed limitations on shader programs. The technology and speed advancements of CineFX 3.0 ensure that longer programs will run blazingly fast.

This would seem to imply fully-virtualized shader program storage, but the current-exposed instruction counts (61.77 drivers) in PS 3.0 are apparently only the minimum spec for PS 3.0.

No, that's what they call marketing. You have heard of it, haven't you chal? I know you've got a soft spot for the big green n but c'mon this is getting silly.[/quote]
 
Back
Top