Revert "winsys/amdgpu: overallocate buffers for faster address translation on Gfx9"
authorMarek Olšák <marek.olsak@amd.com>
Thu, 29 Nov 2018 19:45:42 +0000 (14:45 -0500)
committerMarek Olšák <marek.olsak@amd.com>
Thu, 29 Nov 2018 19:46:06 +0000 (14:46 -0500)
I didn't mean to push this. I don't think it makes any difference.

This reverts commit f737fe00a047ae1ae9ec4e15a4ea8b578389f2f6.

src/gallium/winsys/amdgpu/drm/amdgpu_bo.c

index b24f90674d7834347bdfd3e0e3b7b40f96bbe885..58979bd4ea785c4e5e42052d73f185504e81ad6c 100644 (file)
@@ -466,30 +466,6 @@ static struct amdgpu_winsys_bo *amdgpu_create_bo(struct amdgpu_winsys *ws,
                                           RADEON_DOMAIN_GDS |
                                           RADEON_DOMAIN_OA)) == 1);
 
-   /* Gfx9: Overallocate the size to the next power of two for faster address
-    * translation if we don't waste too much memory.
-    */
-   if (ws->info.chip_class >= GFX9) {
-      uint64_t next_pot_size = util_next_power_of_two64(size);
-
-      /* For slightly lower than 4 GB allocations, at most 32 MB are wasted.
-       * For slightly lower than 256 MB allocations, at most 2 MB are wasted.
-       * For slightly lower than 64 MB allocations, at most 512 KB are wasted.
-       *
-       * Waste at most 0.79% (1/127) of the size if we decide to overallocate.
-       */
-      uint64_t max_overalloc = next_pot_size >> 7;
-
-      /* If the next power-of-two size is <= the page size, waste up to
-       * 6.25% (1/16) of the size if we decide to overallocate.
-       */
-      if (next_pot_size <= ws->info.pte_fragment_size)
-         max_overalloc = next_pot_size >> 4;
-
-      if (size + max_overalloc >= next_pot_size)
-         size = next_pot_size;
-   }
-
    bo = CALLOC_STRUCT(amdgpu_winsys_bo);
    if (!bo) {
       return NULL;