linux_dsm_epyc7002/drivers/gpu/drm/amd
John Brooks 00f06b246a drm/amdgpu: Throttle visible VRAM moves separately
The BO move throttling code is designed to allow VRAM to fill quickly if it
is relatively empty. However, this does not take into account situations
where the visible VRAM is smaller than total VRAM, and total VRAM may not
be close to full but the visible VRAM segment is under pressure. In such
situations, visible VRAM would experience unrestricted swapping and
performance would drop.

Add a separate counter specifically for moves involving visible VRAM, and
check it before moving BOs there.

v2: Only perform calculations for separate counter if visible VRAM is
    smaller than total VRAM. (Michel Dänzer)
v3: [Michel Dänzer]
* Use BO's location rather than the AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED
  flag to determine whether to account a move for visible VRAM in most
  cases.
* Use a single

	if (adev->mc.visible_vram_size < adev->mc.real_vram_size) {

  block in amdgpu_cs_get_threshold_for_moves.

Fixes: 95844d20ae (drm/amdgpu: throttle buffer migrations at CS using a fixed MBps limit (v2))
Signed-off-by: John Brooks <john@fastquake.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2017-07-14 11:06:33 -04:00
..
acp drm: amd: remove broken include path 2017-03-14 19:19:44 -04:00
amdgpu drm/amdgpu: Throttle visible VRAM moves separately 2017-07-14 11:06:33 -04:00
amdkfd Merge branch 'drm-next-4.13' of git://people.freedesktop.org/~agd5f/linux into drm-next 2017-06-16 09:56:53 +10:00
include drm/amd/powerplay: added grbm_idx_mutex lock/unlock to cgs v2 2017-07-14 11:06:25 -04:00
powerplay drm/amd/powerplay: added didt support for vega10 2017-07-14 11:06:26 -04:00
scheduler drm/amd/sched: print sched job id in amd_sched_job trace 2017-07-14 11:06:00 -04:00