Skip to content

Roll the CI compile cache forward and trim redundant optim tests - #180

Merged
jessegrabowski merged 10 commits into
pymc-devs:mainfrom
jessegrabowski:rebalance-ci-groups
Nov 8, 2026
Merged

jessegrabowski merged 10 commits into
pymc-devs:mainfrom
jessegrabowski:rebalance-ci-groups

Conversation

@jessegrabowski

@jessegrabowski jessegrabowski commented Nov 7, 2026 •

Copy link
Copy Markdown
Member

The actions/cache key for ~/.pytensor in run_tests.yml now ends in the commit SHA, and the old lockfile-hash key is the first restore key. A saved cache entry is never overwritten, so the old key kept whatever the first run on each pixi.lock compiled. Every graph changed after that run compiled cold on every later run.

Main at 142ad12 restored the optim cache on an exact key match and still took 12.4m, because #179 changed the L-BFGS graphs after that entry was saved. Locally the same group takes 444s with an empty cache and 84s with a warm one.

On Windows the cache step now caches ~/AppData/Local/PyTensor, which is where pytensor compiles there. ~/.pytensor doesn't exist on Windows, so the windows smoke job had never saved a cache.

The pytensor pin in pyproject.toml and conda_envs/ now requires >=3.3.8.

Tests in tests/optim/ that another test already covers are removed, and several tests now share compiled functions. test_rule_reduces_loss runs one case per rule. The L-BFGS kept-trial comparisons in test_rules.py now compile one step and run it twice from a restored snapshot.

test_a_single_precision_search_stays_in_single_precision now pins a float64 run that brackets over six trials. Its old case accepted the first trial, so the float32 zoom never ran.

Closes #109


📚 Documentation preview 📚: https://pytensor-ml--180.org.readthedocs.build/en/180/

@jessegrabowski jessegrabowski changed the title Roll the pytensor compile cache forward and bump pytensor to 3.3.8 Roll the CI compile cache forward and trim redundant optim tests Nov 8, 2026
@jessegrabowski
jessegrabowski merged commit bea11e1 into pymc-devs:main Nov 8, 2026
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test groups have drifted out of balance, so CI wall clock is 8 minutes

1 participant