mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-23 21:50:00 +07:00
drm/amdgpu: disable gpu-sched load balance for uvd
On hardware with multiple uvd instances, dependent uvd 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. v2: Squash in uvd_enc fix Signed-off-by: Nirmoy Das <nirmoy.das@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
5dc1a0bcb7
commit
bc21585f3f
@ -114,7 +114,11 @@ 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;
|
||||
|
||||
if (hw_ip == AMDGPU_HW_IP_VCN_ENC || hw_ip == AMDGPU_HW_IP_VCN_DEC) {
|
||||
/* 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;
|
||||
num_scheds = 1;
|
||||
|
Loading…
Reference in New Issue
Block a user