[CI] drm/xe: Attempt to reduce execution time for the xe_bo_shrink dynamic test

Thomas Hellström thomas.hellstrom at linux.intel.com
Thu Sep 19 16:51:22 UTC 2024


Signed-off-by: Thomas Hellström <thomas.hellstrom at linux.intel.com>
---
 drivers/gpu/drm/xe/tests/xe_bo.c | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/drivers/gpu/drm/xe/tests/xe_bo.c b/drivers/gpu/drm/xe/tests/xe_bo.c
index 7d3fd720478b..9aa6d30345e4 100644
--- a/drivers/gpu/drm/xe/tests/xe_bo.c
+++ b/drivers/gpu/drm/xe/tests/xe_bo.c
@@ -440,7 +440,7 @@ static int shrink_test_run_device(struct xe_device *xe)
 	LIST_HEAD(bos);
 	struct xe_bo_link *link, *next;
 	struct sysinfo si;
-	size_t ram, ram_and_swap, purgeable, alloced, to_alloc, limit;
+	size_t ram, ram_and_swap, purgeable, alloced, to_alloc;
 	unsigned int interrupted = 0, successful = 0, count = 0;
 	struct rnd_state prng;
 	u64 rand_seed;
@@ -451,25 +451,18 @@ static int shrink_test_run_device(struct xe_device *xe)
 	kunit_info(test, "Random seed is 0x%016llx.\n",
 		   (unsigned long long)rand_seed);
 
-	/* Skip if execution time is expected to be too long. */
-
-	limit = SZ_32G;
-	/* IGFX with flat CCS needs to copy when swapping / shrinking */
-	if (!IS_DGFX(xe) && xe_device_has_flat_ccs(xe))
-		limit = SZ_16G;
-
 	si_meminfo(&si);
 	ram = (size_t)si.freeram * si.mem_unit;
-	if (ram > limit) {
-		kunit_skip(test, "Too long expected execution time.\n");
-		return 0;
-	}
 	to_alloc = ram * 2;
 
-	ram_and_swap = ram + get_nr_swap_pages() * PAGE_SIZE;
+	ram_and_swap = get_nr_swap_pages() * PAGE_SIZE;
+	/* Don't use more that 4G swap to save execution time. */
+	ram_and_swap = min_t(size_t, ram_and_swap, SZ_4G);
+	ram_and_swap += ram;
+	purgeable = 0;
 	if (to_alloc > ram_and_swap)
 		purgeable = to_alloc - ram_and_swap;
-	purgeable += purgeable / 5;
+	purgeable += to_alloc / 128;
 
 	kunit_info(test, "Free ram is %lu bytes. Will allocate twice of that.\n",
 		   (unsigned long)ram);
-- 
2.46.0



More information about the Intel-xe mailing list