• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

Investigation of 8800 series OCing

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

Mr. Cornell

Member
Joined
Mar 2, 2001
Location
Seattle, WA
Well, I've been doing some digging around inside of my card and playing with NiBiTor and my BIOS even though I promised myself I wouldn't. :beer:

After some experimental BIOS flashing with various reference timings and ratios of core clock to shader clock, and using ATITool to change clocks up/down and looking at real clock settings as displayed by RivaTuner, I've discovered a few things.

Nvidia uses a 27mhz reference clock for everything. In other words, everything is clocked to a multiple of 27mhz. It appears that the additional granularity provided by ATITool where you can adjust everything in multiples of 9mhz is an illusion. Everything only changes by a multiplier of some number times 27. So, in other words, you can choose from a memory speed of 999 (27x37) or a memory speed of 1026 (27x38). Setting a clock speed in between 999 and 1026 will always round down or up to the nearest multiple of 27.

Setting an arbitrary clock by editing your BIOS does nothing to override this fundamental clocking method. No matter what you do with the BIOS setting, once you get into Windows and open RivaTuner and examine your clock, the internal clock will always be set back to the lowest value which is a multiple of 27 rounded down from the BIOS. So if you create a BIOS that has a core clock of 630 and boot into Windows, when you get there, what you see in RivaTuner is a clock speed of 621. If you edit your BIOS and set a speed of 631, again, when you get to Windows and check RivaTuner, it's 621. Only if you flash your BIOS to a core clock of 648, will you suddenly get 648 from RivaTuner. I guess the always rounding down and never rounding up from BIOS clocks is a safety mechanism Nvidia built in to make sure that BIOS is never at fault if a card cannot reach a certain speed, which I'm sure makes the OEMs happy. Foxconn is benefiting from this, because they sold me this 8800GTX OC Edition card with a BIOS clock set to 630, but in reality the clock is 621. So in reality the card is not performing as Foxconn advertises, although the point is moot since the BIOS clock is correctly set to 630, it's the internal clock generator which is forcing 621 and that's probably not something I could sue Foxconn for, nor would I even bother. ;)

Anyways, this is what I've found so far. Clocking Nvidia cards seems to be quite interesting, especially coming from my previous X1900XTX where ATITool seemed to be able to control clocks with a great deal of granularity. I don't personally know if there is a way to set clocks with greater precision in Nvidia cards, but I suspect there is not if Nvidia's multiplier is fixed to 27mhz because that's what the clock generator onboard the card is set to. If the clock generator on the card is fixed to 27mhz then you would have to hardware modding to mess with that, which I definitely will never do. Hah.
 
Just to expand on this a little, the real clocks on my Foxconn 8800GTX OCE are now 621/1512/2160. Even though Nvidia claims the default clocks on 8800 Ultra are 612/1500/2160 I suspect the real clocks are 621/1512/2160 or 621/1485/2160 depending on what multiplier they use for the shader clocks. If anybody owns an 8800 Ultra, they should download RivaTuner and look at the real clocks on their card at default, as it could be interesting. Similarly, I would be interested to know what the real clocks are for 8800GTS and GTX with reference BIOS clocked to default speeds and how the real clocks compare to what the BIOS is trying to set.

Reference BIOS clocks (but likely not real clocks!) are as follows:
8800 Ultra: 612/1500/2160
8800GTX: 575/1350/1800
8800GTS: 500/1200/1600
 
ya i noticed this with my 8800gts also it would have to do "steps" in ocing you couldnt just oc like 1 or 2 mhz unfortunatly. i have never seen this really on any other cards that i have owned... my 7900gt ko 512 i never got the chance to oc it (did the step up program for my 8800gts) and my old 6600gt would oc in really small steps (like less than 10mhz if im not mistaken)

My cards bios (read in windows with nibitor)

states

513 / 1188 / 792



and in rivatuner it says the same.... which is intresting because 792 isnt a multiple of 27

i did notice also that if i jump from say 513 to 526 in rivatuner ocing, that the core clock does not change from 513 but the shader goes to 1242mhz... then when i hit 527mhz in riva ocing menu, it jumps to 540mhz and the shader stays the same.

Edit... just took a look at the ram... i can go anywhere from 792- 800mhz and the clock stays at 792.. but as soon as i set it at 801 the real clock becomes 810mhz
 
Madshrimps confirmed what you're talking about in their overclocking guide here:

http://www.madshrimps.be/?action=gethowto&howtoID=72

From what I understand of this the factor of 27 is a dervitive of the shader clock which is what the memory and GPU are factored off of. Eventually once the shader clock hits a certian level (I believe 1500) the multipliers drop off significantally (from 27 down to 9).

For better or worse as a result my clocks top off at 621 / 972 since it wont clear the next incriment @ 648 without issues. Im quite confident that this card is capable of atleast 630 which is a bit of a shame.
 
Back