This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] x86_32: memcpy, mempcpy, memmove, memcpy_chk, mempcpy_chk, memmove_chk optimized with SSE2 unaligned loads/stores


Hi,

this new functions based on new memcpy which is 32bit analogue of
x86_64 sse2 unaligned memcpy version.
Benchmarked on Silvermont, Haswell, Ivy Bridge, Sandy Bridge and
Westmere, performance results attached.
Testsuite was run on x86_64 with no new regressions.

Change log:

2014-07-04  Andrew Senkevich  <andrew.n.senkevich@gmail.com>

        * sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S: New file,
        contains implementation optimized with sse2 unaligned loads/stores.
        * sysdeps/i386/i686/multiarch/memmove-sse2-unaligned.S: Likewise.
        * sysdeps/i386/i686/multiarch/mempcpy-sse2-unaligned.S: Likewise.
        * sysdeps/i386/i686/multiarch/memcpy.S: Selection of new function if
        bit_Fast_Unaligned_Load is set.
        * sysdeps/i386/i686/multiarch/memcpy_chk.S: Likewise.
        * sysdeps/i386/i686/multiarch/memmove.S: Likewise.
        * sysdeps/i386/i686/multiarch/memmove_chk.S: Likewise.
        * sysdeps/i386/i686/multiarch/mempcpy.S: Likewise.
        * sysdeps/i386/i686/multiarch/mempcpy_chk.S: Likewise.
        * sysdeps/i386/i686/multiarch/Makefile: Added new files to build.
        * sysdeps/i386/i686/multiarch/ifunc-impl-list.c
(__libc_ifunc_impl_list):
        Added testing of new functions.

Attachment: results_memmove_32slm_on_hsw.tar.bz2
Description: BZip2 compressed data

Attachment: results_memmove_32slm_on_ivb.tar.bz2
Description: BZip2 compressed data

Attachment: results_memmove_32slm_on_slm.tar.bz2
Description: BZip2 compressed data

Attachment: results_memmove_32slm_on_snb.tar.bz2
Description: BZip2 compressed data

Attachment: results_memmove_32slm_on_wsm.tar.bz2
Description: BZip2 compressed data

Attachment: results_memcpy_32slm_on_hsw.tar.bz2
Description: BZip2 compressed data

Attachment: results_memcpy_32slm_on_ivb.tar.bz2
Description: BZip2 compressed data

Attachment: results_memcpy_32slm_on_slm.tar.bz2
Description: BZip2 compressed data

Attachment: results_memcpy_32slm_on_snb.tar.bz2
Description: BZip2 compressed data

Attachment: results_memcpy_32slm_on_wsm.tar.bz2
Description: BZip2 compressed data

Attachment: memcpy_mempcpy_memmove_with_chk_sse2_unaligned_i386.patch
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]