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

Add benchmark CI #3

Open
han0110 opened this issue Aug 8, 2022 · 0 comments
Open

Add benchmark CI #3

han0110 opened this issue Aug 8, 2022 · 0 comments

Comments

@han0110
Copy link
Collaborator

han0110 commented Aug 8, 2022

No description provided.

@han0110 han0110 added this to the successful-erc20 milestone Aug 8, 2022
jonathanpwang added a commit to jonathanpwang/snark-verifier that referenced this issue Dec 24, 2022
* chore: add display feature to Cargo.toml

* fix: change test data directory to ./data and give error message

* feat: add succinct_verify_or_dummy to allow flag to turn off verification in aggregation snark

* Rollback to pse halo2 and halo2wrong for first release (privacy-scaling-explorations#5)

* feat: move `Accumulator` to `accumulator.rs`

* feat: update due to halo2

* feat: upgrade to use branch `feature/generic-instructions` of `halo2wrong`

* refactor: rollback to `{halo2,halo2_wrong}` without challenge API and cleanup dependencies

* chore: rename statement to instance and auxliary to witness

* chore: use `finalize` instead of `code`

* feat: add `Code::deployment` and `EvmLoader::deployment_code`; add example `evm-verifier-codegen`

* fix: typo

* feat: reduce generated evm verifier size; rename to `evm-verifier` and add another example `evm-verifier-with-accumulator`

* fix: due to `halo2wrong`

* feat: reorganize mods and traits

* fix: allow empty `values` in `sum_*` and move them under `ScalarLoader`

* ci: use `--all-features` for `cargo test`

* fix: use same strategy for aggregation testing

* fix: simplify trait `PlonkVerifier` again

* fix: move system specified transcript under mod `system`

* feat: add `quotient_poly` info in `Protocol`

* feat: implement linearization for circom integration

* feat: re-export loader's dependency for consumer

* refactor: for circom's integration

* tmp: pin `revm` to rev

* fix: remove parentheses

* fix: upgrade for multi-phase halo2

* feat: improve error reporting

* chore: rename crate to snake case

* feat: add `Domain` as an input of `PolynomialCommitmentScheme::read_proof`

* refactor: for further integration

* feat: generalize to suppoer also ipa and add builder fns to `system::halo2::Config`

* feat: add `KzgDecider` for simple evm verifier

* refactor: split `AccumulationScheme` and `AccumulatorEncoding`

* refactor: split `PolynomialCommitmentScheme` and `MultiOpenScheme`

* fix: not need sealed actually

* fix: `chunk_size` should be `LIMBS` when recovering accumulator

* feat: add `Expression::DistributePowers` to avoid stack overflow

* fix: update and pin foundry

* fix: move testing circuits under `system/halo2`

* fix: allow accumulate single accumulator

* feat: remove all patch and make less depending `halo2wrong`

* chore: update dependencies with latest halo2_proofs

* add `serialize` feature to turn on/off vkey/pkey write

* feat: change `name` to function instead of const in `TargetCircuit`

* fix: `load_verify_circuit_degree` now takes in environmental variable
`VERIFY_CONFIG`

* Generalized `Halo2Loader` (privacy-scaling-explorations#12)

* feat: generalize `Protocol` for further usage

* feat: add `EccInstruction::{fixed_base_msm,variable_base_msm,sum_with_const}`

* chore: move `rand_chacha` as dev dependency

* feat: implement `IntegerInstructions` and `EccInstructions` traits for
`halo2-lib`

* feat: implement `EncodeNative` and working example
`evm-verifier-with-accumulator` using `halo2-lib`
* Does not yet use custom `fixed_base_msm`

* feat: add example `recursion`

* chore: update for compatibility with halo2-lib

* poseidon: switch to rate = 2, `t = 3` for faster proving time

* update: remove unnecessary trait `where` clause

* feat: add example `recursion`

* General refactor for further integration (privacy-scaling-explorations#13)

* feat: remove dev-dependency `foundry` and vendor necessary part of it

* refactor: simplify traits and remove unused stuff

* refactor: much less clone

* feat: generalized `AccumulatorEncoding` for `EccInstructions`

* feat: implement ipa pcs and accumulation (privacy-scaling-explorations#14)

* feat: add example `recursion`

* wip: update to halo2-lib v0.2.0

* wip: recursion example currently works if circuit does not use simple
selectors

* Simple selector compression is not correctly handled by `CsProxy` at
  the moment

* fix: got recursion example working with halo2-lib

* where halo2-lib uses simple selectors
* only works if all selector columns are in active use and can't be
  optimized away
* tricks `CsProxy` by turning all selectors on in row `0`

* feat: add `sdk` module for snark aggregation toolkit

* chore: move `aggregation` under `halo2` inside `sdk`

* Update `EvmLoader` to generate Yul code instead of bytecode (privacy-scaling-explorations#15)

* Update `EvmLoader` to generate Yul instead of bytecode

* feat: simplify

* feat: Add missing end_gas_metering impl

Co-authored-by: Han <[email protected]>

Co-authored-by: Han <[email protected]>

* feat: add `evm` module to `sdk` with evm proof and verifier functions

* add bench for zkevm EVM circuit, currently uses my local repo because
  official repo does not compile... use scroll-dev-1115 circuit
implementation where power of randomness is generated internally and not
from public inputs (far too many public inputs for aggregation)

* chore: update Cargo.toml

* reorg: rename repo to snark-verifier

* split into two crates: snark-verifier and snark-verifier-sdk
* previous module sdk moved to snark-verifier-sdk

Co-authored-by: Han <[email protected]>
Co-authored-by: DoHoon Kim <[email protected]>
@aguzmant103 aguzmant103 removed this from the successful-erc20 milestone Feb 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: 🆕 Product Backlog Items
Development

No branches or pull requests

2 participants