-
Notifications
You must be signed in to change notification settings - Fork 277
ylt simd util feature #940
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
for detail, goto summary download Artifacts |
for detail, goto summary download Artifacts |
use macro dispatch real simd function, can't add spaces to macro definitions like clang-format want. -#define INCLUDE_ARCH_FILE(file) YLT_STRINGIFY(common/file)
+#define INCLUDE_ARCH_FILE(file) YLT_STRINGIFY(common / file) // ignore this error |
for detail, goto summary download Artifacts |
for detail, goto summary download Artifacts |
for detail, goto summary download Artifacts |
Why
issue 939
use simd optimize it.
in the future optimize json and base64 etc by simd.
What is changing
simd dispatch, auto chose simd fucntion.now implement string and string_view split.
Example
Refer to the tests path and benchmark path in simd_util.
in neon:

neon better than normal.
in avx2:

It's single header library, when wanna use avx2 add compile option -mavx2,-mbmi.when in arm,do nothing will auto use neon simd.