Skip to content

Commit bd1ed99

Browse files
committed
ci: correct the sharding rationale to the measurement that survived
The comment said the cost is the tests, from a five-file sample that happened to contain the one seven-second outlier. Across all 140 invocations the reported test time totals 5.1 minutes, no invocation exceeds 12.5 seconds, and the compile before the first result took about 26. The conclusion is unchanged, because sharding parallelises the compile too. The reason was wrong, and a wrong reason in a durable comment sends the next person optimising test runtime, which has almost nothing to give.
1 parent 83a3881 commit bd1ed99

1 file changed

Lines changed: 12 additions & 4 deletions

File tree

.github/workflows/conformance.yml

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,18 @@ jobs:
1414
# load, so adding a second binary's work to a shard's CPU is exactly what we
1515
# do not want.
1616
#
17-
# Sharding is here because the cost is the tests, not the harness. Measured
18-
# 2026-09-05: five files cost 10.48 s as five cargo invocations and 10.27 s
19-
# as one, and the tests inside account for 10.21 s of it. The work is
20-
# parallel across machines and not compressible on one.
17+
# Sharding is here because the work parallelises across machines and does not
18+
# compress on one. The long pole is COMPILING the seventy debug test
19+
# binaries, not running them: measured 2026-09-05 across all 140 invocations,
20+
# the reported test time totals 5.1 minutes and no single invocation exceeds
21+
# 12.5 seconds, while the compile before the first result took about 26.
22+
#
23+
# Do not target test runtime here. An earlier version of this comment said
24+
# the tests were the cost, from a five-file sample that happened to contain
25+
# the one seven-second outlier. That sample was not representative and the
26+
# claim was wrong. If someone wants a bigger win than sharding, it is in the
27+
# compile: a shared cargo cache, or building the test binaries once and
28+
# distributing them, rather than four runners each compiling the workspace.
2129
shard:
2230
runs-on: ubuntu-latest
2331
timeout-minutes: 45

0 commit comments

Comments
 (0)