[cairo] Optimizing cairo + pixman [ was: Fwd: cairo+pixman profiling

Nguyen Vu Hung vuhung16plus at gmail.com
Wed Nov 7 23:52:27 PST 2007

Hi all,

As mentioned in my previous email, the bottleneck of cairo + pixman
falls into fbRasterizeEdges ( pixman ) and  unpremultiply_data ( cairo

I want to optimizing them: make them faster.

What can I do? can gcc's -mmmx and -msse make anything faster?

Would it be faster if I write those two functions using inline assembler?

---------- Forwarded message ----------
From: Nguyen Vu Hung <vuhung16plus at gmail.com>
Date: 2007/11/06 12:03
Subject: cairo+pixman profiling
To: cairo at cairographics.org

Hi all,

I've tried profiling my application with gdprof. You can see the
result at the end of this email.

My questions are:

1. Where fbRasterizeEdges and other cairo_pixman_* are called inside
cairo? How do I optimize them?

2. Where unpremultiply_data is callled? What this function does?

BTW, because I am new to profiling and performance optimization,
suggests and comments are appreciated.

  20.12    267.68   267.68                             fbRasterizeEdges
  7.18    776.12    95.46
  4.23    832.34    56.22                             unpremultiply_data

Best Regards,
Nguyen Hung Vu
An inquisitive look at Harajuku

More information about the cairo mailing list