Skip to content

run-zephyr-tests: let make build the test boards, in parallel - #11347

Open
lynt-smitka wants to merge 1 commit into
adafruit:mainfrom
MakerClassCZ:ci-zephyr-tests-builds
Open

run-zephyr-tests: let make build the test boards, in parallel#11347
lynt-smitka wants to merge 1 commit into
adafruit:mainfrom
MakerClassCZ:ci-zephyr-tests-builds

Conversation

@lynt-smitka

Copy link
Copy Markdown

Since #11317 the test target builds every board the suite needs, so the three board steps here build them a second time: west build -b native_native_sim runs once in the step and again inside make test.

Dropping the steps and giving the test target -j$(nproc) also lets the four builds overlap. Locally on four cores the same four clean builds took 479 s one at a time and 194 s together (on the runner the gain is smaller). What overlaps is mostly the serial part of each build, the cmake configure, the generators and the link.

The bsim step stays. Before each bsim board is built, cptools/pre_zephyr_build_prep.py runs make in tools/bsim, and the two bsim boards now build at the same time, so both would run it in the same directory at once. Keeping the step means the tools are already built and both calls have nothing to do.

@dhalbert
dhalbert requested a review from tannewt September 11, 2026 14:56
tannewt
tannewt previously approved these changes Sep 11, 2026

@tannewt tannewt left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great! Thank you!

@dhalbert

Copy link
Copy Markdown
Collaborator

@lynt-smitka GitHub now reporting merge conflicts on this PR.

The native_sim shard builds two boards, one after the other. With -j
the test target builds them at the same time; the bsim shards build one
board each and are unaffected.

Locally on four cores, four clean board builds took 479 s one at a time
and 194 s together.
@lynt-smitka

Copy link
Copy Markdown
Author

The newer #11350 makes the split better. The only thing left of this PR is nproc, which has only a minor impact. 🙂

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.

3 participants