On Mon, Sep 7, 2015 at 2:09 PM, Oded Gabbay <[email protected]> wrote:
> On Mon, Sep 7, 2015 at 2:04 PM, Pekka Paalanen <[email protected]> > wrote: > > On Sun, 6 Sep 2015 18:27:07 +0300 > > Oded Gabbay <[email protected]> wrote: > > > >> This patch-set contains optimizations for two existing VMX fast-paths > and a new > >> VMX fast-path function. > >> > >> The optimization ideas came from Siarhei's recent implementation of > over_n_8888 > >> VMX fast path (see > http://lists.freedesktop.org/archives/pixman/2015-September/003951.html). > >> > >> The new function I added is actually one that I already implemented a > couple > >> of months ago, but it produced conflicting results regarding the > performance. > >> However, I now optimized it and it now shows considerable performance > >> improvement over the non-vmx path. > >> > >> The last patch removes many helper functions that caused the less than > stellar > >> performance the current fast-paths provide. I removed them as I don't > want > >> anyone to try and use them, because there are much better alternatives, > as > >> I've demonstrated with this patch-set. > >> > >> Thanks, > >> > >> Oded > >> > >> Oded Gabbay (4): > >> vmx: optimize scaled_nearest_scanline_vmx_8888_8888_OVER > >> vmx: optimize vmx_composite_over_n_8888_8888_ca > >> vmx: implement fast path vmx_composite_over_n_8_8888 > >> vmx: Remove unused expensive functions > >> > >> pixman/pixman-vmx.c | 439 > ++++++++++++++++++---------------------------------- > >> 1 file changed, 150 insertions(+), 289 deletions(-) > >> > > > > Hi Oded, > > > > nice diffstat. :-) > > > > This series is: > > Acked-by: Pekka Paalanen <[email protected]> > > > > I did notice a few minor issues. Patch 1 has a dereference before > > NULL-check, and you sometimes forget the space before an opening > > parenthesis. > > > > I suppose there is no danger of regressing operations you didn't > > touch? ;-) > > > > > > Thanks, > > pq > > HI Pekka, > I run cario benchmark (trimmed) and there was *no* regression. > I don't think optimizing some fast-paths affects other, non-related, > fast-paths. And, of course, I don't think it has *any* impact on non > POWER systems. > However, if someone thinks of a specific other function I need to > check for regression, I'm open for suggestions :) > > Oded > It bugged me that there was no change, neither up nor down in cairo benchmark. So I rechecked it and I had a wrong setup - cairo used the system-installed pixman instead of my pixman. After fixing that, I saw several modest speedups for this patch series: Speedups ======== image t-firefox-scrolling 1232.30 (1237.81 0.40%) -> 1080.17 (1097.06 0.99%): 1.14x speedup image t-gnome-terminal-vim 613.86 (615.04 0.12%) -> 549.73 (551.32 0.13%): 1.12x speedup image t-evolution 405.54 (412.06 0.81%) -> 370.57 (379.11 1.89%): 1.09x speedup image t-gvim 653.02 (655.16 0.16%) -> 615.31 (618.40 1.68%): 1.06x speedup image t-firefox-talos-gfx 919.31 (926.31 0.36%) -> 867.05 (870.01 0.35%): 1.06x speedup I'll add it into the last commit of this patch-set for future references. Oded
_______________________________________________ Pixman mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/pixman
