Pages:
Author

Topic: AMD Mem Tweak XL - Read/modify timings/pp/straps on the fly - page 58. (Read 58905 times)

newbie
Activity: 25
Merit: 0
Can somebody compile it for Windows? I have a few unmoded 570 that i can try and report.

tnx
member
Activity: 176
Merit: 76
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.
jr. member
Activity: 148
Merit: 5
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
                 
full member
Activity: 729
Merit: 114
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?
hero member
Activity: 2548
Merit: 626
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
legendary
Activity: 1050
Merit: 1294
Huh?
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!
full member
Activity: 192
Merit: 100
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".
member
Activity: 363
Merit: 16
first steps with hiveos...any hints where i can find the tool or how to set it in hiveos?!
newbie
Activity: 31
Merit: 0
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.
jr. member
Activity: 144
Merit: 2
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.
member
Activity: 170
Merit: 10
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...


newbie
Activity: 31
Merit: 0
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
jr. member
Activity: 144
Merit: 2
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.
jr. member
Activity: 75
Merit: 1
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.
hero member
Activity: 809
Merit: 501
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.
full member
Activity: 279
Merit: 104
@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...

full member
Activity: 327
Merit: 100
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
full member
Activity: 327
Merit: 100
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. ).
member
Activity: 80
Merit: 13
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.
member
Activity: 80
Merit: 13
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 ?
Pages:
Jump to: