Skip to content

WIP: Update ARM Toolchain and libopencm#373

Open
rpls wants to merge 6 commits into
masterfrom
gcc14.2
Open

WIP: Update ARM Toolchain and libopencm#373
rpls wants to merge 6 commits into
masterfrom
gcc14.2

Conversation

@rpls

@rpls rpls commented Jan 9, 2025

Copy link
Copy Markdown
Contributor
  • PR changes testvectors
  • Tests pass in qemu
  • Testvectors pass in qemu
  • Tests pass on Nucleo-L4R5ZI
  • Testvectors pass on Nucleo-L4R5ZI
  • Updated Benchmarks
  • Updated Skiplist entries

@rpls

rpls commented Jan 10, 2025

Copy link
Copy Markdown
Contributor Author

Well, sphincs doesn't build anymore, and falcon-1024 fails its testvectors on QEMU...

@mkannwischer

Copy link
Copy Markdown
Contributor

Wow. build failures can happen, but testvector failures are rather worrying.

@rpls

rpls commented Jan 10, 2025

Copy link
Copy Markdown
Contributor Author

So for sphincs we need a fix in PQClean/PQClean#582, for falcon-{512,1024}-clean we'll need to investigate. The m4,opt-ct, ..., variants work fine.

@mkannwischer

mkannwischer commented Feb 18, 2025

Copy link
Copy Markdown
Contributor

@rpls - the fix for SPHINCS+ has been merged upstream in PQClean/PQClean#584.
I updated to that commit just now.

Could you do another rounds of tests and benchmarks, please?
There is some risk that benchmarks fail for some schemes due to #376.

@rpls

rpls commented Mar 6, 2025

Copy link
Copy Markdown
Contributor Author

So far, a couple of weird failures. Some of the mirith variants hang indefinitely. mayo{1,3}-m4f speed tests fail??

@mkannwischer

Copy link
Copy Markdown
Contributor

I know why MAYO fails: this version of the code does not handle sm=m correctly. We have fixed that in round 2. (Note that the speed.c was changed only recently to include checking of the verification result).
May be a similar issue for the other weird failure.

I will update MAYO soon™️.

Can you figure out if the other failures are also caused by this (simply using two buffers should be sufficient)? If so, we should inform the submitters to fix their code.

@mkannwischer

Copy link
Copy Markdown
Contributor

I know why MAYO fails: this version of the code does not handle sm=m correctly. We have fixed that in round 2. (Note that the speed.c was changed only recently to include checking of the verification result). May be a similar issue for the other weird failure.

I will update MAYO soon™️.

@rpls - MAYO is updated in #391. So that should be unblocked now.

@rpls

rpls commented May 29, 2025

Copy link
Copy Markdown
Contributor Author

I did a rebase to include all of the previous updates, and I'll run the benchmarks over the weekend. I have three boards, so I can split it up to some degree.

@mkannwischer

Copy link
Copy Markdown
Contributor

I did a rebase to include all of the previous updates, and I'll run the benchmarks over the weekend. I have three boards, so I can split it up to some degree.

I have not touched anything in mirith - that should be checked first.

@rpls

rpls commented Jul 9, 2025

Copy link
Copy Markdown
Contributor Author

diff.ods

@mkannwischer

mkannwischer commented Jul 9, 2025

Copy link
Copy Markdown
Contributor

diff.ods

How many iterations is this? 68% worse performance is hard to believe.

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