[PATCH 2/2] drm/amdkfd: use GTT for VRAM on APUs only if GTT is larger
Alex Deucher
alexdeucher at gmail.com
Fri Jan 31 17:17:18 UTC 2025
On Fri, Jan 31, 2025 at 12:13 PM Philip Yang <yangp at amd.com> wrote:
>
>
> On 2025-01-30 15:51, Alex Deucher wrote:
>
> If the user has configured a large carveout on a small APU,
> only use GTT for VRAM allocations if GTT is larger than
> VRAM.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> index 9d2a3e2ad9df5..96ec26946db60 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> @@ -1985,8 +1985,10 @@ int amdgpu_ttm_init(struct amdgpu_device *adev)
> DRM_INFO("amdgpu: %uM of GTT memory ready.\n",
> (unsigned int)(gtt_size / (1024 * 1024)));
>
> - if (adev->flags & AMD_IS_APU)
> - adev->apu_prefer_gtt = true;
> + if (adev->flags & AMD_IS_APU) {
> + if (adev->gmc.real_vram_size >= gtt_size)
>
> This will not work for MI300 large APU, maybe the condition should be reversed
>
> + if (adev->gmc.real_vram_size < gtt_size)
yes, sorry, I reversed the check.
Alex
>
> Regards,
> Philip
>
> + adev->apu_prefer_gtt = true;
> + }
>
> /* Initialize doorbell pool on PCI BAR */
> r = amdgpu_ttm_init_on_chip(adev, AMDGPU_PL_DOORBELL, adev->doorbell.size / PAGE_SIZE);
More information about the amd-gfx
mailing list