Bitcoin Forum
November 17, 2024, 07:48:51 PM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3] 4 5 6 7 »  All
  Print  
Author Topic: Custom R9 380 BIOS for 23-24Mh/s  (Read 21859 times)
VirosaGITS
Legendary
*
Offline Offline

Activity: 1302
Merit: 1068



View Profile
September 19, 2016, 03:54:22 PM
 #41

EDIT: Btw, 02 isn't always Hynix.

Agreed.  I've seen another ROM that had just a single set of straps and used type 00 for Hynix.  I imagine it is just an enum in the BIOS code.
The way I figured out that it is Hynix for the Club3D BIOS I modded was by comparing the actual timing values to another BIOS that only supported Hynix.


That's what i've been doing, but there has to be sure fire way to look it up the reference somewhere in the BIOS. The order at which for example Hynix/EPI/Sam are referenced in one of my vBIOS arent in the order their straps appear either. I was told to check in the vram info table but atoms bios reader doesnt seem to have a clue.

Maybe there's a more complete tool out there? (I think i heard there was)


                      ▄▄█████▄▄
                    ▐████████████▄
                   ▄█▀▀▀▀▀▀▀██████▌
             █▄  ▄█▀           ▀▀█
              ▀▀▀███▄▄▄▄▄▄▄▄▄▄   █▄   ▄

               ▄▀▀         ▀▀▀▀▀▀▀██▀▀▀
         ▄▄▄▄▄█▄▄ ▄▀▀▄ ▄▄▄▄▄▄▄▄▄▄▄▄▄█▄▄▄▄
         ████▒▒███    ████▒▒████▌
    ▀█▄ ▀
███████▄ ███▒▒███      ██▒▒█████       ▀█▄
 ███████ ▀█▒▒████     ▄█▒▒█████▀         ▀█ ▄  ▄▄
  ██████  ▌▀▀█████▄▄▄███████▀▀            ███▄███▌
 █████████  █████▀▀█▀▀██████▌             ██████▀
 ▀█████████ ███▄  ███   ▐███▌ ▄██       ▄█████▀
     ▀▀    ▀▀███████████████▄▄████▄▄▄▄█▀▀▀▀▀
               ▀▀▀███▀▀▀      ██████▄
                               ▀▀▀▀▀

▄█████████████████████████████▄
███████████████████████████████
███████████████████████████████
███████████████████████████████
█████████▀▀█████████▀▀█████████
███████ ▄▀▀         ▀▀▄ ███████
██████                   ██████
█████▌     ▄▄     ▄▄     ▐█████
█████     ████   ████     █████
█████      ▀▀     ▀▀      █████
█████▄   ▀▄▄▄     ▄▄▄▀   ▄█████
████████▄▄▄█████████▄▄▄████████
███████████████████████████████
███████████████████████████████
███████████████████████████████
 ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
█ █
█ █
█ █
█ █
█ █
nerdralph (OP)
Sr. Member
****
Offline Offline

Activity: 588
Merit: 251


View Profile
September 19, 2016, 04:14:14 PM
 #42

You're starting to surprise me..

I think i missjudged you..   Wink

You do have a history of letting your ego cloud your judgment.  :-)
Remember the bitcanuck R9 380 thread in the ethereum forums?  You were convinced that reducing the core clock would reduce eth hashrates, but you were wrong.
I can't find the thread any more, as I think one of the mods deleted it.  I could probably find it with the wayback machine if you've "forgotten" it. :-)
Come to think of it, you're a mod on the ethereum forums, aren't you...
nerdralph (OP)
Sr. Member
****
Offline Offline

Activity: 588
Merit: 251


View Profile
September 19, 2016, 04:21:51 PM
 #43

EDIT: Btw, 02 isn't always Hynix.

Agreed.  I've seen another ROM that had just a single set of straps and used type 00 for Hynix.  I imagine it is just an enum in the BIOS code.
The way I figured out that it is Hynix for the Club3D BIOS I modded was by comparing the actual timing values to another BIOS that only supported Hynix.


That's what i've been doing, but there has to be sure fire way to look it up the reference somewhere in the BIOS. The order at which for example Hynix/EPI/Sam are referenced in one of my vBIOS arent in the order their straps appear either. I was told to check in the vram info table but atoms bios reader doesnt seem to have a clue.

