Closed gnzlbg closed 6 years ago
I can slim this down to the AVX512 intrinsics implemented in the spec.
The CPUID for the features that re not in the spec yet won't change. There are already CPUs offering these in the wild, clang/gcc and the kernels support them already, etc. What might change before they get int the spec is the official CPUID name (e.g. avx512vnni
vs avx512_vnni
). I hope that for consistency with all the others they kill the underscores (as the Intel kernel devs argue) but we'll see.
Ok reading the entire kernel discussion it seems that the mixed notation is going to stay in the spec and the kernel... so the right names are avx512vbmi
but avx512_vbmi2
... sigh... I'll update this tomorrow to conform to the latest spec/kernel.
So I've found the real reference for all these features, and updated the PR, from the commit msg:
The reference is the Intel Architecture Instruction Set Extensions and Future Features Programming Interface document (Tables 1-1. and 1-2.) https://bugzilla.kernel.org/attachment.cgi?id=258813
@shepmaster Rust has recently gained support for these :)
Would it be possible to speed things up (and make a release afterwards) ? I hope I have addressed everything.
Would it be possible to speed things up (and make a release afterwards)
Oops, I lost this in my other notifications — released 0.5.0!
Awesome thanks!
Sigh. I had a manual from 2017, so no wonder I missed so much stuff.