Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

perf: integrate icicle mmcs #544

Merged
merged 25 commits into from
Oct 8, 2024
Merged

perf: integrate icicle mmcs #544

merged 25 commits into from
Oct 8, 2024

Conversation

GideokKim
Copy link
Contributor

@GideokKim GideokKim commented Sep 20, 2024

This PR integrates icicle MMCS for improved performance.

The key changes are the following:

  • Poseidon2Vendor is introduced to switch vendor between Plonky3 and Horizen.
  • Poseidon2Vendor is merged into Poseidon2Params to simplify a lot of configuration details.
  • Bump up ICICLE to v2.8.0 with a single typco commit.
  • ICICLEPoseidon2 and ICICLEMMCS are introduced.

@GideokKim GideokKim force-pushed the perf/integrate-icicle-mmcs branch 13 times, most recently from 1eb7754 to 1a557d2 Compare September 20, 2024 10:00
@chokobole chokobole marked this pull request as ready for review September 30, 2024 11:13
Copy link
Contributor

@ashjeong ashjeong left a comment

Choose a reason for hiding this comment

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

1e98fbc
Shouldn’t the DuplexChallenger Hintable test also change lines 20-22 to Poseidon2 sponge;?

184bd09
Please fix title “FiledMerkletreeMMCS” to “FieldMerkletreeMMCS”

Copy link
Contributor

@ashjeong ashjeong left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Contributor

@chokobole chokobole left a comment

Choose a reason for hiding this comment

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

LGTM

chokobole and others added 24 commits October 8, 2024 14:09
This is needed to retrieve `Poseidon2Params` from those.
…utation`

This is needed to retrieve `Rate` from `PaddingFreeSponge` when
configuring `Poseidon2Icicle`.
Since cpplint 2.0.0, indent inspection has been added but still contains a bug.
This commit filters out the indent inspection to avoid issues caused by a bug.

See cpplint/cpplint#235
@chokobole chokobole merged commit ee3ba4d into main Oct 8, 2024
7 checks passed
@chokobole chokobole deleted the perf/integrate-icicle-mmcs branch October 8, 2024 07:00
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.

5 participants