Maybe there's a more complete tool out there? (I think i heard there was)

I don't have anything better than atom bios reader.  If it helps, the JDEC mrf ID for Hynix is 0xAD80.
VirosaGITS
Legendary
*
Offline Offline

Activity: 1302
Merit: 1068



View Profile
September 19, 2016, 07:26:24 PM
 #44

EDIT: Btw, 02 isn't always Hynix.

Agreed.  I've seen another ROM that had just a single set of straps and used type 00 for Hynix.  I imagine it is just an enum in the BIOS code.
The way I figured out that it is Hynix for the Club3D BIOS I modded was by comparing the actual timing values to another BIOS that only supported Hynix.


That's what i've been doing, but there has to be sure fire way to look it up the reference somewhere in the BIOS. The order at which for example Hynix/EPI/Sam are referenced in one of my vBIOS arent in the order their straps appear either. I was told to check in the vram info table but atoms bios reader doesnt seem to have a clue.

Maybe there's a more complete tool out there? (I think i heard there was)

I don't have anything better than atom bios reader.  If it helps, the JDEC mrf ID for Hynix is 0xAD80.

I can find AD 80 but seem random, part of other values, with no hint as to which mem block the 00, 01, 02 point to, if even it was actually a reference to Hynix mem. I'll figure it out... eventually. Cheesy


                      ▄▄█████▄▄
                    ▐████████████▄
                   ▄█▀▀▀▀▀▀▀██████▌
             █▄  ▄█▀           ▀▀█
              ▀▀▀███▄▄▄▄▄▄▄▄▄▄   █▄   ▄

               ▄▀▀         ▀▀▀▀▀▀▀██▀▀▀
         ▄▄▄▄▄█▄▄ ▄▀▀▄ ▄▄▄▄▄▄▄▄▄▄▄▄▄█▄▄▄▄
         ████▒▒███    ████▒▒████▌
    ▀█▄ ▀
███████▄ ███▒▒███      ██▒▒█████       ▀█▄
 ███████ ▀█▒▒████     ▄█▒▒█████▀         ▀█ ▄  ▄▄
  ██████  ▌▀▀█████▄▄▄███████▀▀            ███▄███▌
 █████████  █████▀▀█▀▀██████▌             ██████▀
 ▀█████████ ███▄  ███   ▐███▌ ▄██       ▄█████▀
     ▀▀    ▀▀███████████████▄▄████▄▄▄▄█▀▀▀▀▀
               ▀▀▀███▀▀▀      ██████▄
                               ▀▀▀▀▀

▄█████████████████████████████▄
███████████████████████████████
███████████████████████████████
███████████████████████████████
█████████▀▀█████████▀▀█████████
███████ ▄▀▀         ▀▀▄ ███████
██████                   ██████
█████▌     ▄▄     ▄▄     ▐█████
█████     ████   ████     █████
█████      ▀▀     ▀▀      █████
█████▄   ▀▄▄▄     ▄▄▄▀   ▄█████
████████▄▄▄█████████▄▄▄████████
███████████████████████████████
███████████████████████████████
███████████████████████████████
 ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
█ █
█ █
█ █
█ █
█ █
DPAY2016
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
September 19, 2016, 09:08:50 PM
 #45

Congratulations. Works great.
Eliovp
Legendary
*
Offline Offline

Activity: 1050
Merit: 1294

Huh?


View Profile WWW
September 19, 2016, 10:21:22 PM
Last edit: September 19, 2016, 11:11:14 PM by Eliovp
 #46


So it's just an offset to VDDC?  I'd like to keep VDDCI fixed, while still having VDDC change according to the dpm state.

No it's an offset to VDDCI/AUX, they both have seperate offsets in the rom. In 90% of the cases you won't find VDDCI offset, so you can add it Smiley

8D = VDDC , 8E = VDDCI/AUX or MVDDC

So where would you add it?  I only recently found ATOM BIOS reader, and still haven't figured out the dynamic voltage control for Tonga.
I know when Voltage Table2 in PowerPlayInfo has values that start with FF, that indicates dynamic voltage control.  Otherwise it's just the voltage in mV for that DPM state (i.e. 84 03 = 0x384 = 900mV).
For the values that start with FF (i.e. 0xFF08), I think the 08 is an index to another table that contains values for calculating the dynamic voltage.  But I haven't found where that table is in the ROM.


