-
Notifications
You must be signed in to change notification settings - Fork 103
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Block machine: only use JIT on Goldilocks #2541
Draft
georgwiese
wants to merge
13
commits into
inline-witness-assignments
Choose a base branch
from
block-only-jit2
base: inline-witness-assignments
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ca20f6d
to
c75f078
Compare
This was referenced Mar 13, 2025
1196ce3
to
5b9575c
Compare
github-merge-queue bot
pushed a commit
that referenced
this pull request
Mar 13, 2025
Extracted from #2541 Fixes a bug that the machine parts doesn't include the intermediate definitions that only appear in one of the receives. An example of this is the [Arith large](https://github.com/powdr-labs/powdr/blob/main/std/machines/large_field/arith.asm) machine, which has intermediates like `x1c` in their list of arguments, but doesn't refer to the in any constraint. --------- Co-authored-by: chriseth <[email protected]>
github-merge-queue bot
pushed a commit
that referenced
this pull request
Mar 14, 2025
Extracted from #2541 This makes JIT witgen work for the sqrt example.
5b9575c
to
8d80f9c
Compare
711c83f
to
91d870e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
⚠️ Performance Alert ⚠️
Possible performance regression was detected for benchmark 'Benchmarks'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20
.
Benchmark suite | Current: 91d870e | Previous: b9ff8cf | Ratio |
---|---|---|---|
jit-witgen-benchmark/jit_witgen_benchmark |
40470810431 ns/iter (± 146383195 ) |
30505971932 ns/iter (± 143565764 ) |
1.33 |
This comment was automatically generated by workflow using github-action-benchmark.
github-merge-queue bot
pushed a commit
that referenced
this pull request
Mar 18, 2025
This PR changes the usage of `std::prover::provide_value` in `Keccakf32Memory` to `std::prover::compute_from`, in the hope of being able to use the JIT for this machine in #2541. ~Witgen time goes of `test_data/std/keccakf32_memory_test.asm` from 60s to 76s, probably because too many things are being evaluated.~ This is fixed by 1c15647.
c20c57a
to
789c0ac
Compare
789c0ac
to
50ceab8
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Builds on #2553
Like #2540, but falls back to run-time witgen on fields other than Goldilocks.