From 2abbbbd2dce6af36902ddc979de0c07eac2f927f Mon Sep 17 00:00:00 2001 From: kunxian xia Date: Mon, 10 Mar 2025 20:59:34 +0800 Subject: [PATCH] patch stark-backend and plonky3 --- zkvm-prover/Cargo.lock | 326 +++++++++++++++++++++++++++++++++++++---- zkvm-prover/Cargo.toml | 31 ++++ 2 files changed, 331 insertions(+), 26 deletions(-) diff --git a/zkvm-prover/Cargo.lock b/zkvm-prover/Cargo.lock index f314729efa..4b0fbdf1af 100644 --- a/zkvm-prover/Cargo.lock +++ b/zkvm-prover/Cargo.lock @@ -755,6 +755,15 @@ version = "1.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b964d184e89d9b6b67dd2715bc8e74cf3107fb2b529990c90cf517326150bf4" +[[package]] +name = "approx" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" +dependencies = [ + "num-traits", +] + [[package]] name = "ark-ff" version = "0.3.0" @@ -1294,6 +1303,20 @@ name = "bytemuck" version = "1.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" +dependencies = [ + "bytemuck_derive", +] + +[[package]] +name = "bytemuck_derive" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.98", +] [[package]] name = "byteorder" @@ -1710,6 +1733,52 @@ dependencies = [ "cipher", ] +[[package]] +name = "cust" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d6cc71911e179f12483b9734120b45bd00bf64fab085cc4818428523eedd469" +dependencies = [ + "bitflags 1.3.2", + "bytemuck", + "cust_core", + "cust_derive", + "cust_raw", + "find_cuda_helper", +] + +[[package]] +name = "cust_core" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "039f79662cb8f890cbf335e818cd522d6e3a53fe63f61d1aaaf859cd3d975f06" +dependencies = [ + "cust_derive", + "glam", + "mint", + "vek", +] + +[[package]] +name = "cust_derive" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a3bc95fe629aed92b2423de6ccff9e40174b21d19cb6ee6281a4d04ac72f66" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "cust_raw" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbf40d6ade12cb9828bbc844b9875c7b93d25e67a3c9bf61c7aa3ae09e402bf8" +dependencies = [ + "find_cuda_helper", +] + [[package]] name = "darling" version = "0.20.10" @@ -1874,6 +1943,15 @@ dependencies = [ "subtle", ] +[[package]] +name = "directories" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" +dependencies = [ + "dirs-sys", +] + [[package]] name = "dirs" version = "5.0.1" @@ -2271,6 +2349,15 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "find_cuda_helper" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9f9e65c593dd01ac77daad909ea4ad17f0d6d1776193fc8ea766356177abdad" +dependencies = [ + "glob", +] + [[package]] name = "fixed-hash" version = "0.8.0" @@ -2539,6 +2626,15 @@ dependencies = [ "syn 2.0.98", ] +[[package]] +name = "glam" +version = "0.20.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f43e957e744be03f5801a55472f593d43fabdebf25a4585db250f04d86b1675f" +dependencies = [ + "num-traits", +] + [[package]] name = "glob" version = "0.3.2" @@ -2879,6 +2975,15 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "home" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" +dependencies = [ + "windows-sys 0.59.0", +] + [[package]] name = "http" version = "0.2.12" @@ -3587,6 +3692,16 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" +[[package]] +name = "matrixmultiply" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9380b911e3e96d10c1f415da0876389aaf1b56759054eeb0de7df940c456ba1a" +dependencies = [ + "autocfg", + "rawpointer", +] + [[package]] name = "maybe-rayon" version = "0.1.1" @@ -3707,6 +3822,12 @@ dependencies = [ "adler2", ] +[[package]] +name = "mint" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e53debba6bda7a793e5f99b8dacf19e626084f525f7829104ba9898f367d85ff" + [[package]] name = "mio" version = "1.0.3" @@ -3776,6 +3897,20 @@ dependencies = [ "tempfile", ] +[[package]] +name = "ndarray" +version = "0.15.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32" +dependencies = [ + "matrixmultiply", + "num-complex", + "num-integer", + "num-traits", + "rawpointer", + "rayon", +] + [[package]] name = "nibble_vec" version = "0.1.0" @@ -3904,6 +4039,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ "autocfg", + "libm", ] [[package]] @@ -4912,7 +5048,7 @@ dependencies = [ [[package]] name = "openvm-stark-backend" version = "1.0.0-rc.0" -source = "git+https://github.com/openvm-org/stark-backend.git?rev=bc364134b8315c27bfd29c6e77ac79fe77090137#bc364134b8315c27bfd29c6e77ac79fe77090137" +source = "git+ssh://git@github.com/scroll-tech/openvm-stark-gpu.git?branch=main#8831ae06618513d5d46142a2f8c8324184e3dec1" dependencies = [ "async-trait", "cfg-if", @@ -4924,6 +5060,9 @@ dependencies = [ "p3-challenger", "p3-commit", "p3-field", + "p3-gpu-backend", + "p3-gpu-base", + "p3-gpu-module", "p3-matrix", "p3-maybe-rayon", "p3-uni-stark", @@ -4938,7 +5077,7 @@ dependencies = [ [[package]] name = "openvm-stark-sdk" version = "1.0.0-rc.0" -source = "git+https://github.com/openvm-org/stark-backend.git?rev=bc364134b8315c27bfd29c6e77ac79fe77090137#bc364134b8315c27bfd29c6e77ac79fe77090137" +source = "git+ssh://git@github.com/scroll-tech/openvm-stark-gpu.git?branch=main#8831ae06618513d5d46142a2f8c8324184e3dec1" dependencies = [ "derivative", "derive_more 0.99.19", @@ -4954,6 +5093,7 @@ dependencies = [ "p3-dft", "p3-fri", "p3-goldilocks", + "p3-gpu-backend", "p3-keccak", "p3-merkle-tree", "p3-poseidon", @@ -5023,7 +5163,7 @@ dependencies = [ [[package]] name = "p3-air" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "p3-field", "p3-matrix", @@ -5032,7 +5172,7 @@ dependencies = [ [[package]] name = "p3-baby-bear" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "p3-field", "p3-mds", @@ -5046,7 +5186,7 @@ dependencies = [ [[package]] name = "p3-blake3" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "blake3", "p3-symmetric", @@ -5056,7 +5196,7 @@ dependencies = [ [[package]] name = "p3-bn254-fr" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "ff 0.13.0", "halo2curves", @@ -5071,7 +5211,7 @@ dependencies = [ [[package]] name = "p3-challenger" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "p3-field", "p3-maybe-rayon", @@ -5083,12 +5223,14 @@ dependencies = [ [[package]] name = "p3-commit" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ + "anyhow", "itertools 0.13.0", "p3-challenger", "p3-dft", "p3-field", + "p3-gpu-base", "p3-matrix", "p3-util", "serde", @@ -5097,7 +5239,7 @@ dependencies = [ [[package]] name = "p3-dft" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "itertools 0.13.0", "p3-field", @@ -5110,7 +5252,7 @@ dependencies = [ [[package]] name = "p3-field" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "itertools 0.13.0", "num-bigint 0.4.6", @@ -5127,26 +5269,31 @@ dependencies = [ [[package]] name = "p3-fri" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ + "anyhow", "itertools 0.13.0", "p3-challenger", "p3-commit", "p3-dft", "p3-field", + "p3-gpu-backend", + "p3-gpu-base", "p3-interpolation", "p3-matrix", "p3-maybe-rayon", + "p3-merkle-tree", "p3-util", "rand", "serde", "tracing", + "zkhash", ] [[package]] name = "p3-goldilocks" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "num-bigint 0.4.6", "p3-dft", @@ -5160,10 +5307,94 @@ dependencies = [ "serde", ] +[[package]] +name = "p3-gpu-backend" +version = "0.1.0" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" +dependencies = [ + "anyhow", + "bytemuck", + "cc", + "cust", + "cust_raw", + "ff 0.13.0", + "itertools 0.13.0", + "lazy_static", + "ndarray", + "once_cell", + "p3-baby-bear", + "p3-commit", + "p3-dft", + "p3-field", + "p3-gpu-base", + "p3-gpu-build", + "p3-interpolation", + "p3-matrix", + "p3-maybe-rayon", + "p3-poseidon2", + "p3-util", + "parking_lot 0.12.3", + "paste", + "rand", + "rand_core", + "rayon", + "serde", + "sppark", + "tracing", + "transpose", +] + +[[package]] +name = "p3-gpu-base" +version = "0.1.0" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" +dependencies = [ + "anyhow", + "bytemuck", + "cust", + "cust_raw", + "hex", + "lazy_static", + "p3-field", + "p3-matrix", + "parking_lot 0.12.3", + "tracing", +] + +[[package]] +name = "p3-gpu-build" +version = "0.1.0" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" +dependencies = [ + "cc", + "directories", + "hex", + "p3-gpu-field", + "sha2", + "tempfile", +] + +[[package]] +name = "p3-gpu-field" +version = "0.1.0" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" + +[[package]] +name = "p3-gpu-module" +version = "0.1.0" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" +dependencies = [ + "p3-field", + "p3-gpu-base", + "p3-matrix", + "p3-util", + "tracing", +] + [[package]] name = "p3-interpolation" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "p3-field", "p3-matrix", @@ -5174,7 +5405,7 @@ dependencies = [ [[package]] name = "p3-keccak" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "itertools 0.13.0", "p3-field", @@ -5186,21 +5417,23 @@ dependencies = [ [[package]] name = "p3-keccak-air" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "p3-air", "p3-field", + "p3-gpu-backend", "p3-matrix", "p3-maybe-rayon", "p3-util", "rand", "tracing", + "zkhash", ] [[package]] name = "p3-matrix" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "itertools 0.13.0", "p3-field", @@ -5215,7 +5448,7 @@ dependencies = [ [[package]] name = "p3-maybe-rayon" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "rayon", ] @@ -5223,7 +5456,7 @@ dependencies = [ [[package]] name = "p3-mds" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "itertools 0.13.0", "p3-dft", @@ -5237,11 +5470,13 @@ dependencies = [ [[package]] name = "p3-merkle-tree" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ + "anyhow", "itertools 0.13.0", "p3-commit", "p3-field", + "p3-gpu-base", "p3-matrix", "p3-maybe-rayon", "p3-symmetric", @@ -5254,7 +5489,7 @@ dependencies = [ [[package]] name = "p3-monty-31" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "itertools 0.13.0", "num-bigint 0.4.6", @@ -5275,7 +5510,7 @@ dependencies = [ [[package]] name = "p3-poseidon" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "p3-field", "p3-mds", @@ -5286,7 +5521,7 @@ dependencies = [ [[package]] name = "p3-poseidon2" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "gcd", "p3-field", @@ -5298,7 +5533,7 @@ dependencies = [ [[package]] name = "p3-poseidon2-air" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "p3-air", "p3-field", @@ -5314,7 +5549,7 @@ dependencies = [ [[package]] name = "p3-symmetric" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "itertools 0.13.0", "p3-field", @@ -5324,7 +5559,7 @@ dependencies = [ [[package]] name = "p3-uni-stark" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "itertools 0.13.0", "p3-air", @@ -5342,7 +5577,7 @@ dependencies = [ [[package]] name = "p3-util" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=b0591e9#b0591e9b82d58d10f86359875b5d5fa96433b4cf" +source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?branch=openvm-v2#0dffdc54de5438e4d8399535b0467b7fdebf10c8" dependencies = [ "serde", ] @@ -5921,6 +6156,12 @@ dependencies = [ "bitflags 2.8.0", ] +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + [[package]] name = "rayon" version = "1.10.0" @@ -8082,6 +8323,15 @@ dependencies = [ "der", ] +[[package]] +name = "sppark" +version = "0.1.8" +source = "git+https://github.com/scroll-tech/sppark.git?branch=sp1-v3.0#07fe0de43a745a395dd718c735cdfe0cfc457b0a" +dependencies = [ + "cc", + "which", +] + [[package]] name = "stability" version = "0.2.1" @@ -9017,6 +9267,18 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" +[[package]] +name = "vek" +version = "0.15.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8085882662f9bc47fc8b0cdafa5e19df8f592f650c02b9083da8d45ac9eebd17" +dependencies = [ + "approx", + "num-integer", + "num-traits", + "rustc_version 0.4.1", +] + [[package]] name = "version_check" version = "0.9.5" @@ -9210,6 +9472,18 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "which" +version = "4.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +dependencies = [ + "either", + "home", + "once_cell", + "rustix", +] + [[package]] name = "winapi" version = "0.3.9" diff --git a/zkvm-prover/Cargo.toml b/zkvm-prover/Cargo.toml index abe2e13ac8..8303583184 100644 --- a/zkvm-prover/Cargo.toml +++ b/zkvm-prover/Cargo.toml @@ -45,3 +45,34 @@ clap = { version = "4.5", features = ["derive"] } ctor = "0.2.8" url = "2.5.4" serde_bytes = "0.11.15" + +[patch."https://github.com/openvm-org/stark-backend.git"] +openvm-stark-backend = { git = "ssh://git@github.com/scroll-tech/openvm-stark-gpu.git", branch = "main", features = ["gpu"] } +openvm-stark-sdk = { git = "ssh://git@github.com/scroll-tech/openvm-stark-gpu.git", branch = "main", features = ["gpu"] } + +[patch."https://github.com/Plonky3/Plonky3.git"] +p3-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-field = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-commit = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-matrix = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-baby-bear = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", features = [ + "nightly-features", +], branch = "openvm-v2" } +p3-util = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-challenger = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-dft = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-fri = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-goldilocks = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-keccak = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-keccak-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-blake3 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-mds = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-merkle-tree = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-monty-31 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-poseidon = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-poseidon2 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-poseidon2-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-symmetric = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-uni-stark = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } +p3-maybe-rayon = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" } # the "parallel" feature is NOT on by default to allow single-threaded benchmarking +p3-bn254-fr = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", branch = "openvm-v2" }