You add it in VoltageObjectInfo. Note this changes the length - this means go back and fix ALL the offsets in the main table lists, and check your padding at the end to keep the size right.

Not only those things. Also need to change the starting pointer which states how long the table is.
+ you will need to make sure the rom has the exact same size as it has before.
This doesn't mean, scroll way down and remove some FF's. No, you'll need to remove these where the Legacy part of your rom ends.

Wink

Eliovp
Legendary
*
Offline Offline

Activity: 1050
Merit: 1294

Huh?


View Profile WWW
September 19, 2016, 11:12:16 PM
 #47


So it's just an offset to VDDC?  I'd like to keep VDDCI fixed, while still having VDDC change according to the dpm state.

No it's an offset to VDDCI/AUX, they both have seperate offsets in the rom. In 90% of the cases you won't find VDDCI offset, so you can add it Smiley

8D = VDDC , 8E = VDDCI/AUX or MVDDC

So where would you add it?  I only recently found ATOM BIOS reader, and still haven't figured out the dynamic voltage control for Tonga.
I know when Voltage Table2 in PowerPlayInfo has values that start with FF, that indicates dynamic voltage control.  Otherwise it's just the voltage in mV for that DPM state (i.e. 84 03 = 0x384 = 900mV).
For the values that start with FF (i.e. 0xFF08), I think the 08 is an index to another table that contains values for calculating the dynamic voltage.  But I haven't found where that table is in the ROM.


You add it in VoltageObjectInfo. Note this changes the length - this means go back and fix ALL the offsets in the main table lists, and check your padding at the end to keep the size right.

Not only those things. Also need to change the starting pointer which states how long the table is.
+ you will need to make sure the rom has the exact same size as it has before.
This doesn't mean, scroll way down and remove some FF's. No, you'll need to remove these where the UEFI part of your rom ends.

Wink

You mean where the UEFI part begins, correct?

Did i say that.. Nahh! I said Legacy ;-)

Haha, no, indeed it's at the end of the legacy part, or where the uefi part starts :-)

doktor83
Hero Member
*****
Offline Offline

Activity: 2716
Merit: 626


View Profile WWW
September 20, 2016, 05:12:27 AM
 #48

Sorry to interrupt you guys, but can i have a noobish question ?
If i copy the timing nerdralph gave from a 380 nitro ( 77 71 33 20 00 00 00 00 EF 51 6A 37 90 55 0F 12 32 17 9A 05 00 6A E4 00 22 AA 1C 08 74 02 14 20 CA 89 C0 A8 02 00 00 C0 15 10 23 28 59 28 33 15 ) to my Asus Strix 380 4GB 1750mhz strap, will it be better than copying my own timing from 1425mhz ?

SRBMiner-MULTI thread - HERE
http://www.srbminer.com
nerdralph (OP)
Sr. Member
****
Offline Offline

Activity: 588
Merit: 251


View Profile
September 20, 2016, 12:59:01 PM
 #49


So it's just an offset to VDDC?  I'd like to keep VDDCI fixed, while still having VDDC change according to the dpm state.

No it's an offset to VDDCI/AUX, they both have seperate offsets in the rom. In 90% of the cases you won't find VDDCI offset, so you can add it Smiley

8D = VDDC , 8E = VDDCI/AUX or MVDDC

So where would you add it?  I only recently found ATOM BIOS reader, and still haven't figured out the dynamic voltage control for Tonga.
I know when Voltage Table2 in PowerPlayInfo has values that start with FF, that indicates dynamic voltage control.  Otherwise it's just the voltage in mV for that DPM state (i.e. 84 03 = 0x384 = 900mV).
For the values that start with FF (i.e. 0xFF08), I think the 08 is an index to another table that contains values for calculating the dynamic voltage.  But I haven't found where that table is in the ROM.


You add it in VoltageObjectInfo. Note this changes the length - this means go back and fix ALL the offsets in the main table lists, and check your padding at the end to keep the size right.

Not only those things. Also need to change the starting pointer which states how long the table is.
+ you will need to make sure the rom has the exact same size as it has before.
This doesn't mean, scroll way down and remove some FF's. No, you'll need to remove these where the Legacy part of your rom ends.

