Skip to content
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 Ascii.Utility methods with Vector512 code paths. #89280

Open
5 of 7 tasks
anthonycanino opened this issue Jul 20, 2023 · 4 comments
Open
5 of 7 tasks

Light up Ascii.Utility methods with Vector512 code paths. #89280

anthonycanino opened this issue Jul 20, 2023 · 4 comments
Assignees
Labels
area-System.Text.Encoding avx512 Related to the AVX-512 architecture
Milestone

Comments

@anthonycanino
Copy link
Contributor

anthonycanino commented Jul 20, 2023

This issue tracks upgrades to Ascii.Utility with Vector512 (and in some cases Vector256) code paths.

We plan to upgrade the following methods (the ones checked off have already been merged into main).

  • NarrowUtf16ToAscii
  • WidenAsciiToUtf16
  • GetIndexOfFirstNonAsciiChar
  • GetIndexOfFirstNonAsciiByte
  • IsValidCore
  • Equals/EqualsIgnore
  • CaseConversion
@dotnet-issue-labeler dotnet-issue-labeler bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Jul 20, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Jul 20, 2023
@ghost
Copy link

ghost commented Jul 21, 2023

Tagging subscribers to this area: @dotnet/area-system-text-encoding
See info in area-owners.md if you want to be subscribed.

Issue Details

This issue tracks upgrades to Ascii.Utility with Vector512 (in in some cases Vector256) code paths.

We plan to upgrade the following methods (the ones checked off have already been merged into main).

  • NarrowUtf16ToAscii
  • WidenAsciiToUtf16
  • GetIndexOfFirstNonAsciiChar
  • GetIndexOfFirstNonAsciiByte
  • IsValidCore
  • Equals/EqualsIgnore
  • CaseConversion
Author: anthonycanino
Assignees: -
Labels:

area-System.Text.Encoding, untriaged, needs-area-label

Milestone: -

@teo-tsirpanis teo-tsirpanis removed the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Jul 21, 2023
@layomia
Copy link
Contributor

layomia commented Jul 21, 2023

Triage per offline discussion with @anthonycanino:

This work isn't a must-have for 8.0, but folks still hope to get a couple PRs in soon. We'll mark as 8.0 for now; cc @BruceForstall @tannergooding who could weigh in on if/when to move this to future.

@layomia layomia added this to the 8.0.0 milestone Jul 21, 2023
@ghost ghost removed the untriaged New issue has not been triaged by the area owner label Jul 21, 2023
@BruceForstall BruceForstall added the avx512 Related to the AVX-512 architecture label Jul 21, 2023
@ericstj ericstj modified the milestones: 8.0.0, 9.0.0 Oct 10, 2023
@ericstj
Copy link
Member

ericstj commented Oct 10, 2023

Moving this to 9.0 as it's clearly too late to do more here. @BruceForstall feel free to make more changes as appropriate.

@Ruihan-Yin
Copy link
Contributor

For the remaining ones:

  1. Equals/EqualsIgnore: can be checked off as Light up Ascii.Equality.Equals and Ascii.Equality.EqualsIgnoreCase with Vector512 code path #88650 has been merged to main.
  2. CaseConversion: Some in-place methods were not scaling well on Vector512 path compared with Vector256 due to the penalty from split vector load, which might be solved by Use StoreAligned not Store in WidenAsciiToUtf16 #89892, this PR is currently paused and targeting on .Net 9.

@eiriktsarpalis eiriktsarpalis modified the milestones: 9.0.0, 10.0.0 Jul 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-System.Text.Encoding avx512 Related to the AVX-512 architecture
Projects
None yet
Development

No branches or pull requests

8 participants