[PATCH] drm/amdgpu: always allocate cleared VRAM for GEM allocations

Christian König christian.koenig at amd.com
Fri Aug 23 14:01:14 UTC 2024


Am 23.08.24 um 15:36 schrieb Alex Deucher:
> This adds allocation latency, but aligns better with user
> expectations.  The latency should improve with the drm buddy
> clearing patches that Arun has been working on.

The problem is still that we can't most likely will run into issues with 
some of the bootup time constrains we have.

>
> In addition this fixes the high CPU spikes seen when doing
> wipe on release.

Mhm, interesting.

>
> Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/3528
> Reviewed-by: Michel Dänzer <mdaenzer at redhat.com>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> Cc: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam at amd.com>
> Cc: Christian König <christian.koenig at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 4 ++++
>   1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> index 1f149c9e2177..16af465f1c01 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> @@ -349,6 +349,10 @@ int amdgpu_gem_create_ioctl(struct drm_device *dev, void *data,
>   		return -EINVAL;
>   	}
>   
> +	/* always clear VRAM */
> +	if (args->in.domains & AMDGPU_GEM_DOMAIN_VRAM)

I think we should drop that if. When only GTT is allocated the flag is 
ignored and it can be the we switch the domain later on.

Christian.

> +		flags |= AMDGPU_GEM_CREATE_VRAM_CLEARED;
> +
>   	/* create a gem object to contain this object in */
>   	if (args->in.domains & (AMDGPU_GEM_DOMAIN_GDS |
>   	    AMDGPU_GEM_DOMAIN_GWS | AMDGPU_GEM_DOMAIN_OA)) {



More information about the amd-gfx mailing list