Wink

Ugh.  Now I really miss Hawaii with it's really simple VDDCI table.  :-(
If there's an easy way to completely disable VDDCI control, I might try that, and just control the NCP81022 through i2c.  If I can figure out how to read the memory errors from the HWinfo source, then I could could write a small program that cranks up VDDCI until the memory errors drop below a minimal threshold...

nerdralph (OP)
Sr. Member
****
Offline Offline

Activity: 588
Merit: 251


View Profile
September 20, 2016, 01:05:44 PM
 #50

Sorry to interrupt you guys, but can i have a noobish question ?
If i copy the timing nerdralph gave from a 380 nitro ( 77 71 33 20 00 00 00 00 EF 51 6A 37 90 55 0F 12 32 17 9A 05 00 6A E4 00 22 AA 1C 08 74 02 14 20 CA 89 C0 A8 02 00 00 C0 15 10 23 28 59 28 33 15 ) to my Asus Strix 380 4GB 1750mhz strap, will it be better than copying my own timing from 1425mhz ?

That timing didn't come from a 380 nitro.  Its a 1375Mhz strap from a MSI R9 380 OC BIOS that supported only Elpida.
Getting to your point, your card's 1425Mhz strap will probablymay be slower.
doktor83
Hero Member
*****
Offline Offline

Activity: 2716
Merit: 626


View Profile WWW
September 20, 2016, 05:04:45 PM
 #51

My bad, you did mention 380 nitro, but that was for eliovp's ROM.
Anyways, i copied the strap you posted in Asus and Msi cards 1750mhz strap, and now i get around 24Mhs on 900/1650Mhz with -100mV and same card temperatures (~65c).
I am still testing cards stability, but it looks promising.
Thank you for this Smiley

Just a quick question : does this huge memory overclock affect my cards life drastically ?

SRBMiner-MULTI thread - HERE
http://www.srbminer.com
kilo17
Legendary
*
Offline Offline

Activity: 980
Merit: 1001

aka "whocares"


View Profile
September 21, 2016, 05:06:28 AM
 #52


So it's just an offset to VDDC?  I'd like to keep VDDCI fixed, while still having VDDC change according to the dpm state.

No it's an offset to VDDCI/AUX, they both have seperate offsets in the rom. In 90% of the cases you won't find VDDCI offset, so you can add it Smiley

8D = VDDC , 8E = VDDCI/AUX or MVDDC

So where would you add it?  I only recently found ATOM BIOS reader, and still haven't figured out the dynamic voltage control for Tonga.
I know when Voltage Table2 in PowerPlayInfo has values that start with FF, that indicates dynamic voltage control.  Otherwise it's just the voltage in mV for that DPM state (i.e. 84 03 = 0x384 = 900mV).
For the values that start with FF (i.e. 0xFF08), I think the 08 is an index to another table that contains values for calculating the dynamic voltage.  But I haven't found where that table is in the ROM.


You add it in VoltageObjectInfo. Note this changes the length - this means go back and fix ALL the offsets in the main table lists, and check your padding at the end to keep the size right.

Not only those things. Also need to change the starting pointer which states how long the table is.
+ you will need to make sure the rom has the exact same size as it has before.
This doesn't mean, scroll way down and remove some FF's. No, you'll need to remove these where the Legacy part of your rom ends.

Wink

Ugh.  Now I really miss Hawaii with it's really simple VDDCI table.  :-(
If there's an easy way to completely disable VDDCI control, I might try that, and just control the NCP81022 through i2c.  If I can figure out how to read the memory errors from the HWinfo source, then I could could write a small program that cranks up VDDCI until the memory errors drop below a minimal threshold...



Which version of the Hawaii Bios Reader are you using- You probably can disable it in the newest version and check the changes made and carry it over to the Tonga - Obviously it will not be exact but may help locate the area.

I have not done much bios editing lately (not with the new version of Hawaii Bios Reader) although it looks to be much better than the older version I am accustom to using.

Edited to add the following- Looking at the new Hawaii Bios Reader - you could set the Aux Voltage to Zero to disable it.

