gem_linear_blits: Minor enhancements
authorChris Wilson <chris@chris-wilson.co.uk>
Sat, 5 Feb 2011 10:09:38 +0000 (10:09 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Sun, 6 Feb 2011 10:10:52 +0000 (10:10 +0000)
Include a simple series of blits that exhaust the aperture but have the
maximum grace time between reuse.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
tests/gem_linear_blits.c

index 433f550..cfa45d7 100644 (file)
@@ -254,6 +254,33 @@ int main(int argc, char **argv)
                start += 1024 * 1024 / 4;
        }
 
+       printf("Verifying initialisation...\n");
+       for (i = 0; i < count; i++)
+               check_bo(fd, handle[i], start_val[i]);
+
+       printf("Cyclic blits, forward...\n");
+       for (i = 0; i < count * 4; i++) {
+               int src = i % count;
+               int dst = (i + 1) % count;
+
+               copy(fd, handle[dst], handle[src]);
+               start_val[dst] = start_val[src];
+       }
+       for (i = 0; i < count; i++)
+               check_bo(fd, handle[i], start_val[i]);
+
+       printf("Cyclic blits, backward...\n");
+       for (i = 0; i < count * 4; i++) {
+               int src = (i + 1) % count;
+               int dst = i % count;
+
+               copy(fd, handle[dst], handle[src]);
+               start_val[dst] = start_val[src];
+       }
+       for (i = 0; i < count; i++)
+               check_bo(fd, handle[i], start_val[i]);
+
+       printf("Random blits...\n");
        for (i = 0; i < count * 4; i++) {
                int src = random() % count;
                int dst = random() % count;
@@ -264,7 +291,6 @@ int main(int argc, char **argv)
                copy(fd, handle[dst], handle[src]);
                start_val[dst] = start_val[src];
        }
-
        for (i = 0; i < count; i++)
                check_bo(fd, handle[i], start_val[i]);