Is "perfectly equal monitors" really required to reclock MCLK

Christian König ckoenig.leichtzumerken at gmail.com
Fri Jan 13 15:22:22 UTC 2023


Am 13.01.23 um 16:09 schrieb Alex Deucher:
> On Fri, Jan 13, 2023 at 10:05 AM Braiam <braiamp at gmail.com> wrote:
>> AMD RX 590. Forgot to include it. How do I know the blanking period?
> OK polaris falls into the first bucket.  Look at the full modelines.
> E.g., xrandr --verbose.
>
>> Would variable refresh rate mess up with that?
> Probably.

Totally, as far as I know VRR is currently a complete show stopper for 
reclocking the MCLK.

But on the other hand VRR could potentially be used to artificially 
create some overlapping VBLANK period to do the actually reclocking. 
Interesting idea.

We might want to ping Harry or somebody else form the DC team if they 
have thought about that yet.

Christian.

>
> Alex
>
>> On Fri, Jan 13, 2023 at 10:57 AM Alex Deucher <alexdeucher at gmail.com> wrote:
>>> On Fri, Jan 13, 2023 at 9:47 AM Braiam <braiamp at gmail.com> wrote:
>>>> Hi,
>>>>
>>>> I have two monitors with the current following configuration:
>>>>
>>>> Screen 0: minimum 320 x 200, current 5120 x 1440, maximum 16384 x 16384
>>>> DisplayPort-0 connected primary 2560x1440+0+0 (normal left inverted
>>>> right x axis y axis) 597mm x 336mm
>>>>     2560x1440    164.83 +  59.95 + 120.05*   96.01    72.01    60.01
>>>> 143.97   120.00    74.97
>>>> [snip]
>>>> DisplayPort-1 connected 2560x1440+2560+0 (normal left inverted right x
>>>> axis y axis) 597mm x 336mm
>>>>     2560x1440    165.00 +  59.95 + 120.06*   96.04    72.01    60.01
>>>> 50.01    48.01   144.00   119.99    99.99
>>>> [snip]
>>>> HDMI-A-0 disconnected (normal left inverted right x axis y axis)
>>>> HDMI-A-1 disconnected (normal left inverted right x axis y axis)
>>>> DVI-D-0 disconnected (normal left inverted right x axis y axis)
>>>>
>>>> The pp_profile_mode:
>>>>
>>>> NUM        MODE_NAME     SCLK_UP_HYST   SCLK_DOWN_HYST
>>>> SCLK_ACTIVE_LEVEL     MCLK_UP_HYST   MCLK_DOWN_HYST MCLK_ACTIVE_LEVEL
>>>>    0   BOOTUP_DEFAULT:        -                -                -
>>>>           -                -                -
>>>>    1 3D_FULL_SCREEN *:        0              100               30
>>>>          10               60               25
>>>>    2     POWER_SAVING:       10                0               30
>>>>           -                -                -
>>>>    3            VIDEO:        -                -                -
>>>>          10               16               31
>>>>    4               VR:        0               11               50
>>>>           0              100               10
>>>>    5          COMPUTE:        0                5               30
>>>>           -                -                -
>>>>    6           CUSTOM:        -                -                -
>>>>           -                -                -
>>>>
>>>> I have set their refresh rate to 72.01 which is a mode equal for both,
>>>> and the MCLK wasn't downclocked either. They are branded HP and
>>>> Scepter. Using a vtty doesn't help either.
>>>>
>>>> Is having the exact same monitor really required? If not, how can I
>>>> check what is causing
>>>> the memory clock to be pegged that high?
>>> It depends what GPU you have.  Older ones can only reclock memory
>>> during the vertical blanking period assuming it's long enough as the
>>> whole reclocking process takes a certain amount of time.  If it
>>> doesn't happen during the blanking period you will get visible
>>> glitches on the screen when the reclock happens.  If the vertical
>>> blanking period is not long enough or if the vblank periods are not
>>> aligned when using multiple monitors, the driver doesn't reclock.  The
>>> mode lines (not just the refresh rate) have to be the exact same for
>>> the vblanks to line up when using multiple monitors.  Your best bet is
>>> to take the mode line you want to use from one monitor and apply it to
>>> the other monitor.  Newer GPUs have more flexibility and can reclock
>>> memory in more situations, but there are still some monitors where the
>>> timing may not work out.
>>>
>>> What GPU do you have?
>>>
>>> Alex
>>
>>
>> --
>> Braiam



More information about the amd-gfx mailing list