Bitcoin Will Only Succeed If The Community That Supports It Gets Support - Support Home Miners & Mining
DPAY2016
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
September 21, 2016, 05:37:41 AM
 #53

Modding BIOS gives more spins. Don't use it to much. GPU life will be lower. At least for older 280x-290.
But 380 are much more efficient.
melsell1
Newbie
*
Offline Offline

Activity: 50
Merit: 0


View Profile
September 21, 2016, 06:04:15 AM
 #54

i have gigabyte r9 380x with Hynix memory. Can anyone point me to the right string(s) to modifi timings more tighter in hynix section?

Here is my bios: https://www.upload.ee/files/6180325/_all.rom.html
nerdralph (OP)
Sr. Member
****
Offline Offline

Activity: 588
Merit: 251


View Profile
September 22, 2016, 02:28:23 AM
 #55

Just a quick question : does this huge memory overclock affect my cards life drastically ?

1650Mhz is only a 10% overclock for the memory.  While many BIOSes will only clock it at 1375-1425Mhz, it's actually rated for 1500Mhz.
doktor83
Hero Member
*****
Offline Offline

Activity: 2716
Merit: 626


View Profile WWW
September 22, 2016, 05:07:50 AM
 #56

So no need to worry  Cheesy
Thank you

SRBMiner-MULTI thread - HERE
http://www.srbminer.com
VirosaGITS
Legendary
*
Offline Offline

Activity: 1302
Merit: 1068



View Profile
September 22, 2016, 05:06:47 PM
 #57

So no need to worry  Cheesy
Thank you

Just check your heat. I'm pretty sure any one's component's lifetime is greatly affected by its own heat level. Keeping everything cool as a whole should help.


                      ▄▄█████▄▄
                    ▐████████████▄
                   ▄█▀▀▀▀▀▀▀██████▌
             █▄  ▄█▀           ▀▀█
              ▀▀▀███▄▄▄▄▄▄▄▄▄▄   █▄   ▄

               ▄▀▀         ▀▀▀▀▀▀▀██▀▀▀
         ▄▄▄▄▄█▄▄ ▄▀▀▄ ▄▄▄▄▄▄▄▄▄▄▄▄▄█▄▄▄▄
         ████▒▒███    ████▒▒████▌
    ▀█▄ ▀
███████▄ ███▒▒███      ██▒▒█████       ▀█▄
 ███████ ▀█▒▒████     ▄█▒▒█████▀         ▀█ ▄  ▄▄
  ██████  ▌▀▀█████▄▄▄███████▀▀            ███▄███▌
 █████████  █████▀▀█▀▀██████▌             ██████▀
 ▀█████████ ███▄  ███   ▐███▌ ▄██       ▄█████▀
     ▀▀    ▀▀███████████████▄▄████▄▄▄▄█▀▀▀▀▀
               ▀▀▀███▀▀▀      ██████▄
                               ▀▀▀▀▀

▄█████████████████████████████▄
███████████████████████████████
███████████████████████████████
███████████████████████████████
█████████▀▀█████████▀▀█████████
███████ ▄▀▀         ▀▀▄ ███████
██████                   ██████
█████▌     ▄▄     ▄▄     ▐█████
█████     ████   ████     █████
█████      ▀▀     ▀▀      █████
█████▄   ▀▄▄▄     ▄▄▄▀   ▄█████
████████▄▄▄█████████▄▄▄████████
███████████████████████████████
███████████████████████████████
███████████████████████████████
 ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
█ █
█ █
█ █
█ █
█ █
doktor83
Hero Member
*****
Offline Offline

Activity: 2716
Merit: 626


View Profile WWW
September 22, 2016, 05:50:34 PM
 #58

Well temperatures are ok (65c) and winter is coming  Grin

SRBMiner-MULTI thread - HERE
http://www.srbminer.com
DPAY2016
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
September 22, 2016, 08:00:55 PM
 #59

Our rigs "warm" at 69-74 degree Max.
FlensGold
Legendary
*
Offline Offline

Activity: 1405
Merit: 1001


View Profile
September 23, 2016, 03:59:55 PM
 #60

I have read this thread and those on etherforum. But before I start testing around I would like to know what are your best results with a R9 380?
I read 23-24MH/s, but how about power usage?
Pages: « 1 2 [3] 4 5 6 7 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!