Pages:
Author

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

legendary
Activity: 1050
Merit: 1294
Huh?
Hey all,

Just pushed a new release.
Added some new timings for HBM2 to play around with.
Fixed a few small things and cleaned up a bit.
Especially the --help output is a bit more clear now.
The --current output is as well more clearer.


For rx580 this thing got no use, my opinion. You have allredy stripped firmwares all over the net, why you would use this for 580 Huh
This has use for Vega cards because you dont have other option Wink

I managed to increase the hashrate on my 470 by 0.8Mh with my tool. Bringing it to 32Mh avarage.
Yes, i have a custom strap in the vbios as well. Still, with live timings i was able to increase it even more.

If it wouldn't have any use for GDDR5, i wouldn't have even added it in.  Wink


can someone please share the config that they used for their vega and can someone explain or just give full forms of every parameter

This is the fun thing about this tool. Well, it is for me  Grin
Figuring out these things. What to adjust to increase speed. What to adjust to increase stability.
Every time you manage to improve the overall performance, you will get that satisfied feeling that you would never get otherwise.

I'm very well aware that a lot of people will use the "I don't have time to find out" argument, i'm sorry but i don't have time to help those that won't even bother to do a little bit of effort.

I'm hoping this could be a community effort, people helping each other to find out "better" settings..

 Smiley
newbie
Activity: 7
Merit: 11
can someone please share the config that they used for their vega and can someone explain or just give full forms of every parameter
full member
Activity: 729
Merit: 114
For rx580 this thing got no use, my opinion. You have allredy stripped firmwares all over the net, why you would use this for 580 Huh
This has use for Vega cards because you dont have other option Wink

So that you can experiment with live values instead of BIOS modding every time?
full member
Activity: 729
Merit: 114
Hey! it's you.

Great work and thanks for sharing.
newbie
Activity: 15
Merit: 0
For rx580 this thing got no use, my opinion. You have allredy stripped firmwares all over the net, why you would use this for 580 Huh
This has use for Vega cards because you dont have other option Wink
jr. member
Activity: 75
Merit: 1
And how to use? Are there optimal settings for the rx580?
newbie
Activity: 49
Merit: 0
I successful managed to run the tool on hiveos(untubu 14.04),but i have no idea how to use it......
I try ./amdmemorytweak --i 0 -CL 20  (default is 21),but gpu0 got offline after a second.....
a little more guidance in the readme will be grateful!
member
Activity: 340
Merit: 29
do you happen to know if there's an addressable edc sensor/counter on vega?  I remember someone (nerdralph?) talking the possibility a year back, but never really saw anything come of it.  otherwise, does syslog capture all hw faults, or only in some cases?  i've seen them reported in the past, but was not convinced the reporting was comprehensive.

would be useful in whipping up a nice little auto-tuner.
legendary
Activity: 1862
Merit: 1011
Reverse engineer from time to time
So I managed to get this working on Windows. Are the values correct for r9 380x?

https://imgur.com/a/hZ7btRa
No, R9 have different struct.

Are these readily available?
https://raw.githubusercontent.com/ddobreff/amdmeminfo/master/gmc.h
Quote
       ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_wr_ctl_d0), pos );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_wr_ctl_d1), pos+8 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_ras_timing), pos+16 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_cas_timing), pos+24 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_misc_timing), pos+32 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_misc_timing2), pos+40 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_pmg_timing), pos+48 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_misc1), pos+56 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_misc3), pos+64 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_seq_misc8), pos+72 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_arb_dram_timing), pos+80 );
        ultostr16_8( uint32_swap2(*(uint32_t *)&mc_arb_dram_timing2), pos+88 );
And this is their order.
Thanks!
legendary
Activity: 1862
Merit: 1011
Reverse engineer from time to time
So I managed to get this working on Windows. Are the values correct for r9 380x?

https://imgur.com/a/hZ7btRa
No, R9 have different struct.

Are these readily available?
legendary
Activity: 1862
Merit: 1011
Reverse engineer from time to time
So I managed to get this working on Windows. Are the values correct for r9 380x?

https://imgur.com/a/hZ7btRa
legendary
Activity: 1050
Merit: 1294
Huh?
@OP, can you do me a favor?

Can you cat /sys/kernel/debug/dri/%d/amdgpu_regs for me please? is amdgpu_regs static, or does it change?

