drmtest: add progress indicator

Some test that trash the aperture necessarily need to take forever, so
add a little progress indicator to keep worried minds at peace.

Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Daniel Vetter 2012-01-24 23:18:21 +01:00
parent 7492f97cde
commit 93a65895bb
3 changed files with 18 additions and 0 deletions

View File

@ -358,6 +358,21 @@ void drmtest_permute_array(void *array, unsigned size,
}
}
void drmtest_progress(const char *header, uint64_t i, uint64_t total)
{
if (i+1 >= total) {
fprintf(stderr, "\r%s100%%\n", header,
(long long unsigned) i * 100 / total);
return;
}
/* only bother updating about every 0.5% */
if (i % (total / 200) == 0 || i+1 >= total) {
fprintf(stderr, "\r%s%3llu%%", header,
(long long unsigned) i * 100 / total);
}
}
/* mappable aperture trasher helper */
drm_intel_bo **trash_bos;
int num_trash_bos;

View File

@ -60,6 +60,7 @@ void drmtest_permute_array(void *array, unsigned size,
void (*exchange_func)(void *array,
unsigned i,
unsigned j));
void drmtest_progress(const char *header, uint64_t i, uint64_t total);
/* helpers based upon the libdrm buffer manager */
void drmtest_init_aperture_trashers(drm_intel_bufmgr *bufmgr);

View File

@ -157,8 +157,10 @@ int main(int argc, char **argv)
// leak buffers
//drm_intel_bo_unreference(batch_bo);
drmtest_progress("gem_cs_prefetch: ", i, count);
}
fprintf(stderr, "Test suceeded, cleanup up - this might take a while.\n");
drm_intel_bufmgr_destroy(bufmgr);
close(fd);