After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 306029 - gdk-pixbuf/pixops/pixops.c process_pixel() optimization
gdk-pixbuf/pixops/pixops.c process_pixel() optimization
Status: RESOLVED WONTFIX
Product: gdk-pixbuf
Classification: Platform
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2005-05-31 11:53 UTC by Denis Vlasenko
Modified: 2010-07-10 04:08 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Test program (8.27 KB, text/plain)
2005-05-31 11:54 UTC, Denis Vlasenko
  Details
Patch against 2.8.13 (2.25 KB, patch)
2006-05-06 05:36 UTC, Denis Vlasenko
none Details | Review
Updated patch against 2.8.13 (initial q value calculation is moved out of loop) (2.15 KB, patch)
2006-05-09 15:14 UTC, Denis Vlasenko
none Details | Review

Description Denis Vlasenko 2005-05-31 11:53:11 UTC
I have optimized version of process_pixel(). Benchmark result on Celeron 1200
(iterations per second):

Times per sec OLD: 6005 (original code)
Times per sec FIN: 8092 (new code)

Was also tested on Athlon 2000 MHz.

A test program is attached. Please review.
Code can be directly cut-n-pasted from FIN_process_pixel()
into gtk's process_pixel() if you find it worthy.

Test program contains several earlier (less efficient) versions.
Have fun.
Comment 1 Denis Vlasenko 2005-05-31 11:54:48 UTC
Created attachment 47065 [details]
Test program
Comment 2 Behdad Esfahbod 2006-05-05 15:09:19 UTC
Where is the patch?
Comment 3 Denis Vlasenko 2006-05-06 05:36:48 UTC
Created attachment 64904 [details] [review]
Patch against 2.8.13
Comment 4 Denis Vlasenko 2006-05-09 15:14:57 UTC
Created attachment 65096 [details] [review]
Updated patch against 2.8.13 (initial q value calculation is moved out of loop)
Comment 5 Matthias Clasen 2006-12-21 07:39:27 UTC
Optimizing the process_pixel() function is pretty pointless, since it is only used for the edge cases. The bulk of the work happens in the line_func. 

Have you measured any improvement due to your patch ? 
gdk-pixbuf comes with a simple timescale program to measure the performance of various operations.
Comment 6 Matthias Clasen 2008-07-17 05:32:59 UTC
No response in a long time