Have you tried it yourself?  Wink

nice work, taking mining back to the old days of people helping each other, and not being a bunch of greedy bastards!  Kiss

Thank you Smiley

What I'm able to decipher here is that someone got a just desert served nice and cold and can no longer steal another's glory like it was done last time.  

KUDOS on every single fucking front mate!

Time to convert my vega boxes to linux! Smiley

Very welcome!

Hi, does it work with rx580?

It sure does.

OhGodAnHELIOXlargementPill
  (theoriginalgangsta)
 Tongue Tongue Tongue Tongue Tongue Tongue Tongue


THE EXECUTABLE IS NOT LIKE THE PILL--

The ETHlargementpill is "full auto", it runs for the 1080ti and is pre-programmed with memory timings.  However, the AMDmemtool is very basic and allows the user to apply each memory tweak separately.  The user must put his own tweaks in place, and understand the terms and shorthand for each tweak.

This tool is usefull for a user to put together custom timings prior to programming the GPU BIOS with straps.  An analogy: like giving a user a stickshift assembly, but requiring the user to bolt it into the manual transmission case and mounting it in the car himself.

The "*.cpp" file compiles readily if the instructions in the README.md are followed.  It reads data from my R9 Fury cards with no problem.  But, as I do not know the tweaks necessary to improve the "--current" settings, I need to refer to a memory timings manual.  The downloadable binary from the Releases page works the same as my own compiled binary.       --scryptr

No, true, it's not like "the pill".
It's better.
- You have the option to finetune yourself.
- It's open source
- It's based on data discovered by myself and not someone else. The only person that helped me to write the code is mentioned.
- ....

So no, it's not the same no Smiley

Btw, you can run the tool with multiple flags, ./amdmemorytweak --i 0,2,5 --CL 19 --RFC 260 --RAS  ... etc

Expect this tool, maybe super-slightly optimized closed source and with 2-5% dev-fee under some other name(s) soon Smiley

There's no "optimized" source possibility here. Exactly as Laik pointed out.

The only thing that could be done is automate the process with predefined timings. Something you can do yourself.
Heck, you can do even better if you take the time to figure them out.

Reading your comment makes me extra happy that i released this open source because 2-5% is in my eyes "theft".

Cheers!
legendary
Activity: 2688
Merit: 1240
Expect this tool, maybe super-slightly optimized closed source and with 2-5% dev-fee under some other name(s) soon Smiley
legendary
Activity: 1797
Merit: 1028
OhGodAnHELIOXlargementPill
  (theoriginalgangsta)
 Tongue Tongue Tongue Tongue Tongue Tongue Tongue


THE EXECUTABLE IS NOT LIKE THE PILL--

The ETHlargementpill is "full auto", it runs for the 1080ti and is pre-programmed with memory timings.  However, the AMDmemtool is very basic and allows the user to apply each memory tweak separately.  The user must put his own tweaks in place, and understand the terms and shorthand for each tweak.

This tool is usefull for a user to put together custom timings prior to programming the GPU BIOS with straps.  An analogy: like giving a user a stickshift assembly, but requiring the user to bolt it into the manual transmission case and mounting it in the car himself.

The "*.cpp" file compiles readily if the instructions in the README.md are followed.  It reads data from my R9 Fury cards with no problem.  But, as I do not know the tweaks necessary to improve the "--current" settings, I need to refer to a memory timings manual.  The downloadable binary from the Releases page works the same as my own compiled binary.       --scryptr
newbie
Activity: 16
Merit: 0
How do you apply this .cpp file?
sr. member
Activity: 847
Merit: 383
OhGodAnHELIOXlargementPill
  (theoriginalgangsta)
 Tongue Tongue Tongue Tongue Tongue Tongue Tongue
jr. member
Activity: 75
Merit: 1
lol! all the useless leeches bleating "Gimme,Gimme! I'm incapable of actually doing anything difficult and need spoon feeding!"
member
Activity: 363
Merit: 16
pls...step by step guide for hiveos

and how much more on CN?
full member
Activity: 1281
Merit: 141
Looks like it works with everything team RED.

Just getting to play with it but very NICE.
Thanks to Eliovp for sharing with us little peeps!
jr. member
Activity: 75
Merit: 1
Hi, does it work with rx580?
Pages:
Jump to: