[PATCH] aarch64: Increase small and medium cases for __memcpy_generic

Szabolcs Nagy Szabolcs.Nagy@arm.com
Tue Nov 12 17:09:00 GMT 2019


On 05/11/2019 17:35, Krzysztof Koch wrote:
> Increase the upper bound on medium cases from 96 to 128 bytes.
> Now, up to 128 bytes are copied unrolled.
> 
> Increase the upper bound on small cases from 16 to 32 bytes so that
> copies of 17-32 bytes are not impacted by the larger medium case.
> 
> Benchmarking:
> The attached figures show relative timing difference with respect
> to 'memcpy_generic', which is the existing implementation.
> 'memcpy_med_128' denotes the the version of memcpy_generic with
> only the medium case enlarged. The 'memcpy_med_128_small_32' numbers
> are for the version of memcpy_generic submitted in this patch, which
> has both medium and small cases enlarged. The figures were generated
> using the script from:
> https://www.sourceware.org/ml/libc-alpha/2019-10/msg00563.html
> 
> Depending on the platform, the performance improvement in the
> bench-memcpy-random.c benchmark ranges from 6% to 20% between
> the original and final version of memcpy.S
> 
> Tested against GLIBC testsuite and randomized tests.
> ---
>  sysdeps/aarch64/memcpy.S | 82 +++++++++++++++++++++++++++---------------------
>  1 file changed, 47 insertions(+), 35 deletions(-)

thanks, committed.



More information about the Libc-alpha mailing list