Speed up coverage-column-triangles test

This commit changes the height of the coverage-column-triangles test by
using a smaller height for the test. Previously the image was 40 pixels
in height and the test took 517 seconds for me. Now, the image has a
height of 4 pixels and the test takes 55 seconds.

This is possible since column_triangles() does the same thing for each y
coordinate. Thus, previously this test just did the same thing 40 times.

Times are measured with the backends I happened to have enabled locally:
script, xcb, xlib, image, recording.

Thanks a lot to Christian Rohlfs for coming up with this idea in
https://gitlab.freedesktop.org/cairo/cairo/-/issues/498#note_1700197

Possibly-fixes: https://gitlab.freedesktop.org/cairo/cairo/-/issues/498
Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
Uli Schlachter 2022-12-30 16:36:22 +01:00
parent 35f2610f4d
commit 8d74c4d019
4 changed files with 2 additions and 1 deletions

View file

@ -491,7 +491,8 @@ CAIRO_TEST (coverage_column_triangles,
"Check the fidelity of the rasterisation.",
NULL, /* keywords */
"target=raster", /* requirements */
WIDTH, HEIGHT,
/* Smaller height since this test does not vary by y-coordinate */
WIDTH, 4,
NULL, column_triangles)
CAIRO_TEST (coverage_triangles,
"Check the fidelity of the rasterisation.",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 B

After

Width:  |  Height:  |  Size: 886 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 560 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB