arkworks-rs / snark

Interfaces for Relations and SNARKs for these relations
https://www.arkworks.rs
Apache License 2.0
778 stars 209 forks source link

Parallelize Groth16 #157

Closed gakonst closed 4 years ago

gakonst commented 4 years ago

Calculating a b and c can be done in parallel here: https://github.com/scipr-lab/zexe/blob/master/groth16/src/prover.rs#L268-L332

Should improve our proving times. Implementation via crossbeam scoped threads should be straightforward.

I'll tackle this this week

gakonst commented 4 years ago

Moving this comment here: https://github.com/scipr-lab/zexe/pull/159#issuecomment-605853721

I think it's not as trivial due to how the signature of the miller_loop function is in the trait. Rayon iterators are not really IntoIterator

Pratyush commented 4 years ago

Can this issue be closed @gakonst?