• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

The 4870 "2D Low", GPU voltage/Memory clock rate Bios Thread

If you're solely intentent on editing your BIOS and flashing it, you have a number of choices, listed from least power savings/heat reduction to most power savings/heat reduction.

1. Set 2D voltage to 1.083v, and keep clocks at 500/900. Perfectly "safe".
2. Set 2D voltage to 1.083v, and lower clocks to ~160/900. Perfectly "safe". Some 2D programs may not like such a low GPU clock. Stability will need to be checked.
3. Set 2D voltage to 1.083v. and lower clocks to ~160/450. Perfectly "safe". You may or may not encounter flickering/shaking because of the varied MEM clock. My testing has shown MEM clocks of 450MHz in 2D and 900MHz in 3D to work just fine without flickering/shaking. I have yet to get word from others that this works for them. YMMV.

I list perfectly "safe" for all these choices as you won't damage your card in any way, with any of these settings. It's just that you may have minor instability because of the very low GPU clock or varying MEM clocks, but this is fixable with proper settings from trial and error.



This is where you run into situations where you can possibly damage your card. You need to fully test to make sure your card is stable at 800/1000, before you do alter your BIOS with these 3D clocks. This is to be done via CCC, Rivatuner, ATT, etc and after you are very confident that you won't encounter any problems with the programs that you run. Obviously if you're hitting 100C at these speeds, temperature is going to be an issue.

As with any under/overclocking/volting, I usually recommend just leaving the BIOS alone and using software, listed above, to create 2D/3D profiles which can be automatically/manually enabled with your specific GPU/MEM clocks and voltages when necessary. This is a much safer and less permanent route, than editing your BIOS. Good luck.



You need to keep your 2D memory at 925MHz to get rid of the flickering/shaking.

As I stated above, if you want to use different MEM clocks for 2D and 3D and are running with OC'ed MEM speeds, you'll need to use CCC, Rivatuner, or ATT to set your 2D GPU/MEM clocks...

Thanks for the advice. How about UVD and boot up clocks? What are your recommendations for all the four clocks,0 to 3? I guess I have to try all the clock speed and find the best settings. Thanks!
 
i have test Set 2D voltage to 1.083v, and keep clocks at 500/900 it do not drop watts....
 
Thanks for the advice. How about UVD and boot up clocks? What are your recommendations for all the four clocks,0 to 3? I guess I have to try all the clock speed and find the best settings. Thanks!

