Bitcoin Forum
November 14, 2024, 02:29:03 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3] 4 5 »  All
  Print  
Author Topic: Radeonvolt - HD5850 reference voltage tweaking and VRM temp. display for Linux  (Read 27976 times)
AssemblY
Full Member
***
Offline Offline

Activity: 392
Merit: 100



View Profile
October 11, 2011, 08:44:17 PM
 #41

is there version for windows?

 Smiley
Transisto
Donator
Legendary
*
Offline Offline

Activity: 1731
Merit: 1008



View Profile WWW
December 14, 2011, 07:51:04 PM
 #42

Had to install the lib, still does not work at all for me.

Code:
root@miner:~/ius-radeonvolt-d9e89b5# ./radeonvolt
root@miner:~/ius-radeonvolt-d9e89b5# ./radeonvolt
root@miner:~/ius-radeonvolt-d9e89b5# /etc/init.d/mine stop
Stopping mining processes...: mine.
root@miner:~/ius-radeonvolt-d9e89b5# ./radeonvolt
root@miner:~/ius-radeonvolt-d9e89b5# ./radeonvolt --device 1
root@miner:~/ius-radeonvolt-d9e89b5# ./radeonvolt /?
Usage: radeonvolt [options]

Optional arguments:
  --device  device to query/modify
  --vcore    set core voltage (in V)

Example: radeonvolt --device 0 --vcore 1.0875
root@miner:~/ius-radeonvolt-d9e89b5# lspci -vd1002
lspci: -d: ':' expected
root@miner:~/ius-radeonvolt-d9e89b5#
ArtForz
Sr. Member
****
Offline Offline

Activity: 406
Merit: 257


View Profile
December 19, 2011, 03:53:39 PM
 #43

Just a report of partial success.

I have 5 GPUs on a rig :
- 2 on a HIS 5970 2GB
- 2 Sapphire 5850 1GB,
- 1 Sapphire 5830 1GB

Here is what radeonvolt sees
Code:
$ sudo ./radeonvolt 

Device [7]: Hemlock [ATI Radeon HD 5900 Series]
            ATI Technologies Inc

        Current core voltage: 1.0750 V
        Presets: 0.9500 / 1.0000 / 1.0750 / 1.0500 V
        Core power draw: 57.48 A (61.80 W)
        VRM temperatures: 84 / 87 / 88 C


Device [8]: Radeon HD 5800 Series (Cypress LE)
            PC Partner Limited

Unsupported i2c device (1a)


Device [11]: Cypress [Radeon HD 5800 Series]
            PC Partner Limited

Unsupported i2c device (1a)


Device [12]: Cypress [Radeon HD 5800 Series]
            PC Partner Limited

Unsupported i2c device (1a)

