Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Page 1 of 2 12 LastLast
Results 1 to 10 of 20

Thread: How to render 8 pixels per clock with NV3x?

  1. #1
    Junior Member Newbie
    Join Date
    Jul 2003
    Location
    Sankt Augustin, Germany
    Posts
    2

    How to render 8 pixels per clock with NV3x?

    I can only render up to 4 pixels per clock with NV3x cards (tested with Quadro FX 2000 and GeForce FX 5900 Ultra). I'm using my own little glut benchmark program, which just renders simple polygons, untextured or with a 2D texture.

    On a ATI FireGL X1 card with 325 MHz, I expect up to 8 x 325 = 2600 MPixel/s and the benchmark shows 2462 MPixel/s. With the FX 5900 Ultra I get only less than 4 x 450 MHz = 1800 MPixels/s, exactly half of the expected 3600 MPixels/s.

    I heard that the FX cards can only do 4 color and 4 Z operations in one pass, but 8 texture operations. I switched off the depth test and I don't need the color of the fragment, I only need the result of the texture lookup (GL_REPLACE). Is it possible to render more than 4 pixels per clock with these restrictions?

    Or is there ANY program that proves the existance of the "8 pixels per clock rendering engine" (from http://www.nvidia.com/docs/lo/2692/S...oFX_0306.pdf)? Any program that renders somehow more than 4 pixels per clock?

    Johnny

  2. #2
    Member Regular Contributor
    Join Date
    Feb 2001
    Location
    Montréal, QC, Canada
    Posts
    345

    Re: How to render 8 pixels per clock with NV3x?

    Maybe they were saying that about the z filling pass when you do multi light perpixel lighting... I don't remember exactly. Well commercial craps, as usual.

  3. #3
    Advanced Member Frequent Contributor
    Join Date
    Apr 2000
    Posts
    748

    Re: How to render 8 pixels per clock with NV3x?

    Did you disable filtering?

  4. #4
    Advanced Member Frequent Contributor
    Join Date
    Oct 2000
    Location
    Belgium
    Posts
    857

    Re: How to render 8 pixels per clock with NV3x?

    I believe you're getting it backwards, i.e. it can do 8 color+Z (simultaneously) per clock, but only 4 textures.

    -- Tom

  5. #5
    Advanced Member Frequent Contributor
    Join Date
    Sep 2000
    Location
    SWEDEN
    Posts
    718

    Re: How to render 8 pixels per clock with NV3x?

    AFAIK you only get 8 pixels per clock on GeForceFx if you render Z/stencil only. This is a logical choice in a way since it helps multi sample performance as well. However, I don't think you'll get 8 pixels per clock with 8 textures used. You won't get that on a 9700 either, since there's just one TMU per pixel pipe. There are numerous old threads on Beyond3D that go over this in excruciating detail. Try searching for "NV30 pipeline" or something similar.

  6. #6
    Senior Member OpenGL Pro
    Join Date
    Feb 2001
    Location
    Switzerland
    Posts
    1,840

    Re: How to render 8 pixels per clock with NV3x?

    exactly. thats why most say its still not an 8pixel per clock card, only 4pixels..

    thats btw what nvidia calls the ultrashadow thingy.. that they do for non-color-writes twice the speed.

    thats a Good Thing(tm) for doom3.. a Bad Thing(tm) for shader intensive situations..

    guess why futuremark was so bad, while doom3 is so good for nvidia..
    http://davepermen.net - if i could stay true to my heart, i would feel totally free

  7. #7
    Senior Member OpenGL Pro
    Join Date
    Feb 2002
    Location
    Bonn, Germany
    Posts
    1,652

    Re: How to render 8 pixels per clock with NV3x?

    The only way to get 8 'pixels' per clock is
    glColorMask(false,false,false,false);
    This has nothing to do with the number of applied textures.

    It's 4x2 with bilinear texture samplers, just like Geforce 3/4Ti. Two samplers are combined for trilinear filtering (=> texturing speed is cut in half).

  8. #8
    Junior Member Newbie
    Join Date
    Jul 2003
    Location
    Sankt Augustin, Germany
    Posts
    2

    Re: How to render 8 pixels per clock with NV3x?

    Ok, I see. So this 8 pixels per clock is indeed just commercial crap from nVidia. It is disappointing because ATI has 8 "real" pipelines, and I can't have enough of them for volume rendering.

    Thank you all for your help!

  9. #9
    Super Moderator OpenGL Guru dorbie's Avatar
    Join Date
    Jul 2000
    Location
    Bay Area, CA, USA
    Posts
    4,388

    Re: How to render 8 pixels per clock with NV3x?

    Dave, I think the ultrashadow thingy is actually marketeering for the ability to reduce stencil fill overhead through clipping I can't find the link but I seem to recall some sort of z clipping extension being mentioned somewhere recently.

    FWIW high speed z only is not so great for the first pass since any decent engine with good content will do ambient + emission when it writes the initial z value so it won't be z only. If you're still on fastpath for z+stencil then it's REALLY significant since a heck of a lot of your fill performance comes from stencil shadow volume overdraw.

    BTW, IMHO nvidia has obviously done some great work making stencil shadows robust & fast, they're been really aggressive and innovative in introducing hardware capabilities & software research to make this stuff work well, and released code to get everyone up to speed on it, you've gotta at least give them that dave.

    [This message has been edited by dorbie (edited 07-02-2003).]

  10. #10
    Senior Member OpenGL Guru
    Join Date
    Mar 2001
    Posts
    3,768

    Re: How to render 8 pixels per clock with NV3x?

    BTW, IMHO nvidia has obviously done some great work making stencil shadows robust & fast, they're been really aggressive and innovative in introducing hardware capabilities & software research to make this stuff work well, and released code to get everyone up to speed on it, you've gotta at least give them that dave.
    Unless, of course, a preference for shadow maps, like me. Then, you see these optimizations as just a waste of nVidia's resources. I'd rather have good render-to-texture performance at 8-pixels per clock with 32-bit floating-point luminance textures. nVidia's hardware gives me none of those (poor ARB_render_texture performance, and only supports 4-channel floating point textures).

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •