boilerplate/gl: Disable thread awareness

This dramatically speeds up testing on NVidia and actually makes it
possible to run traces within a reasonable amount of time.

cairo-perf-trace results for:
NVIDIA Corporation GeForce GTS 250/PCIe/SSE2 3.3.0 NVIDIA 310.14

Before:
test              min(s)  median(s) stddev. count
gvim              30.924  31.251    0.72%   5/6
firefox-fishbowl  168.751 201.017   12.46%  8/8
(exited early)

After:
test              min(s)  median(s) stddev. count
gvim              1.294   1.325     1.79%   6/6
firefox-fishbowl  18.540  19.104    1.54%   6/6
This commit is contained in:
Martin Robinson 2013-03-29 11:09:48 -07:00
parent b00b9e82ab
commit f6efecdfef
2 changed files with 5 additions and 0 deletions

View file

@ -130,6 +130,8 @@ _cairo_boilerplate_egl_create_surface (const char *name,
}
gltc->device = cairo_egl_device_create (gltc->dpy, gltc->ctx);
if (mode == CAIRO_BOILERPLATE_MODE_PERF)
cairo_gl_device_set_thread_aware(gltc->device, FALSE);
if (width < 1)
width = 1;

View file

@ -135,6 +135,9 @@ _cairo_boilerplate_gl_create_surface (const char *name,
gltc->ctx = ctx;
gltc->device = cairo_glx_device_create (dpy, ctx);
if (mode == CAIRO_BOILERPLATE_MODE_PERF)
cairo_gl_device_set_thread_aware(gltc->device, FALSE);
gltc->surface = surface = cairo_gl_surface_create (gltc->device,
content, width, height);
if (cairo_surface_status (surface))