MDolenc's Fillrate Tester: GF FX FP32/FP16 Performance

Marc: I have changed the PS 2.0 - Longer 4 Registers test a bit, can you give it another shot? Click! ;)
Also can someone with GeForceFX 5900 try the new version?
 
Before

Code:
Fillrate Tester
--------------------------
Display adapter: NVIDIA GeForce FX 5800 Ultra
Driver version: 6.14.10.4410
Display mode: 1280x1024 A8R8G8B8 85Hz
Z-Buffer format: D24S8
--------------------------

FFP - Pure fillrate - 1989.336548M pixels/sec
FFP - Z pixel rate - 3548.378174M pixels/sec
FFP - Single texture - 1650.513184M pixels/sec
FFP - Dual texture - 1435.574341M pixels/sec
FFP - Triple texture - 799.460815M pixels/sec
FFP - Quad texture - 785.500244M pixels/sec
PS 1.1 - Simple - 989.660278M pixels/sec
PS 1.4 - Simple - 624.859375M pixels/sec
PS 2.0 - Simple - 628.441650M pixels/sec
PS 2.0 PP - Simple - 628.443176M pixels/sec
PS 2.0 - Longer - 378.415833M pixels/sec
PS 2.0 PP - Longer - 378.290619M pixels/sec
PS 2.0 - Longer 4 Registers - 378.291901M pixels/sec
PS 2.0 PP - Longer 4 Registers - 378.287720M pixels/sec
PS 2.0 - Per Pixel Lighting - 60.525784M pixels/sec
PS 2.0 PP - Per Pixel Lighting - 67.041069M pixels/sec


After
Code:
Fillrate Tester
--------------------------
Display adapter: NVIDIA GeForce FX 5800 Ultra
Driver version: 6.14.10.4410
Display mode: 1280x1024 A8R8G8B8 85Hz
Z-Buffer format: D24S8
--------------------------

FFP - Pure fillrate - 1957.946899M pixels/sec
FFP - Z pixel rate - 3547.966064M pixels/sec
FFP - Single texture - 1650.619629M pixels/sec
FFP - Dual texture - 1435.494629M pixels/sec
FFP - Triple texture - 799.567261M pixels/sec
FFP - Quad texture - 785.587708M pixels/sec
PS 1.1 - Simple - 989.477356M pixels/sec
PS 1.4 - Simple - 624.802979M pixels/sec
PS 2.0 - Simple - 628.450745M pixels/sec
PS 2.0 PP - Simple - 628.446899M pixels/sec
PS 2.0 - Longer - 378.286591M pixels/sec
PS 2.0 PP - Longer - 378.284943M pixels/sec
PS 2.0 - Longer 4 Registers - 304.032501M pixels/sec
PS 2.0 PP - Longer 4 Registers - 377.960114M pixels/sec
PS 2.0 - Per Pixel Lighting - 60.536434M pixels/sec
PS 2.0 PP - Per Pixel Lighting - 67.032890M pixels/sec
 
heres with my 9700pro

Fillrate Tester
--------------------------
Display adapter: RADEON 9700 PRO
Driver version: 6.14.10.6343
Display mode: 1024x768 A8R8G8B8 85Hz
Z-Buffer format: D24S8
--------------------------

FFP - Pure fillrate - 1459.733887M pixels/sec
FFP - Z pixel rate - 1193.569946M pixels/sec
FFP - Single texture - 1173.944702M pixels/sec
FFP - Dual texture - 846.070251M pixels/sec
FFP - Triple texture - 602.818359M pixels/sec
FFP - Quad texture - 376.623474M pixels/sec
PS 1.1 - Simple - 1247.384155M pixels/sec
PS 1.4 - Simple - 1247.269409M pixels/sec
PS 2.0 - Simple - 1247.168579M pixels/sec
PS 2.0 PP - Simple - 1247.177368M pixels/sec
PS 2.0 - Longer - 635.008728M pixels/sec
PS 2.0 PP - Longer - 635.004517M pixels/sec
PS 2.0 - Longer 4 Registers - 635.021057M pixels/sec
PS 2.0 PP - Longer 4 Registers - 635.009888M pixels/sec
PS 2.0 - Per Pixel Lighting - 135.003540M pixels/sec
PS 2.0 PP - Per Pixel Lighting - 135.006012M pixels/sec
 
