RFR: 8349721: Add aarch64 intrinsics for ML-KEM

Mark Powers mpowers at openjdk.org
Wed Feb 26 01:03:52 UTC 2025


On Mon, 17 Feb 2025 13:53:30 GMT, Ferenc Rakoczi <duke at openjdk.org> wrote:

> By using the aarch64 vector registers the speed of the computation of the ML-KEM algorithms (key generation, encapsulation, decapsulation) can be approximately doubled.

ML-KEM benchmark results of this PR:


MLKEM.decapsulate  512 11.80 us/op
MLKEM.decapsulate  768 18.19 us/op 
MLKEM.decapsulate 1024 29.57 us/op
MLKEM.encapsulate  512  8.80 us/op 
MLKEM.encapsulate  768 13.49 us/op  
MLKEM.encapsulate 1024 22.53 us/op
MLKEM.keygen       512  7.49 us/op 
MLKEM.keygen       768 11.22 us/op  
MLKEM.keygen      1024 19.08 us/op 


ML-KEM no intrinsics


MLKEM.decapsulate  512 31.23 us/op  
MLKEM.decapsulate  768 50.09 us/op 
MLKEM.decapsulate 1024 75.92 us/op
MLKEM.encapsulate  512 22.72 us/op  
MLKEM.encapsulate  768 37.27 us/op 
MLKEM.encapsulate 1024 59.69 us/op
MLKEM.keygen       512 17.95 us/op  
MLKEM.keygen       768 30.95 us/op 
MLKEM.keygen      1024 49.04 us/op

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

PR Comment: https://git.openjdk.org/jdk/pull/23663#issuecomment-2683631601


More information about the hotspot-dev mailing list