[cairo] Cairo traces for analysis: hints on improving performance?

Oliver Kaleske Oliver.Kaleske at ptvgroup.com
Fri Oct 17 04:12:22 PDT 2014

Dear Cairo experts,

my team and I are currently exploring the use of either Cairo or Skia as a replacement for an older graphics backend in one of our products. In terms of image quality, we're quite content with the present results using either engine. However, performance is crucial, and in this respect the results are not quite satisfactory yet. At the current stage of our analysis, Skia appears to be quite a bit faster for our purposes. (We are aware of the Caskbench test suite and the results published by Samsung, but we need specific results for our use case.)

The Cairo FAQ invites users to provide a cairo-trace. I hope that this offer still stands and would appreciate it very much if some of you cared to take a look at our traces which are available at https://ptvbox.ptvgroup.com/public.php?service=files&t=9ac2aabdb5a4bfeb6a82d7d9b00baa52 (a dropbox-ish public folder) and share your insights. It may well be that we are using Cairo in a terribly inefficient way; after all, we're still pretty new to it.

Some background info: Our key use case is map rendering. The traces therefore correspond to rendering a few different map sections; labels are currently left out for simplicity. You may notice that there are paths which never get rendered because they are off-image. This does cost some performance, but the same data is provided to Cairo and Skia, so both have to struggle equally.

In the output, you will also notice artifacts resulting from tiled input data. If this is a common issue with a standard solution (like choosing a different drawing operator), a hint would be appreciated; but this is currently not our main concern as we're confident to resolve it one way or another.

As written above, performance results to date favour Skia (for our application). On the other hand, we prefer Cairo when it comes to API complexity, documentation, build and integration efforts, so any feedback that will help us improve Cairo's performance is welcome. The traces provided should present sufficiently typical examples of our use case.

Legal remark: the map data contains copyrighted material and may only be used for the performance analysis in question. (See __LEGAL.txt in the shared folder for details.)

Best regards and thanks in advance

Oliver Kaleske

PS. Congratulations on the latest release.

Dipl.-Phys. Oliver Kaleske
Logistics Geographic Components

Haid-und-Neu-Straße 15
76131 Karlsruhe, Germany

Phone +49 (0) 721 9651-8211
oliver.kaleske at ptvgroup.com

PTV Planung Transport Verkehr AG
Headquarters: Karlsruhe
Executive Board: Vincent Kobesen (CEO)
Chairman of the Supervisory Board: Dr. h.c. Frank-Jürgen Weise
Commercial Register (HRB-Nr): 109262
Local Court: Mannheim

More information about the cairo mailing list