pymc-devs / pymc-devs/pytensor-ml

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

Open
#109 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
9
Forks
7
Avg merge
6h 55m
Merged PRs (30d)
40

Description

The ubuntu groups were balanced on cold-compile time when they were set up, but layers and optim have grown into it since — layers alone now takes 4x what attention and rest do, and it sets the wall clock by itself. The windows smoke job is the other pole, 7m29 for three files.

layers hasn't been rebalanced since it was defined in #64, and five test files landed in it between #92 and #103, so that's probably most of the drift.

layers          8m04   ubuntu
smoke           7m29   windows
optim           4m56   ubuntu
dispatch-jax    2m53   ubuntu
dispatch-torch  2m27   ubuntu
dispatch-mlx    2m15   macos
rest            1m51   ubuntu
attention       1m50   ubuntu

(latest completed run on main; --durations=25 is already on, so the per-test breakdown is in each job's log)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting the CI job definitions for the Ubuntu test groups and the Windows smoke job, then review the per-test breakdown from the latest completed run. Reassign the slowest tests so the groups have more balanced durations, including the five files added between #92 and #103. Done means the group wall clocks are materially closer and the test suite still passes on the affected platforms.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
ci-cd, performance, testing-qa
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.