In the current implementation of sp1_sdk, circuit artifacts are downloaded and extracted using tar, as shown in the code here.
While this approach worked well in version 1 (where the artifacts were under 4GB), version 2 introduces larger circuit artifacts (11GB+) due to the addition of Groth16. This poses a challenge when running sp1_sdk in GitHub workflows, as the free GitHub runners run out of storage space while attempting to unzip the files, as seen in this failed workflow.
Expected Behavior
To optimize storage use and prevent this issue, only the necessary artifacts for the proof scheme being used should be installed (i.e., Plonk artifacts for Plonk proofs and Groth16 artifacts for Groth16 proofs).
I've verified that this is the issue by constructing my own circuit artifacts (with groth16 deleted), storing them with git-lfs as to not clutter the repo's git history. We'll be using this as a temporary solution.
Description
In the current implementation of sp1_sdk, circuit artifacts are downloaded and extracted using tar, as shown in the code here.
While this approach worked well in version 1 (where the artifacts were under 4GB), version 2 introduces larger circuit artifacts (11GB+) due to the addition of Groth16. This poses a challenge when running sp1_sdk in GitHub workflows, as the free GitHub runners run out of storage space while attempting to unzip the files, as seen in this failed workflow.
Expected Behavior
To optimize storage use and prevent this issue, only the necessary artifacts for the proof scheme being used should be installed (i.e., Plonk artifacts for Plonk proofs and Groth16 artifacts for Groth16 proofs).
Version
v2.0.0+