Fillrate issues. Can somebody help me out?

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
Post Reply
Imperil

Fillrate issues. Can somebody help me out?

Post by Imperil »

I have a question about # of tris in the scene and I'm hoping that someone could help me out or verify what I am seeing. Rendering is not my real specialty so for me a lot of these things are new.

....

Ok so lets say that you want your game to scale back to the Geforce4 MX 440 series card. That card is 1,080,000 Texels/sec which in a realistic setting you would achieve say 80% of this. So I am looking at 864,000 Texels/sec on the card.

Now I know there are a million factors and this is not cut 'n dry work, and that testing on the actual hardware is the only way to go.. but I am just trying to draw up an initial rough estimate page.

Does that mean this card will only push around 30000 tris. per frame if it was simulating at 30 frames per second?

I am just looking for a very basic way to estimate/approximate the fillrate on the classes of cards. Right now I have this basic outline but it just doesn't seem right to me for some reason:

Geforce4 MX: 30000 tris.
Geforce4 TI: 50000-60000 tris.
GeforceFX 5200: 30000 tris.
GeforceFX 5600: 35000 tris.
GeforceFX 5700: 35000 tris.
GeforceFX 5800: 90000 tris.
GeforceFX 5900: 90000 tris.
GeforceFX 6200: 32000 tris.
GeforceFX 6600: 64000 tris.
GeforceFX 6600GT: 100000 tris.
GeforceFX 6800: 100000 tris.
GeforceFX 6800GT: 150000 tris.
GeforceFX 6800U: 175000 tris.

Now these are at 30FPS markers regarding only the MTexels fillrate. Am I way off with these numbers? They seem wrong to me so I am hoping somebody could tell me how to tune this and get some better data.

Thanks for any help :) As I said rendering is not exactly my specialty so any help is great!

qsilver
OGRE Community Helper
OGRE Community Helper
Posts: 198
Joined: Sat Oct 02, 2004 9:11 am
Location: San Francisco, California, USA

Post by qsilver »

You've got your terms mixed up :) It's been a while since I saw the right definitions, so other people might want to correct me ...

"Fill rate" refers to how fast the video card can access / write to video RAM. A texel is a single pixel / texture element. This includes accessing textures or writing to the framebuffer or depth buffer. Anything that involves setting or getting a pixel uses up fill rate.

"Triangles per second" is a theoretical limit of how fast the GPU can process incoming triangle geometry. By process, I mean take the vertices and figure out where on the screen they should go, if they belong on the screen at all.

These two measures are only related in the sense that one can limit the other. If you max out your fill rate, you could have very few triangles in your scene but still experience slow FPS. Likewise, if you throw a zillion triangles at your video card, things will clog up no matter how much fillrate you have left.

User avatar
Lee04
Minaton
Posts: 944
Joined: Mon Jul 05, 2004 4:06 pm
Location: Sweden
x 1

Vertex vs pixel shaders

Post by Lee04 »

Yes this is a question of how long your vertex respecive pixel shader is as well.

Each tris vertice gets the vertex shader to execute on every vertex of all the triangles. Even thouse outside the viewport.

The pixel shader or fragment shader executes on every fragment within the view port. Problem can be when you have to draw manny shader passes and/or you can't cull so you have to execute your pixel shader passes on pixels not even seen by the user....

Early z out can make it possible to only draw the pixels seen.
Other techniques exist as well like...

So different cards can run different version of your shader so called techniqe. So when you think you are testing the same shader it can actually be using different versions on different cards and throw your
numbers around and confuse you.


cheers

Lee04

User avatar
sinbad
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 19265
Joined: Sun Oct 06, 2002 11:19 pm
Location: Guernsey, Channel Islands
x 66
Contact:

Post by sinbad »

If you sign an NDA, ATI will give you a plugin to PIX which will tell you the % utilisation of the vertex / fragment processors, memory bandwidth usage and all that jazz. Very nice.

nfz
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 1263
Joined: Wed Sep 24, 2003 4:00 pm
Location: Halifax, Nova Scotia, Canada

Post by nfz »

http://mirror.ati.com/developer/atipix/index.html

Sinbad, I am not sure if its the same one you use but with this one you don't have to sign an NDA to use it.

User avatar
sinbad
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 19265
Joined: Sun Oct 06, 2002 11:19 pm
Location: Guernsey, Channel Islands
x 66
Contact:

Post by sinbad »

Ah, cool. When I spoke to ATI at the GDC 6 months ago they said you had to sign an NDA because of the potentially sensitive information it revealed about the cards internals. Good that you don't have to anymore :)

Post Reply