[PATCH] drm/amdgpu: band aid validating VM PTs

Christian König ckoenig.leichtzumerken at gmail.com
Wed Jun 20 14:45:44 UTC 2018


Am 20.06.2018 um 13:25 schrieb Huang Rui:
> On Tue, Jun 19, 2018 at 02:57:00PM +0200, Christian König wrote:
>> Always validating the VM PTs takes to much time. Only always validate
>> the per VM BOs for now.
> Christian, you delete PTE BO instead of moving them into idle list. The
> intention is to avoid them do evction back when do vm_validate_pt_bos,
> right?

No, the intention is to avoid the extra command submission overhead with 
moving them on the LRU.

This messes the LRU for VMs up a bit, but that shouldn't matter much 
because when we need to evict PTs the performance is not relevant 
anymore anyway.

Christian.

>
> But in that function, I just see that it will walk over the idle list and
> move the bo into lru list, and didn't find the evction behaviour called
> explicitly. So why will it save the performance cost?
>
> Thanks,
> Ray
>
>> Signed-off-by: Christian König <christian.koenig at amd.com>
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
>> index 819949418495..7c30451ba897 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
>> @@ -1082,7 +1082,7 @@ int amdgpu_vm_update_directories(struct amdgpu_device *adev,
>>   					   struct amdgpu_vm_bo_base,
>>   					   vm_status);
>>   		bo_base->moved = false;
>> -		list_move(&bo_base->vm_status, &vm->idle);
>> +		list_del_init(&bo_base->vm_status);
>>   
>>   		bo = bo_base->bo->parent;
>>   		if (!bo)
>> -- 
>> 2.14.1
>>
>> _______________________________________________
>> 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