-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Light up core ASCII.CaseConversion methods with Vector256/Vector512 code paths #88923
Conversation
updated the naming and bug fixes.
path to improve the performance in VectorContainsNonAsciiChar
Add optimization for ChangeWidthAndWriteTo when Vector512 is available
Add 32-byte and 64-byte inputs to test on Vectorized path.
StoreLowerUnsafe, and use GetLower() instead.
Tagging subscribers to this area: @dotnet/area-system-text-encoding Issue DetailsDescriptionThis PR lights up some code path in ASCII.CaseConversion with Vector256/Vector512 code, namely, ChangeCases<TFrom, TTo, TCasting>, which is the base method for all the case conversion APIs, including We are open to adjusting the implementation style for either path. Perf numbers coming soon. Perfperf number coming soon
|
src/libraries/System.Private.CoreLib/src/System/Text/Ascii.Utility.cs
Outdated
Show resolved
Hide resolved
Draft Pull Request was automatically closed for 30 days of inactivity. Please let us know if you'd like to reopen it. |
Description
This PR lights up some code path in ASCII.CaseConversion with Vector256/Vector512 code, namely, ChangeCases<TFrom, TTo, TCasting>, which is the base method for all the case conversion APIs, including
ToUpper(InPlace)
,ToLower(InPlace)
.We are open to adjusting the implementation style for either path. Perf numbers coming soon.
Perf
perf number coming soon