I'm only getting 24.x MH/s with the Arorak memshift ROMs. I get 27.x with the powersave ROM (and on less power too) so that's what I'm going with. That's no better than my 570s and one of my 570s actually does 1 MH/s more.
The RX 570/580 have pretty much the same hashrate for mining ETH. The benefit of the RX 580's is better dual mining performance. My RX 570' can only go up to -dcri 26 before it lowers the ETH hash rate and get 28.5-29 MH/s ETH + 740 MH/s dual mining DCR. With the RX 580 I can go up to -dcri 32 and get 945 MH/s dual mining DCR.
I would try the PolarisBiosEditor v1.6 'one-click timing patch' bundled performance strap. With the PBE bundled strap, 1150 MHz core clock, 2050 MHz memory clock, -96 mV underclcok and -15% power limit in Afterburner I get 29.5 MH/s ETH and 945 MH/s DCR dual mining on a Sapphire Pulse RX 580 4GB with 125-145W shown in GPU-Z.
https://github.com/jaschaknack/PolarisBiosEditor