I have a Sapphire RX580 4GB (Hynix), and the maximum I can get is 26Mh/s.
Followed all the instructions about bios, polaris, memory timmings, etc...
I have a 570 Hynix and I can't get above 23.x! This Hynix memory is crap.
No, it is not.
Back in April/May my 3 Sapphire RX 570s with Hynix all did 29.5 with a simple strap copy from 1750 to 2000 with mem overclocked to 2050 and core at 1100.
Now they do about 26 because of the DAG size increase.
26 is still better than what I'm getting. I now have two 570s, Sapphire and XFX and both can't get over 23.x ETH-only. Doesn't matter what BIOS changes I make or what clocks I use. In fact if anything messing with things actually creates worse hashrates and thrashing of hashrates!
I won't be buying any more RX cards until I can figure this out, and even then I may not until AMD can fix the DAG efficiency drop time bomb. I ran the -benchmark option in Claymore for my RX 570 and GTX 1070 (dates are estimated of course):
8/17/2017 EPOCH 140: ETH: GPU0 23.807 Mh/s, GPU1 31.197 Mh/s
10/1/2017 EPOCH 150: ETH: GPU0 22.501 Mh/s, GPU1 31.164 Mh/s
11/14/2017 EPOCH 160: ETH: GPU0 20.258 Mh/s, GPU1 30.621 Mh/s
12/29/2017 EPOCH 170: ETH: GPU0 18.232 Mh/s, GPU1 31.195 Mh/s
2/12/2018 EPOCH 180: ETH: GPU0 16.754 Mh/s, GPU1 31.135 Mh/s
In five months or so the RX cards will lose another 30% performance. Of course ETH PoS may change everything anyway before then. If 1070s drop to $300 or even close that will be my card of choice, hands down.