aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/acl.c
diff options
context:
space:
mode:
authorNathan Bossart <nathan@postgresql.org>2024-03-26 14:03:32 -0500
committerNathan Bossart <nathan@postgresql.org>2024-03-26 14:03:32 -0500
commit7644a7340c8a7764f1b20b34e1273b41347cbfcb (patch)
tree80811ec740a0d4817641b456bcb5e15ec9332bc9 /src/backend/utils/adt/acl.c
parenta65724dfa73db8b451d0c874a9161935a34a914e (diff)
downloadpostgresql-7644a7340c8a7764f1b20b34e1273b41347cbfcb.tar.gz
postgresql-7644a7340c8a7764f1b20b34e1273b41347cbfcb.zip
Micro-optimize pg_lfind32().
This commit improves the performance of pg_lfind32() in many cases by modifying it to process the remaining "tail" of elements with SIMD instructions instead of processing them one-by-one. Since the SIMD code processes a large block of elements, this means that we will process a subset of elements more than once, but that won't affect the correctness of the result, and testing has shown that this helps more cases than it regresses. With this change, the standard one-by-one linear search code is only used for small arrays and for platforms without SIMD support. Suggested-by: John Naylor Reviewed-by: John Naylor Discussion: https://postgr.es/m/20231129171526.GA857928%40nathanxps13
Diffstat (limited to 'src/backend/utils/adt/acl.c')
0 files changed, 0 insertions, 0 deletions