[PATCH 00/13] *** per vm lru ***

Zhang, Jerry (Junwei) Jerry.Zhang at amd.com
Mon May 14 05:44:47 UTC 2018


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 we can use RB tree for per vm bo priority lru.
But that's actually per dev rather than per vm, I think.

Seems we need a per vm lru as your patches for 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 at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
>


More information about the amd-gfx mailing list