Benchmarking / justifying cortex-strings
Michael Hope
michael.hope at linaro.org
Mon Sep 5 03:21:49 UTC 2011
On Fri, Sep 2, 2011 at 4:08 PM, Michael Hope <michael.hope at linaro.org> wrote:
> Hi Dave. I've been hacking away and have checked in a couple of
> benchmarking and plotting scripts to lp:cortex-strings. The current
> results are at:
> http://people.linaro.org/~michaelh/incoming/strings-performance/
>
> All are done on an A9. The results are very incomplete due to how
> long things take to run. I'll leave ursa3 doing these over the
> weekend which should flesh this out for the other routines.
Right, that's done. The new graphs are up at:
http://people.linaro.org/~michaelh/incoming/strings-performance/
The original data is at:
http://people.linaro.org/~michaelh/incoming/strings-performance/epic.txt
Here's the relative performance for all routines with eight byte
aligned data and 128 byte blocks:
http://people.linaro.org/~michaelh/incoming/strings-performance/top-000128.png
memchr, memcpy, strcpy, and strlen all look good at this block size.
Here's the speed versus block size for eight byte aligned data:
http://people.linaro.org/~michaelh/incoming/strings-performance/sizes-memchr-08.png
http://people.linaro.org/~michaelh/incoming/strings-performance/sizes-memset-08.png
http://people.linaro.org/~michaelh/incoming/strings-performance/sizes-strchr-08.png
http://people.linaro.org/~michaelh/incoming/strings-performance/sizes-strchr-08.png
http://people.linaro.org/~michaelh/incoming/strings-performance/sizes-strcmp-08.png
http://people.linaro.org/~michaelh/incoming/strings-performance/sizes-strcpy-08.png
http://people.linaro.org/~michaelh/incoming/strings-performance/sizes-strlen-08.png
memchr is good. memset could be better for blocks of less than 1k.
strchr gets second place but is eclipsed by newlib's version. strcmp
need work. strcmp is good. strlen is good but the wobbles could use
some investigation.
And here's a graph of how the performance changes with initial alignment:
http://people.linaro.org/~michaelh/incoming/strings-performance/alignment-memcpy-64.png
-- Michael
More information about the linaro-toolchain
mailing list