Boot up clocks (Clock Info #0) is fairly useless, from what I can tell. Just leave it at 750/900 @ 1.263v.

2D IDLE clocks (Clock Info #s 1 and 2) should be set the same, at whatever GPU/MEM @ voltage you decide on.

3D LOAD clocks (Clock Info #3) should be set at 750/900 @ 1.263v.

Your UVD clocks (Clock Info #s 4,5, and 6) should all be set to your default 3D LOAD clocks and voltage. This is 750/900 @ 1.263v. If you don't do any hardware encoding/decoding, then you don't have to worry about what the UVD settings are.

Clock Info #s 7 and 8 can be set to either your 2D IDLE or 3D LOAD clocks. It really doesn't matter. Whatever you choose, both 7 and 8 must be the same.

Clock Info #9 should be set to 750/900 @ 1.263v. It should always be the same as what is set for Clock Info #3.

Phew. Hopefully the picture below helps;
Clipboard01.png
 
Last edited:
i have test Set 2D voltage to 1.083v, and keep clocks at 500/900 it do not drop watts....

Since your card comes OC'ed with MEM at 925MHz, you should leave your 2D MEM clocks at 925MHz, or you will encounter flickering/shaking. Setting voltage to 1.083v should be safe, but you won't see a big reduction in temperature or power savings. Maybe 4-5W, if that. Just make sure all your MEM clocks are set to 925MHz...

It's possible you aren't setting your BIOS properly. Check the picture from the post above, so that your BIOS is configured correctly...
 
Your UVD clocks (Clock Info #s 4,5, and 6) should all be set to your default 3D LOAD clocks and voltage. This is 750/900 @ 1.263v. If you don't do any hardware encoding/decoding, then you don't have to worry about what the UVD settings are.

Boot up clocks (Clock Info #0) is fairly useless, from what I can tell. Just leave it at 750/900 @ 1.263v.

2D IDLE clocks (Clock Info #s 1 and 2) should be set the same, at whatever GPU/MEM @ voltage you decide on.

3D LOAD clocks (Clock Info #3) should be set at 750/900 @ 1.263v.

Clock Info #s 7 and 8 can be set to either your 2D IDLE or 3D LOAD clocks. It really doesn't matter. Whatever you choose, both 7 and 8 must be the same.

Clock Info #9 should be set to 750/900 @ 1.263v. It should always be the same as what is set for Clock Info #3.

Phew. Hopefully the picture below helps;
http://img.techpowerup.org/090417/Clipboard01.png

Thanks a lot for the picture. It really helped me.
 
One more noob question on ATT. Just installed Win 7 RC1 64bit, and realized that ATT does not have signed drivers for x64 versions of Windows.

Has anyone got a workaround?
 
One more noob question on ATT. Just installed Win 7 RC1 64bit, and realized that ATT does not have signed drivers for x64 versions of Windows.

Has anyone got a workaround?

the workaround is not to use ATT.
 
Is there any other software out there that runs on Windows x64? Looking to downlock the video card in 2D mode as discussed in this thread.

not really. you could do a BIOS mod.
 
One more noob question on ATT. Just installed Win 7 RC1 64bit, and realized that ATT does not have signed drivers for x64 versions of Windows.

Has anyone got a workaround?

There are at least two different ways to get around this in Vista64, I'd presume the same ways would work in W7, might be with some slight modification.

Check the ATT forum here
 
There are at least two different ways to get around this in Vista64, I'd presume the same ways would work in W7, might be with some slight modification.

Check the ATT forum here

Thanks a lot man. The ATT loader trick did not work for me, but disabling driver signing enforcement worked. Used bcdedit to disable it.

On a side note, has anyone noticed that the AVIVO advanced video options like deinterlacing and denoise are not available when the card is downclocked beyond a certain limit?

Read this post. I was able to replicate the problem when I set my card below 500 / 500.

I'm creating another thread for users to test their cards and post results. Will be a big help for those using their Radeon cards for media playback.
 
Hi there,

Been playing around with this problem on my Powercolor 4870 512mb.

Originally it had the 100 BIOS, so I've flashed it with the 105 bios (which gave me additional voltages to choose from).

Unfortunatelly I wasn't as lucky as the guys that said that using 450MHz for memory clock didn't have flickering problems.

I've already tried 500/450 @ 1.086V and 500/500, both of them had flickering.

Any suggestions? I'm almost giving up on ATI solution and using Ati Tray Tools to manually set a low-power mode when using desktop (without powerplay messing around) and a high-speed on demmand. At least it would only flicker once when entering or exiting a game.

Anyway, thanks for all the info, very nice thread.

The power consumption savings are VERY significant, which can also be seen on temperatures and lower FAN speeds.
 
Gave up on the BIOS... Set standard clocks, and 1.086V for low-power mode and created ATT profiles to go down to 500/300 1.086V in desktop and 775/987.25 1.200something (slightly undervolted) in 3D apps.

Might tweak the BIOS a little bit to set fan profiles.

500/300 1.086V is quite nice. Lower temps, rpms and everything. Vcc current hovers between 9A and 10A when in this mode.

Furmark on standard clocks and volts goes to 79A, which is more then what I reach now with this overclock and slightly lower voltage.

Have tested 15 mins stability in Furmark, so I have to make more tests to guarantee stability.

Slightly off-topic: do you think those clocks are "safe"? My highest temperature on Furmark is 76C.
 
Anyone with a Visiontek 4870 have a stock bios modded for higher clocks with more voltages to handle that clock speed.

Here's a screenshot of my 4870 stock bios

i notice under selectable voltage i have a higher one to choose, would that be safe to use under air? sorry i didnt read through all the pages yet

right now i have ccc maxed out @ 790/1100 i think i can push core higher but i need ccc to allow higher core speed so i must edit the bios but if i bump the voltage up im sure it will help clock speed hopefully
 
Last edited:
hmm after reading through all the pages i think i edited my bios right but before i flash can someone make sure its correct for me :)

50946412.png
 
:toast: to nafets for all your work. The thread's been around for a while but is still helping people.

At under $140 bucks a pop, I grabbed three 4870 1GB's. I got these http://www.newegg.com/Product/Product.aspx?Item=N82E16814150394 which have a revised cooler. It does a decent job but cards were idling in the low 60's.

I modded using tips from this thread and am very pleased with the results. Idle temps dropped from 63c to 43c, low 60's in Crysis. I encounter only occasional screen flicker which doesn't bother me. It's worth having 3 cards running in the low 40's. Some screens:

http://i133.photobucket.com/albums/q62/steelsix/gpuz1.jpg

http://i133.photobucket.com/albums/q62/steelsix/gpuz2.jpg

http://i133.photobucket.com/albums/q62/steelsix/rbe1.jpg

http://i133.photobucket.com/albums/q62/steelsix/rbe2.jpg

http://i133.photobucket.com/albums/q62/steelsix/rbe3.jpg

http://i133.photobucket.com/albums/q62/steelsix/rbe4.jpg

:respect: to TPU for the software, and to all those who've contributed to this thread!
 
Last edited:
edit:
more clearly:
What are the differences betweeen the states? I understand the third is for load. Difference between the first two is what, then?
Also, why is it suggested to keep the card at max clock for video-related tasks? I highly doubt that DXVA decoding fully utilizes the card.

And last, why would I set 2D values for state 7 and 8?
 
Last edited:
HD4870/90 Clock info states information...

I certainly don't know exactly what all the states are for, but I familiar with how HD4870/90 video cards operate with certain values in each of them. Alot of what is said here is true for other ATI video cards, especially other HD4xxx series cards. If anyone has any better or more factual explanations, I'd love to hear them.

Clock info 00 - Supposedly the card runs at these settings during any non-OS operation (boot-up, motherboard BIOS, etc...). I haven't really wasted much time testing whether this is true or not.

Clock info 01 - This is the 2D IDLE state. Usually the settings in this section are utilized during low/no GPU load and/or at the desktop.

Clock info 02 - This is an intermediary state. A stepping stone from 2D to 3D and vice versa. When the HD4870 first came out and even now, this state would (and should) be set identical to what was (or is) in Clock info 01.

It's true usefulness is shown with the HD4890. To keep IDLE power consumption and temperatures down, the HD4890 undervolts from ~1.3125v in 3D to ~1.05v in 2D. This is a far greater voltage range than the HD4870 (usually 1.263v in 3D to 1.203v, or even to 1.08v in 2D). While going from 3D to 2D in one jump would usually work fine, going back to 3D could render the card unstable. For a split second (less than that) the HD4890 might "try" to run in 3D mode at 850/975 @ 1.05v, before jumping to 1.3125v. I've tested this voltage range issue quite a bit with Rivatuner and an HD4890.

To allieviate this, Clock info 02 is set with "middle ground" GPU/MEM clocks and voltage. Usually set at 500/975 @ 1.18v. Effectively, the HD4890 moves from 3D to Intermediary to 2D states and back again. This allows the card to undervolt with full stability with such a wide voltage range.

Clock info 03 - This is the 3D LOAD state. Usually the settings in this section are utilized during high (or even any) GPU load and/or during any 3D gaming, benchmarks, etc.

Clock info #s 04,05,06 - These three are for the UVD state. They should always be set the same. Usually the settings in this section are utilized during any hardware accelerated decoding of H.264, VC-1, MPEG-2, etc.

The first BIOSes of HD4870 cards came with UVD state settings that were equal to the 3D state in both GPU/MEM clocks and voltages. Personally I figure that this is probably the best setup. While you could change the UVD state to run with lower clocks (usually for power savings and temperature reduction), you'd just be utilizing your CPU more, which could be used for other purposes. Running the UVD state at the maximum clocks and voltages should ensure the smoothest, most stable, and efficient operation at this state. That being said, it's a personal preference. You'd really have to try out different settings and see if it makes a big difference for your specific situation. I myself never really messed around with the UVD state, so just take my words as opinion, not fact.

Clock info 07 - This is a mirror state of Clock info 01. What it's true purpose is, and how or if it is linked with Clock info 01 is unknown. I do know that you either want this state set to what is in Clock info 01 or 03. Also, whichever you choose, those values should also be used in Clock info 08.

For an HD4890 this is also a mirror state of Clock info 01. It should usually always be set with the values that are in Clock info 01.

Clock info 08 - This is a mirror state of Clock info 02. What it's true purpose is, and how or if it is linked with Clock info 02 is unknown. As I said above, whatever values you use for Clock info 07 should also be used here.

For an HD4890 this is also a mirror state of Clock info 02. It should usually always be set with the values that are in Clock info 02.

Clock info 09 - This is a mirror state of Clock info 03. What it's true purpose is, and how or if it is linked with Clock info 03 is unknown. Whatever values that are used in Clock info 03, should also be used here. The same applies for an HD4890.

Clock info #s 10,11,12 - Earlier HD4870 BIOSes did not have this state, which I call the "overheating" state. It was added as a precaution for users who like to bake pies on their HD4870s. :D :D In most cases this state should never be triggered, unless the card is severly overheating, in which case it will run at these values until the PC is shut off and the card resets (hopefully). It's usually set at the GPU/MEM clocks from Clock info 01 and the lowest voltage available in the BIOS. All three should be set the same.

Everything I've said above is just my personal opinions gathered from months and months (and months) of messing around with and tweaking of various HD4870/90 video cards. While not all of it may be exactly correct, it's the best I have come up with. Hope it helps...
 
Last edited:
Thanks a bunch! Now it's much more clear :) Time to tweak and test.
 
hello and sorry for my bad English
i have HD4890/HD4870 CF since a few days : i'm very happy :)

but i want to change 2D on both card and flash

4890 and 4870 run 100/200 Vmin separately very whel with ATT

today i've not find the way to flash both for good working in CF
an Idea ?, Please :(

my modified Bios for Sapphire HD4870 1Go Toxic modified : i flash it and it dont work, for exemple i lauchn Gpuz and black/blue screen
 
Last edited:
It's not recommended to flash your cards with those 2D GPU/MEM speeds. You will encounter onscreen flickering/shaking whenever the cards go from 2D to 3D state (and vice versa).

You will have to continue using ATT to run at those 2D GPU/MEM speeds...
 
It's not recommended to flash your cards with those 2D GPU/MEM speeds. You will encounter onscreen flickering/shaking whenever the cards go from 2D to 3D state (and vice versa).
You will have to continue using ATT to run at those 2D GPU/MEM speeds...

thanks, but i am not abble to run ATT with both card 2d/3d modified
with one i use ATT very good with overclocking auto 2d/3d and it work fine

i just read now on te guru3D Ray Adam's Forum that ATT work in CF only with same cards
so my only solution is to flash both my cards

i d'ont want to let HD4870 500/1000 and HD4890 240/1050 because they work 2D perfect at 100/200
 
Last edited:
Nothing has changed as far as the HD4870's flickering when changing MEM speeds. This is all dependant on ATI's usage of PowerPlay (rather than driver-based, like the HD4870X2) for setting 2D and 3D speeds with the HD4870. An all-in-one BIOS just isn't feasible at this time, unless this changes.

If you want to use differing 2D and 3D MEM speeds for power saving, heat reduction or whatever, it's highly recommended you try Ati Tray Tools or Rivatuner. Both are excellent for setting whatever GPU/MEM speeds you want, along with different fan settings, and now (Rivatuner) even voltages for reference HD4870 card users.

UPDATE: I've recently done some further BIOS testing and have found that it's possible to set 2D memory clocks to 450MHz, with no flickering problems. Although this is new to me, I'm sure others have already figured this out. So if you're looking for an all-in-one, automatic power saving BIOS it is definetly doable. For 2D you can set it to 500/450@1.083v and for 3D to 750/900@1.263v. I've tested this out and it functions very well, and the power savings and heat reduction are quite good. Obviously if you use Rivatuner or ATT you can lower the memory clocks even more for increased power savings and heat reductions. But for people who are lazy and don't want additional software, these are great BIOS settings to use.
I flash my sapphire vapor-x 4870 igb. with this value but still have flickering during trav. from 2d to 3d state
any help will be conce.
 
Back
Top