-
Notifications
You must be signed in to change notification settings - Fork 5.1k
Add CPUID for AvxVnniInt8 and AvxVnniInt16 #113956
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
Conversation
6714249
to
141d643
Compare
@tannergooding This is first of the 2 PRs needed for AVX VNNI INT* API introduction #112586 |
src/coreclr/tools/Common/JitInterface/ThunkGenerator/InstructionSetDesc.txt
Outdated
Show resolved
Hide resolved
141d643
to
98fc970
Compare
@tannergooding @saucecontrol I have added the CPUID, API surface, JIT handling and template tests here. |
e6cf454
to
90fa072
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, minus a couple nits on ways to simplify the diffs.
CC. @dotnet/jit-contrib for secondary review
Co-authored-by: Tanner Gooding <[email protected]>
@khushal1996 could you please resolve the merge conflict? |
Resolved the merge conflicts. I'll get this merged once CI completes |
Thanks @tannergooding for picking this up. Let me know if you want me to take over if the CI fails. |
Thanks for helping with the review and fixes @tannergooding |
Thanks as well for getting the feature implemented and done @khushal1996. Fixes were just some minor merge conflict fixes from other cleanup/simplifications that had happened |
This PR adds support for CPUID for
AVX-VNNI-INT8
&AVX-VNNI-INT16
ISAsThis resolves #112586
Design
The changes are made in a way to enable the 2 ISAs when
Avx10.2
is enabled orThis is w.r.t the discussions done in API proposal #112586
Testing
Note1: Emitter unit tests not ran since they are added and verified along with AVX10.2 PR #111209
Note2: Superpmi results are not accurate since we are adding a new CPUID and it leads to a new jiteeversionguid. Even after changing the jiteeversion manually, superpmi run shows errors and failures based on the old mch files which can be ignored.
Run JIT subtree with AVXVNNIINT* enabled / disabled
AVXVNNIINT* Enabled

AVXVNNIINT* disabled
