With profile driven optimizations, trapezoid rasterization is 10-25% faster. It would be great if pixman's build scripts could perform a profiling run (at least for traps) in a new target, so that lazy distributors could get better optimized binaries without any additional effort. ------------------- Long story: I dumped all trapezoids passed to X in a binary file (firefox, kde, gtk apps), and wrote a small benchmark which passes that traps to pixman for rasterization. I guess a small selection of common trapezoids would do it, so that 14mb binary blob isn't required ;) i686/generic/O2: 4.4s (366kib) i686/generic/O3: 4.4s (400kib) native/O3: 4.3s (440kib) i686/generic/O2 + profile: 3.5s i686/generic/O3 + profile: 3.48s native/O3 + profile: 3.35s (296kib) --------------------------- QGears2/O2: ~70fps QGears2/O2+profile ~80fps Because trapezoid rasterization is quite often a bottleneck when using the image backend and is also quite important for RENDER performance it would be great if at least for pixman-edge/pixman-traps a new make target could be added which does a profile-run with some common trapezoids. What I've seen from my tests it doesn't matter if the profile-data matches exactly the real-data, the compiler is quite happy to get some idea how the code works. The tests were run on a Core2Duo 2x2ghz/4mb L2 cache.
I don't think it is useful to keep this bug open when there is no indication that anyone is ever going to work on it.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.