Bug 101877 - R9 390 with multiple monitors always using highest memory clock
Summary: R9 390 with multiple monitors always using highest memory clock
Status: RESOLVED NOTABUG
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/AMDgpu (show other bugs)
Version: DRI git
Hardware: Other All
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-07-22 14:48 UTC by hisele
Modified: 2018-09-18 15:50 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description hisele 2017-07-22 14:48:06 UTC
My MSI r9 390 forces the memory clock to 150000 if I plug in more than one monitor. The card draws 40 watts more power while idle and keeps the fans running all the time.

This is happening with both amdgpu and radeon and I can fix the problem by disabling dpm, but this causes some other issues.

I read earlier that this behaviour is intended and is a common problem with graphics cards but IIRC a recent driver update fixed this on windows so I'd like to know if there is any chance to also get a fix on linux?
Comment 1 Alex Deucher 2017-07-23 14:07:56 UTC
mclk changes have to be synced to the vertical blanking period of the displays.  If the displays have different timings, it's not possible to change the mclk without causing display flickering.
Comment 2 hisele 2017-07-23 14:14:41 UTC
So does the windows driver detect the timing of the displays and keep the mclk low if it's in sync?
Comment 3 Alex Deucher 2017-07-23 14:23:22 UTC
AFAIK, the windows driver forces the mclk high as well when multiple displays are attached.  The only possible exception would be if multiple displays had the exact same timing and the vblank periods could be aligned.
Comment 4 hisele 2017-07-23 14:43:17 UTC
Yeah, both my monitors are the same model so this is probably the case. If there's no way to enable changing the mclk, can I set it to a lower default value without disabling dpm completely?
Comment 5 Alexandre Pereira 2018-09-18 12:47:50 UTC
I have a similar problem.

I have a Rx 580 with 2 exactly equal monitors. On windows, there is no issue and memory clock is always at 300mhz, except when gaming.

When on linux, If using graphical display, memory clock is always MAX.
If i am only on the tty's ( text mode only ) I can set it to 300mhz, after changing memory clock pp setting ( echo 1 > pp_mclk_od ).

Like the op, drawing 40 watts more power than windows, is very undesirable, besides also running much cooler on windows. Also on windows I never saw any problem whatsoever with it running at minimum 300mhz.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.