Deferred Interning (CGO'27) · E6: make verify-arch independently toggleable
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 14
- Forks
- 2
- Avg merge
- 12h 42m
- Merged PRs (30d)
- 61
Description
Paper: Deferred Interning: Deterministic, Lock-Free Parallel Compilation — CGO 2027 R2, deadline 2026-09-10 AoE.
Measurement plan:vx-review/parallel-frontend-paper/MEASUREMENT_PLAN.md· Vx tracking: hiraditya/Vx.1#300 · cross-repo index: hiraditya/vx-review#5
E6 of the CGO 2027 R2 measurement plan — and a gap in it.
The problem
E6 asks for "verify-arch on vs. off, same corpus: overhead %", to support the claim that executable invariants are affordable in debug and free in release.
As gated today that measurement cannot be produced. src/parallel_architecture_verifier.rs is #[cfg(debug_assertions)] (line 15) and there is no runtime flag — verified: nothing matching verify.arch in src/driver.rs or src/main.rs. So "on vs. off" is really "debug build vs. release build," which conflates the verifier's cost with every other debug assertion, bounds check, and optimisation-level difference in the binary. The resulting number would not be the verifier's overhead, and a reviewer will say so.
Scope
- make the verifier independently toggleable within a single build — runtime flag or cargo feature, either is fine, so long as one binary can run both arms
- confirm the release claim separately: verifier compiled out entirely, not merely skipped
- then measure overhead % on the E2 corpus
Doing this first is what makes E6's number mean what the paper says it means.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read src/parallel_architecture_verifier.rs and inspect the related paths in src/driver.rs and src/main.rs, then review MEASUREMENT_PLAN.md for E6 and the E2 corpus. Choose a supported independent toggle that permits both arms in one build, verify the release build compiles the verifier out, and record the resulting overhead measurement.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- compilers, performance
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 56/100