Skip to content

Commit

Permalink
docs(circom): add "Gpu Support" descrition
Browse files Browse the repository at this point in the history
  • Loading branch information
chokobole committed Jul 15, 2024
1 parent 52aa3aa commit 2ccfcbb
Showing 1 changed file with 11 additions and 8 deletions.
19 changes: 11 additions & 8 deletions vendors/circom/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,27 +2,30 @@

## Features

| | Tachyon | [Circom-compat] | [Rapidsnark] |
| ------------------------- | --------- | --------------- | ------------ |
| Language | C++ | Rust | C++ |
| Witness Generator | C(Fast) | WASM(Slow) | - |
| Flexible Witness Handling | Yes | Yes | No |
| Field Support | All | Bn128 | Bn128 |
| [FFIASM] Generated Field | Yes(Fast) | No(Slow) | Yes(Fast) |
| Gpu Support | Yes | No | Yes |
| | Tachyon | [Circom-compat] | [Rapidsnark] |
| ------------------------- | --------- | --------------- | --------------------------------- |
| Language | C++ | Rust | C++ |
| Witness Generator | C(Fast) | WASM(Slow) | - |
| Flexible Witness Handling | Yes | Yes | No |
| Field Support | All | Bn128 | Bn128 |
| [FFIASM] Generated Field | Yes(Fast) | No(Slow) | Yes(Fast) |
| Gpu Support | Yes | No | Yes([Orbiter-Finance/Rapidsnark]) |

1. Speed: Tachyon runs approximately 10 times faster than [Rapidsnark]! The [benchmark] was conducted using [sha256_512.circom] with a degree of 2¹⁶.
2. Seamless Workflow: Tachyon doesn't require you to run any additional programs just to generate a circom proof. No need for [snarkjs] for witness file generation.
3. Flexible Witness Handling: With Tachyon, you can modify the witness directly in your program. No need to create a separate JSON file with [snarkjs].
4. Integrated Build System: Tachyon seamlessly integrates circom compilation into the build system, specifically bazel. When you make changes to a circom file, it's compiled accordingly and built in parallel, ensuring a safe and efficient process.
5. Field Support: Tachyon isn't limited to bn128; it easily supports all fields!
6. Gpu Support: Both Tachyon and [Orbiter-Finance/Rapidsnark] support MSM / NTT support using [icicle].

[Circom-compat]: https://github.com/arkworks-rs/circom-compat
[Rapidsnark]: https://github.com/iden3/rapidsnark
[FFIASM]: https://github.com/iden3/ffiasm
[Orbiter-Finance/Rapidsnark]: https://github.com/Orbiter-Finance/rapidsnark
[benchmark]: /vendors/circom/benchmark/README.md
[sha256_512.circom]: /vendors/circom/benchmark/sha256_512.circom
[snarkjs]: https://github.com/iden3/snarkjs
[icicle]: https://github.com/ingonyama-zk/icicle

## How to build

Expand Down

0 comments on commit 2ccfcbb

Please sign in to comment.