Someone with the 5900 ultra, please try MDolnec's updated diagnostic, linked above.^^^^^^^

BTW, great job MDolnec and pcchen (and humus, Ilfrin, etc.). Members like you are what separate Beyond3d from just any other forum. Your work contributes greatly to the enlightenment of the end user/enthusiast/developer. Not only can we speculate, but we can obtain real world results, to prove or disprove our theories.
 
Marc said:
Before

Code:
PS 2.0 - Longer 4 Registers - 378.291901M pixels/sec


After
Code:
PS 2.0 - Longer 4 Registers - 304.032501M pixels/sec

So, was the performance drop expected due to the "change", or is this yet another example of either nVidia "optimizations", or "driver twitchiness"?
 
Luminescent said:
Joe DeFuria said:
...driver twitchiness...
Still stuck on Carmakian jargon, aren't we ;).

Lol, yeah. :) I figured it was a more PC way to say "drivers that are required to be hard coded with shader detection characteristics in order to get something close to expected performance."
 
Joe DeFuria said:
So, was the performance drop expected due to the "change", or is this yet another example of either nVidia "optimizations", or "driver twitchiness"?

Oh no! I was thinking about the same word twitchiness right of the bat!

But what's the next step, Joe?! ;) That the Earth is really flat? That nobody has been on Mars (but is going there on Tuesday)? My God, I should never have ventured into this land of informed speculation, pure confusion & random disbelief! :p
 
with my 9800Pro & Cat 3.4

Fillrate Tester
--------------------------
Display adapter: RADEON 9800 PRO
Driver version: 6.14.10.6343
Display mode: 1280x1024 A8R8G8B8 85Hz
Z-Buffer format: D24S8
--------------------------

FFP - Pure fillrate - 2647.106689M pixels/sec
FFP - Z pixel rate - 2553.387451M pixels/sec
FFP - Single texture - 2559.151367M pixels/sec
FFP - Dual texture - 1371.133057M pixels/sec
FFP - Triple texture - 739.213257M pixels/sec
FFP - Quad texture - 599.856689M pixels/sec
PS 1.1 - Simple - 1491.677002M pixels/sec
PS 1.4 - Simple - 1491.671387M pixels/sec
PS 2.0 - Simple - 1491.681396M pixels/sec
PS 2.0 PP - Simple - 1491.666992M pixels/sec
PS 2.0 - Longer - 750.331787M pixels/sec
PS 2.0 PP - Longer - 750.339600M pixels/sec
PS 2.0 - Longer 4 Registers - 750.343262M pixels/sec
PS 2.0 PP - Longer 4 Registers - 750.334106M pixels/sec
PS 2.0 - Per Pixel Lighting - 158.507538M pixels/sec
PS 2.0 PP - Per Pixel Lighting - 158.507568M pixels/sec
 
Could you try writing the app so that it draws everything into the Z buffer first without colour, then disabled Z when doing the colour writes? Just something interesting to see...Should be a "win" on any long pixel shader with some overdraw.

(Doom3 will do this too)
 
You are all my bitch!!! Suck it down!!!!!

Code:
Fillrate Tester
--------------------------
Display adapter: NVIDIA GeForce2 MX/MX 400
Driver version: 6.13.10.4109
Display mode: 1024x768 A8R8G8B8 60Hz
Z-Buffer format: D24S8
--------------------------

FFP - Pure fillrate - 8763.716797M pixels/sec
FFP - Z pixel rate - 8755.375000M pixels/sec
FFP - Single texture - 8754.373047M pixels/sec
FFP - Dual texture - 8753.363281M pixels/sec
FFP - Triple texture - 8756.438477M pixels/sec
FFP - Quad texture - 8756.272461M pixels/sec
PS 1.1 - Simple - Failed!
PS 1.4 - Simple - Failed!
PS 2.0 - Simple - Failed!
PS 2.0 PP - Simple - Failed!
PS 2.0 - Longer - Failed!
PS 2.0 PP - Longer - Failed!
PS 2.0 - Longer 4 Registers - Failed!
PS 2.0 PP - Longer 4 Registers - Failed!
PS 2.0 - Per Pixel Lighting - Failed!
PS 2.0 PP - Per Pixel Lighting - Failed!

And the 16 bit results?

Code:
Fillrate Tester
--------------------------
Display adapter: NVIDIA GeForce2 MX/MX 400
Driver version: 6.13.10.4109
Display mode: 1024x768 R5G6B5 75Hz
Z-Buffer format: D16
--------------------------

