[PATCH] drm/amdgpu: disable GFXOFF and PG during compute for GFX9
Alex Deucher
alexdeucher at gmail.com
Wed Oct 11 14:19:56 UTC 2023
On Wed, Oct 11, 2023 at 3:52 AM Jesse Zhang <jesse.zhang at amd.com> wrote:
>
> Temporary workaround to fix issues observed in some compute applications
> when GFXOFF is enabled on GFX9.
>
> Signed-off-by: Jesse Zhang <Jesse.Zhang at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
> index d3805dbbbb6f..fef93d4edcbc 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
> @@ -683,12 +683,16 @@ int amdgpu_amdkfd_submit_ib(struct amdgpu_device *adev,
>
> void amdgpu_amdkfd_set_compute_idle(struct amdgpu_device *adev, bool idle)
> {
> + enum amd_powergating_state state = idle ? AMD_PG_STATE_GATE : AMD_PG_STATE_UNGATE;
> /* Temporary workaround to fix issues observed in some
> * compute applications when GFXOFF is enabled on GFX11.
> */
> if (IP_VERSION_MAJ(amdgpu_ip_version(adev, GC_HWIP, 0)) == 11) {
> pr_debug("GFXOFF is %s\n", idle ? "enabled" : "disabled");
> amdgpu_gfx_off_ctrl(adev, idle);
> + } else if ((IP_VERSION_MAJ(amdgpu_ip_version(adev, GC_HWIP, 0)) == 9) &&
> + (adev->flags & AMD_IS_APU)) {
> + adev->ip_blocks[AMD_IP_BLOCK_TYPE_GFX].version->funcs->set_powergating_state((void *)adev, state);
Why not use amdgpu_gfx_off_ctrl(adev, idle); for consistency?
Alex
> }
> amdgpu_dpm_switch_power_profile(adev,
> PP_SMC_POWER_PROFILE_COMPUTE,
> --
> 2.25.1
>
More information about the amd-gfx
mailing list