[Pixman] [PATCH 0/5] ARMv6: New fast path implementations that utilise prefetch
Siarhei Siamashka
siarhei.siamashka at gmail.com
Tue Jan 29 12:18:33 PST 2013
On Sat, 19 Jan 2013 16:16:48 +0000
Ben Avison <bavison at riscosopen.org> wrote:
> This is a presentation of the changes I first presented on
> 2012-12-21, with the improvements from my 2013-01-14 patch series
> merged in, and with further adjustments to the prefetch distance for
> src_8888_8888 and src_0565_0565 which improve the L2
> lowlevel-blt-bench results (without adversely affecting the other
> tests) to the extent that there are no longer any statistically
> significant performance regressions in any lowlevel-blt-bench tests.
>
> The diffs have been broken up in a way that no longer represents the
> development process, but which will hopefully be easier to inspect
> by looking at the patches in isolation.
[...]
> Ben Avison (5):
> ARMv6: Lay the groundwork for later patches in the series
> ARMv6: New fill routines
> ARMv6: New blit routines
> ARMv6: New conversion routines
> ARMv6: Replacement add_8_8, over_8888_8888, over_8888_n_8888
> and over_n_8_8888 routines
Thanks. Pushed the series to pixman git (with the second revision of
the first patch with more comments).
As a bonus, here are also the cairo-perf-trace results with the trimmed
traces on Cortex-A9 1.7GHz (unfortunately not Tegra2, where this test
would have been more relevant). I understand that Cortex-A9 was not the
primary target for this patchset, but it's still good to know that we
also get improvements there.
=== old armv6 ===
[ # ] backend test min(s) median(s) stddev. count
[ # ] image: pixman 0.29.1
[ 0] image t-firefox-planet-gnome 2.860 2.865 0.24% 7/8
[ 1] image t-chromium-tabs 0.881 0.882 0.21% 7/8
[ 2] image t-gvim 4.949 4.959 0.26% 8/8
[ 3] image t-gnome-system-monitor 6.028 6.042 0.52% 7/8
[ 4] image t-firefox-canvas-alpha 3.962 3.983 0.31% 8/8
[ 5] image t-firefox-scrolling 6.981 6.987 0.06% 8/8
[ 6] image t-firefox-chalkboard 8.459 8.462 0.02% 8/8
[ 7] image t-swfdec-youtube 2.306 2.310 0.11% 8/8
[ 8] image t-firefox-particles 5.505 5.510 0.10% 8/8
[ 9] image t-firefox-fishbowl 5.684 5.697 0.11% 8/8
[ 10] image t-firefox-fishtank 4.816 4.819 0.02% 8/8
[ 11] image t-xfce4-terminal-a1 5.559 5.728 1.88% 8/8
[ 12] image t-poppler-reseau 3.178 3.244 0.75% 7/8
[ 13] image t-grads-heat-map 0.559 0.560 0.09% 8/8
[ 14] image t-firefox-talos-gfx 5.021 5.030 0.10% 7/8
[ 15] image t-firefox-asteroids 4.272 4.277 0.05% 7/8
[ 16] image t-midori-zoomed 2.087 2.088 0.06% 7/8
[ 17] image t-swfdec-giant-steps 3.788 3.791 0.04% 7/8
[ 18] image t-firefox-talos-svg 4.067 4.074 0.06% 8/8
[ 19] image t-poppler 2.735 2.743 0.25% 8/8
[ 20] image t-firefox-canvas 4.025 4.026 0.02% 7/8
[ 21] image t-evolution 4.428 4.619 2.19% 7/8
[ 22] image t-firefox-paintball 5.292 5.298 0.06% 8/8
[ 23] image t-gnome-terminal-vim 2.790 2.817 0.58% 7/8
=== new armv6 ===
[ # ] backend test min(s) median(s) stddev. count
[ # ] image: pixman 0.29.1
[ 0] image t-firefox-planet-gnome 2.798 2.806 0.23% 7/8
[ 1] image t-chromium-tabs 0.784 0.786 0.23% 7/8
[ 2] image t-gvim 4.944 4.972 0.42% 7/8
[ 3] image t-gnome-system-monitor 5.639 5.661 0.28% 7/8
[ 4] image t-firefox-canvas-alpha 3.768 3.773 0.12% 7/8
[ 5] image t-firefox-scrolling 6.890 6.897 0.11% 7/8
[ 6] image t-firefox-chalkboard 8.392 8.404 0.10% 8/8
[ 7] image t-swfdec-youtube 2.264 2.267 0.08% 7/8
[ 8] image t-firefox-particles 5.339 5.345 0.08% 7/8
[ 9] image t-firefox-fishbowl 5.178 5.189 0.13% 7/8
[ 10] image t-firefox-fishtank 4.414 4.415 0.02% 7/8
[ 11] image t-xfce4-terminal-a1 5.321 5.533 2.25% 8/8
[ 12] image t-poppler-reseau 3.208 3.248 0.64% 7/8
[ 13] image t-grads-heat-map 0.555 0.555 0.03% 6/8
[ 14] image t-firefox-talos-gfx 4.800 4.812 0.23% 7/8
[ 15] image t-firefox-asteroids 3.804 3.808 0.38% 7/8
[ 16] image t-midori-zoomed 1.952 1.953 0.11% 7/8
[ 17] image t-swfdec-giant-steps 3.622 3.629 0.08% 7/8
[ 18] image t-firefox-talos-svg 4.011 4.014 0.07% 7/8
[ 19] image t-poppler 2.712 2.717 0.20% 7/8
[ 20] image t-firefox-canvas 3.847 3.849 0.14% 7/8
[ 21] image t-evolution 4.034 4.064 0.32% 7/8
[ 22] image t-firefox-paintball 4.529 4.534 0.31% 7/8
[ 23] image t-gnome-terminal-vim 2.767 2.801 0.63% 7/8
Speedups
========
image t-firefox-paintball 5291.78 -> 4528.96 : 1.17x speedup
image t-chromium-tabs 881.20 -> 783.62 : 1.12x speedup
image t-firefox-asteroids 4272.31 -> 3804.48 : 1.12x speedup
image t-evolution 4428.02 -> 4033.76 : 1.10x speedup
image t-firefox-fishbowl 5683.86 -> 5177.92 : 1.10x speedup
image t-firefox-fishtank 4816.44 -> 4413.95 : 1.09x speedup
image t-gnome-system-monitor 6027.70 -> 5638.57 : 1.07x speedup
image t-midori-zoomed 2086.73 -> 1952.16 : 1.07x speedup
image t-firefox-canvas-alpha 3961.64 -> 3767.66 : 1.05x speedup
--
Best regards,
Siarhei Siamashka
More information about the Pixman
mailing list