summaryrefslogtreecommitdiff
path: root/libc/kernel/tools/cpp.py
diff options
context:
space:
mode:
authorKyle Repinski <repinski23@gmail.com>2015-04-30 02:13:56 -0500
committerHaibo Huang <hhb@google.com>2018-12-22 01:04:27 +0000
commit78da73adad81ae6656d165c884384256d82f5a3e (patch)
tree1e5c44234cb3973421b22570ed324db7c6a117ed /libc/kernel/tools/cpp.py
parent0ec6aa0f22bd6ef8eda41aa4cac8cf2b8a8e50ee (diff)
libc: Optimize ARM memcmp by using NEON.
Because NEON_UNALIGNED_ACCESS has never been defined, it has gone unused. This change enables NEON optimization if __ARM_NEON__ is defined. Test: bionic-benchmarks-32 BM_string_memcmp On Nextbit Robin (MSM8992), here are the results Before: iterations ns/op BM_string_memcmp/8 50M 28 0.277 GiB/s BM_string_memcmp/64 50M 54 1.169 GiB/s BM_string_memcmp/512 5M 444 1.151 GiB/s BM_string_memcmp/1024 2M 885 1.156 GiB/s BM_string_memcmp/8Ki 200k 7401 1.107 GiB/s BM_string_memcmp/16Ki 200k 14469 1.132 GiB/s BM_string_memcmp/32Ki 100k 28726 1.141 GiB/s BM_string_memcmp/64Ki 50k 57480 1.140 GiB/s After: iterations ns/op BM_string_memcmp/8 50M 22 0.351 GiB/s BM_string_memcmp/64 1000k 17 3.688 GiB/s BM_string_memcmp/512 20M 105 4.848 GiB/s BM_string_memcmp/1024 10M 190 5.367 GiB/s BM_string_memcmp/8Ki 1000k 1496 5.475 GiB/s BM_string_memcmp/16Ki 1000k 2746 5.966 GiB/s BM_string_memcmp/32Ki 500k 5481 5.978 GiB/s BM_string_memcmp/64Ki 200k 10971 5.973 GiB/s Change-Id: I3c76ce7fa2796872e0171d5502b0ebd6e2893339
Diffstat (limited to 'libc/kernel/tools/cpp.py')
0 files changed, 0 insertions, 0 deletions