summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDamien Lespiau <damien.lespiau@intel.com>2013-03-25 20:06:20 +0000
committerDamien Lespiau <damien.lespiau@intel.com>2013-07-18 15:56:35 +0100
commitd1e862324b747a0ab5d985eaa6830076817231c5 (patch)
tree785a192f9b79be28c5ead01f50cf1ba40dc281b2 /tests
parent5fa15f79d00ba4f51f35cb83cf2e82a9460b60b2 (diff)
tests: Instrument tests run in simulation to run quickly
We tweak the tests marked as runnable in simulation to run more quickly, more often then not at the expense of stress testing (which is of an arguable interest for the initial bring up in simulation). Hopefully the values chosen still test something, which is not always straightforward. It does run quickly, the number on an IVB machines are: $ time sudo IGT_SIMULATION=0 ./piglit-run.py tests/igt.tests foo [...] real 2m0.141s user 0m16.365s sys 1m33.382s Vs. $ time sudo IGT_SIMULATION=1 ./piglit-run.py tests/igt.tests foo [...] real 0m0.448s user 0m0.226s sys 0m0.183s Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/gem_cpu_reloc.c3
-rw-r--r--tests/gem_ctx_basic.c5
-rw-r--r--tests/gem_exec_nop.c2
-rw-r--r--tests/gem_mmap_gtt.c5
-rw-r--r--tests/gem_pipe_control_store_loop.c2
-rw-r--r--tests/gem_render_linear_blits.c6
-rw-r--r--tests/gem_ring_sync_loop.c2
-rw-r--r--tests/gem_storedw_batches_loop.c8
-rw-r--r--tests/gem_storedw_loop_blt.c6
-rw-r--r--tests/gem_storedw_loop_bsd.c6
-rw-r--r--tests/gem_storedw_loop_render.c6
-rw-r--r--tests/gem_tiled_blits.c5
12 files changed, 43 insertions, 13 deletions
diff --git a/tests/gem_cpu_reloc.c b/tests/gem_cpu_reloc.c
index baf83015..ad70e40d 100644
--- a/tests/gem_cpu_reloc.c
+++ b/tests/gem_cpu_reloc.c
@@ -153,6 +153,9 @@ int main(int argc, char **argv)
}
count = aper_size / 4096 * 2;
+ if (drmtest_run_in_simulation())
+ count = 10;
+
handles = malloc (count * sizeof(uint32_t));
assert(handles);
diff --git a/tests/gem_ctx_basic.c b/tests/gem_ctx_basic.c
index 3757d847..729c79c0 100644
--- a/tests/gem_ctx_basic.c
+++ b/tests/gem_ctx_basic.c
@@ -143,6 +143,11 @@ int main(int argc, char *argv[])
fd = drm_open_any();
devid = intel_get_drm_devid(fd);
+ if (drmtest_run_in_simulation()) {
+ num_contexts = 2;
+ iter = 4;
+ }
+
parse(argc, argv);
threads = calloc(num_contexts, sizeof(*threads));
diff --git a/tests/gem_exec_nop.c b/tests/gem_exec_nop.c
index 58884324..35cb23d6 100644
--- a/tests/gem_exec_nop.c
+++ b/tests/gem_exec_nop.c
@@ -96,7 +96,7 @@ static void loop(int fd, uint32_t handle, unsigned ring_id, const char *ring_nam
skipped_all = false;
- for (count = 1; count <= 1<<17; count <<= 1) {
+ for (count = 1; count <= SLOW_QUICK(1<<17, 1<<4); count <<= 1) {
struct timeval start, end;
gettimeofday(&start, NULL);
diff --git a/tests/gem_mmap_gtt.c b/tests/gem_mmap_gtt.c
index d759340d..e53a942a 100644
--- a/tests/gem_mmap_gtt.c
+++ b/tests/gem_mmap_gtt.c
@@ -40,7 +40,7 @@
#include "i915_drm.h"
#include "drmtest.h"
-#define OBJECT_SIZE (16*1024*1024)
+static int OBJECT_SIZE = 16*1024*1024;
static void set_domain(int fd, uint32_t handle)
{
@@ -148,6 +148,9 @@ int main(int argc, char **argv)
{
int fd;
+ if (drmtest_run_in_simulation())
+ OBJECT_SIZE = 1 * 1024 * 1024;
+
drmtest_subtest_init(argc, argv);
fd = drm_open_any();
diff --git a/tests/gem_pipe_control_store_loop.c b/tests/gem_pipe_control_store_loop.c
index e03cddd7..af6a7581 100644
--- a/tests/gem_pipe_control_store_loop.c
+++ b/tests/gem_pipe_control_store_loop.c
@@ -70,7 +70,7 @@ store_pipe_control_loop(void)
uint32_t *buf;
drm_intel_bo *target_bo;
- for (i = 0; i < 0x10000; i++) {
+ for (i = 0; i < SLOW_QUICK(0x10000, 4); i++) {
/* we want to check tlb consistency of the pipe_control target,
* so get a new buffer every time around */
target_bo = drm_intel_bo_alloc(bufmgr, "target bo", 4096, 4096);
diff --git a/tests/gem_render_linear_blits.c b/tests/gem_render_linear_blits.c
index a7e01893..c94f4517 100644
--- a/tests/gem_render_linear_blits.c
+++ b/tests/gem_render_linear_blits.c
@@ -81,8 +81,11 @@ int main(int argc, char **argv)
batch = intel_batchbuffer_alloc(bufmgr, intel_get_drm_devid(fd));
count = 0;
+ if (drmtest_run_in_simulation())
+ count = 2;
if (argc > 1)
count = atoi(argv[1]);
+
if (count == 0)
count = 3 * gem_aperture_size(fd) / SIZE / 2;
else if (count < 2) {
@@ -127,6 +130,9 @@ int main(int argc, char **argv)
for (i = 0; i < count; i++)
check_bo(fd, bo[i]->handle, start_val[i]);
+ if (drmtest_run_in_simulation())
+ return 0;
+
printf("Cyclic blits, backward...\n");
for (i = 0; i < count * 4; i++) {
struct scratch_buf src, dst;
diff --git a/tests/gem_ring_sync_loop.c b/tests/gem_ring_sync_loop.c
index af40590c..b111275b 100644
--- a/tests/gem_ring_sync_loop.c
+++ b/tests/gem_ring_sync_loop.c
@@ -63,7 +63,7 @@ store_dword_loop(int fd)
srandom(0xdeadbeef);
- for (i = 0; i < 0x100000; i++) {
+ for (i = 0; i < SLOW_QUICK(0x100000, 10); i++) {
int ring = random() % num_rings + 1;
if (ring == I915_EXEC_RENDER) {
diff --git a/tests/gem_storedw_batches_loop.c b/tests/gem_storedw_batches_loop.c
index 79eebb27..3b255243 100644
--- a/tests/gem_storedw_batches_loop.c
+++ b/tests/gem_storedw_batches_loop.c
@@ -60,7 +60,7 @@ store_dword_loop(int divider)
if (!has_ppgtt)
cmd |= MI_MEM_VIRTUAL;
- for (i = 0; i < SLOW_QUICK(0x80000, 0x10); i++) {
+ for (i = 0; i < SLOW_QUICK(0x80000, 4); i++) {
cmd_bo = drm_intel_bo_alloc(bufmgr, "cmd bo", 4096, 4096);
if (!cmd_bo) {
fprintf(stderr, "failed to alloc cmd bo\n");
@@ -172,8 +172,10 @@ int main(int argc, char **argv)
store_dword_loop(1);
store_dword_loop(2);
- store_dword_loop(3);
- store_dword_loop(5);
+ if (!drmtest_run_in_simulation()) {
+ store_dword_loop(3);
+ store_dword_loop(5);
+ }
drm_intel_bo_unreference(target_bo);
drm_intel_bufmgr_destroy(bufmgr);
diff --git a/tests/gem_storedw_loop_blt.c b/tests/gem_storedw_loop_blt.c
index cacae3a8..279d4773 100644
--- a/tests/gem_storedw_loop_blt.c
+++ b/tests/gem_storedw_loop_blt.c
@@ -150,8 +150,10 @@ int main(int argc, char **argv)
store_dword_loop(1);
store_dword_loop(2);
- store_dword_loop(3);
- store_dword_loop(5);
+ if (!drmtest_run_in_simulation()) {
+ store_dword_loop(3);
+ store_dword_loop(5);
+ }
drm_intel_bo_unreference(target_buffer);
intel_batchbuffer_free(batch);
diff --git a/tests/gem_storedw_loop_bsd.c b/tests/gem_storedw_loop_bsd.c
index 232c3a62..d9046d69 100644
--- a/tests/gem_storedw_loop_bsd.c
+++ b/tests/gem_storedw_loop_bsd.c
@@ -156,8 +156,10 @@ int main(int argc, char **argv)
store_dword_loop(1);
store_dword_loop(2);
- store_dword_loop(3);
- store_dword_loop(5);
+ if (!drmtest_run_in_simulation()) {
+ store_dword_loop(3);
+ store_dword_loop(5);
+ }
drm_intel_bo_unreference(target_buffer);
intel_batchbuffer_free(batch);
diff --git a/tests/gem_storedw_loop_render.c b/tests/gem_storedw_loop_render.c
index fe098343..e37ee701 100644
--- a/tests/gem_storedw_loop_render.c
+++ b/tests/gem_storedw_loop_render.c
@@ -144,8 +144,10 @@ int main(int argc, char **argv)
store_dword_loop(1);
store_dword_loop(2);
- store_dword_loop(3);
- store_dword_loop(5);
+ if (!drmtest_run_in_simulation()) {
+ store_dword_loop(3);
+ store_dword_loop(5);
+ }
drm_intel_bo_unreference(target_buffer);
intel_batchbuffer_free(batch);
diff --git a/tests/gem_tiled_blits.c b/tests/gem_tiled_blits.c
index 4a825d91..b879b1cd 100644
--- a/tests/gem_tiled_blits.c
+++ b/tests/gem_tiled_blits.c
@@ -150,6 +150,9 @@ static void run_test(int count)
for (i = 0; i < count; i++)
check_bo(bo[i], bo_start_val[i]);
+ if (drmtest_run_in_simulation())
+ return;
+
printf("Cyclic blits, backward...\n");
for (i = 0; i < count * 4; i++) {
int src = (i+1) % count;
@@ -192,6 +195,8 @@ int main(int argc, char **argv)
fd = drm_open_any();
if (!drmtest_only_list_subtests()) {
+ if (drmtest_run_in_simulation())
+ count = 2;
if (argc > 1)
count = atoi(argv[1]);
if (count == 0) {