Basically, this has been a problem with AMD cards for years. Just Google “AMD multi monitor high clocks” and you’ll see ton of reports — a high memory clock means more power, which means more heat. As far I read, this can be fixed, but the fix must come from AMD, not Apple. The only solution, for now, is using matching monitors (same resolution and same refresh rate) with a standard refresh rate (60hz;120hz). AMD response for a GPU that suffers from the same problem is:
”I checked with the product team and their feedback is that depending on specific display configurations (resolution and refresh rate combinations) and background tasks, RX 5000 Series GPUs may maintain memory frequency to ensure an optimal user experience. This behavior is expected and does not impact the RX 5000 GPU in any way.”
Also an user said:
”I also had this problem but with a 144Hz monitor and standard timings didn't work for me at 144hz( monitor goes into standby) and I lowered the refresh rate to 141Hz and that allowed my vram clock to stay at 200mhz idle.
Some monitor manufacturers simply don't use standard LCD timings and that's what causing this issue. Idk why they are using non standard timings...cost savings, low quality panels idk I can only speculate.”
I can’t post links here, as far as I’m aware, but NVIDIA cards had this issues too and they fixed it updating the drivers.
Here’s an explanation from a user:
“It seems this is caused by conflict in different standards and the de-facto method of running these high refresh monitors.... to put it shortly; the signal bandwidth mandated by the hdmi (version number unclear) is not quite enough to transmit all of the pixels while maintaining the traditional blanking interval (CRT remnant, useless these days, but most monitors still follow it as to not break compatibility with other components using it) so it is cut tighter, the cards have traditionally used this 'idle' time to adjust clockspeeds but now it is too short to do it; so the cards just keep the clocks elevated constantly. There have been number of post in this subreddit about creating a custom resolution with reduced timings to give more 'breathing room' for the card to change the clocks and it seems to actually work on many monitors. I'm personally running my monitor at 120Hz as the procedure seems to me to be a bit out of my comfort zone...”
”From my readings ,essentially changes in memory clock must occur during the Vblank period when the monitor is not displaying anything, currently only 60/120hz have the proper sync for downclocking to work, this is sort of fixed in newer drivers for other refresh rates, but many monitors do not use the a standard vblank time for frequencies like 75hz, 144hz, 90hz (often reduced vblank, or other), and so it is simply forced to the maximum clock to avoid desync (which would cause flickering)”