diff mbox

[6/6] drm/amdgpu: pipeline evictions as well

Message ID 1465991045-2328-6-git-send-email-deathsimple@vodafone.de (mailing list archive)
State New, archived
Headers show

Commit Message

Christian König June 15, 2016, 11:44 a.m. UTC
From: Christian König <christian.koenig@amd.com>

This boosts Xonotic from 38fps to 47fps when artificially limiting VRAM to
256MB for testing. It should improve all CPU bound rendering situations
where we have a lot of swapping to/from VRAM.

Signed-off-by: Christian König <christian.koenig@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Alex Deucher June 15, 2016, 4:22 p.m. UTC | #1
On Wed, Jun 15, 2016 at 7:44 AM, Christian König
<deathsimple@vodafone.de> wrote:
> From: Christian König <christian.koenig@amd.com>
>
> This boosts Xonotic from 38fps to 47fps when artificially limiting VRAM to
> 256MB for testing. It should improve all CPU bound rendering situations
> where we have a lot of swapping to/from VRAM.
>
> Signed-off-by: Christian König <christian.koenig@amd.com>

Nice work.  Just a minor typo in the title of patch 4.  For the series:
Reviewed-by: Alex Deucher <alexander.deucher@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 b2b9df6..f85527f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> @@ -286,8 +286,10 @@ static int amdgpu_move_blit(struct ttm_buffer_object *bo,
>         r = amdgpu_copy_buffer(ring, old_start, new_start,
>                                new_mem->num_pages * PAGE_SIZE, /* bytes */
>                                bo->resv, &fence);
> -       /* FIXME: handle copy error */
> -       r = ttm_bo_move_accel_cleanup(bo, fence, evict, new_mem);
> +       if (r)
> +               return r;
> +
> +       r = ttm_bo_pipeline_move(bo, fence, evict, new_mem);
>         fence_put(fence);
>         return r;
>  }
> --
> 2.5.0
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff mbox

Patch

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
index b2b9df6..f85527f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
@@ -286,8 +286,10 @@  static int amdgpu_move_blit(struct ttm_buffer_object *bo,
 	r = amdgpu_copy_buffer(ring, old_start, new_start,
 			       new_mem->num_pages * PAGE_SIZE, /* bytes */
 			       bo->resv, &fence);
-	/* FIXME: handle copy error */
-	r = ttm_bo_move_accel_cleanup(bo, fence, evict, new_mem);
+	if (r)
+		return r;
+
+	r = ttm_bo_pipeline_move(bo, fence, evict, new_mem);
 	fence_put(fence);
 	return r;
 }