-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Use AVX/AVX2 masks in minmax_element
and minmax
vectorization
#4917
Conversation
minmax_element
and minmax
vectoizationminmax_element
and minmax
vectorization
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
Final (voluminous) results on my 5950X, relative to Click to expand table:
The only significant regression is for |
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
It was the minimum of times, it was the maximum of times... 📉 📈 😻 |
🧭 Overview
Use AVX2 mask to read tails for minmax/minmax element, then use the same masks to populate the tail with previous data, and to exclude tail indices for
_element
algorithm.⏱️ Benchmark results
8 and 16 bit
Both_val
cases are expected to improve in a significant way too, but it is currently hidden by #4913