On 05/10/2018 04:45 PM, zhoucm1 wrote:
On 2018年05月10日 13:07, Zhang, Jerry (Junwei) wrote:
On 05/09/2018 02:45 PM, Chunming Zhou wrote:
move implemenation from ttm to amdgpu driver. (suggested by Christian)
per-vm-lru is because of per-vm-bo, which has no chance to refresh lru, the
nagtive effect is game performance isn't stable.
so all per-vm-bo should have a default order, every per-vm-bo has its
priority, relying on its creation index.
When doing CS, if any normal bo is used, then all per-vm-bo should be used,
so per-vm-bo prioirty >= normal bo priority.
Above is per-vm-lru starting point.
How do you think that we create the per vm bo as priority 1 and kernel bo as
priority 2 accordingly?
Yeah, then how to fix per-vm-bo order? I think we need set priority for every
per-vm-bo. Because of lacking bo list, the per-vm-bo lru can only depend on
priority.
Mmm, maybe use RB tree for BOs in priority 1 lru.
but it actually works for per dev rather than per vm.
Seems we need per vm lru as the patches for per vm bo management.
Jerry
Regards,
David Zhou
Will that help to make some improvement?
Jerry
Chunming Zhou (13):
ttm: abstruct evictable bo
ttm: allow driver has own lru policy
drm/amdgpu: add lru backend for amdgpu driver
drm/amdgpu: init/fini vm lru
drm/amdgpu: pass vm lru to buffer object
drm/amdgpu: add amdgpu lru implementation
drm/ttm: export ttm_bo_ref_bug
drm/amdgpu: use RB tree instead of link list
drm/amdgpu: add bo index counter
drm/amdgpu: bulk move per vm bo
ttm: export ttm_transfered_destroy
drm/amdgpu: transferred bo doesn't use vm lru
drm/amdgpu: free vm lru when vm fini
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 5 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 1 +
drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 2 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 14 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 9 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 4 +
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 7 +
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 242 ++++++++++++++++++++++++++++-
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 25 +++
drivers/gpu/drm/ttm/ttm_bo.c | 92 +++++++----
drivers/gpu/drm/ttm/ttm_bo_util.c | 3 +-
include/drm/ttm/ttm_bo_driver.h | 52 +++++++
12 files changed, 419 insertions(+), 37 deletions(-)
_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel