Skip to content

Update WHIR version and integrate buffer abstraction#482

Open
zkfriendly wants to merge 1 commit into
mainfrom
zkfr/integrate-buffer-abstraction
Open

Update WHIR version and integrate buffer abstraction#482
zkfriendly wants to merge 1 commit into
mainfrom
zkfr/integrate-buffer-abstraction

Conversation

@zkfriendly

@zkfriendly zkfriendly commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

This PR updates the whir dependency and refactors ProveKit's interfaces to work with Whir's new buffer abstraction.

The changes adapt the BN254 backend, prover, R1CS compiler, Spark integration, and related tooling to the updated Whir APIs. They also update the affected NTT, witness serialization, setup, memory, and benchmark code paths.

Buffer abstraction status

At the Whir boundaries, ProveKit currently converts data using Buffer::from and Buffer::to_slice. ProveKit's own operations have not yet been ported to operate directly on the buffer abstraction.

These conversions have no meaningful cost on CPU because the buffers remain CPU-backed. On GPU, however, converting back to slices would force device-to-host readbacks that could otherwise be avoided. A follow-up will port the relevant ProveKit operations to work directly with buffers so data can remain on the GPU across the ProveKit/Whir boundary.

@vercel

vercel Bot commented Jul 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
docs-provekit-org Ready Ready Preview Jul 23, 2026 8:35am

Request Review

@github-actions

github-actions Bot commented Jul 22, 2026

Copy link
Copy Markdown

CSP benchmarks

Metric Value
Workflow status [FAIL] failure
Commit 1fd96a057446
Run #29949182299
Circuits benchmarked 0
Iterations averaged per circuit 3

Prover time, peak RSS, peak heap, and verifier time are arithmetic means across the iterations. Peak heap comes from the largest peak memory entry in provekit-cli prove's tracing output; peak RSS is reported by /usr/bin/time -v (max-resident-set-size).

Each metric cell shows the current value followed by the percentage delta against the latest successful main run #29743045698. (new) marks circuits absent from the baseline.

Results

No benchmark results were produced.

@zkfriendly
zkfriendly changed the base branch from main to spark July 23, 2026 08:20
@zkfriendly
zkfriendly changed the base branch from spark to main July 23, 2026 08:20
@zkfriendly
zkfriendly force-pushed the zkfr/integrate-buffer-abstraction branch from 6ac5dc7 to 1ee05a6 Compare July 23, 2026 08:36
@zkfriendly
zkfriendly marked this pull request as ready for review July 23, 2026 08:42
@zkfriendly zkfriendly changed the title wip: integrate buffer abstraction Update WHIR version and integrate buffer abstraction Jul 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant