barretenberg
barretenberg copied to clipboard
Use structured polynomials to optimize sumcheck memory
We currently just allocate dyadic_circuit_size/2 size for all of the polynomials (including shifted ones!) during sumcheck, which is a huge amount of memory. In ClientIVC, we don't really care about this memory too much because its basically overshadowed by folding, which has 2 instances. However, for UltraHonk, sumcheck still is one of the peaks we care about. With lazy commitment key allocation, it no longer becomes the highest peak, but its still something to keep in mind in case it's a problem in WASM and it's possible that avoiding full polynomial allocations saves a little bit of time.