scipp / scipp/ess

Reduce unit tests runtime

Open
#346 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

esssans
Dominant language
Python
Stars
1
Forks
3
Avg merge
2d 11h
Merged PRs (30d)
17

Description

Running the unit tests is taking a long time (circa 10 minutes on CI).
We should try to reduce this.

This is most probably due to running workflows on full loki/sans2d data, which contains many pixels, leading to expensive memory allocations.
We should reduce the data to just a few pixels. We could for example extract a vertical line or slab of pixels, that would still have a discernable scattering pattern, but would be much less expensive.
Note that in the process, we would need a new detector bank shape specific for the tests.

Contributor guide

Open the contributing guide

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 locating the unit-test workflows that process full loki and sans2d data, then measure which data allocations dominate the roughly 10-minute CI runtime. Reduce the test data to a few pixels while preserving a discernable scattering pattern, and add the detector bank shape required by those tests. Done means the tests still validate the same behavior and run substantially faster in CI.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data, testing-qa
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.