Whilst investigating bug 5242 I discovered that there is a performance issue with our libjpeg compared to Fedora 21's. Decoding the file googleearth-rgb-24.rfb takes 1.45 seconds with a static build, and 1.04 with a dynamic build (i.e. using Fedora's libraries). gprof on the static build shows that almost all the time is spent inside libjpeg, so I doubt it's one of the other libraries that affects things.
Apparently we weren't building libjpeg with -O2 which is the cause of the performance difference. Should be easy enough to fix. I'll be upgrading to 1.4.0 at the same time though as I already tested that to see if it was the version difference that caused problems.
Fixed by doing bug 4929. Upgrade in r29941 (by accident).
I have tried to record a rfb stream using rfbproxy etc. but I have no idea how to continue doing a test as described. Can the someone write down steps to produce a rfb file and how to decode/playback and measure the performance.
Testing during normal usage is sufficient. We don't ship the raw test tools.
Verified that building of libjpeg package is using -O2 flag and that the upgrade to 1.4.0 didn't introduced any artifacts or other problems. I just averaged cpu usage from top with following result: fc21 - 14.6% tl build 4746 - 14.6% tl 4.3.0 - 18.0% Which indicates a performance increase. Closing.