Skip to content

Commit cc53021

Browse files
committed
Merge branch 'main' into improve_range_constraint_size
2 parents f0d6aa3 + 70cff23 commit cc53021

29 files changed

+1283
-200
lines changed

.github/workflows/nightly-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ jobs:
136136
~/.cargo/registry
137137
~/.cargo/git
138138
target
139-
key: ${{ runner.os }}-cargo-release-${{ hashFiles('**/Cargo.toml') }}
139+
key: ${{ runner.os }}-cargo-release-apc-${{ hashFiles('**/Cargo.toml') }}
140140
- name: Build
141141
run: cargo build --release -p powdr-openvm
142142
- name: Run tests

.github/workflows/pr-tests.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,9 @@ jobs:
8484
- "2"
8585
- "3"
8686
- "4"
87+
- "5"
88+
- "6"
89+
- "7"
8790

8891
steps:
8992
- uses: actions/checkout@v4
@@ -105,7 +108,7 @@ jobs:
105108
run: rustup install nightly-2025-02-14 --component rust-src
106109
- uses: taiki-e/install-action@nextest
107110
- name: Run default tests
108-
run: cargo nextest run --archive-file tests.tar.zst --workspace-remap . --verbose --partition count:"${{ matrix.test }}"/4 --no-tests=warn
111+
run: cargo nextest run --archive-file tests.tar.zst --workspace-remap . --verbose --partition count:"${{ matrix.test }}"/7 --no-tests=warn
109112
env:
110113
POWDR_STD: ${{ github.workspace }}/std/
111114

autoprecompiles/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ tracing = "0.1.40"
2020
tracing-subscriber = { version = "0.3.17", features = ["std", "env-filter"] }
2121
serde_json = "1.0.140"
2222
rayon = "1.10.0"
23-
strum = "0.27.1"
23+
strum = { version = "0.27.0", features = ["derive"] }
2424

2525
metrics = "0.23.0"
2626

autoprecompiles/src/constraint_optimizer.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@ pub fn optimize_constraints<P: FieldElement, V: Ord + Clone + Eq + Hash + Displa
5050
let constraint_system = solver_based_optimization(constraint_system, solver)?;
5151
stats_logger.log("solver-based optimization", &constraint_system);
5252

53+
let constraint_system = remove_trivial_constraints(constraint_system);
54+
stats_logger.log("removing trivial constraints", &constraint_system);
55+
5356
let constraint_system =
5457
remove_free_variables(constraint_system, solver, bus_interaction_handler.clone());
5558
stats_logger.log("removing free variables", &constraint_system);
@@ -86,8 +89,10 @@ fn solver_based_optimization<T: FieldElement, V: Clone + Ord + Hash + Display>(
8689
) -> Result<JournalingConstraintSystem<T, V>, Error> {
8790
let assignments = solver.solve()?;
8891
log::trace!("Solver figured out the following assignments:");
89-
for (var, value) in assignments.iter() {
90-
log::trace!(" {var} = {value}");
92+
if log::log_enabled!(log::Level::Trace) {
93+
for (var, value) in assignments.iter() {
94+
log::trace!(" {var} = {value}");
95+
}
9196
}
9297
// Assert that all substitutions are affine so that the degree
9398
// does not increase.

autoprecompiles/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ pub mod evaluation;
2929
pub mod execution_profile;
3030
pub mod expression;
3131
pub mod expression_conversion;
32+
pub mod low_degree_bus_interaction_optimizer;
3233
pub mod memory_optimizer;
3334
pub mod optimizer;
3435
pub mod powdr;

0 commit comments

Comments
 (0)