As you can see I could overvolt the 5970 (or most probably one of the GPUs on it) from 1.0375 to 1.075V (I'm going slow at this). I tuned the frequencies before overvolting and could only push one of the GPUs on the 5970 more (the other failed very quickly - less than 2 hours - with only a 5MHz increase while the first didn't flinch from a 10MHz increase running for 24h thing it couldn't sustain before overvolting).
Well, it changes voltage for the wrong VID on 5970s by default, on 5970s (and iirc ref 5870s) VID 3 is for performance mode, on ref 5850s it's VID 2.

bitcoin: 1Fb77Xq5ePFER8GtKRn2KDbDTVpJKfKmpz
i0coin: jNdvyvd6v6gV3kVJLD7HsB5ZwHyHwAkfdw
ummas
Sr. Member
****
Offline Offline

Activity: 274
Merit: 250


View Profile
January 08, 2012, 06:46:53 AM
 #44

Works for one of my 5850`s - ref.
rest - any sort of 5XXX series GPU - dont recognize anythink.
But that ref 5850 works gr8 Smiley
good stuff.

Does any1 know any other software for linux to see VRM temp ?? Verry important for me - OC with WC :>
finway
Hero Member
*****
Offline Offline

Activity: 714
Merit: 500


View Profile
January 11, 2012, 04:45:28 PM
 #45

Tweaking volt,monitoring VRM temp, Smiley interesting.

runeks
Legendary
*
Offline Offline

Activity: 980
Merit: 1008



View Profile WWW
January 22, 2012, 11:53:31 PM
 #46

Well, it changes voltage for the wrong VID on 5970s by default, on 5970s (and iirc ref 5870s) VID 3 is for performance mode, on ref 5850s it's VID 2.
Are you talking about this line?

Code:
vt1165_set_voltage(&i2c, 2, value);

should that be a 3 for reference 5870 and 5970? I know my non-reference XFX 5870 uses AMDOverdriveCtrl's third profile for the performance mode (VID 2). AMDOverdriveCtrl's output for my 5870 looks very similar to this: http://pastebin.com/JAbqTR1H
bulanula
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500



View Profile
February 06, 2012, 06:11:06 PM
 #47

It seems that this does not report VRM temps on a reference 5870 at all.

The values are too close to core temp when VRMs clearly run at 90 degrees or so.

How can I modify the code so that it reports correctly ?

I already modified 1002:6899 to 1002:6898 so that it works with my 5870 and not only 5850s.

Too sad that development is dead because this really could have been heaven for Linux miners like myself !
Zenitur
Sr. Member
****
Offline Offline

Activity: 362
Merit: 250


View Profile
February 09, 2012, 05:39:03 AM
 #48

Code:
kanotix@Kanotix:~/ius-radeonvolt-d9e89b5$ sudo ./radeonvolt

Device [2]: Cypress [Radeon HD 5800 Series]
Unsupported i2c device (1a)

kanotix@Kanotix:~/ius-radeonvolt-d9e89b5$

Reference 5850. 11.10 driver. What I do wrong? and what is the best voltage for this? Sorry for my stupid, where is the fork?
runeks
Legendary
*
Offline Offline

Activity: 980
Merit: 1008



View Profile WWW
February 09, 2012, 08:40:44 AM
 #49

^ https://bitcointalk.org/index.php?topic=10228.msg553157#msg553157
ummas
Sr. Member
****
Offline Offline

Activity: 274
Merit: 250


View Profile
February 09, 2012, 11:17:59 AM
 #50

any1 can read VRM temps from 5970 ?? thats more importand to me...
Zenitur
Sr. Member
****
Offline Offline

Activity: 362
Merit: 250


View Profile
February 12, 2012, 12:54:36 AM
 #51

fork:

Code:
kanotix@Kanotix:~/runeksvendsen-radeonvolt-1e7abec$ sudo ./radeonvolt

Device [02]: Cypress [Radeon HD 5800 Series]
             PC Partner Limited

Unsupported i2c device (1a)

Thank you anyway.
runeks
Legendary
*
Offline Offline

Activity: 980
Merit: 1008



View Profile WWW
February 12, 2012, 03:54:35 AM
 #52

Which Sapphire card do you have? This one:? http://www.newegg.com/Product/Product.aspx?Item=N82E16814102883
In any case, looks like the VRM on the card isn't the Volterra chip that is controllable from software.
bulanula
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500



View Profile
February 12, 2012, 12:22:01 PM
 #53

It seems that this does not report VRM temps on a reference 5870 at all.

The values are too close to core temp when VRMs clearly run at 90 degrees or so.

How can I modify the code so that it reports correctly ?

I already modified 1002:6899 to 1002:6898 so that it works with my 5870 and not only 5850s.

Too sad that development is dead because this really could have been heaven for Linux miners like myself !

Anyone managed to solve this issue yet Huh

It really is bothering me I cannot for the life of me read those VRM temperatures.

How can the core be like 70 and VRM just 76 when it clearly should be like 90 etc.

Thanks !

I will try runeks fork ASAP but I doubt that will solve it.

As said before ALL are 100% REFERENCE ATI cards with Volterra chips ( opened them up to check ) so they should work perfectly but since this was designed for reference 5850s then it does not work properly.

AFAIK the 5870s have like 4 phases and 5850s only 3 phases so there also should be an extra VRM that is not getting reported at all.

I really want to avoid Windblows if possible Undecided
zefir
Donator
Hero Member
*
Offline Offline

Activity: 919
Merit: 1000



View Profile
April 01, 2012, 05:47:59 PM
 #54

Folks,

sorry to bump this almost-dead thread.

It really bothers me to be restricted to fully control my GPUs when driving them with Linux. Most serious miners should agree that operating their GPUs with cgminer under Linux is the ideal setup (free, robust, head-less, efficient, etc.) -- if one could control clocks and voltages as freely as it is doable with Windows tools.

Right now cgminer uses the ADL library to control those values, but it is restricted to what AMD finds to be 'sane' values, that is e.g.: a max clock delta of 125MHz between core and mem clocks for 69xx and 150MHz for 79xx. From manufacturer's perspective there for sure are good reasons to restrict users' access to the controlling chips and prevent him from frying his cards, while OTOH it is completely insane to burn significantly more energy for mining on Linux than on Windows.

The latest Tahiti cards are equipped with the CHiL CHL8228G VRM. MSI Afterburner and GPU-Z recently added support for the latest AMD cards when those devices got supported. For Linux we'd need the same direct I2C-support to all controlling chips. Sadly, for that VRM only a product brief document is available at [1]. I poked around and it is not possible to get the full data sheet, even under NDA. Obviously MSI as card manufacturer has access to the specs to support it in Afterburner, but evenly obvious the GPU-Z folks had to reverse engineer to get their support implemented.

It is illusory to assume Linux folks will get access to the specs, even if we hint that bitcoin miners love ATI cards and we promise to be very careful (its just too dangerous to give users access at that HW level). Therefore, reverse engineering is the way we must take. We could:
  • reverse engineer MSI Afterburner or GPU-Z to unveil the command sequences required for full control
  • hook into Windows I2C driver and trace the I2C commands issued
  • social engineering (know someone at ATI research, MSI, CHiL, etc.)

The first approaches require deep Windows system knowledge, plus some cracking capabilities for the first approach or some DDK experience for the second (assuming there are no I2C sniffer already available).

My active times with Windows passed by long ago, but I know that this is a many-weeks job - no way to get the efforts compensated by bounties or crowd funding. Anyone willing to support here needs to do it for the glory (and you'd help saving the world by greatly reducing mining energy consumption Wink). Ideally we should end up with an ADL replacement that gives unrestricted access to the controlling chips. BTW, my own capabilities are limited to the Linux side, i.e. as soon as I get the specs I would work out a library to be included in cgminer (if OP or runeks aren't to take the glory).

Any supporters?


[1] http://www.irf.com/product-info/datasheets/data/pb-chl8225.pdf

CleverMiner
Member
**
Offline Offline

Activity: 66
Merit: 10



View Profile
April 02, 2012, 04:35:17 AM
 #55

Any supporters?
4 BTC commited,  2012 ,,, and this issue is getting more and more ridiculous.

I'm one the verge of going back to windows completely.

My sapphire's 5850 do 960mhz on windows and 840mhz under Linux.
bulanula
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500



View Profile
April 02, 2012, 09:26:31 AM
 #56

Any supporters?
4 BTC commited,  2012 ,,, and this issue is getting more and more ridiculous.

I'm one the verge of going back to windows completely.

My sapphire's 5850 do 960mhz on windows and 840mhz under Linux.

As per my understanding this will only do wonders for the 7970s and NOT the 5xxx cards.

I have some 5xxx cards myself so I would LOVE for something better than this crappy software.

Even after modifications to the source code I can not get it to report proper VRM temperatures.

Have not tried voltage adjustments but I bet those don't work as well.
zefir
Donator
Hero Member
*
Offline Offline

Activity: 919
Merit: 1000



View Profile
April 02, 2012, 06:35:23 PM
 #57

Any supporters?
4 BTC commited,  2012 ,,, and this issue is getting more and more ridiculous.

I'm one the verge of going back to windows completely.

My sapphire's 5850 do 960mhz on windows and 840mhz under Linux.
Thanks for the commitment, any support will help. I think most Linux fellows sooner or later feel this desire to move back to Windows, being it that LibreOffice is not able to open some DOCX or your fav game not working under WINE, right Sad

We should at least try to make miners equally happy with Linux.

As per my understanding this will only do wonders for the 7970s and NOT the 5xxx cards.

I have some 5xxx cards myself so I would LOVE for something better than this crappy software.

Even after modifications to the source code I can not get it to report proper VRM temperatures.

Have not tried voltage adjustments but I bet those don't work as well.

No, if we succeeded to reverse engineer the thing we would have some mean to gradually add support for any card that is supported by Windows tools. So assume the outcome of this effort was an I2C-sniffer and you need to get your card supported. You'd just have to switch to Windows, run the sniffer, set some parameters with Afterburner and collect the commands sent over the bus. If communication is not crypted or intentionally crippled, you just take the command sequence over to the Linux library and voila - your card got supported.

Thats without the minor details Wink First step would be to hook into Afterburner and log its access to the I2C display adapter interface (see [1]). Interested?


[1] http://msdn.microsoft.com/en-us/library/windows/hardware/ff567381%28v=vs.85%29.aspx

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 02, 2012, 06:48:24 PM
 #58

After finding no valid solution for Linux I just flashed all my cards with custom BIOS using RBE.  Granted that is not an attractive option for everyone but just pointing out an option does exist.  

*D&T is not responsible for any bricked cards as a result of flawed bios installs.
zefir
Donator
Hero Member
*
Offline Offline

Activity: 919
Merit: 1000



View Profile
April 02, 2012, 07:37:15 PM
 #59

After finding no valid solution for Linux I just flashed all my cards with custom BIOS using RBE.  Granted that is not an attractive option for everyone but just pointing out an option does exist.  

*D&T is not responsible for any bricked cards as a result of flawed bios installs.

Are you saying that the limitations with Linux can be bypassed by just patching the BIOS? I understood that the values kept in BIOS are the absolute min/max ratings, but that the ADL imposes additional relative limitations (like delta(core, mem) <= 150MHz on Tahiti).

Other thing is that Linux ADL functionality is probably years behind on what's doable in the Windows world (not because of ATI being more active there but because of manufacturers providing low-level access). Access to 79xx-VRM controller might not find its way into ADL during the use of those cards for mining Sad

Therefore an I2C sniffer would be a valuable one-time-investment to port low-level control functionality over to Linux. Since this should be a commonly useful tool for common devs, I was hoping to find some existing sniffers or bus loggers. No luck so far...

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 02, 2012, 08:14:35 PM
 #60

I think you are confusing two things.

ADL doesn't access low level components.  Not on 7000 series, not on 5000 series, not on Windows, not on Linux.
ADL simply ASKS the BIOS to make a change.  The BIOS is free to ignore that request (and routinely does). Even the return value is nearly worthless (success simply means ADL request was received by the card "please set voltage to 10,000V".  "success").

cgminer -> ADL -> GPU BIOS -> low level hardware.
ADL functionality is not materially different under Linux compared to Windows and is completely BIOS dependent.

Sadly AMD has crippled ADL access so various utilities complete bypass the ADL and directly read/write from underlying hardware.  IMHO AMD restrictive ADL defeats the entire purpose.  Since it is so painfully limited (for frack sake it doesn't even provide all GPU temp values) 3rd parties go around the entire system and write directly to the hardware which is far more dangerous than simply providing an unlocked ADL library.

Support and capabilities of those tools (GPU-Z, Afterburner, Radeonvolt, etc) are limited to what has been manually hacked together and reverse engineered as it totally bypasses all of AMD drivers and libraries.
Pages: « 1 2 [3] 4 5 »  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!