[cairo] problem regarding cairo-gl

Chris Wilson chris at chris-wilson.co.uk
Wed May 20 01:46:35 PDT 2009

On Sun, 2009-05-10 at 12:09 -0700, Eric Anholt wrote:
> - Hook up cairo-trace for cairo-gl so we can capture traces from things
> we actually care about (firefox, swfdec, inkscape, etc.) and profile
> them.  Or do some cairo-traces with xlib and tweak them for use as
> cairogl testcases.

I've added the ability to replay a trace using cairo-gl to
util/cairo-script/csi-replay. [The original aim of the patch was to look
at cairo-gl using eagle so there is a lot of churn to split glx/egl from
cairo-gl-surface.c, with the additional of simpler testers and replay
almost an afterthought. The addition to csi-replay.c is trivial and can
easily be split out.]


Using cairo-trace/replay should be as easy as:
$ cairo-trace --no-callers --no-mark-dirty firefox
$ util/cairo-script/csi-replay --glx firefox.$pid.trace

Disabling the caller info and mark-dirty keeps the trace clear of
redundant (and expensive!) data which both improves the performance of
the replay (and avoids distorting the profile) and keeps firefox usable
whilst tracing.

Alternatively, the patch adds util/cairo-script/csi-glx which updates a
window after every cairo_destroy() and so provides a bit of visual

More information about the cairo mailing list