FFP - Pure fillrate - 17942.195313M pixels/sec
FFP - Z pixel rate - 17880.785156M pixels/sec
FFP - Single texture - 17868.529297M pixels/sec
FFP - Dual texture - 17858.830078M pixels/sec
FFP - Triple texture - 17865.738281M pixels/sec
FFP - Quad texture - 17865.457031M pixels/sec
PS 1.1 - Simple - Failed!
PS 1.4 - Simple - Failed!
PS 2.0 - Simple - Failed!
PS 2.0 PP - Simple - Failed!
PS 2.0 - Longer - Failed!
PS 2.0 PP - Longer - Failed!
PS 2.0 - Longer 4 Registers - Failed!
PS 2.0 PP - Longer 4 Registers - Failed!
PS 2.0 - Per Pixel Lighting - Failed!
PS 2.0 PP - Per Pixel Lighting - Failed!

Ph34r me and my 9 GHz GeForce2 MX 400!!!!! (Now with 4 TMUs/pipe!)

Um...what's that you say? It's supposed to display more than just a blank screen?? Are you sure that's not just it zipping by at 22,000 fps??

(edit: the old version worked, BTW. I'm sure I just need to update drivers...)
 
Fillrate Tester
--------------------------
Display adapter: RADEON 9700 PRO
Driver version: 6.14.10.6343
Display mode: 1024x768 A8R8G8B8 85Hz
Z-Buffer format: D24S8
--------------------------

FFP - Pure fillrate - 2582.804932M pixels/sec
FFP - Z pixel rate - 2406.944580M pixels/sec
FFP - Single texture - 2444.019043M pixels/sec
FFP - Dual texture - 1284.710449M pixels/sec
FFP - Triple texture - 714.914734M pixels/sec
FFP - Quad texture - 579.715576M pixels/sec
PS 1.1 - Simple - 1384.389404M pixels/sec
PS 1.4 - Simple - 1384.398193M pixels/sec
PS 2.0 - Simple - 1384.516235M pixels/sec
PS 2.0 PP - Simple - 1384.363281M pixels/sec
PS 2.0 - Longer - 696.428833M pixels/sec
PS 2.0 PP - Longer - 696.399231M pixels/sec
PS 2.0 - Longer 4 Registers - 696.402100M pixels/sec
PS 2.0 PP - Longer 4 Registers - 696.435059M pixels/sec
PS 2.0 - Per Pixel Lighting - 147.105774M pixels/sec
PS 2.0 PP - Per Pixel Lighting - 147.106750M pixels/sec
 
Marc said:
Well with precision.txt it seem's that the only interesting number is the precision one

Yes, because it mixed the normal result and PP result (it draws two quads, one with normal shader and one with _PP shader to test both accuracy simulateneously)

To test fillrate you have to call via a home made txt the ps 1.1 shader or the ps 2.0 shader (you can edit it to ask for partial precision). If you don't call any txt they seems that the probram call config.txt file (mix of PS2 and other things)

9700 Pro 3.4

Fillrate: 826.273 Mpix/s PS 1.1
Fillrate: 830.140 Mpix/s PS 2.0
Fillrate: 829.875 Mpix/s PS 2.0_PP
Fillrate: 860.974 Mpix/s (config.txt)

5800 Ultra 44.10

Fillrate: 993.601 Mpix/s PS 1.1
Fillrate: 310.966 Mpix/s PS 2.0
Fillrate: 310.962 Mpix/s PS 2.0_PP
Fillrate: 304.155 Mpix/s (config.txt)

By the way PC Chen, your test.bmp is absolutely wonderfull :D

The results are interesting... I am working on the English version of the document, and hopefully it'll tell you how to set the config files :)
 
Dave H: Thanks for finding this bug! :oops: I was wondering if I forgot to check any caps... Anyway this issue is now fixed so no more bizzare results on GeForce 2 MX (explicitly tested on GeForce 2 MX ;)).
 
MDolenc said:
Dave H: Thanks for finding this bug! :oops: I was wondering if I forgot to check any caps... Anyway this issue is now fixed so no more bizzare results on GeForce 2 MX (explicitly tested on GeForce 2 MX ;)).

