Skip to content

Add X25519 example in python and CI#427

Open
dop-amin wants to merge 1 commit into
mainfrom
missing-check
Open

Add X25519 example in python and CI#427
dop-amin wants to merge 1 commit into
mainfrom
missing-check

Conversation

@dop-amin
Copy link
Copy Markdown
Collaborator

This PR is supposed to improve upon the CI coverage and completeness fo examples of the assembly present in the repo.

Currently done:

  • x25519 on aarch64

@dop-amin dop-amin self-assigned this Mar 23, 2026
@dop-amin dop-amin changed the title Improve coverage of assembly files Add X25519 example in python and CI Apr 13, 2026
@dop-amin dop-amin marked this pull request as ready for review April 13, 2026 13:58
@dop-amin dop-amin requested a review from mkannwischer April 13, 2026 13:58
* Includes "full" optimization (performance verified against pre-existing code in opt directory after running python example on M4 Mac)
* Includes simplified test-case for CI that exhibits some of the important features of the x25519 optimization but with vastly relaxed options.
Copy link
Copy Markdown
Collaborator

@mkannwischer mkannwischer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Did you benchmark this on an A53/A55 to check if this achieves the same performance as in the paper?

@dop-amin
Copy link
Copy Markdown
Collaborator Author

The benchmarks don't fully match the original performance.
I've done two optimization runs on one of our big servers (256 cores AMD Epyc) and got these numbers from the resulting code:
Run 1: 141494
Run 2: 142008
The original was 139752.

As there appears to be some variance in the optimization (+500 cycles from Run 1 -> Run 2), the question is whether the difference to the original is due to that or due to some change in the model/SLOTHY. I will try running the optimization a few more times, I recall we took the best result over multiple runs back then as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants