[vectorIntrinsics+compress] RFR: 8274971: Add VectorMask.compress API [v4]

Jatin Bhateja jbhateja at openjdk.java.net
Wed Oct 13 04:46:12 UTC 2021


On Mon, 11 Oct 2021 10:11:26 GMT, Joshua Zhu <jzhu at openjdk.org> wrote:

>> src/jdk.incubator.vector/share/classes/jdk/incubator/vector/VectorMask.java line 639:
>> 
>>> 637:         AbstractSpecies<E> species = (AbstractSpecies<E>) vectorSpecies();
>>> 638:         return species.iota().compare(VectorOperators.LT, trueCount());
>>> 639:     }
>> 
>> Not sure if this API is needed as a public interface since all the constituents are publicly exposed APIs, unless we plan to intrinsify it.  
>> 
>> But existing VectorMask.fromLong(SPECIES,  (1 << m.trueCount()) -1),  can efficiently handle this pattern,  I am already working on accelerating VectorMask.fromLong API for AVX512 target.
>
> I prefer to add it as an addtional API and it can be used to cooperate with compress/expand API.
> See previous design discussion threads.

Thanks, may be internal java implementation of API can be optimized but I can take it up separately along with its intrinsification.

-------------

PR: https://git.openjdk.java.net/panama-vector/pull/148


More information about the panama-dev mailing list