[PATCH 1/1] drm/amdgpu: disable gpu-sched load balance for uvd_enc

Christian König ckoenig.leichtzumerken at gmail.com
Wed Sep 2 11:07:44 UTC 2020


Am 02.09.20 um 12:15 schrieb Nirmoy Das:
> On hardware with multiple uvd instances, dependent uvd_enc jobs
> may get scheduled to different uvd instances. Because uvd_enc
> jobs retain hw context, dependent jobs should always run on the
> same uvd instance. This patch disables GPU scheduler's load balancer
> for a context that binds jobs from the same context to a uvd
> instance.
>
> Signed-off-by: Nirmoy Das <nirmoy.das at amd.com>

Reviewed-by: Christian König <christian.koenig at amd.com>

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 2 ++
>   1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
> index 7cd398d25498..c80d8339f58c 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
> @@ -114,8 +114,10 @@ static int amdgpu_ctx_init_entity(struct amdgpu_ctx *ctx, u32 hw_ip,
>   	scheds = adev->gpu_sched[hw_ip][hw_prio].sched;
>   	num_scheds = adev->gpu_sched[hw_ip][hw_prio].num_scheds;
>
> +	/* disable load balance if the hw engine retains context among dependent jobs */
>   	if (hw_ip == AMDGPU_HW_IP_VCN_ENC ||
>   	    hw_ip == AMDGPU_HW_IP_VCN_DEC ||
> +	    hw_ip == AMDGPU_HW_IP_UVD_ENC ||
>   	    hw_ip == AMDGPU_HW_IP_UVD) {
>   		sched = drm_sched_pick_best(scheds, num_scheds);
>   		scheds = &sched;
> --
> 2.28.0
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx



More information about the amd-gfx mailing list