Update and clean up hash benchmarks
- 主要言語
- Rust
- スター
- 772
- フォーク
- 352
- 平均マージ
- 1日 7時間
- マージ済み PR(30日)
- 84
説明
With 0xMiden/crypto#720, we are now using Plonky3 backend for field implementation. We should update our [hash benchmarks](https://github.com/0xMiden/crypto/tree/next/miden-crypto/benches#hash-functions).
I have done this already for an M4 Max chip, and the changes were as follows:
- RPO: 2.9 µs -> 2.5 µs
- RPX: 1.5 µs -> 1.3 µs
- Poseidon2: 0.7 µs -> 0.7 µs (basically unchanged).
We should run this for other planforms and remove the platforms that are no longer relevant. I think the platforms we care about are:
- M1 - a good baseline benchmark.
- Graviton4 - something we run in AWS for remote provers (supports SVE acceleration).
- AMD Zen5 (e.g., AWS c8a instance) - we could also run these for remote provers (supports AVX512 acceleration).
It probably makes sense to re run these once 0xMiden/crypto#732 is implemented.
One open question is whether Goldilocks field in Plonky3 can take advantage of SVE and AVX512 acceleration (cc @Nashtare and @sai-deng in case you guys know).
コントリビューションガイド
調査の方向性
The hash benchmarks are in the crypto repository under miden-crypto/benches. First, understand the Plonky3 backend change from linked PR #720. Run the existing benchmarks on the specified platforms (M1, Graviton4, AMD Zen5) to get updated timings. Check if SVE/AVX512 acceleration is utilized. Update the benchmark results and remove outdated platform data. Ensure benchmarks run correctly after PR #732 is implemented.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- rust
- 領域
- performance, tooling
- issue の種類
- リファクタリング
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 45/100