Skip to content

Tracking issue for synthesis speedups #2637

Open
@ljedrz

Description

@ljedrz

As requested in #2621 (comment) (which also contains some ideas).

Open PRs:

Potential future improvements:

  1. use an arena (e.g. bumpalo) to create the vectors inside LinearCombinations
  2. use an arena to allocate the Rc objects
    • similar principle as 1, but not viable due to the allocator_api feature still being unstable; it might require less refactoring
  3. while [Perf] Use SmallVec in LinearCombination #2622 is a solid improvement, a singlevec is slightly faster
  4. once [Perf] Simplify the R1CS > Assignment conversion #2621 and [Perf] Use SmallVec in LinearCombination #2622 are in, this suggestion has good potential for a further improvement and simplification already refactored away
  5. tweaking the Boolean bit operations can result in a modest improvement; they were reverted from [Perf] Reduce allocations in basic circuit operations #2620 in order to reduce the diff

What hasn't worked:

Cc @vicsn

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions