Reviewed-by: Christian König <[email protected]>

Am 22.03.2018 um 16:03 schrieb Marek Olšák:
From: Marek Olšák <[email protected]>

---
  src/gallium/winsys/amdgpu/drm/amdgpu_bo.c | 12 +++++-------
  1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_bo.c 
b/src/gallium/winsys/amdgpu/drm/amdgpu_bo.c
index 7740b46b7b9..22b5a73143d 100644
--- a/src/gallium/winsys/amdgpu/drm/amdgpu_bo.c
+++ b/src/gallium/winsys/amdgpu/drm/amdgpu_bo.c
@@ -402,28 +402,26 @@ static struct amdgpu_winsys_bo *amdgpu_create_bo(struct 
amdgpu_winsys *ws,
                            heap);
     }
     request.alloc_size = size;
     request.phys_alignment = alignment;
if (initial_domain & RADEON_DOMAIN_VRAM)
        request.preferred_heap |= AMDGPU_GEM_DOMAIN_VRAM;
     if (initial_domain & RADEON_DOMAIN_GTT)
        request.preferred_heap |= AMDGPU_GEM_DOMAIN_GTT;
- /* If VRAM is just stolen system memory, allow both VRAM and
-    * GTT, whichever has free space. If a buffer is evicted from
-    * VRAM to GTT, it will stay there.
-    *
-    * DRM 3.6.0 has good BO move throttling, so we can allow VRAM-only
-    * placements even with a low amount of stolen VRAM.
+   /* Since VRAM and GTT have almost the same performance on APUs, we could
+    * just set GTT. However, in order to decrease GTT(RAM) usage, which is
+    * shared with the OS, allow VRAM placements too. The idea is not to use
+    * VRAM usefully, but to use it so that it's not unused and wasted.
      */
-   if (!ws->info.has_dedicated_vram && ws->info.drm_minor < 6)
+   if (!ws->info.has_dedicated_vram)
        request.preferred_heap |= AMDGPU_GEM_DOMAIN_GTT;
if (flags & RADEON_FLAG_NO_CPU_ACCESS)
        request.flags |= AMDGPU_GEM_CREATE_NO_CPU_ACCESS;
     if (flags & RADEON_FLAG_GTT_WC)
        request.flags |= AMDGPU_GEM_CREATE_CPU_GTT_USWC;
     if (flags & RADEON_FLAG_NO_INTERPROCESS_SHARING &&
         ws->info.has_local_buffers)
        request.flags |= AMDGPU_GEM_CREATE_VM_ALWAYS_VALID;

_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to