I redownloaded and updated drivers: it works now. But I think the fix was the new drivers, so sincere apologies if I caused you wasted time chasing down a bug that only existed on my machine. :oops: :oops: :oops:

Anyways, we can now be sure the Det 44.03's aren't targeting your app, because they lowered performance by 96.5%. Improved IQ, though (from an ontological perspective).

Code:
Fillrate Tester
--------------------------
Display adapter: NVIDIA GeForce2 MX/MX 400
Driver version: 6.14.10.4403
Display mode: 1024x768 A8R8G8B8 60Hz
Z-Buffer format: D24S8
--------------------------

FFP - Pure fillrate - 358.842133M pixels/sec
FFP - Z pixel rate - 265.893005M pixels/sec
FFP - Single texture - 307.777557M pixels/sec
FFP - Dual texture - 174.224243M pixels/sec
FFP - Triple texture - Failed!
FFP - Quad texture - Failed!
PS 1.1 - Simple - Failed!
PS 1.4 - Simple - Failed!
PS 2.0 - Simple - Failed!
PS 2.0 PP - Simple - Failed!
PS 2.0 - Longer - Failed!
PS 2.0 PP - Longer - Failed!
PS 2.0 - Longer 4 Registers - Failed!
PS 2.0 PP - Longer 4 Registers - Failed!
PS 2.0 - Per Pixel Lighting - Failed!
PS 2.0 PP - Per Pixel Lighting - Failed!

Well, having the fillrate of one of those 4-way R300 E&S boxes was nice while it lasted...

BTW - not to cause you more trouble, but is there a good reason why my GF2MX couldn't run the triple and quad texture tests?
 
MDolenc said:
BTW - not to cause you more trouble, but is there a good reason why my GF2MX couldn't run the triple and quad texture tests?

Because the Gf2MX only has two texture units. You'd need to do another rendering pass to use more than two textures. Dx9 hardware can use upto 16 textures in a pass (however this does not mean that it will do that many per clock :) )
 
Just curious i've could spank a GF2 Mx400 :rolleyes:

Fillrate Tester
--------------------------
Display adapter: RADEON 8500 Series (Omega 2.4.07a)
Driver version: 6.14.1.6307
Display mode: 1280x1024 A8R8G8B8 60Hz
Z-Buffer format: D24S8
--------------------------

FFP - Pure fillrate - 1106.100586M pixels/sec
FFP - Z pixel rate - 1106.870239M pixels/sec
FFP - Single texture - 977.457031M pixels/sec
FFP - Dual texture - 962.009827M pixels/sec
FFP - Triple texture - 383.207458M pixels/sec
FFP - Quad texture - 288.758453M pixels/sec
PS 1.1 - Simple - 1105.937378M pixels/sec
PS 1.4 - Simple - 558.337708M pixels/sec
PS 2.0 - Simple - Failed!
PS 2.0 PP - Simple - Failed!
PS 2.0 - Longer - Failed!
PS 2.0 PP - Longer - Failed!
PS 2.0 - Longer 4 Registers - Failed!
PS 2.0 PP - Longer 4 Registers - Failed!
PS 2.0 - Per Pixel Lighting - Failed!
PS 2.0 PP - Per Pixel Lighting - Failed!

no pixel shader 2.0, obviously :mrgreen:

ps: the Radeon 8500pro beats the FX5800ultra in one test, wow :LOL: (is it a PS?)
 
AndrewM said:
Because the Gf2MX only has two texture units. You'd need to do another rendering pass to use more than two textures. Dx9 hardware can use upto 16 textures in a pass (however this does not mean that it will do that many per clock :) )

Ah, no loopback. Yeah, I should have known that... :oops:
 
Well it's not really the number of TMUs that's the problem (GF4 only has two TMUs per pipe too and it can run all 4 texture tests), it would seem that it's the fact that the GF2 MX only offers two texture layers per pass which is limiting the tests that can be run.

My question to MDolenc though is why does your fillrate app only use single pass rendering - is this by choice or for some other reason?
 
Neeyik said:
My question to MDolenc though is why does your fillrate app only use single pass rendering - is this by choice or for some other reason?
All the fixed pipeline stuff (texture tests, pure fillrate and z fillrate) is there just because they kinda need to be there. ;) As for why I only use single pass rendering: only per pixel lighting test actually would actually need multipass for lower shader versions, but I don't have time to jump through such hops right now (entire app has been written in about 4 hours).
 
Back
Top