Skip to content

CI: also run the tests with 4 threads - #940

Open
maleadt wants to merge 1 commit into
mainfrom
tb/ci-threads
Open

maleadt wants to merge 1 commit into
mainfrom
tb/ci-threads

Conversation

@maleadt

@maleadt maleadt commented Oct 28, 2026

Copy link
Copy Markdown
Member

Split out of #906.

The CPU backend gives PoCL as many threads as Julia has, and the main CI job uses one, so work-groups only ran in parallel in the POCL session test's 4-thread subprocess. This adds a job running the suite with JULIA_NUM_THREADS=4 on Linux and macOS, with Julia 1.10 and 1.13.

The CPU backend gives PoCL as many threads as Julia has, and the main CI
job uses one, so work-groups only ran in parallel in the POCL session
test's 4-thread subprocess. Add a job running the suite with 4 threads on
Linux and macOS, with Julia 1.10 and 1.13.
@github-actions

Copy link
Copy Markdown
Contributor

Benchmark results

Compared with c10ff8cf4, the merge base.
The environment differs from the baseline's: GPUCompiler 2.18.0 → 2.19.0.

Times are the minimum time of every benchmark. A change is unusual when it exceeds both three times the benchmark's typical change between consecutive runs on the default branch and a minimum per category (performance 3%, latency 5%, applications 3%, other 3%). A benchmark that starts or stops allocating is listed however few the allocations. A single run can still be a fluke, so rerun before drawing conclusions.

Geometric mean Unusual: slower Unusual: faster Compared
Performance −0.5% 0 0 32
Latency +1.0% 0 0 13
Applications +1.0% 0 0 5

No unusual changes.

All benchmarks
Benchmark Baseline This PR Change
Performance
julia/serial/arithmetic/muladd-reference 655 µs 655 µs +0.0% noise unknown
julia/serial/math/exp-f64-reference 290 µs 284 µs −2.0% noise unknown
julia/serial/narrow/masked-reference 689 µs 692 µs +0.5% noise unknown
pocl/parallel/atomics/histogram 5.13 ms 5.11 ms −0.5% noise unknown
pocl/parallel/groupreduce/add-f64 1.65 ms 1.65 ms −0.1% noise unknown
pocl/parallel/groupreduce/fallback 18.1 ms 18.1 ms +0.0% noise unknown
pocl/parallel/groupscan/add-i32 2.50 ms 2.52 ms +0.5% noise unknown
pocl/parallel/indexing/cartesian3d 73.7 µs 82.3 µs +11.6% noise unknown
pocl/parallel/indexing/linear3d 81.0 µs 79.1 µs −2.4% noise unknown
pocl/parallel/indexing/ntuple3d 80.7 µs 80.1 µs −0.7% noise unknown
pocl/parallel/indexing/ntuple4d 162 µs 175 µs +8.1% noise unknown
pocl/parallel/localmem/transpose-naive 455 µs 456 µs +0.2% noise unknown
pocl/parallel/localmem/transpose-tiled 125 µs 106 µs −15.1% noise unknown
pocl/parallel/private/across-barrier 164 µs 164 µs +0.4% noise unknown
pocl/parallel/scheduling/default 185 µs 181 µs −1.9% noise unknown
pocl/parallel/scheduling/explicit 181 µs 181 µs −0.3% noise unknown
pocl/parallel/stream/copy/cache 786 ns 697 ns −11.3% noise unknown
pocl/parallel/stream/copy/dram 6.16 ms 6.31 ms +2.5% noise unknown
pocl/parallel/stream/triad/cache 6.84 µs 6.64 µs −3.0% noise unknown
pocl/parallel/stream/triad/dram 9.34 ms 9.38 ms +0.4% noise unknown
pocl/parallel/util/copyto-small 24.0 ns 24.0 ns +0.0% noise unknown
pocl/parallel/util/zeros-large 995 µs 1000 µs +0.4% noise unknown
pocl/parallel/util/zeros-small 651 ns 635 ns −2.5% noise unknown
pocl/serial/arithmetic/contract 1.91 ms 1.93 ms +0.9% noise unknown
pocl/serial/arithmetic/muladd 764 µs 758 µs −0.8% noise unknown
pocl/serial/const/marked 722 µs 732 µs +1.3% noise unknown
pocl/serial/const/unmarked 922 µs 889 µs −3.5% noise unknown
pocl/serial/math/exp-f64 146 µs 145 µs −0.3% noise unknown
pocl/serial/math/sin-f64 186 µs 190 µs +2.4% noise unknown
pocl/serial/narrow/masked 824 µs 829 µs +0.5% noise unknown
pocl/serial/narrow/unmasked 789 µs 794 µs +0.7% noise unknown
pocl/serial/stream/triad/dram 8.59 ms 8.62 ms +0.3% noise unknown
Latency
host/import/ka 509 ms 505 ms −0.9% noise unknown
host/precompile/ka 44.6 s 44.7 s +0.1% noise unknown
host/startup 132 ms 130 ms −1.7% noise unknown
pocl/parallel/launch/dynamic-default 4.30 µs 4.44 µs +3.3% noise unknown
pocl/parallel/launch/groupreduce-f64 5.03 µs 5.90 µs +17.2% noise unknown
pocl/parallel/launch/many-args 12.4 µs 12.3 µs −0.3% noise unknown
pocl/parallel/launch/partial-workgroup 4.19 µs 4.10 µs −2.0% noise unknown
pocl/serial/compile/groupreduce 1.88 s 1.87 s −0.5% noise unknown
pocl/serial/compile/localmem-barrier 719 ms 718 ms −0.1% noise unknown
pocl/serial/compile/new-kernel 110 ms 109 ms −0.0% noise unknown
pocl/serial/compile/new-workgroupsize 13.6 ms 13.8 ms +1.5% noise unknown
pocl/serial/first-kernel/cold-cache 2.05 s 2.04 s −0.3% noise unknown
pocl/serial/first-kernel/warm-cache 392 ms 385 ms −1.7% noise unknown
Applications
pocl/parallel/dgsem/fluxdiff-node 291 µs 290 µs −0.4% noise unknown
pocl/parallel/dgsem/weak-element 203 µs 209 µs +2.8% noise unknown
pocl/parallel/dgsem/weak-node-localmem 148 µs 147 µs −0.6% noise unknown
pocl/parallel/stencil/timestep 7.80 ms 8.00 ms +2.5% noise unknown
pocl/serial/stencil/timestep 11.1 ms 11.2 ms +0.6% noise unknown

History: https://juliagpu.org/perf/?pkg=kernelabstractions

@codecov

codecov Bot commented Oct 29, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.76%. Comparing base (c10ff8c) to head (2a4516a).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #940      +/-   ##
==========================================
- Coverage   83.46%   82.76%   -0.71%     
==========================================
  Files          31       31              
  Lines        2571     2524      -47     
==========================================
- Hits         2146     2089      -57     
- Misses        425      435      +10     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

This branch has not been deployed

No deployments
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.

1 participant