Skip to content

ARM: Add ML-DSA NTT optimizations - #33062

Draft
slontis wants to merge 45 commits into
openssl:masterfrom
slontis:mldsa_aarch64
Draft

slontis wants to merge 45 commits into
openssl:masterfrom
slontis:mldsa_aarch64

Conversation

@slontis

@slontis slontis commented Oct 1, 2026

Copy link
Copy Markdown
Member

Assisted-by: OpenAI Codex:gpt-5.6-sol

The code was generated by AI by referencing the c code and the FIPS standard. It was told to ignore additional references. An iteratative approach was then used to improve the performance of the instructions. It also referenced the ML-KEM NTT optimizations.

Checklist
  • documentation is added or updated
  • tests are added or updated

Assisted-by: OpenAI Codex:gpt-5.6-sol

The code was generated by AI by referencing the c code and the FIPS standard. It was told to ignore additional references.
An iteratative approach was then used to improve the performance of the instructions. It also referenced the ML-KEM NTT optimizations.
@openssl-ci-bot openssl-ci-bot Bot added the approval: review pending This pull request needs review by a committer label Oct 1, 2026
@slontis

slontis commented Oct 1, 2026 •

Copy link
Copy Markdown
Member Author

Run on a MAC pro

Operation Base scalar C AArch64 perlasm Improvement
ML-DSA-44 keygen 26,408.6 32,114.1 +21.60%
ML-DSA-44 sign 5,814.6 10,368.2 +78.31%
ML-DSA-44 verify 27,561.1 39,384.1 +42.90%
ML-DSA-65 keygen 13,321.8 15,266.5 +14.60%
ML-DSA-65 sign 3,638.9 6,424.1 +76.54%
ML-DSA-65 verify 17,579.6 23,960.6 +36.30%
ML-DSA-87 keygen 10,359.9 11,924.1 +15.10%
ML-DSA-87 sign 3,081.4 5,101.2 +65.55%
ML-DSA-87 verify 10,873.6 13,902.9 +27.86%

@github-actions github-actions Bot added the severity: fips change The pull request changes FIPS provider sources label Oct 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approval: review pending This pull request needs review by a committer severity: fips change The pull request changes FIPS provider sources

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant