<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Hi,</div>
<blockquote style="margin-left: 0.8ex; padding-left: 1ex; border-left: 3px solid rgb(200, 200, 200);">
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
1) AFAICT there is currently no commonly available hardware that goes beyond a cache line size in vector size. Thereby reducing the urgency. I would be interested in knowing if my assumption is incorrect!</div>
</blockquote>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
There is a fresh CPU <a href="https://www.spacemit.com/products/keystone/k3">https://www.spacemit.com/products/keystone/k3</a> from Chinese company SpacemiT. It's not widely available yet (so doesn't satisfty the 'commonly available' requirement yet), but some
people on <a href="https://www.reddit.com/r/RISCV/">https://www.reddit.com/r/RISCV/</a> already got it and are testing it. K3 is a heterogenous CPU, has X100 cores with narrow vectors and A100 cores with wide vectors (1024 bit), so scheduling threads is tricky.
There are developer kits presented on e.g. <a href="https://www.spacemit.com/community/development-kit">
https://www.spacemit.com/community/development-kit</a> <a href="https://sipeed.com/k3">https://sipeed.com/k3</a> <a href="https://milkv.io/jupiter2">https://milkv.io/jupiter2</a> but I don't see any regular 'buy it now' options. ChatGPT says SpacemiT K3 will
be publicly available for purchase starting from late April 2026 (probably shipping preordered products first).</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Regards,</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Piotr</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>Od:</b> panama-dev <panama-dev-retn@openjdk.org> w imieniu użytkownika Paul Sandoz <paul.sandoz@oracle.com><br>
<b>Wysłane:</b> sobota, 31 stycznia 2026 00:20<br>
<b>Do:</b> Ruben Ayrapetyan <Ruben.Ayrapetyan@arm.com><br>
<b>DW:</b> panama-dev@openjdk.org <panama-dev@openjdk.org>; Paul Sandoz <psandoz@openjdk.org><br>
<b>Temat:</b> Re: Vector API support for vectors wider than 512 bits</font>
<div> </div>
</div>
<div style="line-break:after-white-space">Hi Ruben,
<div><br>
</div>
<div>They should be refined eventually, perhaps by adding an override accepting a part number following similar patterns in other places of the API. A reason why we have not prioritized this so far is: </div>
<div><br>
</div>
<div>1) AFAICT there is currently no commonly available hardware that goes beyond a cache line size in vector size. Thereby reducing the urgency. I would be interested in knowing if my assumption is incorrect!</div>
<div><br>
</div>
<div>2) There are related implementation issues when shuffling bytes, since the underlying shuffle implementation of bytes stores the indices in a byte[] array. This is more disruptive to address than the first one.</div>
<div> </div>
<div>Paul.<br id="x_lineBreakAtBeginningOfMessage">
<div><br>
<blockquote type="cite">
<div>On Jan 30, 2026, at 3:05 AM, Ruben Ayrapetyan <Ruben.Ayrapetyan@arm.com> wrote:</div>
<br class="x_Apple-interchange-newline">
<div>
<div class="x_elementToProof" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:400; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; margin:0px 0px 0px 4px; padding-top:2px">
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
Hi all,</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
<br>
</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
The question is related to Vector API compatibility with various vector lengths.</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
<br>
</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
Some of the interfaces appear to be limiting support to 512-bit vectors, for example:</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
- VectorMask.toLong throws an exception for vectors with more than 64 lanes;</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
- VectorMask.fromLong replicates the sign bit into lane 64 and beyond.</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
<br>
</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
As far as I understand from the documentation, the wider vectors are meant to be supported though not necessarily optimized for initially:</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
"Although the API has been designed to ensure ARM SVE instructions can be supported (vector sizes between 128 and 2048 bits)"</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
<br>
</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
As the Java programs using the interfaces might not be compatible with an architecturally valid hardware platform, is there a possibility to refine the interfaces to ensure they scale to wider vectors?</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
<br>
</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
Kind regards,</div>
<div class="x_elementToProof" style="font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt">
Ruben</div>
</div>
<div class="x_elementToProof" style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:400; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; margin:0px; padding-right:2px">
</div>
<span style="font-family:Helvetica; font-size:12px; font-style:normal; font-variant-caps:normal; font-weight:400; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; float:none; display:inline!important">IMPORTANT
NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or
store or copy the information in any medium. Thank you.</span></div>
</blockquote>
</div>
<br>
</div>
</div>
</body>
</html>