Bitcoin Forum
October 04, 2024, 08:10:43 PM *
News: Latest Bitcoin Core release: 27.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 ... 65 »
  Print  
Author Topic: AMD Mem Tweak XL - Read/modify timings/pp/straps on the fly  (Read 58865 times)
Eliovp (OP)
Legendary
*
Offline Offline

Activity: 1050
Merit: 1293

Huh?


View Profile WWW
April 05, 2019, 11:49:33 PM
Merited by QuirkSilver (1)
 #121

@eliovp, thank you for this tool.
Do you or anybody else know if there is a tool available in Linux to count GPU memory errors?  Much like HWiNFO64 in Windows?

Hey Bobben2,

Yeah, it's not as obvious as on windows, that's a fact, try to check dmesg log, this gives you a lot of info as well.


>>Posted by: dragonmike

>> Has nobody ported this to Windows yet?

>> I'd be happy to do all testing myself and share my findings in this and other threads... But I'm not going to install Ubuntu and all that shizzle for that sole purpose. I suck at Linux unfortunately...
________

I've been trying to but my plate is pretty over topped at the moment but it is something I have been working on. Sadly not having luck finding somebody to help so its all on when i can get time.

No worries, i hoped it would be a nice incentive for people to get the *nix vibes Smiley

Who knows, maybe a windows version will pop up one of these days  Cheesy Wink

Changing memory timings on the fly is a very good idea!
It's possible to access GPU MMIO registers in Windows too.
It's a bit tricky to implement it properly even if you have good skills and that's the main problem.
Registers offsets can be found in ROCm sources and typedefs in OhGodADecode utility or in ROCm again (though it contains only bitmasks so it would take some time to convert them).
Anyway, this tool gave me an idea of new feature, thanks, also it was funny to play with registers and see some BSODs Smiley
I donated 0.25BTC to the address in first post.

Quote
It's possible to access GPU MMIO registers in Windows too.
It's a bit tricky to implement it properly even if you have good skills and that's the main problem.
Yeah, i'm very much aware that it's possible, it's the tricky part that's tricky :p

Thank you for your donation. It's very much appreciated!

I also noticed i've been getting some hash from someone.
I would like to thank that person as well!

Also, would again like to point out that i kind of hoped that i would see some more test results (with screenshots) here.
It doesn't hurt to help eachother out...

Cheers!

QuirkSilver
Member
**
Offline Offline

Activity: 80
Merit: 13


View Profile
April 06, 2019, 01:37:06 AM
 #122

Hi Eliovp, i was following you since late 2017, finally something new in this lovely mining atmosphere. Thanks a lot for all the info you shared around , many others were doing nothing or even destructive like the minah gurl gpu accelerators scam (scammed on a CLE101).
Now i mine CN heavy variants, can do moderate timings edits of my own for ~1200 h/s polaris 8gig (only rx 500 mining), now i'm not that good with linux or to be honest never ran distros for mining, still using retarded windows 10. So i can't get what the tool is like? i understand it recognizes memory vendor /model and applies slight or aggressive compute timings? which algo are they biased towards? is there going to be any windows version? afair last on the fly timing tool was zawawas and he stopped altogether early. how is this different.
again thanks for the knowledge sharing!
Just to add, i can install hive but, haaving the patched rig sustained running is very hard....most 580s/8gb are 1250/2150  clocks with core voltage of 950-962  one rx 470 8gb (the only samsung i have) is wierd and sometimes will ignore undervolting and resets entirley or keeps forcibly running max fan/throttling even though its 64 c!!! thats on windows 18.6.1 so linux controls would be an epic story to handle, do they kernel panic /reset undervoltage too ?
QuirkSilver
Member
**
Offline Offline

Activity: 80
Merit: 13


View Profile
April 06, 2019, 01:49:55 AM
 #123

Changing memory timings on the fly is a very good idea!
It's possible to access GPU MMIO registers in Windows too.
It's a bit tricky to implement it properly even if you have good skills and that's the main problem.
Registers offsets can be found in ROCm sources and typedefs in OhGodADecode utility or in ROCm again (though it contains only bitmasks so it would take some time to convert them).
Anyway, this tool gave me an idea of new feature, thanks, also it was funny to play with registers and see some BSODs Smiley
I donated 0.25BTC to the address in first post.

probably gonna install an on the fly in his newest quadra milking (closed source) miner.... at least someone is rich after these massacres.
Pennywis3
Full Member
***
Offline Offline

Activity: 327
Merit: 100


