Share dummy periphery across all APCs (#2870)

All APCs need access to periphery chips such as the range checker or the
xor chip.
These chips are expensive to create in memory, but they are not needed
in the end and just get thrown away.
Before this PR, each APC creates one instance of them.
After this PR, a single instance is created and then shared across all
APCs.
This commit is contained in:
Thibaut Schaeffer
2025-06-16 12:00:11 +02:00
committed by GitHub
parent a515b323f9
commit 3454b41d88
10 changed files with 364 additions and 156 deletions

View File

@@ -83,33 +83,38 @@ powdr-autoprecompiles = { path = "./autoprecompiles", version = "0.1.4" }
powdr-openvm = { path = "./openvm", version = "0.1.4" }
# openvm
openvm = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-build = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-rv32im-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-rv32im-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-rv32im-guest = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc", default-features = false }
openvm-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-circuit-derive = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-circuit-primitives = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-circuit-primitives-derive = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-instructions = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-instructions-derive = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-sdk = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc", default-features = false, features = [
openvm = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-build = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-rv32im-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-rv32im-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-rv32im-guest = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865", default-features = false }
openvm-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-circuit-derive = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-circuit-primitives = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-circuit-primitives-derive = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-instructions = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-instructions-derive = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-sdk = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865", default-features = false, features = [
"parallel",
"jemalloc",
"nightly-features",
"bench-metrics",
] }
openvm-ecc-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-keccak256-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-keccak256-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-sha256-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-sha256-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-algebra-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-bigint-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc" }
openvm-native-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc", default-features = false }
openvm-native-recursion = { git = "https://github.com/powdr-labs/openvm.git", rev = "f12a2fc", default-features = false }
openvm-ecc-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-ecc-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-keccak256-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-keccak256-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-sha256-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-sha256-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-algebra-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-algebra-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-bigint-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-bigint-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-pairing-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-pairing-transpiler = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865" }
openvm-native-circuit = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865", default-features = false }
openvm-native-recursion = { git = "https://github.com/powdr-labs/openvm.git", rev = "7f85865", default-features = false }
# stark-backend
openvm-stark-sdk = { git = "https://github.com/powdr-labs/stark-backend.git", rev = "fe1c5a8", default-features = false, features = [