[igt-dev] [PATCH i-g-t 1/1] tests/kms_rotation_crc: multiplane-rotation* faster

Caz Yokoyama caz.yokoyama at intel.com
Wed Apr 3 19:11:04 UTC 2019


by rotating 1/4 of data.

The test rotated 20% horizontally, 40% vertically of 1920x1200 display
plane. This patch makes them 10% and 20% respectively.

paint_squares(), igt_display_try_commit2() and igt_pipe_crc_current()
consume 99% of whole test. By this patch, paint_squares() and
igt_display_try_commit2() run 42% faster. Remaining igt_pipe_crc_current()
runs same because it is synchronized with vsync.
multiplane-rotation-cropping-bottom sub test runs 22% faster.

Signed-off-by: Caz Yokoyama <caz.yokoyama at intel.com>
Cc: Chris Wilson <chris at chris-wilson.co.uk>
---
 tests/kms_rotation_crc.c | 48 ++++++++++++++++++++--------------------
 1 file changed, 24 insertions(+), 24 deletions(-)

diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index fc995d07..e0ba83da 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -534,18 +534,18 @@ static void test_multi_plane_rotation(data_t *data, enum pipe pipe)
 		float_t height;
 		uint64_t tiling;
 	} planeconfigs[] = {
-	{IGT_ROTATION_0, .2f, .4f, LOCAL_DRM_FORMAT_MOD_NONE },
-	{IGT_ROTATION_0, .2f, .4f, LOCAL_I915_FORMAT_MOD_X_TILED },
-	{IGT_ROTATION_0, .2f, .4f, LOCAL_I915_FORMAT_MOD_Y_TILED },
-	{IGT_ROTATION_0, .2f, .4f, LOCAL_I915_FORMAT_MOD_Yf_TILED },
-	{IGT_ROTATION_90, .2f, .4f, LOCAL_I915_FORMAT_MOD_Y_TILED },
-	{IGT_ROTATION_90, .2f, .4f, LOCAL_I915_FORMAT_MOD_Yf_TILED },
-	{IGT_ROTATION_180, .2f, .4f, LOCAL_DRM_FORMAT_MOD_NONE },
-	{IGT_ROTATION_180, .2f, .4f, LOCAL_I915_FORMAT_MOD_X_TILED },
-	{IGT_ROTATION_180, .2f, .4f, LOCAL_I915_FORMAT_MOD_Y_TILED },
-	{IGT_ROTATION_180, .2f, .4f, LOCAL_I915_FORMAT_MOD_Yf_TILED },
-	{IGT_ROTATION_270, .2f, .4f, LOCAL_I915_FORMAT_MOD_Y_TILED },
-	{IGT_ROTATION_270, .2f, .4f, LOCAL_I915_FORMAT_MOD_Yf_TILED },
+	{IGT_ROTATION_0, .1f, .2f, LOCAL_DRM_FORMAT_MOD_NONE },
+	{IGT_ROTATION_0, .1f, .2f, LOCAL_I915_FORMAT_MOD_X_TILED },
+	{IGT_ROTATION_0, .1f, .2f, LOCAL_I915_FORMAT_MOD_Y_TILED },
+	{IGT_ROTATION_0, .1f, .2f, LOCAL_I915_FORMAT_MOD_Yf_TILED },
+	{IGT_ROTATION_90, .1f, .2f, LOCAL_I915_FORMAT_MOD_Y_TILED },
+	{IGT_ROTATION_90, .1f, .2f, LOCAL_I915_FORMAT_MOD_Yf_TILED },
+	{IGT_ROTATION_180, .1f, .2f, LOCAL_DRM_FORMAT_MOD_NONE },
+	{IGT_ROTATION_180, .1f, .2f, LOCAL_I915_FORMAT_MOD_X_TILED },
+	{IGT_ROTATION_180, .1f, .2f, LOCAL_I915_FORMAT_MOD_Y_TILED },
+	{IGT_ROTATION_180, .1f, .2f, LOCAL_I915_FORMAT_MOD_Yf_TILED },
+	{IGT_ROTATION_270, .1f, .2f, LOCAL_I915_FORMAT_MOD_Y_TILED },
+	{IGT_ROTATION_270, .1f, .2f, LOCAL_I915_FORMAT_MOD_Yf_TILED },
 	};
 
 	/*
@@ -842,11 +842,11 @@ igt_main
 		igt_require(gen >= 9);
 		cleanup_crtc(&data);
 		data.planepos[0].origo = p_top | p_left;
-		data.planepos[0].x = .2f;
-		data.planepos[0].y = .1f;
+		data.planepos[0].x = .1f;
+		data.planepos[0].y = .05f;
 		data.planepos[1].origo = p_top | p_right;
-		data.planepos[1].x = -.4f;
-		data.planepos[1].y = .1f;
+		data.planepos[1].x = -.2f;
+		data.planepos[1].y = .05f;
 		test_multi_plane_rotation(&data, 0);
 	}
 
@@ -854,11 +854,11 @@ igt_main
 		igt_require(gen >= 9);
 		cleanup_crtc(&data);
 		data.planepos[0].origo = p_top | p_left;
-		data.planepos[0].x = -.05f;
-		data.planepos[0].y = -.15f;
+		data.planepos[0].x = -.025f;
+		data.planepos[0].y = -.075f;
 		data.planepos[1].origo = p_top | p_right;
-		data.planepos[1].x = -.15f;
-		data.planepos[1].y = -.15f;
+		data.planepos[1].x = -.075f;
+		data.planepos[1].y = -.075f;
 		test_multi_plane_rotation(&data, 0);
 	}
 
@@ -866,11 +866,11 @@ igt_main
 		igt_require(gen >= 9);
 		cleanup_crtc(&data);
 		data.planepos[0].origo = p_bottom | p_left;
-		data.planepos[0].x = -.05f;
-		data.planepos[0].y = -.20f;
+		data.planepos[0].x = -.025f;
+		data.planepos[0].y = -.10f;
 		data.planepos[1].origo = p_bottom | p_right;
-		data.planepos[1].x = -.15f;
-		data.planepos[1].y = -.20f;
+		data.planepos[1].x = -.075f;
+		data.planepos[1].y = -.10f;
 		test_multi_plane_rotation(&data, 0);
 	}
 
-- 
2.17.1



More information about the igt-dev mailing list