Propose shipping Enzyme-enabled kernels in pip wheels (follow-up to #710) - #814
Propose shipping Enzyme-enabled kernels in pip wheels (follow-up to #710)#814jurasic-pf with Copilot wants to merge 3 commits into
Conversation
Co-authored-by: jurasic-pf <166746189+jurasic-pf@users.noreply.github.com>
|
@copilot Follow the implementation proposal added in this PR |
…ipeline Co-authored-by: jurasic-pf <166746189+jurasic-pf@users.noreply.github.com>
…flow Co-authored-by: jurasic-pf <166746189+jurasic-pf@users.noreply.github.com>
Implemented in |
There was a problem hiding this comment.
⚠️ Performance Alert ⚠️
Possible performance regression was detected for benchmark.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.50.
| Benchmark suite | Current: b08a0db | Previous: 72d0c76 | Ratio |
|---|---|---|---|
benchmarks/test_benchmarks.py::test_bench_simsopt_adjoint_gradient |
5.741460991999986 seconds (stddev: 0) |
3.6532505499999957 seconds (stddev: 0) |
1.57 |
This comment was automatically generated by workflow using github-action-benchmark.
#710 wires an Enzyme-derived exact JVP/VJP of the force kernel into
vmecpp_corebehind-DVMECPP_ENABLE_ENZYME=ON, but that flag is never set in thecibuildwheel-built pip wheels — it's only exercised by a dedicated CI job with its own from-scratch Clang/LLVM + Enzyme toolchain. This adds a design proposal for closing that gap.Changes
docs/enzyme_wheel_packaging.md: proposal doc coveringVMECPP_ENZYME_JVP_OBJECT/VMECPP_ENZYME_VJP_OBJECT) instead of installing Clang/LLVM/Enzyme insidemanylinux/macOScibuildwheelcontainers.ofiles into the normal wheel build viaCMAKE_ARGSdocs/index.md: links the new doc from the toctreeScope
This is a design proposal only, not an implementation. The actual toolchain and CI wiring is substantial, cross-platform work intended to be done and validated incrementally in follow-up PRs, building on this proposal.