View Profile
April 06, 2019, 07:47:03 AM
 #124

Yeah, i figured Claymore would sonner or later go private.
A man with knowledge like that can be a very valuable asset, same as some other individuals in this post  Grin
I can imagine how much time and effort someone has to put in to get to the belly of the beast like Claymore has.

The community has gained a lot from him, and hes sure not to blame for his decisions, especially in a dirty bussines like this ( code stealing etc. ).
Pennywis3
Full Member
***
Offline Offline

Activity: 327
Merit: 100


View Profile
April 06, 2019, 07:49:22 AM
 #125

probably gonna install an on the fly in his newest quadra milking (closed source) miner.... at least someone is rich after these massacres.

You are forgeting the thousands of people that got rich beside him on account of his miners.
I'd bet you'd do the same if you had the knowledge  Grin
bobben2
Full Member
***
Offline Offline

Activity: 279
Merit: 104


View Profile
April 06, 2019, 12:55:45 PM
 #126

@eliovp, thank you for this tool.
Do you or anybody else know if there is a tool available in Linux to count GPU memory errors?  Much like HWiNFO64 in Windows?

Hey Bobben2,

Yeah, it's not as obvious as on windows, that's a fact, try to check dmesg log, this gives you a lot of info as well.


Because if available, it in theory would be possible to build an auto-tune type of tool to find the tightest timings that produce no memory error,
for some mining algos (CN/R and ETHash for example or for Raven's X16R that might benefit from changing timings on the fly depending on which of the 16 algos currently running).  Maybe such a tool could be available to miner developers as a 3rd party library that could be linked into their application...


Fellow miners, get your thens and thans in order and help other forum readers understand what you are writing. Remember the grammar basics:  B larger THAN A (comparator operator). If something THEN ....
Beave162
Hero Member
*****
Offline Offline

Activity: 809
Merit: 501



View Profile
April 07, 2019, 10:22:21 PM
 #127

Also, would again like to point out that i kind of hoped that i would see some more test results (with screenshots) here.
It doesn't hurt to help eachother out...

I'm extremely surprised by this as well. I'll certainly provide results on 560s at least when I have the time and assuming I can see some improvements.

YaCoin: YL5kf54wPPXKsXd5T18xCaNkyUsS1DgY7z 
BitCoin: 14PFbLyUdTyxZg3V8hnvj5VXkx3dhthmDj
Docice
Jr. Member
*
Offline Offline

Activity: 75
Merit: 1


View Profile
April 08, 2019, 07:44:25 PM
 #128

Tell me pls, who managed to achieve some better results for rx570-580 using this tweak? Are there concrete examples of what needs to be changed and where, I personally did not understand, read all the help, but in order to specifically change something I did not dare Undecided.
Zorg33
Jr. Member
*
Offline Offline

Activity: 144
Merit: 2


View Profile
April 08, 2019, 10:22:33 PM
 #129

Tell me pls, who managed to achieve some better results for rx570-580 using this tweak? Are there concrete examples of what needs to be changed and where, I personally did not understand, read all the help, but in order to specifically change something I did not dare Undecided.

It's already been said that you won't see any benefits with this tool for cards that have public optimized timings like all the RX 4xx/5xx (micron/elpida/hynix/samsung).
Of course if you want to further optimize timings this tool comes handy, but you need background knowledge.
Anthony42
Newbie
*
Offline Offline

Activity: 31
Merit: 0


View Profile
April 09, 2019, 02:49:06 AM
 #130

Tell me pls, who managed to achieve some better results for rx570-580 using this tweak? Are there concrete examples of what needs to be changed and where, I personally did not understand, read all the help, but in order to specifically change something I did not dare Undecided.

It's already been said that you won't see any benefits with this tool for cards that have public optimized timings like all the RX 4xx/5xx (micron/elpida/hynix/samsung).
Of course if you want to further optimize timings this tool comes handy, but you need background knowledge.

on cnr managed to achieve 2.5 kh/s ? Smiley
yobigd20
Member
**
Offline Offline

Activity: 170
Merit: 10


View Profile
April 09, 2019, 12:57:37 PM
 #131

I am trying to use this tool on RX480s and it is not working.  (yes I know I can technically just keep the modded bios on there, etc, I am simply just "testing" the tool to see if it works on rx480s with stock bios). 

On windows with the Ubermix 3.1 strap I can get 30MH on these cards.   On linux (hiveos) using stock bios I get 25MH.   On linux using stock bios but first using this tool to set custom timings, I still get 25MH.  It's as if the tool doesnt work at all.

First, I flashed the original bios' back onto the gpus.  Then moved 5x AMD RX480 Reference cards over to the linux box from a windows machine.   These amd cards all have the same memory on them, K4G80325FB 8GB samsung. 

I pulled this tool built it, and then executed the following command './amdmemtweak --current' to examine the timings of the original bios.  Then I decoded the original 2000 timing memory strap and the UberMix 3.1 memory strap and got all the values from comparing the decoded the original bios strap and compared to the timings in the Ubermix 3.1 strap.  Then used amdmemtweak to set the same timings used in the ubermix 3.1 strap and confirmed that they are set correctly using './amdmemtweak --current'.    Then I restarted the miner but I still get the same 25MH as I would with the stock bios strap timings.   What gives???  Tool seems broken...

fyi the command that I am using is:
./amdmemtweak  -i 0,1,2,3,4,5 --RC 65 --RRD 5 --RCDRA 24 --RCDR 24 --RCDWA 13 --RCDW 13 --CL 21 --W2R 14 --CCDS 5 --CCLD 4 --R2W 28 --RFC 136 --TRP 27 --RP_RDA 24 --RP_WRA 46 --T32AW 0 --FAW 0 --RASMACTRD 47 --RASMACTWR 63 --ACTWR 18 --ACTRD 16 --BUS_TURN 25 --WRPLUSRP 64 --RP 53 --RAS2RAS 186


also fyi at least one of the argument's is "wrong" in the --help.  I believe it was 'RASMACTWR'.  In the --help it has 'RASMACWTR' but that doesn't do anything, it has to be 'RASMACTWR'.  (the W and T are backwards).  I think its just a typo in your --help output code.  One of the other parameters was like this too, though I dont remember which one that was. 

this is what the tool shows after setting the values and starting the miner:

GPU 4:  Ellesmere [Radeon RX 470/480/570/570X/580/580X] pci:0000:05:00.0
CAS
  CL: 21          W2R: 14         CCDS: 5         CCLD: 4         R2W: 28         NOPR: 0         NOPW: 0
RAS
  RC: 65          RRD: 5          RCDRA: 24       RCDR: 24        RCDWA: 13       RCDW: 13
MISC
  RFC: 136        TRP: 27         RP_RDA: 24      RP_WRA: 46
MISC2
  WDATATR: 0      T32AW: 0        CRCWL: 25       CRCRL: 3        FAW: 0          PA2WDATA: 0     PA2RDATA: 0
DRAM1
  RASMACTWR: 63   RASMACTRD: 47   ACTWR: 18       ACTRD: 16
DRAM2
  RAS2RAS: 186    RP: 53          WRPLUSRP: 64    BUS_TURN: 25

while these completely match the same timings as the UberMix 3.1 strap, the mining hashrate does not increase above the same 25MH value as stock...


Zorg33
Jr. Member
*
Offline Offline

Activity: 144
Merit: 2


View Profile
April 09, 2019, 07:00:12 PM
 #132

Quote from: Anthony42
on cnr managed to achieve 2.5 kh/s ? Smiley
on polaris? Doubt it...


@yobigd20
Don't you forget what's said in the readme.
Set the timings during load for cards that has different timings in different memory powerstates.
I assume you set the timings in idle state.
Anthony42
Newbie
*
Offline Offline

Activity: 31
Merit: 0


View Profile
April 10, 2019, 03:35:27 AM
 #133

Quote from: Anthony42
on cnr managed to achieve 2.5 kh/s ? Smiley
on polaris? Doubt it...


@yobigd20
Don't you forget what's said in the readme.
Set the timings during load for cards that has different timings in different memory powerstates.
I assume you set the timings in idle state.
I'm talking about vega 56/64.
nordmann666
Member
**
Offline Offline

Activity: 363
Merit: 16


View Profile
April 10, 2019, 07:14:41 AM
 #134

first steps with hiveos...any hints where i can find the tool or how to set it in hiveos?!
lexele
Full Member
***
Offline Offline

Activity: 190
Merit: 100


View Profile
April 10, 2019, 09:00:26 PM
 #135

first steps with hiveos...any hints where i can find the tool or how to set it in hiveos?!

Hello
on first page you have the link to github where it's explained (appart from the mentionned packages to install where he doesn't give the command "apt install packagename"

I did it on hiveOs through the "shell in a box".
Eliovp (OP)
Legendary
*
Offline Offline

Activity: 1050
Merit: 1293

Huh?


View Profile WWW
April 11, 2019, 11:50:13 AM
 #136

Update:

Decided to release a Winblows supported version.

I've tested it on 2 systems with Latest adrenaline version (one with a Vega gpu, the other with a 570) and confirmed working.

Check OP for link.


Please post results here. That's all i'm asking Smiley

Cheers guys!

doktor83
Hero Member
*****
Offline Offline

Activity: 2688
Merit: 626


View Profile WWW
April 11, 2019, 12:29:04 PM
 #137

Update:

Decided to release a Winblows supported version.

I've tested it on 2 systems with Latest adrenaline version (one with a Vega gpu, the other with a 570) and confirmed working.

Check OP for link.


Please post results here. That's all i'm asking Smiley

Cheers guys!

I walked the long road with finding mmio address, reading and writing to the appropriate offsets, and you just.. used an asus .dll that has everything that's needed, with a signed kernel driver..
Well done Eliovp  Grin

SRBMiner-MULTI thread - HERE
http://www.srbminer.com
heavyarms1912
Full Member
***
Offline Offline

Activity: 729
Merit: 114



View Profile
April 11, 2019, 02:06:43 PM
 #138

Update:

Decided to release a Winblows supported version.

I've tested it on 2 systems with Latest adrenaline version (one with a Vega gpu, the other with a 570) and confirmed working.

Check OP for link.


Please post results here. That's all i'm asking Smiley

Cheers guys!

Tested on VII.  tool reports timing modified.  Got a very light boost on HR.  Thanks.
Is there a reset command to revert back to original timings?
N2DCRYPT
Jr. Member
*
Offline Offline

Activity: 148
Merit: 5


View Profile
April 11, 2019, 06:45:47 PM
Merited by vapourminer (1)
 #139

Update:

Decided to release a Winblows supported version.

I've tested it on 2 systems with Latest adrenaline version (one with a Vega gpu, the other with a 570) and confirmed working.

Check OP for link.


Please post results here. That's all i'm asking Smiley

Cheers guys!

@Eliovp, once again thanks for your efforts here getting it onto windows. Much easier for traditional Vega Users with PPTs and Overclocking tools to really test the limits of your tool!

For my part, I'm getting pretty decent results on ETH; Reference Powercolor Vega 64 on latest Adrenalin 19.3.3 drivers.
Thanks to Windward for getting me started on values for parameters.

https://i.imgur.com/6bedvOO.jpg

Given the generosity of Eliovp in even making this tool available, I'm not gonna be the guy that takes and doesn't give back.

For those curious, here's what I put in a batch script after I honed in on parameters.

(PATH to folder where MemTweak is stored)\WinAMDTweak.exe --CL 16 --RAS 30 --RCDRD 14 --RCDWR 14 --RC 44 --RP 14s --RRDS 3 --RRDL 5 --RTP 5 --FAW 20 --CWL 7 --WTRS 4 --WTRL 9 --WR 16 --WRRD 1 --RDWR 19 --REF 17550 --MRD 8 --MOD 15 --PD 8 --CKSRE 10 --CKSRX 10 --RFC 244

Run before starting the miner. For some reason, injecting the timings when mining would crash the miner if FAW>17, but FAW>17 is okay if injected prior. Also, RC<44 led to incorrect shares being found. No guarantees of stability... I was simply looking for accepted shares w/o rejects in short runs. I need to read up as well on compatible RAM timings... lower RC seems to drive HR the most.

Happy to answer any Q's; also, memclock was 1107 and was using PhoenixMiner4.2c
                 
todxx
Member
**
Offline Offline

Activity: 176
Merit: 76


View Profile
April 11, 2019, 07:45:17 PM
 #140

Eliovp, great work on this tool.  Here are some of my results:

OS: linux/Ubuntu 18.04
miner: teamredminer 0.4.3
card: Vega 64 air cooled (MSI air boost OC w/ samsung mem)
core clock: ~1150Mhz
mem clock: 1100Mhz
timings modified: --rp 10 --rc 44 --rfc 300 --rrd 3 --rcdrd 12 --rcdwr 5
hashrate w/ stock timings: ~19.5kh/s
hashrate w/ new timings: 21.36kh/s

Unfortunately I don't have power readings from this rig, so I'm not sure how much the power usage increased with the new timings.
I think the card can be pushed more, but I don't have the time to keep tuning at the moment.
Pages: « 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 ... 65 »
  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!