Daniel Lubarov 3f22663296
Split up PartitionWitness data (#273)
* Split up `PartitionWitness` data

This addresses two minor inefficiencies:
- Some preprocessed forest data was being cloned during proving.
- Some of the `ForestNode` data (like node sizes) is only needed in preprocessing, not proving. It was taking up cache space during proving because it was interleaved with data that is used during proving (parents, values).

Now `Forest` contains the disjoint-set forest. `PartitionWitness` is now mainly a Vec of target values; it also holds a reference to the (preprocessed) representative map.

On my laptop, this speeds up witness generation ~12%, resulting in an overall ~0.5% speedup.

* Feedback

* No size data (#278)

* No size data

* feedback
2021-09-28 22:31:20 -07:00
..
2021-09-07 18:28:28 -07:00
2021-09-07 18:28:28 -07:00
2021-09-07 18:28:28 -07:00
2021-09-07 18:28:28 -07:00
2021-09-07 18:28:28 -07:00
2021-09-07 18:28:28 -07:00
2021-09-28 22:31:20 -07:00
2021-09-18 08:55:54 +02:00
2021-09-07 18:28:28 -07:00
2021-09-07 18:28:28 -07:00
2021-09-07 18:28:28 -07:00
2021-09-22 11:49:28 -07:00