[vectorIntrinsics+mask] RFR: 8273057: [vector] New VectorAPI "SelectiveStore"

John Rose john.r.rose at oracle.com
Thu Sep 2 18:36:17 UTC 2021


On Aug 31, 2021, at 9:44 AM, Paul Sandoz <paul.sandoz at oracle.com<mailto:paul.sandoz at oracle.com>> wrote:

Yes, my suggestion is that a vector-to-vector compress might be a composition of mask -> partitioning shuffle -> rearrange, such that on supported architectures it reduces down to a single instruction. In combination with a store and prefix mask it may be possible to reduce further to single instruction accepting the source vector, mask, and a memory location.

As I argued in my previous, it may be just as well
to think of compress as its own primitive, even if
under the covers it is implemented using shuffle.

I think it’s worth thinking more about anti-shuffle,
what that would be like.  Mathematical permutations
do not come in two kinds, but shuffles and anti-shuffles
are distinct because only the former duplicate and only
the latter collide.




More information about the panama-dev mailing list